[PATCH] m32r: framebuffer device support
This patch is for supporting Epson s1d13xxx framebuffer device for m32r. # Sorry, a little bigger. The Epson s1d13806 is already supported by 2.6.12 kernel, and its driver is placed as drivers/video/s1d13xxxfb.c. For the m32r, a header file include/asm-m32r/s1d13806.h was prepared for several m32r target platforms. It was originally generated by an Epson tool S1D13806CFG.EXE, and modified manually for the m32r platforms. Signed-off-by: Hayato Fujiwara <fujiwara@linux-m32r.org> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
e34ac862ee
commit
316240f66a
@@ -3,8 +3,8 @@
|
||||
*
|
||||
* Setup routines for Renesas M32700UT Board
|
||||
*
|
||||
* Copyright (c) 2002 Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto, Takeo Takahashi
|
||||
* Copyright (c) 2002-2005 Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto, Takeo Takahashi
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU General
|
||||
* Public License. See the file "COPYING" in the main directory of this
|
||||
@@ -435,7 +435,7 @@ void __init init_IRQ(void)
|
||||
icu_data[M32R_IRQ_INT2].icucr = M32R_ICUCR_IEN|M32R_ICUCR_ISMOD01;
|
||||
enable_m32700ut_irq(M32R_IRQ_INT2);
|
||||
|
||||
//#if defined(CONFIG_VIDEO_M32R_AR)
|
||||
#if defined(CONFIG_VIDEO_M32R_AR)
|
||||
/*
|
||||
* INT3# is used for AR
|
||||
*/
|
||||
@@ -445,9 +445,11 @@ void __init init_IRQ(void)
|
||||
irq_desc[M32R_IRQ_INT3].depth = 1;
|
||||
icu_data[M32R_IRQ_INT3].icucr = M32R_ICUCR_IEN|M32R_ICUCR_ISMOD10;
|
||||
disable_m32700ut_irq(M32R_IRQ_INT3);
|
||||
//#endif /* CONFIG_VIDEO_M32R_AR */
|
||||
#endif /* CONFIG_VIDEO_M32R_AR */
|
||||
}
|
||||
|
||||
#if defined(CONFIG_SMC91X)
|
||||
|
||||
#define LAN_IOSTART 0x300
|
||||
#define LAN_IOEND 0x320
|
||||
static struct resource smc91x_resources[] = {
|
||||
@@ -469,10 +471,55 @@ static struct platform_device smc91x_device = {
|
||||
.num_resources = ARRAY_SIZE(smc91x_resources),
|
||||
.resource = smc91x_resources,
|
||||
};
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_FB_S1D13XXX)
|
||||
|
||||
#include <video/s1d13xxxfb.h>
|
||||
#include <asm/s1d13806.h>
|
||||
|
||||
static struct s1d13xxxfb_pdata s1d13xxxfb_data = {
|
||||
.initregs = s1d13xxxfb_initregs,
|
||||
.initregssize = ARRAY_SIZE(s1d13xxxfb_initregs),
|
||||
.platform_init_video = NULL,
|
||||
#ifdef CONFIG_PM
|
||||
.platform_suspend_video = NULL,
|
||||
.platform_resume_video = NULL,
|
||||
#endif
|
||||
};
|
||||
|
||||
static struct resource s1d13xxxfb_resources[] = {
|
||||
[0] = {
|
||||
.start = 0x10600000UL,
|
||||
.end = 0x1073FFFFUL,
|
||||
.flags = IORESOURCE_MEM,
|
||||
},
|
||||
[1] = {
|
||||
.start = 0x10400000UL,
|
||||
.end = 0x104001FFUL,
|
||||
.flags = IORESOURCE_MEM,
|
||||
}
|
||||
};
|
||||
|
||||
static struct platform_device s1d13xxxfb_device = {
|
||||
.name = S1D_DEVICENAME,
|
||||
.id = 0,
|
||||
.dev = {
|
||||
.platform_data = &s1d13xxxfb_data,
|
||||
},
|
||||
.num_resources = ARRAY_SIZE(s1d13xxxfb_resources),
|
||||
.resource = s1d13xxxfb_resources,
|
||||
};
|
||||
#endif
|
||||
|
||||
static int __init platform_init(void)
|
||||
{
|
||||
#if defined(CONFIG_SMC91X)
|
||||
platform_device_register(&smc91x_device);
|
||||
#endif
|
||||
#if defined(CONFIG_FB_S1D13XXX)
|
||||
platform_device_register(&s1d13xxxfb_device);
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
arch_initcall(platform_init);
|
||||
|
||||
@@ -3,14 +3,15 @@
|
||||
*
|
||||
* Setup routines for Renesas MAPPI Board
|
||||
*
|
||||
* Copyright (c) 2001, 2002 Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto
|
||||
* Copyright (c) 2001-2005 Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto
|
||||
*/
|
||||
|
||||
#include <linux/config.h>
|
||||
#include <linux/irq.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/device.h>
|
||||
|
||||
#include <asm/system.h>
|
||||
#include <asm/m32r.h>
|
||||
@@ -158,3 +159,49 @@ void __init init_IRQ(void)
|
||||
disable_mappi_irq(M32R_IRQ_INT2);
|
||||
#endif /* CONFIG_M32RPCC */
|
||||
}
|
||||
|
||||
#if defined(CONFIG_FB_S1D13XXX)
|
||||
|
||||
#include <video/s1d13xxxfb.h>
|
||||
#include <asm/s1d13806.h>
|
||||
|
||||
static struct s1d13xxxfb_pdata s1d13xxxfb_data = {
|
||||
.initregs = s1d13xxxfb_initregs,
|
||||
.initregssize = ARRAY_SIZE(s1d13xxxfb_initregs),
|
||||
.platform_init_video = NULL,
|
||||
#ifdef CONFIG_PM
|
||||
.platform_suspend_video = NULL,
|
||||
.platform_resume_video = NULL,
|
||||
#endif
|
||||
};
|
||||
|
||||
static struct resource s1d13xxxfb_resources[] = {
|
||||
[0] = {
|
||||
.start = 0x10200000UL,
|
||||
.end = 0x1033FFFFUL,
|
||||
.flags = IORESOURCE_MEM,
|
||||
},
|
||||
[1] = {
|
||||
.start = 0x10000000UL,
|
||||
.end = 0x100001FFUL,
|
||||
.flags = IORESOURCE_MEM,
|
||||
}
|
||||
};
|
||||
|
||||
static struct platform_device s1d13xxxfb_device = {
|
||||
.name = S1D_DEVICENAME,
|
||||
.id = 0,
|
||||
.dev = {
|
||||
.platform_data = &s1d13xxxfb_data,
|
||||
},
|
||||
.num_resources = ARRAY_SIZE(s1d13xxxfb_resources),
|
||||
.resource = s1d13xxxfb_resources,
|
||||
};
|
||||
|
||||
static int __init platform_init(void)
|
||||
{
|
||||
platform_device_register(&s1d13xxxfb_device);
|
||||
return 0;
|
||||
}
|
||||
arch_initcall(platform_init);
|
||||
#endif
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
*
|
||||
* Setup routines for Renesas MAPPI-II(M3A-ZA36) Board
|
||||
*
|
||||
* Copyright (c) 2001, 2002 Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto, Mamoru Sakugawa
|
||||
* Copyright (c) 2001-2005 Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto, Mamoru Sakugawa
|
||||
*/
|
||||
|
||||
#include <linux/config.h>
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
*
|
||||
* Setup routines for Renesas MAPPI-III(M3A-2170) Board
|
||||
*
|
||||
* Copyright (c) 2001-2005 Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto, Mamoru Sakugawa
|
||||
* Copyright (c) 2001-2005 Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto, Mamoru Sakugawa
|
||||
*/
|
||||
|
||||
#include <linux/config.h>
|
||||
@@ -178,6 +178,8 @@ void __init init_IRQ(void)
|
||||
#endif /* CONFIG_M32R_CFC */
|
||||
}
|
||||
|
||||
#if defined(CONFIG_SMC91X)
|
||||
|
||||
#define LAN_IOSTART 0x300
|
||||
#define LAN_IOEND 0x320
|
||||
static struct resource smc91x_resources[] = {
|
||||
@@ -200,9 +202,55 @@ static struct platform_device smc91x_device = {
|
||||
.resource = smc91x_resources,
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_FB_S1D13XXX)
|
||||
|
||||
#include <video/s1d13xxxfb.h>
|
||||
#include <asm/s1d13806.h>
|
||||
|
||||
static struct s1d13xxxfb_pdata s1d13xxxfb_data = {
|
||||
.initregs = s1d13xxxfb_initregs,
|
||||
.initregssize = ARRAY_SIZE(s1d13xxxfb_initregs),
|
||||
.platform_init_video = NULL,
|
||||
#ifdef CONFIG_PM
|
||||
.platform_suspend_video = NULL,
|
||||
.platform_resume_video = NULL,
|
||||
#endif
|
||||
};
|
||||
|
||||
static struct resource s1d13xxxfb_resources[] = {
|
||||
[0] = {
|
||||
.start = 0x1d600000UL,
|
||||
.end = 0x1d73FFFFUL,
|
||||
.flags = IORESOURCE_MEM,
|
||||
},
|
||||
[1] = {
|
||||
.start = 0x1d400000UL,
|
||||
.end = 0x1d4001FFUL,
|
||||
.flags = IORESOURCE_MEM,
|
||||
}
|
||||
};
|
||||
|
||||
static struct platform_device s1d13xxxfb_device = {
|
||||
.name = S1D_DEVICENAME,
|
||||
.id = 0,
|
||||
.dev = {
|
||||
.platform_data = &s1d13xxxfb_data,
|
||||
},
|
||||
.num_resources = ARRAY_SIZE(s1d13xxxfb_resources),
|
||||
.resource = s1d13xxxfb_resources,
|
||||
};
|
||||
#endif
|
||||
|
||||
static int __init platform_init(void)
|
||||
{
|
||||
#if defined(CONFIG_SMC91X)
|
||||
platform_device_register(&smc91x_device);
|
||||
#endif
|
||||
#if defined(CONFIG_FB_S1D13XXX)
|
||||
platform_device_register(&s1d13xxxfb_device);
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
arch_initcall(platform_init);
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
*
|
||||
* Setup routines for OAKS32R Board
|
||||
*
|
||||
* Copyright (c) 2002-2004 Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto, Mamoru Sakugawa
|
||||
* Copyright (c) 2002-2005 Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto, Mamoru Sakugawa
|
||||
*/
|
||||
|
||||
#include <linux/config.h>
|
||||
@@ -139,5 +139,4 @@ void __init init_IRQ(void)
|
||||
icu_data[M32R_IRQ_SIO1_S].icucr = 0;
|
||||
disable_oaks32r_irq(M32R_IRQ_SIO1_S);
|
||||
#endif /* CONFIG_SERIAL_M32R_SIO */
|
||||
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
*
|
||||
* Setup routines for Renesas OPSPUT Board
|
||||
*
|
||||
* Copyright (c) 2002-2004
|
||||
* Copyright (c) 2002-2005
|
||||
* Hiroyuki Kondo, Hirokazu Takata,
|
||||
* Hitoshi Yamamoto, Takeo Takahashi, Mamoru Sakugawa
|
||||
*
|
||||
@@ -439,7 +439,7 @@ void __init init_IRQ(void)
|
||||
icu_data[M32R_IRQ_INT2].icucr = M32R_ICUCR_IEN|M32R_ICUCR_ISMOD01;
|
||||
enable_opsput_irq(M32R_IRQ_INT2);
|
||||
|
||||
//#if defined(CONFIG_VIDEO_M32R_AR)
|
||||
#if defined(CONFIG_VIDEO_M32R_AR)
|
||||
/*
|
||||
* INT3# is used for AR
|
||||
*/
|
||||
@@ -449,9 +449,11 @@ void __init init_IRQ(void)
|
||||
irq_desc[M32R_IRQ_INT3].depth = 1;
|
||||
icu_data[M32R_IRQ_INT3].icucr = M32R_ICUCR_IEN|M32R_ICUCR_ISMOD10;
|
||||
disable_opsput_irq(M32R_IRQ_INT3);
|
||||
//#endif /* CONFIG_VIDEO_M32R_AR */
|
||||
#endif /* CONFIG_VIDEO_M32R_AR */
|
||||
}
|
||||
|
||||
#if defined(CONFIG_SMC91X)
|
||||
|
||||
#define LAN_IOSTART 0x300
|
||||
#define LAN_IOEND 0x320
|
||||
static struct resource smc91x_resources[] = {
|
||||
@@ -473,10 +475,55 @@ static struct platform_device smc91x_device = {
|
||||
.num_resources = ARRAY_SIZE(smc91x_resources),
|
||||
.resource = smc91x_resources,
|
||||
};
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_FB_S1D13XXX)
|
||||
|
||||
#include <video/s1d13xxxfb.h>
|
||||
#include <asm/s1d13806.h>
|
||||
|
||||
static struct s1d13xxxfb_pdata s1d13xxxfb_data = {
|
||||
.initregs = s1d13xxxfb_initregs,
|
||||
.initregssize = ARRAY_SIZE(s1d13xxxfb_initregs),
|
||||
.platform_init_video = NULL,
|
||||
#ifdef CONFIG_PM
|
||||
.platform_suspend_video = NULL,
|
||||
.platform_resume_video = NULL,
|
||||
#endif
|
||||
};
|
||||
|
||||
static struct resource s1d13xxxfb_resources[] = {
|
||||
[0] = {
|
||||
.start = 0x10600000UL,
|
||||
.end = 0x1073FFFFUL,
|
||||
.flags = IORESOURCE_MEM,
|
||||
},
|
||||
[1] = {
|
||||
.start = 0x10400000UL,
|
||||
.end = 0x104001FFUL,
|
||||
.flags = IORESOURCE_MEM,
|
||||
}
|
||||
};
|
||||
|
||||
static struct platform_device s1d13xxxfb_device = {
|
||||
.name = S1D_DEVICENAME,
|
||||
.id = 0,
|
||||
.dev = {
|
||||
.platform_data = &s1d13xxxfb_data,
|
||||
},
|
||||
.num_resources = ARRAY_SIZE(s1d13xxxfb_resources),
|
||||
.resource = s1d13xxxfb_resources,
|
||||
};
|
||||
#endif
|
||||
|
||||
static int __init platform_init(void)
|
||||
{
|
||||
#if defined(CONFIG_SMC91X)
|
||||
platform_device_register(&smc91x_device);
|
||||
#endif
|
||||
#if defined(CONFIG_FB_S1D13XXX)
|
||||
platform_device_register(&s1d13xxxfb_device);
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
arch_initcall(platform_init);
|
||||
|
||||
Reference in New Issue
Block a user