[U-Boot] [PATCH] RFC/BUG Workaround regression with "mkimage -T rksd".

Simon Glass sjg at chromium.org
Thu Feb 18 05:38:37 CET 2016


Hi,

On Feb 17, 2016 21:32, "Vagrant Cascadian" <vagrant at debian.org> wrote:
>
> While this patch allows "mkimage -T rksd" to work, boot is still
> broken in other ways, so something more needs to be fixed.
>
>     Partially Reverts "rockchip: jerry: Enable EDP and HDMI video output"
>
>     This partiall reverts commit 74336f7daa4b1a45d04ddc9ef05737af54ae4836.
>
> For some reason, the change made to the rk3288.dtsi broke "mkimage -T
> rksd", which resulted in a different image type that fails to boot:
>
> $ ./tools/mkimage -T rksd -n rk3288 -d spl/u-boot-spl-dtb.bin
u-boot-spl-dtb.rksd
> Warning: SPL image is too large (size 0x80ec) and will not boot
> $ ./tools/mkimage -l u-boot-spl-dtb.rksd
> Image Type:   MVEBU Boot from (null) Image
> Image version:0
> Data Size:    -4 Bytes = 4194304.00 kB = 4096.00 MB
> Load Address: 00000000
> Entry Point:  00000000
>
> Normally, mkimage -T rksd should generate an image like this:
>
>   mkimage -l u-boot-spl-dtb.rksd
>   GP Header: Size 3b8cdcfc LoadAddr be9f9d51
>
> However, booting with the "fixed" .rksd image still fails, probably
> because of issues in the device-tree:
>
> U-Boot 2016.03-rc2 (Feb 18 2016 - 04:08:20 +0000)
>
> Model: Firefly-RK3288
> DRAM:  2 GiB
> Video device 'vop at ff930000' cannot allocate frame buffer memory -ensure
the device is set up before relocation
> Error binding driver 'rk_vop': -28
> Video device 'vop at ff940000' cannot allocate frame buffer memory -ensure
the device is set up before relocation
> Error binding driver 'rk_vop': -28
> Some drivers failed to bind
> initcall sequence 7ffb0a10 failed at call 00109f9b (err=-28)
>
> Hopefully a more complete fix will be obvious to someone, or there is
> a better way to generate boot images for firefly-rk3288.

Most likely this is just that the SPL image size is to large. Unfortunately
rockchip has a hard 32KB limit. We need to cut things down a bit.

Regards,
Simon

>
> Signed-off-by: Vagrant Cascadian <vagrant at debian.org>
> ---
>
>  arch/arm/dts/rk3288.dtsi | 1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/arch/arm/dts/rk3288.dtsi b/arch/arm/dts/rk3288.dtsi
> index e51c75c..e2a65be 100644
> --- a/arch/arm/dts/rk3288.dtsi
> +++ b/arch/arm/dts/rk3288.dtsi
> @@ -707,7 +707,6 @@
>                 iommus = <&vopl_mmu>;
>                 power-domains = <&power RK3288_PD_VIO>;
>                 status = "disabled";
> -               u-boot,dm-pre-reloc;
>                 vopl_out: port {
>                         #address-cells = <1>;
>                         #size-cells = <0>;
> --
> 2.1.4
>


More information about the U-Boot mailing list