소스 검색

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 17 년 전
부모
커밋
a5bcb01fbd
1개의 변경된 파일4개의 추가작업 그리고 0개의 파일을 삭제
  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);
 			    value << ATMEL_LCDC_CLKVAL_OFFSET);
 
 
 	/* Initialize control register 2 */
 	/* 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;
 	value = ATMEL_LCDC_MEMOR_LITTLE | ATMEL_LCDC_CLKMOD_ALWAYSACTIVE;
+#endif
 	if (panel_info.vl_tft)
 	if (panel_info.vl_tft)
 		value |= ATMEL_LCDC_DISTYPE_TFT;
 		value |= ATMEL_LCDC_DISTYPE_TFT;