diff options
author | wdenk <wdenk> | 2004-10-09 23:25:58 +0000 |
---|---|---|
committer | wdenk <wdenk> | 2004-10-09 23:25:58 +0000 |
commit | 8655b6f8603f12099e534a10f7840630b3e93026 (patch) | |
tree | 3f1011e28807fbeb23276d2c21c2aa04a1a3094f /lib_arm/armlinux.c | |
parent | 30d56fae23bf830c9f9817a7f151b248a01ebe96 (diff) | |
download | bootable_bootloader_goldelico_gta04-8655b6f8603f12099e534a10f7840630b3e93026.zip bootable_bootloader_goldelico_gta04-8655b6f8603f12099e534a10f7840630b3e93026.tar.gz bootable_bootloader_goldelico_gta04-8655b6f8603f12099e534a10f7840630b3e93026.tar.bz2 |
* Clean up tools/bmp_logo.c to not add trailing white space
* Patch by Hinko Kocevar, 21 Aug 2004:
- Group common framebuffer functions in common/lcd.c
- Group common framebuffer macros and #defines in include/lcd.h
- Provide calc_fbsize() for video ATAG
Diffstat (limited to 'lib_arm/armlinux.c')
-rw-r--r-- | lib_arm/armlinux.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/lib_arm/armlinux.c b/lib_arm/armlinux.c index 6855d5f..bf26566 100644 --- a/lib_arm/armlinux.c +++ b/lib_arm/armlinux.c @@ -38,7 +38,8 @@ extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]); defined (CONFIG_INITRD_TAG) || \ defined (CONFIG_SERIAL_TAG) || \ defined (CONFIG_REVISION_TAG) || \ - defined (CONFIG_VFD) + defined (CONFIG_VFD) || \ + defined (CONFIG_LCD) static void setup_start_tag (bd_t *bd); # ifdef CONFIG_SETUP_MEMORY_TAGS @@ -55,7 +56,7 @@ static void setup_initrd_tag (bd_t *bd, ulong initrd_start, # endif static void setup_end_tag (bd_t *bd); -# if defined (CONFIG_VFD) +# if defined (CONFIG_VFD) || defined (CONFIG_LCD) static void setup_videolfb_tag (gd_t *gd); # endif @@ -229,6 +230,7 @@ void do_bootm_linux (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[], defined (CONFIG_INITRD_TAG) || \ defined (CONFIG_SERIAL_TAG) || \ defined (CONFIG_REVISION_TAG) || \ + defined (CONFIG_LCD) || \ defined (CONFIG_VFD) setup_start_tag (bd); #ifdef CONFIG_SERIAL_TAG @@ -247,7 +249,7 @@ void do_bootm_linux (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[], if (initrd_start && initrd_end) setup_initrd_tag (bd, initrd_start, initrd_end); #endif -#if defined (CONFIG_VFD) +#if defined (CONFIG_VFD) || defined (CONFIG_LCD) setup_videolfb_tag ((gd_t *) gd); #endif setup_end_tag (bd); @@ -274,6 +276,7 @@ void do_bootm_linux (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[], defined (CONFIG_INITRD_TAG) || \ defined (CONFIG_SERIAL_TAG) || \ defined (CONFIG_REVISION_TAG) || \ + defined (CONFIG_LCD) || \ defined (CONFIG_VFD) static void setup_start_tag (bd_t *bd) { @@ -351,7 +354,8 @@ static void setup_initrd_tag (bd_t *bd, ulong initrd_start, ulong initrd_end) #endif /* CONFIG_INITRD_TAG */ -#if defined (CONFIG_VFD) +#if defined (CONFIG_VFD) || defined (CONFIG_LCD) +extern ulong calc_fbsize (void); static void setup_videolfb_tag (gd_t *gd) { /* An ATAG_VIDEOLFB node tells the kernel where and how large @@ -365,12 +369,13 @@ static void setup_videolfb_tag (gd_t *gd) params->hdr.size = tag_size (tag_videolfb); params->u.videolfb.lfb_base = (u32) gd->fb_base; - /* 7168 = 256*4*56/8 - actually 2 pages (8192 bytes) are allocated */ - params->u.videolfb.lfb_size = 7168; + /* Fb size is calculated according to parameters for our panel + */ + params->u.videolfb.lfb_size = calc_fbsize(); params = tag_next (params); } -#endif +#endif /* CONFIG_VFD || CONFIG_LCD */ static void setup_end_tag (bd_t *bd) { |