[U-Boot] [PATCH] poplar: fix boot failure caused by serial driver change

Bin Meng bmeng.cn at gmail.com
Wed Dec 12 12:54:03 UTC 2018


Hi Shawn,

On Wed, Dec 12, 2018 at 3:25 PM Shawn Guo <shawn.guo at linaro.org> wrote:
>
> Commit 4687919684e0 ("serial: Remove DM_FLAG_PRE_RELOC flag in various
> drivers") essentially drops flag DM_FLAG_PRE_RELOC from serial_pl01x
> driver for Poplar platform, because the platform falls into the
> following strategy category made by the commit.
>
>   Surround DM_FLAG_PRE_RELOC flag with OF_CONTROL check, for
>   drivers that support both statically declared devices and
>   configuration from device tree
>
> Before the commit lands, Poplar platform works by statically declaring
> pl011 serial device via U_BOOT_DEVICE() with DM_FLAG_PRE_RELOC flag set
> in the driver.  But since Poplar also supports device configuration from
> device tree, the commit practically drops the flag for Poplar, and hence
> breaks the platform from booting.
>
> This patch changes platform code and device tree to initiate pl011
> serial device from device tree rather than static declaration, so that
> above strategy about DM_FLAG_PRE_RELOC applies to Poplar, and therefore
> the reported boot failure gets fixed.
>
> Reported-by: Igor Opaniuk <igor.opaniuk at linaro.org>
> Fixes: 4687919684e0 ("serial: Remove DM_FLAG_PRE_RELOC flag in various drivers")
> Cc: Bin Meng <bmeng.cn at gmail.com>
> Cc: Simon Glass <sjg at chromium.org>
> Signed-off-by: Shawn Guo <shawn.guo at linaro.org>
> ---
>  arch/arm/dts/hi3798cv200-u-boot.dtsi | 10 ++--------
>  board/hisilicon/poplar/poplar.c      |  2 ++
>  2 files changed, 4 insertions(+), 8 deletions(-)
>

Thanks for the fix! It looks good to me.

Reviewed-by: Bin Meng <bmeng.cn at gmail.com>

Regards,
Bin


More information about the U-Boot mailing list