aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-pxa/colibri-pxa320.c
diff options
context:
space:
mode:
authorDaniel Mack <daniel@caiaq.de>2009-03-22 21:04:19 -0400
committerEric Miao <eric.miao@marvell.com>2009-03-22 21:59:55 -0400
commit91fcfb908d62038c3c2cdecb7fb8aa2c98cb70a2 (patch)
treedf6bae91c0dfac50540532ab4ffc495a3378c83b /arch/arm/mach-pxa/colibri-pxa320.c
parentbac07ecd6c9b16656aced6dc4f9f070120153046 (diff)
[ARM] pxa: Add Colibri LCD functions
This adds LCD functions for Colibri PXA300 and Colibri PXA320 and configures a LQ043T3DX02 panel. Original-code-by: Matthias Meier <matthias.j.meier@gmx.net> Signed-off-by: Daniel Mack <daniel@caiaq.de> Signed-off-by: Eric Miao <eric.miao@marvell.com>
Diffstat (limited to 'arch/arm/mach-pxa/colibri-pxa320.c')
-rw-r--r--arch/arm/mach-pxa/colibri-pxa320.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/arch/arm/mach-pxa/colibri-pxa320.c b/arch/arm/mach-pxa/colibri-pxa320.c
index 86cb202847e8..b67736743518 100644
--- a/arch/arm/mach-pxa/colibri-pxa320.c
+++ b/arch/arm/mach-pxa/colibri-pxa320.c
@@ -25,6 +25,7 @@
25#include <mach/pxa3xx-regs.h> 25#include <mach/pxa3xx-regs.h>
26#include <mach/mfp-pxa320.h> 26#include <mach/mfp-pxa320.h>
27#include <mach/colibri.h> 27#include <mach/colibri.h>
28#include <mach/pxafb.h>
28#include <mach/ohci.h> 29#include <mach/ohci.h>
29 30
30#include "generic.h" 31#include "generic.h"
@@ -108,10 +109,48 @@ static mfp_cfg_t colibri_pxa320_mmc_pin_config[] __initdata = {
108 GPIO21_MMC1_DAT3 109 GPIO21_MMC1_DAT3
109}; 110};
110 111
112#if defined(CONFIG_FB_PXA) || defined(CONFIG_FB_PXA_MODULE)
113static mfp_cfg_t colibri_pxa320_lcd_pin_config[] __initdata = {
114 GPIO6_2_LCD_LDD_0,
115 GPIO7_2_LCD_LDD_1,
116 GPIO8_2_LCD_LDD_2,
117 GPIO9_2_LCD_LDD_3,
118 GPIO10_2_LCD_LDD_4,
119 GPIO11_2_LCD_LDD_5,
120 GPIO12_2_LCD_LDD_6,
121 GPIO13_2_LCD_LDD_7,
122 GPIO63_LCD_LDD_8,
123 GPIO64_LCD_LDD_9,
124 GPIO65_LCD_LDD_10,
125 GPIO66_LCD_LDD_11,
126 GPIO67_LCD_LDD_12,
127 GPIO68_LCD_LDD_13,
128 GPIO69_LCD_LDD_14,
129 GPIO70_LCD_LDD_15,
130 GPIO71_LCD_LDD_16,
131 GPIO72_LCD_LDD_17,
132 GPIO73_LCD_CS_N,
133 GPIO74_LCD_VSYNC,
134 GPIO14_2_LCD_FCLK,
135 GPIO15_2_LCD_LCLK,
136 GPIO16_2_LCD_PCLK,
137 GPIO17_2_LCD_BIAS,
138};
139
140static void __init colibri_pxa320_init_lcd(void)
141{
142 pxa3xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa320_lcd_pin_config));
143}
144#else
145static inline void colibri_pxa320_init_lcd(void) {}
146#endif
147
111void __init colibri_pxa320_init(void) 148void __init colibri_pxa320_init(void)
112{ 149{
113 colibri_pxa320_init_eth(); 150 colibri_pxa320_init_eth();
114 colibri_pxa320_init_ohci(); 151 colibri_pxa320_init_ohci();
152 colibri_pxa320_init_lcd();
153 colibri_pxa3xx_init_lcd(mfp_to_gpio(GPIO39_GPIO));
115 colibri_pxa3xx_init_mmc(ARRAY_AND_SIZE(colibri_pxa320_mmc_pin_config), 154 colibri_pxa3xx_init_mmc(ARRAY_AND_SIZE(colibri_pxa320_mmc_pin_config),
116 mfp_to_gpio(MFP_PIN_GPIO28)); 155 mfp_to_gpio(MFP_PIN_GPIO28));
117} 156}