[ARM] 3047/1: SMDK2440 - add framebuffer platform data
Patch from Ben Dooks Add platform data for framebuffer for the onboard LCD module Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
58c8d570f3
commit
5771897614
1 changed files with 70 additions and 0 deletions
|
@ -19,6 +19,7 @@
|
||||||
* 10-Mar-2005 LCVR Replaced S3C2410_VA by S3C24XX_VA
|
* 10-Mar-2005 LCVR Replaced S3C2410_VA by S3C24XX_VA
|
||||||
* 14-Mar-2005 BJD void __iomem fixes
|
* 14-Mar-2005 BJD void __iomem fixes
|
||||||
* 20-Sep-2005 BJD Added static to non-exported items
|
* 20-Sep-2005 BJD Added static to non-exported items
|
||||||
|
* 26-Oct-2005 BJD Added framebuffer data
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <linux/kernel.h>
|
#include <linux/kernel.h>
|
||||||
|
@ -41,7 +42,10 @@
|
||||||
//#include <asm/debug-ll.h>
|
//#include <asm/debug-ll.h>
|
||||||
#include <asm/arch/regs-serial.h>
|
#include <asm/arch/regs-serial.h>
|
||||||
#include <asm/arch/regs-gpio.h>
|
#include <asm/arch/regs-gpio.h>
|
||||||
|
#include <asm/arch/regs-lcd.h>
|
||||||
|
|
||||||
#include <asm/arch/idle.h>
|
#include <asm/arch/idle.h>
|
||||||
|
#include <asm/arch/fb.h>
|
||||||
|
|
||||||
#include "s3c2410.h"
|
#include "s3c2410.h"
|
||||||
#include "s3c2440.h"
|
#include "s3c2440.h"
|
||||||
|
@ -86,6 +90,70 @@ static struct s3c2410_uartcfg smdk2440_uartcfgs[] = {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* LCD driver info */
|
||||||
|
|
||||||
|
static struct s3c2410fb_mach_info smdk2440_lcd_cfg __initdata = {
|
||||||
|
.regs = {
|
||||||
|
|
||||||
|
.lcdcon1 = S3C2410_LCDCON1_TFT16BPP |
|
||||||
|
S3C2410_LCDCON1_TFT |
|
||||||
|
S3C2410_LCDCON1_CLKVAL(0x04),
|
||||||
|
|
||||||
|
.lcdcon2 = S3C2410_LCDCON2_VBPD(7) |
|
||||||
|
S3C2410_LCDCON2_LINEVAL(319) |
|
||||||
|
S3C2410_LCDCON2_VFPD(6) |
|
||||||
|
S3C2410_LCDCON2_VSPW(3),
|
||||||
|
|
||||||
|
.lcdcon3 = S3C2410_LCDCON3_HBPD(19) |
|
||||||
|
S3C2410_LCDCON3_HOZVAL(239) |
|
||||||
|
S3C2410_LCDCON3_HFPD(7),
|
||||||
|
|
||||||
|
.lcdcon4 = S3C2410_LCDCON4_MVAL(0) |
|
||||||
|
S3C2410_LCDCON4_HSPW(3),
|
||||||
|
|
||||||
|
.lcdcon5 = S3C2410_LCDCON5_FRM565 |
|
||||||
|
S3C2410_LCDCON5_INVVLINE |
|
||||||
|
S3C2410_LCDCON5_INVVFRAME |
|
||||||
|
S3C2410_LCDCON5_PWREN |
|
||||||
|
S3C2410_LCDCON5_HWSWP,
|
||||||
|
},
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
/* currently setup by downloader */
|
||||||
|
.gpccon = 0xaa940659,
|
||||||
|
.gpccon_mask = 0xffffffff,
|
||||||
|
.gpcup = 0x0000ffff,
|
||||||
|
.gpcup_mask = 0xffffffff,
|
||||||
|
.gpdcon = 0xaa84aaa0,
|
||||||
|
.gpdcon_mask = 0xffffffff,
|
||||||
|
.gpdup = 0x0000faff,
|
||||||
|
.gpdup_mask = 0xffffffff,
|
||||||
|
#endif
|
||||||
|
|
||||||
|
.lpcsel = ((0xCE6) & ~7) | 1<<4,
|
||||||
|
|
||||||
|
.width = 240,
|
||||||
|
.height = 320,
|
||||||
|
|
||||||
|
.xres = {
|
||||||
|
.min = 240,
|
||||||
|
.max = 240,
|
||||||
|
.defval = 240,
|
||||||
|
},
|
||||||
|
|
||||||
|
.yres = {
|
||||||
|
.min = 320,
|
||||||
|
.max = 320,
|
||||||
|
.defval = 320,
|
||||||
|
},
|
||||||
|
|
||||||
|
.bpp = {
|
||||||
|
.min = 16,
|
||||||
|
.max = 16,
|
||||||
|
.defval = 16,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
static struct platform_device *smdk2440_devices[] __initdata = {
|
static struct platform_device *smdk2440_devices[] __initdata = {
|
||||||
&s3c_device_usb,
|
&s3c_device_usb,
|
||||||
&s3c_device_lcd,
|
&s3c_device_lcd,
|
||||||
|
@ -121,6 +189,8 @@ static void __init smdk2440_machine_init(void)
|
||||||
s3c2410_gpio_setpin(S3C2410_GPF6, 0);
|
s3c2410_gpio_setpin(S3C2410_GPF6, 0);
|
||||||
s3c2410_gpio_setpin(S3C2410_GPF7, 0);
|
s3c2410_gpio_setpin(S3C2410_GPF7, 0);
|
||||||
|
|
||||||
|
s3c24xx_fb_set_platdata(&smdk2440_lcd_cfg);
|
||||||
|
|
||||||
s3c2410_pm_init();
|
s3c2410_pm_init();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue