[U-Boot] [RFC]: always relocate u-boot before the framebuffer
Lukasz Majewski
l.majewski at samsung.com
Mon Dec 31 15:33:53 CET 2012
Hi Jeroen,
> Hi All,
>
> Currently CONFIG_FB_ADDR can be set to specify the location of the
> frame buffer. Since Linux places the frame buffer at the end of the
> RAM, it is nice to place it at the same position so the u-boot to
> linux transition can be made flicker free, by preserving the
> frame buffer. However u-boot and it's heap prefer to locate themselves
> at the end of the RAM as well and there is nothing which prevents them
> to overlap.
>
> While this can be set/calculated manually, it would be nicer if the
> relocation would never take place to the region occupied by the
> frame buffer. A simple way to do so is to locate u-boot before the
> frame buffer, like it is already done when the frame buffer address is
> not set.
>
> Currently there are 2 boards using the CONFIG_FB_ADDR and CONFIG_LCD
> on arm (trats, mimc200). Would it cause any problem to relocate
> u-boot below the frame buffer on these boards?
>
> Regards,
> Jeroen
>
> proposed patch:
>
> diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c
> index e0cb635..4d0fc3c 100644
> --- a/arch/arm/lib/board.c
> +++ b/arch/arm/lib/board.c
> @@ -371,9 +371,10 @@ void board_init_f(ulong bootflag)
> gd->fb_base = CONFIG_FB_ADDR;
> #else
> /* reserve memory for LCD display (always full pages) */
> - addr = lcd_setmem(addr);
> - gd->fb_base = addr;
> + gd->fb_base = lcd_setmem(addr);
> #endif /* CONFIG_FB_ADDR */
> + /* always continue placement below the frame buffer to not
> overlap */
Good idea. I will test it and let you know.
--
Best regards,
Lukasz Majewski
Samsung Poland R&D Center | Linux Platform Group
More information about the U-Boot
mailing list