mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-26 00:21:17 +00:00
[PATCH] s3c2410fb: Platform support for ARM S3C2410 framebuffer driver
This patch add the plateform specific stuff needed to configure and use the driver. Signed-Off-By: Arnaud Patard <arnaud.patard@rtp-net.org> Signed-off-by: Antonino Daplas <adaplas@pol.net> Cc: Russell King <rmk@arm.linux.org.uk> Cc: Ben Dooks <ben@trinity.fluff.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
20fd576768
commit
f92273c165
2 changed files with 61 additions and 1 deletions
|
@ -29,7 +29,7 @@
|
||||||
#include <asm/mach/arch.h>
|
#include <asm/mach/arch.h>
|
||||||
#include <asm/mach/map.h>
|
#include <asm/mach/map.h>
|
||||||
#include <asm/mach/irq.h>
|
#include <asm/mach/irq.h>
|
||||||
|
#include <asm/arch/fb.h>
|
||||||
#include <asm/hardware.h>
|
#include <asm/hardware.h>
|
||||||
#include <asm/io.h>
|
#include <asm/io.h>
|
||||||
#include <asm/irq.h>
|
#include <asm/irq.h>
|
||||||
|
@ -103,6 +103,15 @@ struct platform_device s3c_device_lcd = {
|
||||||
|
|
||||||
EXPORT_SYMBOL(s3c_device_lcd);
|
EXPORT_SYMBOL(s3c_device_lcd);
|
||||||
|
|
||||||
|
static struct s3c2410fb_mach_info s3c2410fb_info;
|
||||||
|
|
||||||
|
void __init set_s3c2410fb_info(struct s3c2410fb_mach_info *hard_s3c2410fb_info)
|
||||||
|
{
|
||||||
|
memcpy(&s3c2410fb_info,hard_s3c2410fb_info,sizeof(struct s3c2410fb_mach_info));
|
||||||
|
s3c_device_lcd.dev.platform_data = &s3c2410fb_info;
|
||||||
|
}
|
||||||
|
EXPORT_SYMBOL(set_s3c2410fb_info);
|
||||||
|
|
||||||
/* NAND Controller */
|
/* NAND Controller */
|
||||||
|
|
||||||
static struct resource s3c_nand_resource[] = {
|
static struct resource s3c_nand_resource[] = {
|
||||||
|
|
|
@ -45,6 +45,9 @@
|
||||||
|
|
||||||
//#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-lcd.h>
|
||||||
|
|
||||||
|
#include <asm/arch/fb.h>
|
||||||
|
|
||||||
#include <linux/serial_core.h>
|
#include <linux/serial_core.h>
|
||||||
|
|
||||||
|
@ -88,6 +91,48 @@ static struct s3c2410_uartcfg h1940_uartcfgs[] = {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set lcd on or off
|
||||||
|
**/
|
||||||
|
static struct s3c2410fb_mach_info h1940_lcdcfg __initdata = {
|
||||||
|
.fixed_syncs= 1,
|
||||||
|
.regs={
|
||||||
|
.lcdcon1= S3C2410_LCDCON1_TFT16BPP | \
|
||||||
|
S3C2410_LCDCON1_TFT | \
|
||||||
|
S3C2410_LCDCON1_CLKVAL(0x0C),
|
||||||
|
|
||||||
|
.lcdcon2= S3C2410_LCDCON2_VBPD(7) | \
|
||||||
|
S3C2410_LCDCON2_LINEVAL(319) | \
|
||||||
|
S3C2410_LCDCON2_VFPD(6) | \
|
||||||
|
S3C2410_LCDCON2_VSPW(0),
|
||||||
|
|
||||||
|
.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_HWSWP,
|
||||||
|
},
|
||||||
|
.lpcsel= 0x02,
|
||||||
|
.gpccon= 0xaa940659,
|
||||||
|
.gpccon_mask= 0xffffffff,
|
||||||
|
.gpcup= 0x0000ffff,
|
||||||
|
.gpcup_mask= 0xffffffff,
|
||||||
|
.gpdcon= 0xaa84aaa0,
|
||||||
|
.gpdcon_mask= 0xffffffff,
|
||||||
|
.gpdup= 0x0000faff,
|
||||||
|
.gpdup_mask= 0xffffffff,
|
||||||
|
|
||||||
|
.width= 240,
|
||||||
|
.height= 320,
|
||||||
|
.xres= {240,240,240},
|
||||||
|
.yres= {320,320,320},
|
||||||
|
.bpp= {16,16,16},
|
||||||
|
};
|
||||||
|
|
||||||
static struct platform_device *h1940_devices[] __initdata = {
|
static struct platform_device *h1940_devices[] __initdata = {
|
||||||
&s3c_device_usb,
|
&s3c_device_usb,
|
||||||
|
@ -116,6 +161,11 @@ void __init h1940_init_irq(void)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void __init h1940_init(void)
|
||||||
|
{
|
||||||
|
set_s3c2410fb_info(&h1940_lcdcfg);
|
||||||
|
}
|
||||||
|
|
||||||
MACHINE_START(H1940, "IPAQ-H1940")
|
MACHINE_START(H1940, "IPAQ-H1940")
|
||||||
/* Maintainer: Ben Dooks <ben@fluff.org> */
|
/* Maintainer: Ben Dooks <ben@fluff.org> */
|
||||||
.phys_ram = S3C2410_SDRAM_PA,
|
.phys_ram = S3C2410_SDRAM_PA,
|
||||||
|
@ -124,5 +174,6 @@ MACHINE_START(H1940, "IPAQ-H1940")
|
||||||
.boot_params = S3C2410_SDRAM_PA + 0x100,
|
.boot_params = S3C2410_SDRAM_PA + 0x100,
|
||||||
.map_io = h1940_map_io,
|
.map_io = h1940_map_io,
|
||||||
.init_irq = h1940_init_irq,
|
.init_irq = h1940_init_irq,
|
||||||
|
.init_machine = h1940_init,
|
||||||
.timer = &s3c24xx_timer,
|
.timer = &s3c24xx_timer,
|
||||||
MACHINE_END
|
MACHINE_END
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue