Explorar o código

Fix Atmel LCD controller endianess for AVR32 processors

The Atmel lcd controller is used on Atmel's AT91 (little endian) and
AVR32 (big endian) platforms.

As such, the controller can handle both big and little endian memory.

This patch fixes the driver for the AVR32 platform.

Signed-off-by: Mark Jackson <mpfj@mimc.co.uk>
Mark Jackson %!s(int64=17) %!d(string=hai) anos
pai
achega
a5bcb01fbd
Modificáronse 1 ficheiros con 4 adicións e 0 borrados
  1. 4 0
      drivers/video/atmel_lcdfb.c

+ 4 - 0
drivers/video/atmel_lcdfb.c

@@ -100,7 +100,11 @@ void lcd_ctrl_init(void *lcdbase)
 			    value << ATMEL_LCDC_CLKVAL_OFFSET);
 
 	/* Initialize control register 2 */
+#ifdef CONFIG_AVR32
+	value = ATMEL_LCDC_MEMOR_BIG | ATMEL_LCDC_CLKMOD_ALWAYSACTIVE;
+#else
 	value = ATMEL_LCDC_MEMOR_LITTLE | ATMEL_LCDC_CLKMOD_ALWAYSACTIVE;
+#endif
 	if (panel_info.vl_tft)
 		value |= ATMEL_LCDC_DISTYPE_TFT;