public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot-Users] [PATCH] Fix bitmap display for atmel lcd controller
@ 2008-07-30 15:09 Mark Jackson
  2008-07-31 15:43 ` Wolfgang Denk
  0 siblings, 1 reply; 2+ messages in thread
From: Mark Jackson @ 2008-07-30 15:09 UTC (permalink / raw)
  To: u-boot

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.

---

diff --git a/common/lcd.c b/common/lcd.c
index eec1f53..e03cff3 100644
--- a/common/lcd.c
+++ b/common/lcd.c
@@ -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++);

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [U-Boot-Users] [PATCH] Fix bitmap display for atmel lcd controller
  2008-07-30 15:09 [U-Boot-Users] [PATCH] Fix bitmap display for atmel lcd controller Mark Jackson
@ 2008-07-31 15:43 ` Wolfgang Denk
  0 siblings, 0 replies; 2+ messages in thread
From: Wolfgang Denk @ 2008-07-31 15:43 UTC (permalink / raw)
  To: u-boot

In message <48908446.8020801@mimc.co.uk> 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

-- 
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 <10911@jpl-devvax.JPL.NASA.GOV>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-07-31 15:43 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-30 15:09 [U-Boot-Users] [PATCH] Fix bitmap display for atmel lcd controller Mark Jackson
2008-07-31 15:43 ` Wolfgang Denk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox