[U-Boot] [PATCH v2 02/13] dm: Convert users from dm_scan_fdt_node() to dm_scan_fdt_dev()

Simon Glass sjg at chromium.org
Mon Aug 1 03:03:38 CEST 2016


Hi Michal,

On 29 July 2016 at 05:29, Michal Simek <monstr at monstr.eu> wrote:
> Hi Simon,
>
>
> 2016-07-17 22:59 GMT+02:00 Simon Glass <sjg at chromium.org>:
>>
>> On 5 July 2016 at 17:10, Simon Glass <sjg at chromium.org> wrote:
>> > This new function is more convenient for callers, and handles
>> > pre-relocation
>> > situations automatically.
>> >
>> > Signed-off-by: Simon Glass <sjg at chromium.org>
>> > ---
>> >
>> > Changes in v2:
>> > - Add new patch to make use of dm_scan_fdt_dev()
>> >
>> >  arch/x86/lib/lpc-uclass.c                 |  4 +---
>> >  common/usb_hub.c                          |  3 +--
>> >  drivers/core/simple-bus.c                 |  3 +--
>> >  drivers/i2c/i2c-uclass.c                  |  3 +--
>> >  drivers/i2c/sandbox_i2c.c                 |  4 +---
>> >  drivers/misc/cros_ec.c                    |  3 +--
>> >  drivers/pch/pch-uclass.c                  |  4 +---
>> >  drivers/pci/pci-uclass.c                  | 11 +----------
>> >  drivers/pci/pci_sandbox.c                 |  3 +--
>> >  drivers/pinctrl/pinctrl_pic32.c           |  3 +--
>> >  drivers/pinctrl/rockchip/pinctrl_rk3036.c |  3 +--
>> >  drivers/pinctrl/rockchip/pinctrl_rk3288.c |  3 +--
>> >  drivers/power/pmic/pm8916.c               |  3 +--
>> >  drivers/power/regulator/Kconfig           |  2 +-
>> >  drivers/spi/spi-uclass.c                  |  3 +--
>> >  drivers/spmi/spmi-uclass.c                |  3 +--
>> >  drivers/usb/emul/usb-emul-uclass.c        |  3 +--
>> >  drivers/usb/host/usb-uclass.c             |  4 +---
>> >  include/power/regulator.h                 |  2 +-
>> >  test/dm/bus.c                             |  3 +--
>> >  20 files changed, 20 insertions(+), 50 deletions(-)
>>
>> Applied to u-boot-dm.
>
>
> This is breaking zynqmp support - to be specific serial driver which gets
> information about clock
> from DT.
> On zcu102 with early debug this is an output.
> failed to get clock
> failed to get clock
> failed to get clock
> No serial driver found
> resetting ...
>
> I looked at it and the reason for that is that there is different handling
> for pre_reloc_only.
> dm_scan_fdt_node(dev, gd->fdt_blob, dev->of_offset,
>                 gd->flags & GD_FLG_RELOC ? false : true);
>
> Called from simple-bus.c.
> The reason for it is that my clk node has no  u-boot,dm-pre-reloc; property.
> I expect that this is the right fix to add u-boot,dm-pre-reloc; property.
>
> I will send a patch to fix this but I wanted to let you know.

Sorry about the breakage, that's one reason I wanted to get it in
early. But yes, the fix is to add that property. The old behaviour was
wrong and chewed up a lot of pre-reloc memory on one platform.

Regards,
Simon


More information about the U-Boot mailing list