diff options
| author | Marek Vasut <marek.vasut@gmail.com> | 2009-11-28 13:57:43 +0100 | 
|---|---|---|
| committer | Marek Vasut <marek.vasut@gmail.com> | 2010-07-14 22:41:39 +0200 | 
| commit | 8c35d0c570e8776d316cfca92e42d14de1ab77d9 (patch) | |
| tree | 19b059500cdeaa0663993dd6b673402a285f2afe | |
| parent | d6f324d03d7829a1da1dee8b60f91b173a3976f0 (diff) | |
| download | olio-uboot-2014.01-8c35d0c570e8776d316cfca92e42d14de1ab77d9.tar.xz olio-uboot-2014.01-8c35d0c570e8776d316cfca92e42d14de1ab77d9.zip | |
Enable PXAFB for PXA27X and PXA3XX
| -rw-r--r-- | arch/arm/cpu/pxa/pxafb.c | 9 | ||||
| -rw-r--r-- | common/lcd.c | 12 | ||||
| -rw-r--r-- | include/lcd.h | 2 | 
3 files changed, 15 insertions, 8 deletions
| diff --git a/arch/arm/cpu/pxa/pxafb.c b/arch/arm/cpu/pxa/pxafb.c index d56c5f099..1cb78f017 100644 --- a/arch/arm/cpu/pxa/pxafb.c +++ b/arch/arm/cpu/pxa/pxafb.c @@ -292,7 +292,9 @@ static int pxafb_init_mem (void *lcdbase, vidinfo_t *vid)  	return 0;  } - +#ifdef	CONFIG_CPU_MONAHANS +static inline void pxafb_setup_gpio (vidinfo_t *vid) {} +#else  static void pxafb_setup_gpio (vidinfo_t *vid)  {  	u_long lccr0; @@ -349,6 +351,7 @@ static void pxafb_setup_gpio (vidinfo_t *vid)  		printf("pxafb_setup_gpio: unable to determine bits per pixel\n");  	}  } +#endif  static void pxafb_enable_controller (vidinfo_t *vid)  { @@ -363,7 +366,11 @@ static void pxafb_enable_controller (vidinfo_t *vid)  	FDADR1 = vid->pxa.fdadr1;  	LCCR0 |= LCCR0_ENB; +#ifdef	CONFIG_CPU_MONAHANS +	CKENA |= CKENA_1_LCD; +#else  	CKEN |= CKEN16_LCD; +#endif  	debug("FDADR0 = 0x%08x\n", (unsigned int)FDADR0);  	debug("FDADR1 = 0x%08x\n", (unsigned int)FDADR1); diff --git a/common/lcd.c b/common/lcd.c index 93ddedf01..d854c21e9 100644 --- a/common/lcd.c +++ b/common/lcd.c @@ -41,7 +41,7 @@  #include <lcd.h>  #include <watchdog.h> -#if defined(CONFIG_PXA250) +#if defined CONFIG_PXA250 || defined CONFIG_PXA27X || defined CONFIG_CPU_MONAHANS  #include <asm/byteorder.h>  #endif @@ -503,7 +503,7 @@ void bitmap_plot (int x, int y)  	uchar *bmap;  	uchar *fb;  	ushort *fb16; -#if defined(CONFIG_PXA250) +#if defined CONFIG_PXA250 || defined CONFIG_PXA27X || defined CONFIG_CPU_MONAHANS  	struct pxafb_info *fbi = &panel_info.pxa;  #elif defined(CONFIG_MPC823)  	volatile immap_t *immr = (immap_t *) CONFIG_SYS_IMMR; @@ -519,7 +519,7 @@ void bitmap_plot (int x, int y)  	if (NBITS(panel_info.vl_bpix) < 12) {  		/* Leave room for default color map */ -#if defined(CONFIG_PXA250) +#if defined CONFIG_PXA250 || defined CONFIG_PXA27X || defined CONFIG_CPU_MONAHANS  		cmap = (ushort *)fbi->palette;  #elif defined(CONFIG_MPC823)  		cmap = (ushort *)&(cp->lcd_cmap[BMP_LOGO_OFFSET*sizeof(ushort)]); @@ -615,7 +615,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)  	unsigned long pwidth = panel_info.vl_col;  	unsigned colors, bpix, bmp_bpix;  	unsigned long compression; -#if defined(CONFIG_PXA250) +#if defined CONFIG_PXA250 || defined CONFIG_PXA27X || defined CONFIG_CPU_MONAHANS  	struct pxafb_info *fbi = &panel_info.pxa;  #elif defined(CONFIG_MPC823)  	volatile immap_t *immr = (immap_t *) CONFIG_SYS_IMMR; @@ -656,7 +656,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)  #if !defined(CONFIG_MCC200)  	/* MCC200 LCD doesn't need CMAP, supports 1bpp b&w only */  	if (bmp_bpix == 8) { -#if defined(CONFIG_PXA250) +#if defined CONFIG_PXA250 || defined CONFIG_PXA27X || defined CONFIG_CPU_MONAHANS  		cmap = (ushort *)fbi->palette;  #elif defined(CONFIG_MPC823)  		cmap = (ushort *)&(cp->lcd_cmap[255*sizeof(ushort)]); @@ -745,7 +745,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)  			WATCHDOG_RESET();  			for (j = 0; j < width; j++) {  				if (bpix != 16) { -#if defined(CONFIG_PXA250) || defined(CONFIG_ATMEL_LCD) +#if defined CONFIG_PXA250 || defined CONFIG_PXA27X || defined CONFIG_CPU_MONAHANS || defined(CONFIG_ATMEL_LCD)  					*(fb++) = *(bmap++);  #elif defined(CONFIG_MPC823) || defined(CONFIG_MCC200)  					*(fb++) = 255 - *(bmap++); diff --git a/include/lcd.h b/include/lcd.h index 1f85daa8a..cd9d49d3a 100644 --- a/include/lcd.h +++ b/include/lcd.h @@ -87,7 +87,7 @@ typedef struct vidinfo {  	u_char	vl_wbf;		/* Wait between frames */  } vidinfo_t; -#elif defined CONFIG_PXA250 +#elif defined CONFIG_PXA250 || defined CONFIG_PXA27X || defined CONFIG_CPU_MONAHANS  /*   * PXA LCD DMA descriptor   */ |