Fix bitmap display for atmel lcd controller
PATCH 1/1 Fix bitmap display for atmel lcd controller
The current lcd_display_bitmap() function does not work properly for the Atmel LCD controller.
2 fixes need to be done:-
(a) when setting the colour map, use the lcd_setcolreg() function as provided by the Atmel driver
(b) the actual data is never actually written to the lcd framebuffer !!
Below is a patch to fix these issues.
---
common/lcd.c +5 -1
@@ -678,6 +678,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)/* Set color map */ for (i=0 ; i<colors; ++i) {bmp_color_table_entry_t cte = bmp->color_table[i]; +#if !defined(CONFIG_ATMEL_LCD )ushort colreg = ( ((cte.red) <<8 ) &0xf800 ) | ( ((cte.green) << 3) & 0x07e0) |
@@ -692,6 +693,9 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)#elif defined(CONFIG_MPC823 ) cmap--;#endif +#else /* CONFIG_ATMEL_LCD */ +lcd_setcolreg (i, cte.red, cte.green, cte.blue); +#endif } }#endif
@@ -727,7 +731,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)for (i =0 ; i < height; ++i) {WATCHDOG_RESET (); for (j = 0; j < width ; j++) -#if defined(CONFIG_PXA250 ) +#if defined(CONFIG_PXA250 ) || defined(CONFIG_ATMEL_LCD ) *(fb++) = *(bmap++);#elif defined(CONFIG_MPC823 ) || defined(CONFIG_MCC200 ) *(fb++)=255 -*(bmap++);
PATCH 1/1 Fix bitmap display for atmel lcd controller
Quoted 10 lines · In message <[email protected]> you wrote:
The current
lcd_display_bitmap()function does not work properly for the Atmel LCD controller.2 fixes need to be done:-
(a) when setting the colour map, use the
lcd_setcolreg()function as provided by the Atmel driver
(b) the actual data is never actually written to the lcd framebuffer !!Below is a patch to fix these issues.
---
Please resubmit using a reasoable line length for the commit message (some 70+ characters), and add your Signed-off-by: line.
Best regards,
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de I think it's a new feature. Don't tell anyone it was an accident. :-) -- Larry Wall on s/foo/bar/eieio in <[email protected]>