[U-Boot] [PATCH V2 2/2] api: export LCD and video to external apps
Che-liang Chiou
clchiou at chromium.org
Tue Oct 18 08:12:59 CEST 2011
Hi Anatolij,
Thanks for testing this patch. Please see below.
On Tue, Oct 18, 2011 at 5:13 AM, Anatolij Gustschin <agust at denx.de> wrote:
> Hi,
>
> thanks for the patch and style fixes! I've some comments on it.
> Please see below.
>
> On Fri, 7 Oct 2011 16:28:12 +0800
> Che-Liang Chiou <clchiou at chromium.org> wrote:
>
>> This patch exports LCD and video information and bitmap-rendering
>> functions to external apps.
>>
>> This patch is tested on a Seaboard, which does not have a video output.
>> So I only tested LCD code paths.
>>
>> NOTE: The Seaboard LCD driver is not yet upstreamed; the test was done
>> in a local downstream repo.
>
> Many boards defining CONFIG_LCD also define CONFIG_LCD_LOGO.
> Enabling CONFIG_API for such board configurations will break
> compiling, e.g.:
>
> $ ./MAKEALL TQM823L_LCD
> Configuring for TQM823L_LCD - Board: TQM823L, Options: LCD,NEC_NL6448BC20
> api_display.c: In function 'display_get_info':
> api_display.c:40: error: 'BMP_LOGO_HEIGHT' undeclared (first use in this function)
> api_display.c:40: error: (Each undeclared identifier is reported only once
> api_display.c:40: error: for each function it appears in.)
> make[1]: *** [api_display.o] Error 1
> make: *** [api/libapi.o] Error 2
>
> Any idea how to fix this issue?
>
BMP_LOGO_HEIGHT is defined bmp_logo.h, which is automatically
generated by tools/bmp_logo.c when CONFIG_LCD_LOGO or
CONFIG_VIDEO_LOGO is set. So I guess this is quite easy to fix. We
could include bmp_logo.h in api_display.c.
> Similar problem exists for boards using cfb_console driver, e.g. enabling
> CONFIG_API breaks compiling for tqm5200 board:
>
> $ ./MAKEALL TQM5200
> Configuring for TQM5200 board...
> api_display.c: In function 'display_get_info':
> api_display.c:47: error: 'VIDEO_VISIBLE_COLS' undeclared (first use in this function)
> api_display.c:47: error: (Each undeclared identifier is reported only once
> api_display.c:47: error: for each function it appears in.)
> api_display.c:48: error: 'VIDEO_VISIBLE_ROWS' undeclared (first use in this function)
> make[1]: *** [api_display.o] Error 1
> make: *** [api/libapi.o] Error 2
>
> We need to resolve these issues before committing this patch, i think.
>
VIDEO_VISIBLE_{COLS,ROLS} are just macros defined in cfb_console.c,
this is my mistake. I should use GraphicDevice->{winSizeX,winSizeY}
that are VIDEO_VISIBLE_{COLS,ROLS} defined upon.
> Thanks,
> Anatolij
>
>> Signed-off-by: Che-Liang Chiou <clchiou at chromium.org>
>> ---
>>
>> Changes since V1
>> Fix style errors
>>
>> api/Makefile | 3 +-
>> api/api.c | 51 +++++++++++++++++++++++++++++
>> api/api_display.c | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++
>> api/api_private.h | 4 ++
>> examples/api/demo.c | 31 ++++++++++++++++++
>> examples/api/glue.c | 31 ++++++++++++++++++
>> examples/api/glue.h | 5 +++
>> include/api_public.h | 16 +++++++++
>> include/video_font.h | 6 +++
>> 9 files changed, 232 insertions(+), 1 deletions(-)
>> create mode 100644 api/api_display.c
>
Regards,
Che-Liang
More information about the U-Boot
mailing list