The driver probe only depends on the device's resources, so there is no need to delay registration to coredevice_platform_driver. The way the AT91 code is structured is that: - board code adds SMC device (not probed from DT, so no deep probe) - SMC driver probe runs and stores regions - board code calls into SMC driver to apply config to regions - board code registers NAND Failure to keep this order results either in non-functional NAND or crash. Take the easy way out. Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> --- arch/arm/mach-at91/sam9_smc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/mach-at91/sam9_smc.c b/arch/arm/mach-at91/sam9_smc.c index 66261a95ee01..77d62012dfb6 100644 --- a/arch/arm/mach-at91/sam9_smc.c +++ b/arch/arm/mach-at91/sam9_smc.c @@ -195,4 +195,4 @@ static struct driver_d at91sam9_smc_driver = { .probe = at91sam9_smc_probe, }; -coredevice_platform_driver(at91sam9_smc_driver); +postcore_platform_driver(at91sam9_smc_driver); -- 2.30.2 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox