aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx2/pcm970-baseboard.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2009-03-19 03:25:41 -0400
committerSascha Hauer <s.hauer@pengutronix.de>2009-08-07 06:10:56 -0400
commit343684ffb793a3c371579b7bbc16724713ee5ac7 (patch)
tree148ad5f2ba60bf529732645624998798c072da90 /arch/arm/mach-mx2/pcm970-baseboard.c
parentd6b515028863a912d051d371b6d71e09f2a9ff19 (diff)
imxfb: Add support for multiple displays
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx2/pcm970-baseboard.c')
-rw-r--r--arch/arm/mach-mx2/pcm970-baseboard.c83
1 files changed, 56 insertions, 27 deletions
diff --git a/arch/arm/mach-mx2/pcm970-baseboard.c b/arch/arm/mach-mx2/pcm970-baseboard.c
index 6a3acaf57dd4..8e2bc94f1a03 100644
--- a/arch/arm/mach-mx2/pcm970-baseboard.c
+++ b/arch/arm/mach-mx2/pcm970-baseboard.c
@@ -125,35 +125,64 @@ static struct imxmmc_platform_data sdhc_pdata = {
125 .exit = pcm970_sdhc2_exit, 125 .exit = pcm970_sdhc2_exit,
126}; 126};
127 127
128/* 128static struct imx_fb_videomode pcm970_modes[] = {
129 * Connected is a portrait Sharp-QVGA display 129 {
130 * of type: LQ035Q7DH06 130 .mode = {
131 */ 131 .name = "Sharp-LQ035Q7",
132static struct imx_fb_platform_data pcm038_fb_data = { 132 .refresh = 60,
133 .pixclock = 188679, /* in ps (5.3MHz) */ 133 .xres = 240,
134 .xres = 240, 134 .yres = 320,
135 .yres = 320, 135 .pixclock = 188679, /* in ps (5.3MHz) */
136 136 .hsync_len = 7,
137 .bpp = 16, 137 .left_margin = 5,
138 .hsync_len = 7, 138 .right_margin = 16,
139 .left_margin = 5, 139 .vsync_len = 1,
140 .right_margin = 16, 140 .upper_margin = 7,
141 .lower_margin = 9,
142 },
143 /*
144 * - HSYNC active high
145 * - VSYNC active high
146 * - clk notenabled while idle
147 * - clock not inverted
148 * - data not inverted
149 * - data enable low active
150 * - enable sharp mode
151 */
152 .pcr = 0xF00080C0,
153 .bpp = 16,
154 }, {
155 .mode = {
156 .name = "TX090",
157 .refresh = 60,
158 .xres = 240,
159 .yres = 320,
160 .pixclock = 38255,
161 .left_margin = 144,
162 .right_margin = 0,
163 .upper_margin = 7,
164 .lower_margin = 40,
165 .hsync_len = 96,
166 .vsync_len = 1,
167 },
168 /*
169 * - HSYNC active low (1 << 22)
170 * - VSYNC active low (1 << 23)
171 * - clk notenabled while idle
172 * - clock not inverted
173 * - data not inverted
174 * - data enable low active
175 * - enable sharp mode
176 */
177 .pcr = 0xF0008080 | (1<<22) | (1<<23) | (1<<19),
178 .bpp = 32,
179 },
180};
141 181
142 .vsync_len = 1, 182static struct imx_fb_platform_data pcm038_fb_data = {
143 .upper_margin = 7, 183 .mode = pcm970_modes,
144 .lower_margin = 9, 184 .num_modes = ARRAY_SIZE(pcm970_modes),
145 .fixed_screen_cpu = 0,
146 185
147 /*
148 * - HSYNC active high
149 * - VSYNC active high
150 * - clk notenabled while idle
151 * - clock not inverted
152 * - data not inverted
153 * - data enable low active
154 * - enable sharp mode
155 */
156 .pcr = 0xFA0080C0,
157 .pwmr = 0x00A903FF, 186 .pwmr = 0x00A903FF,
158 .lscr1 = 0x00120300, 187 .lscr1 = 0x00120300,
159 .dmacr = 0x00020010, 188 .dmacr = 0x00020010,