[u-boot][PATCH 00/14] rawnand: omap_gpmc: driver model support

Michael Nazzareno Trimarchi michael at amarulasolutions.com
Sat Dec 17 14:38:01 CET 2022


Hi

On Sat, Dec 17, 2022 at 2:00 PM Roger Quadros <rogerq at kernel.org> wrote:
>
> Hi Michael & Dario,
>
> On 12/12/2022 11:39, Michael Nazzareno Trimarchi wrote:
> > Hi Roger
> >
> > Most of the building problem can be tested with this configuration
> >
> > make ARCH=arm chiliboard_defconfig
>
> I resolved the original issue for all boards but now face a new issue
> only with the chiliboard.
>
> arm-none-linux-gnueabihf-ld.bfd: drivers/mtd/nand/raw/omap_elm.o: in function `dev_read_resource':
> /work/u-boot/include/dm/read.h:1139: undefined reference to `ofnode_read_resource'
>   AR      common/built-in.o
> make[2]: *** [/work/u-boot/scripts/Makefile.spl:527: spl/u-boot-spl] Error 1
> make[1]: *** [/work/u-boot/Makefile:2071: spl/u-boot-spl] Error 2
> make[1]: *** Waiting for unfinished jobs....
> make[1]: Leaving directory '/tmp'
> make: *** [Makefile:177: sub-make] Error 2
>
> The following config options are set
> CONFIG_DM_DEV_READ_INLINE=y

What happen is that is not set?

Michael

> CONFIG_SUPPORT_OF_CONTROL=y
>
> My understanding is that in case of spl build (Makefile.spl), the
> drivers/core/ofnode.o does not seem to be included
> thus causing the linking error.
>
> Any suggestions how to fix this?
>
> I've pushed the patches here
> https://github.com/rogerq/u-boot/commits/for-v2023.01/am64-nand-base-1.4
>
> cheers,
> -roger
>
> >
> > Michael
> >
> > On Mon, Dec 12, 2022 at 10:27 AM Dario Binacchi
> > <dario.binacchi at amarulasolutions.com> wrote:
> >>
> >> Hi Roger,
> >>
> >> On Mon, Dec 12, 2022 at 10:12 AM Roger Quadros <rogerq at kernel.org> wrote:
> >>>
> >>> Hi Dario,
> >>>
> >>> On 11/12/2022 15:56, Dario Binacchi wrote:
> >>>> Hi Roger,
> >>>>
> >>>> On Fri, Nov 25, 2022 at 1:38 PM Roger Quadros <rogerq at kernel.org> wrote:
> >>>>>
> >>>>> Hi Michael,
> >>>>>
> >>>>> On 08/11/2022 11:26, Michael Nazzareno Trimarchi wrote:
> >>>>>> Hi Roger
> >>>>>>
> >>>>>> On Fri, Nov 4, 2022 at 2:27 PM Roger Quadros <rogerq at kernel.org> wrote:
> >>>>>>>
> >>>>>>> Hi,
> >>>>>>>
> >>>>>>> On 11/10/2022 14:49, Roger Quadros wrote:
> >>>>>>>> Hi,
> >>>>>>>>
> >>>>>>>> This series adds driver model support for rawnand: omap_gpmc
> >>>>>>>> and omap_elm drivers.
> >>>>>>>>
> >>>>>>>> This will enable the driver to be used on K2/K3 platforms as well.
> >>>>>>>
> >>>>>>> Any comments on patches 5 and later? Thanks
> >>>>>>>
> >>>>>>
> >>>>>> We will try to close this week.
> >>>>>
> >>>>> Could you please give your comments on the last few patches. Thanks!
> >>>>>
> >>>>> cheers,
> >>>>> -roger
> >>>>>
> >>>>>>
> >>>>>> Michael
> >>>>>>
> >>>>>>>
> >>>>>>> cheers,
> >>>>>>> -roger
> >>>>>>>
> >>>>>>>>
> >>>>>>>> cheers,
> >>>>>>>> -roger
> >>>>>>>>
> >>>>>>>> Roger Quadros (14):
> >>>>>>>>   mtd: rawnand: omap_gpmc: Deprecate asm/arch/mem.h
> >>>>>>>>   mtd: rawnand: omap_gpmc: Enable build for K2/K3 platforms
> >>>>>>>>   mtd: rawnand: omap_gpmc: Fix build warning on 64-bit platforms
> >>>>>>>>   mtd: rawnand: omap_gpmc: Optimize NAND reads
> >>>>>>>>   mtd: rawnand: omap_gpmc: Fix BCH6/16 HW based correction
> >>>>>>>>   mtd: rawnand: nand_base: Allow base driver to be used in SPL without
> >>>>>>>>     nand_bbt
> >>>>>>>>   mtd: rawnand: nand_spl_loaders: Fix cast type build warning
> >>>>>>>>   mtd: rawnand: omap_gpmc: Reduce .bss usage
> >>>>>>>>   dt-bindings: mtd: Add ti,gpmc-nand DT binding documentation
> >>>>>>>>   mtd: rawnand: omap_gpmc: support u-boot driver model
> >>>>>>>>   mtd: rawnand: omap_gpmc: Add SPL NAND support
> >>>>>>>>   mtd: rawnand: omap_gpmc: Enable SYS_NAND_PAGE_COUNT for OMAP_GPMC
> >>>>>>>>   dt-bindings: mtd: Add ti,elm DT binding documentation
> >>>>>>>>   mtd: rawnand: omap_elm: u-boot driver model support
> >>>>>>>>
> >>>>>>>>  doc/device-tree-bindings/mtd/ti,elm.yaml      |  72 +++
> >>>>>>>>  .../mtd/ti,gpmc-nand.yaml                     | 129 +++++
> >>>>>>>>  drivers/mtd/nand/raw/Kconfig                  |  11 +-
> >>>>>>>>  drivers/mtd/nand/raw/Makefile                 |   2 +-
> >>>>>>>>  drivers/mtd/nand/raw/nand_base.c              |  18 +-
> >>>>>>>>  drivers/mtd/nand/raw/nand_spl_loaders.c       |   2 +-
> >>>>>>>>  drivers/mtd/nand/raw/omap_elm.c               |  33 +-
> >>>>>>>>  .../mtd => drivers/mtd/nand/raw}/omap_elm.h   |   6 +
> >>>>>>>>  drivers/mtd/nand/raw/omap_gpmc.c              | 500 +++++++++++++-----
> >>>>>>>>  9 files changed, 637 insertions(+), 136 deletions(-)
> >>>>>>>>  create mode 100644 doc/device-tree-bindings/mtd/ti,elm.yaml
> >>>>>>>>  create mode 100644 doc/device-tree-bindings/mtd/ti,gpmc-nand.yaml
> >>>>>>>>  rename {include/linux/mtd => drivers/mtd/nand/raw}/omap_elm.h (97%)
> >>>>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>
> >>>> I tried to merge your whole series but after the second fix and the
> >>>> third time the CI/CD pipeline failed
> >>>
> >>> Do you have the link to the failure?
> >>
> >> These are the CI/CD pipelines links:
> >> https://source.denx.de/u-boot/custodians/u-boot-nand-flash/-/jobs/540827
> >> https://source.denx.de/u-boot/custodians/u-boot-nand-flash/-/jobs/540876
> >> but I think you don't have permission to access them.
> >>
> >> Anyway:
> >>
> >> for https://source.denx.de/u-boot/custodians/u-boot-nand-flash/-/jobs/540827:
> >> +====================================================
> >> 345 arm: + am335x_guardian
> >> 346+drivers/mtd/nand/raw/omap_gpmc.c:1208:26: error: 'nand_chip'
> >> defined but not used [-Werror=unused-variable]
> >> 347+ 1208 | static struct nand_chip *nand_chip; /* First NAND chip for
> >> SPL use only */
> >> 348+ | ^~~~~~~~~
> >> 349+cc1: all warnings being treated as errors
> >> 350+make[5]: *** [scripts/Makefile.build:258:
> >> drivers/mtd/nand/raw/omap_gpmc.o] Error 1
> >> 351+make[4]: *** [scripts/Makefile.build:398: drivers/mtd/nand/raw] Error 2
> >> 352+make[3]: *** [scripts/Makefile.build:398: drivers/mtd/nand] Error 2
> >> 353+make[2]: *** [scripts/Makefile.build:398: drivers/mtd] Error 2
> >> 354+make[1]: *** [Makefile:1871: drivers] Error 2
> >> 355+make: *** [Makefile:177: sub-make] Error 2
> >>
> >> for https://source.denx.de/u-boot/custodians/u-boot-nand-flash/-/jobs/540876:
> >> +====================================================
> >> 498 arm: + chiliboard
> >> 499+arm-linux-gnueabi-ld.bfd: drivers/mtd/nand/raw/nand.o: in function
> >> `nand_init_chip':
> >> 500+drivers/mtd/nand/raw/nand.c:92: undefined reference to `board_nand_init'
> >> 501+make[1]: *** [Makefile:1778: u-boot] Error 1
> >> 502+make: *** [Makefile:177: sub-make] Error 2
> >> 503 arm: w+ am335x_shc_netboot
> >> 504+===================== WARNING ======================
> >> 505+This board does not use CONFIG_DM_I2C (Driver Model
> >> 506+for I2C drivers). Please update the board to use
> >> 507+CONFIG_DM_I2C before the v2022.04 release. Failure to
> >> 508+update by the deadline may result in board removal.
> >> 509+See doc/develop/driver-model/migration.rst for more info.
> >> 510+====================================================
> >> 511 arm: + cm_t43
> >> 512+arm-linux-gnueabi-ld.bfd: drivers/mtd/nand/raw/nand.o: in function
> >> `nand_init_chip':
> >> 513+drivers/mtd/nand/raw/nand.c:92: undefined reference to `board_nand_init'
> >> 514+make[1]: *** [Makefile:1778: u-boot] Error 1
> >> 515+make: *** [Makefile:177: sub-make] Error 2
> >> 516 arm: w+ am335x_shc_sdboot
> >>
> >> In both cases failed the "build all 32bit ARM platforms" test.
> >>
> >> I think you have to run the command:
> >> ./tools/buildman/buildman -o /tmp -PEWM arm -x aarch64
> >> if you have to run the tests locally.
> >>
> >> Thanks and regards,
> >> Dario
> >>
> >>>
> >>>> I thought it's better you fix the problems. So, I only accepted some
> >>>> of the first few patches in the series:
> >>>> 01/14 mtd: rawnand: omap_gpmc: Deprecate asm/arch/mem.h
> >>>> 02/14 mtd: rawnand: omap_gpmc: Enable build for K2/K3 platforms
> >>>> 03/14 mtd: rawnand: omap_gpmc: Fix build warning on 64-bit platforms
> >>>> 04/14 mtd: rawnand: omap_gpmc: Optimize NAND reads
> >>>> 07/14 mtd: rawnand: nand_spl_loaders: Fix cast type build warning
> >>>> 08/14 mtd: rawnand: omap_gpmc: Reduce .bss usage
> >>>>
> >>>> For the others, please fix them to run the tests successfully.
> >>>
> >>> No problem. I will try to fix and run them through the CI testing myself
> >>> before re-posting.
> >>>
> >>> cheers,
> >>> -roger
> >>
> >>
> >>
> >> --
> >>
> >> Dario Binacchi
> >>
> >> Embedded Linux Developer
> >>
> >> dario.binacchi at amarulasolutions.com
> >>
> >> __________________________________
> >>
> >>
> >> Amarula Solutions SRL
> >>
> >> Via Le Canevare 30, 31100 Treviso, Veneto, IT
> >>
> >> T. +39 042 243 5310
> >> info at amarulasolutions.com
> >>
> >> www.amarulasolutions.com
> >
> >
> >



-- 
Michael Nazzareno Trimarchi
Co-Founder & Chief Executive Officer
M. +39 347 913 2170
michael at amarulasolutions.com
__________________________________

Amarula Solutions BV
Joop Geesinkweg 125, 1114 AB, Amsterdam, NL
T. +31 (0)85 111 9172
info at amarulasolutions.com
www.amarulasolutions.com


More information about the U-Boot mailing list