diff options
author | Krzysztof Helt <krzysztof.h1@wp.pl> | 2007-10-16 12:28:57 +0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-16 20:43:16 +0400 |
commit | 1f4115376c488d3bb3490259ae5b2c3b035760a5 (patch) | |
tree | 26d93492e72aed892d1d752ce5082508fd2bd703 | |
parent | 09fe75f6f934597f765748342ca6fb378ee7ecdb (diff) | |
download | linux-1f4115376c488d3bb3490259ae5b2c3b035760a5.tar.xz |
s3c2410fb: add margin fields to s3c2410fb_display
This patch adds margins fields to the s3c2410fb_display
structure. It also sets display type and horizontal
margins in all platform files that use the s3c2410fb
driver.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Antonino Daplas <adaplas@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | arch/arm/mach-s3c2410/mach-amlm5900.c | 7 | ||||
-rw-r--r-- | arch/arm/mach-s3c2410/mach-bast.c | 27 | ||||
-rw-r--r-- | arch/arm/mach-s3c2410/mach-h1940.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-s3c2410/mach-qt2410.c | 9 | ||||
-rw-r--r-- | arch/arm/mach-s3c2440/mach-rx3715.c | 15 | ||||
-rw-r--r-- | arch/arm/mach-s3c2440/mach-smdk2440.c | 2 | ||||
-rw-r--r-- | include/asm-arm/arch-s3c2410/fb.h | 7 |
7 files changed, 61 insertions, 9 deletions
diff --git a/arch/arm/mach-s3c2410/mach-amlm5900.c b/arch/arm/mach-s3c2410/mach-amlm5900.c index 19469340af04..e96b413a114d 100644 --- a/arch/arm/mach-s3c2410/mach-amlm5900.c +++ b/arch/arm/mach-s3c2410/mach-amlm5900.c @@ -172,12 +172,13 @@ static struct s3c2410fb_display __initdata amlm5900_lcd_info = { .width = 160, .height = 160, -/* commented out until stn patch is submitted -* .type = S3C2410_LCDCON1_STN4, -*/ + .type = S3C2410_LCDCON1_STN4, + .xres = 160, .yres = 160, .bpp = 4, + .left_margin = 1 << (4 + 3), + .right_margin = 8 << 3, .regs = { .lcdcon1 = 0x00008225, diff --git a/arch/arm/mach-s3c2410/mach-bast.c b/arch/arm/mach-s3c2410/mach-bast.c index be50201809a1..1b4f9f922c8a 100644 --- a/arch/arm/mach-s3c2410/mach-bast.c +++ b/arch/arm/mach-s3c2410/mach-bast.c @@ -469,10 +469,13 @@ static struct platform_device bast_device_axpp = { static struct s3c2410fb_display __initdata bast_lcd_info[] = { { + .type = S3C2410_LCDCON1_TFT, .width = 640, .height = 480, .xres = 320, .yres = 240, + .left_margin = 40, + .right_margin = 20, .bpp = 4, @@ -485,12 +488,15 @@ static struct s3c2410fb_display __initdata bast_lcd_info[] = { } }, { + .type = S3C2410_LCDCON1_TFT, .width = 640, .height = 480, .xres = 640, .yres = 480, .bpp = 4, + .left_margin = 40, + .right_margin = 20, .regs = { .lcdcon1 = 0x00000176, @@ -501,12 +507,15 @@ static struct s3c2410fb_display __initdata bast_lcd_info[] = { } }, { + .type = S3C2410_LCDCON1_TFT, .width = 640, .height = 480, .xres = 800, .yres = 600, .bpp = 4, + .left_margin = 40, + .right_margin = 20, .regs = { .lcdcon1 = 0x00000176, @@ -517,12 +526,15 @@ static struct s3c2410fb_display __initdata bast_lcd_info[] = { } }, { + .type = S3C2410_LCDCON1_TFT, .width = 640, .height = 480, .xres = 320, .yres = 240, .bpp = 8, + .left_margin = 40, + .right_margin = 20, .regs = { .lcdcon1 = 0x00000176, @@ -533,12 +545,15 @@ static struct s3c2410fb_display __initdata bast_lcd_info[] = { } }, { + .type = S3C2410_LCDCON1_TFT, .width = 640, .height = 480, .xres = 640, .yres = 480, .bpp = 8, + .left_margin = 40, + .right_margin = 20, .regs = { .lcdcon1 = 0x00000176, @@ -549,12 +564,15 @@ static struct s3c2410fb_display __initdata bast_lcd_info[] = { } }, { + .type = S3C2410_LCDCON1_TFT, .width = 640, .height = 480, .xres = 800, .yres = 600, .bpp = 8, + .left_margin = 40, + .right_margin = 20, .regs = { .lcdcon1 = 0x00000176, @@ -565,12 +583,15 @@ static struct s3c2410fb_display __initdata bast_lcd_info[] = { } }, { + .type = S3C2410_LCDCON1_TFT, .width = 640, .height = 480, .xres = 320, .yres = 240, .bpp = 16, + .left_margin = 40, + .right_margin = 20, .regs = { .lcdcon1 = 0x00000176, @@ -581,12 +602,15 @@ static struct s3c2410fb_display __initdata bast_lcd_info[] = { } }, { + .type = S3C2410_LCDCON1_TFT, .width = 640, .height = 480, .xres = 640, .yres = 480, .bpp = 16, + .left_margin = 40, + .right_margin = 20, .regs = { .lcdcon1 = 0x00000176, @@ -597,12 +621,15 @@ static struct s3c2410fb_display __initdata bast_lcd_info[] = { } }, { + .type = S3C2410_LCDCON1_TFT, .width = 640, .height = 480, .xres = 800, .yres = 600, .bpp = 16, + .left_margin = 40, + .right_margin = 20, .regs = { .lcdcon1 = 0x00000176, diff --git a/arch/arm/mach-s3c2410/mach-h1940.c b/arch/arm/mach-s3c2410/mach-h1940.c index ab04b2961d6c..372caa289f2b 100644 --- a/arch/arm/mach-s3c2410/mach-h1940.c +++ b/arch/arm/mach-s3c2410/mach-h1940.c @@ -156,11 +156,14 @@ static struct s3c2410fb_display h1940_lcd __initdata = { S3C2410_LCDCON5_HWSWP, }, + .type = S3C2410_LCDCON1_TFT, .width = 240, .height = 320, .xres = 240, .yres = 320, .bpp = 16, + .left_margin = 20, + .right_margin = 8, }; static struct s3c2410fb_mach_info h1940_fb_info __initdata = { diff --git a/arch/arm/mach-s3c2410/mach-qt2410.c b/arch/arm/mach-s3c2410/mach-qt2410.c index 03ea5d7b2a17..0c1ff0a41a99 100644 --- a/arch/arm/mach-s3c2410/mach-qt2410.c +++ b/arch/arm/mach-s3c2410/mach-qt2410.c @@ -123,12 +123,15 @@ static struct s3c2410fb_display qt2410_lcd_cfg[] __initdata = { S3C2410_LCDCON5_HWSWP, }, + .type = S3C2410_LCDCON1_TFT, .width = 640, .height = 480, .xres = 640, .yres = 480, .bpp = 16, + .left_margin = 44, + .right_margin = 116, }, { /* Configuration for 480x640 toppoly TD028TTEC1 */ @@ -157,11 +160,14 @@ static struct s3c2410fb_display qt2410_lcd_cfg[] __initdata = { S3C2410_LCDCON5_HWSWP, }, + .type = S3C2410_LCDCON1_TFT, .width = 480, .height = 640, .xres = 480, .yres = 640, .bpp = 16, + .left_margin = 8, + .right_margin = 24, }, { /* Config for 240x320 LCD */ @@ -190,11 +196,14 @@ static struct s3c2410fb_display qt2410_lcd_cfg[] __initdata = { S3C2410_LCDCON5_HWSWP, }, + .type = S3C2410_LCDCON1_TFT, .width = 240, .height = 320, .xres = 240, .yres = 320, .bpp = 16, + .left_margin = 13, + .right_margin = 8, }, }; diff --git a/arch/arm/mach-s3c2440/mach-rx3715.c b/arch/arm/mach-s3c2440/mach-rx3715.c index c83078878497..dab8e7b474d8 100644 --- a/arch/arm/mach-s3c2440/mach-rx3715.c +++ b/arch/arm/mach-s3c2440/mach-rx3715.c @@ -133,12 +133,15 @@ static struct s3c2410fb_display rx3715_lcdcfg __initdata = { S3C2410_LCDCON5_HWSWP, }, - .width = 240, - .height = 320, - - .xres = 240, - .yres = 320, - .bpp = 16, + .type = S3C2410_LCDCON1_TFT, + .width = 240, + .height = 320, + + .xres = 240, + .yres = 320, + .bpp = 16, + .left_margin = 36, + .right_margin = 36, }; static struct s3c2410fb_mach_info rx3715_fb_info __initdata = { diff --git a/arch/arm/mach-s3c2440/mach-smdk2440.c b/arch/arm/mach-s3c2440/mach-smdk2440.c index f7dac7d54064..5930f1708027 100644 --- a/arch/arm/mach-s3c2440/mach-smdk2440.c +++ b/arch/arm/mach-s3c2440/mach-smdk2440.c @@ -137,6 +137,8 @@ static struct s3c2410fb_display smdk2440_lcd_cfg __initdata = { .xres = 240, .yres = 320, .bpp = 16, + .left_margin = 20, + .right_margin = 8, }; static struct s3c2410fb_mach_info smdk2440_fb_info __initdata = { diff --git a/include/asm-arm/arch-s3c2410/fb.h b/include/asm-arm/arch-s3c2410/fb.h index c0e18b2c2d4a..a76585ae651d 100644 --- a/include/asm-arm/arch-s3c2410/fb.h +++ b/include/asm-arm/arch-s3c2410/fb.h @@ -36,6 +36,13 @@ struct s3c2410fb_display { unsigned short yres; unsigned short bpp; + unsigned short left_margin; /* value in pixels (TFT) or HCLKs (STN) */ + unsigned short right_margin; /* value in pixels (TFT) or HCLKs (STN) */ + unsigned short hsync_len; /* value in pixels (TFT) or HCLKs (STN) */ + unsigned short upper_margin; /* value in lines (TFT) or 0 (STN) */ + unsigned short lower_margin; /* value in lines (TFT) or 0 (STN) */ + unsigned short vsync_len; /* value in lines (TFT) or 0 (STN) */ + /* lcd configuration registers */ struct s3c2410fb_hw regs; }; |