Hi Thomas,
On 03.11.2015 07:25, Thomas Chou wrote:
On 2015年11月03日 13:56, Stefan Roese wrote:
if (CONFIG_IS_ENABLED(CFI_FLASH)) {
struct udevice *dev;
cfi_flash_num_flash_banks = 0;
/* probe every MTD device to find cfi-flash device */
for (uclass_first_device(UCLASS_MTD, &dev);
dev;
uclass_next_device(&dev)) {
}
}
I'm still not an expert in the DM internals. I fail to see, where
the actual probing is happening in the loop. Is it buried in the
uclass_first_device() call?
The probing is happening in both uclass_first_device() and
uclass_next_device().
The uclass_first_device() will probe the first device.
While uclass_next_device() will probe the rest if they exist.
Okay. So cfi_flash_probe() will get called assigning the base
addresses that are available. The real "probing" (meaning
detection) is happening later in flash_init().
I think adding (or extending) a comment here to describe this
would be helpful in v2.
Thanks,
Stefan
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot