diff options
author | Christer Weinigel <christer@weinigel.se> | 2008-07-07 13:12:46 -0400 |
---|---|---|
committer | Ben Dooks <ben-linux@fluff.org> | 2008-07-07 13:13:04 -0400 |
commit | e43f238390168a13416d4f21803f76b1ff45fb95 (patch) | |
tree | 54e010041b9b610f2bcc08d0f16074fd2afb9f16 /arch/arm/mach-s3c2410/mach-n30.c | |
parent | 9579087331ee0cd220d29aa5bda79ff55b33c228 (diff) |
[ARM] Acer n30: LCD support.
This patch adds the configuration needed for the LCD display on the n30.
Signed-off-by: Christer Weinigel <christer@weinigel.se>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Diffstat (limited to 'arch/arm/mach-s3c2410/mach-n30.c')
-rw-r--r-- | arch/arm/mach-s3c2410/mach-n30.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/arch/arm/mach-s3c2410/mach-n30.c b/arch/arm/mach-s3c2410/mach-n30.c index 621b343adbed..476b15c089a7 100644 --- a/arch/arm/mach-s3c2410/mach-n30.c +++ b/arch/arm/mach-s3c2410/mach-n30.c | |||
@@ -31,8 +31,10 @@ | |||
31 | #include <asm/irq.h> | 31 | #include <asm/irq.h> |
32 | #include <asm/mach-types.h> | 32 | #include <asm/mach-types.h> |
33 | 33 | ||
34 | #include <asm/arch/fb.h> | ||
34 | #include <asm/arch/leds-gpio.h> | 35 | #include <asm/arch/leds-gpio.h> |
35 | #include <asm/arch/regs-gpio.h> | 36 | #include <asm/arch/regs-gpio.h> |
37 | #include <asm/arch/regs-lcd.h> | ||
36 | 38 | ||
37 | #include <asm/mach/arch.h> | 39 | #include <asm/mach/arch.h> |
38 | #include <asm/mach/irq.h> | 40 | #include <asm/mach/irq.h> |
@@ -290,6 +292,31 @@ static struct platform_device n30_warning_led = { | |||
290 | }, | 292 | }, |
291 | }; | 293 | }; |
292 | 294 | ||
295 | static struct s3c2410fb_display n30_display __initdata = { | ||
296 | .type = S3C2410_LCDCON1_TFT, | ||
297 | .width = 240, | ||
298 | .height = 320, | ||
299 | .pixclock = 170000, | ||
300 | .xres = 240, | ||
301 | .yres = 320, | ||
302 | .bpp = 16, | ||
303 | .left_margin = 3, | ||
304 | .right_margin = 40, | ||
305 | .hsync_len = 40, | ||
306 | .upper_margin = 2, | ||
307 | .lower_margin = 3, | ||
308 | .vsync_len = 2, | ||
309 | |||
310 | .lcdcon5 = S3C2410_LCDCON5_INVVLINE | S3C2410_LCDCON5_INVVFRAME, | ||
311 | }; | ||
312 | |||
313 | static struct s3c2410fb_mach_info n30_fb_info __initdata = { | ||
314 | .displays = &n30_display, | ||
315 | .num_displays = 1, | ||
316 | .default_display = 0, | ||
317 | .lpcsel= 0x06, | ||
318 | }; | ||
319 | |||
293 | static struct platform_device *n30_devices[] __initdata = { | 320 | static struct platform_device *n30_devices[] __initdata = { |
294 | &s3c_device_lcd, | 321 | &s3c_device_lcd, |
295 | &s3c_device_wdt, | 322 | &s3c_device_wdt, |
@@ -334,6 +361,7 @@ static void __init n30_init_irq(void) | |||
334 | 361 | ||
335 | static void __init n30_init(void) | 362 | static void __init n30_init(void) |
336 | { | 363 | { |
364 | s3c24xx_fb_set_platdata(&n30_fb_info); | ||
337 | s3c_device_i2c.dev.platform_data = &n30_i2ccfg; | 365 | s3c_device_i2c.dev.platform_data = &n30_i2ccfg; |
338 | s3c24xx_udc_set_platdata(&n30_udc_cfg); | 366 | s3c24xx_udc_set_platdata(&n30_udc_cfg); |
339 | 367 | ||