Hi Phllipp, On 23 September 2016 at 09:30, Philipp Rossak <embe...@gmail.com> wrote: > Hi, > > I would like to develop an mmc driver for the STM32 boards with the new > driver model. > > I already built up the basic structure and I discovered some strange > behaviour compared to net or serial drivers: > > When I place only the following statement in the driver .c file: > > U_BOOT_DRIVER(sdhci_stm32) = { > .name = "stm32_sdhci", > .id = UCLASS_MMC, > .ops = &stm32_mmc_ops, > .probe = stm32_mmc_probe, > ... > }; > > I receive the following Message when i perform the "dm uclass" command in > u-boot: > > Cannot find uclass for id 31: please add the UCLASS_DRIVER() declaration for > this UCLASS_... id > > But when I had a look at the sources, i found some UCLASS_DRIVER() > declaration in drivers/mmc/mmc-uclass.c for the mmc driver. > > The driver is copied from the sandbox_mmc driver. I only renamed the > functions and added some debug messages. > > When i add this statement to my driver: > > UCLASS_DRIVER(sdhci_stm32) = { > .name = "stm32_sdhci", > .id = UCLASS_MMC, > }; > > And I perform the dm uclass command in u-boot i receive the following: > > uclass 31: stm32_sdhci > > Do you have any idea what i'm doing wrong / what i missed? > > Is there maybe some UCLASS implementation missing or not linked?
Yes I think so. This sounds like you don't have the uclass compiled in. If you look in drivers/mmc/Makefile you can see that you need to define CONFIG_GENERIC_MMC and CONFIG_DM_MMC. Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot