Commit 13904fba authored by Kukjin Kim's avatar Kukjin Kim

ARM: S5P: Move OneNAND device definitions in plat-s5p

This patch moves OneNAND device definitions from mach-s5pv210 to plat-s5p
so that can support it commonly.

Note: S5PC110 and S5PC210 have same OneNAND driver.
Signed-off-by: default avatarKukjin Kim <kgene.kim@samsung.com>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
parent cd07202c
...@@ -53,11 +53,6 @@ config S5PV210_SETUP_SDHCI_GPIO ...@@ -53,11 +53,6 @@ config S5PV210_SETUP_SDHCI_GPIO
help help
Common setup code for SDHCI gpio. Common setup code for SDHCI gpio.
config S5PC110_DEV_ONENAND
bool
help
Compile in platform device definition for OneNAND1 controller
menu "S5PC110 Machines" menu "S5PC110 Machines"
config MACH_AQUILA config MACH_AQUILA
...@@ -71,7 +66,7 @@ config MACH_AQUILA ...@@ -71,7 +66,7 @@ config MACH_AQUILA
select S3C_DEV_HSMMC select S3C_DEV_HSMMC
select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC1
select S3C_DEV_HSMMC2 select S3C_DEV_HSMMC2
select S5PC110_DEV_ONENAND select S5P_DEV_ONENAND
select S5PV210_SETUP_FB_24BPP select S5PV210_SETUP_FB_24BPP
select S5PV210_SETUP_SDHCI select S5PV210_SETUP_SDHCI
help help
...@@ -88,7 +83,7 @@ config MACH_GONI ...@@ -88,7 +83,7 @@ config MACH_GONI
select S3C_DEV_HSMMC select S3C_DEV_HSMMC
select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC1
select S3C_DEV_HSMMC2 select S3C_DEV_HSMMC2
select S5PC110_DEV_ONENAND select S5P_DEV_ONENAND
select S5PV210_SETUP_FB_24BPP select S5PV210_SETUP_FB_24BPP
select S5PV210_SETUP_SDHCI select S5PV210_SETUP_SDHCI
help help
......
...@@ -26,7 +26,6 @@ obj-$(CONFIG_MACH_GONI) += mach-goni.o ...@@ -26,7 +26,6 @@ obj-$(CONFIG_MACH_GONI) += mach-goni.o
obj-y += dev-audio.o obj-y += dev-audio.o
obj-$(CONFIG_S3C64XX_DEV_SPI) += dev-spi.o obj-$(CONFIG_S3C64XX_DEV_SPI) += dev-spi.o
obj-$(CONFIG_S5PC110_DEV_ONENAND) += dev-onenand.o
obj-$(CONFIG_S5PV210_SETUP_FB_24BPP) += setup-fb-24bpp.o obj-$(CONFIG_S5PV210_SETUP_FB_24BPP) += setup-fb-24bpp.o
obj-$(CONFIG_S5PV210_SETUP_I2C1) += setup-i2c1.o obj-$(CONFIG_S5PV210_SETUP_I2C1) += setup-i2c1.o
......
...@@ -17,7 +17,10 @@ ...@@ -17,7 +17,10 @@
#include <plat/map-s5p.h> #include <plat/map-s5p.h>
#define S5PC110_PA_ONENAND (0xB0000000) #define S5PC110_PA_ONENAND (0xB0000000)
#define S5P_PA_ONENAND S5PC110_PA_ONENAND
#define S5PC110_PA_ONENAND_DMA (0xB0600000) #define S5PC110_PA_ONENAND_DMA (0xB0600000)
#define S5P_PA_ONENAND_DMA S5PC110_PA_ONENAND_DMA
#define S5PV210_PA_CHIPID (0xE0000000) #define S5PV210_PA_CHIPID (0xE0000000)
#define S5P_PA_CHIPID S5PV210_PA_CHIPID #define S5P_PA_CHIPID S5PV210_PA_CHIPID
......
...@@ -477,7 +477,7 @@ static struct platform_device *aquila_devices[] __initdata = { ...@@ -477,7 +477,7 @@ static struct platform_device *aquila_devices[] __initdata = {
&aquila_i2c_gpio_pmic, &aquila_i2c_gpio_pmic,
&aquila_device_gpiokeys, &aquila_device_gpiokeys,
&s3c_device_fb, &s3c_device_fb,
&s5pc110_device_onenand, &s5p_device_onenand,
&s3c_device_hsmmc0, &s3c_device_hsmmc0,
&s3c_device_hsmmc1, &s3c_device_hsmmc1,
&s3c_device_hsmmc2, &s3c_device_hsmmc2,
......
...@@ -456,7 +456,7 @@ static void goni_setup_sdhci(void) ...@@ -456,7 +456,7 @@ static void goni_setup_sdhci(void)
static struct platform_device *goni_devices[] __initdata = { static struct platform_device *goni_devices[] __initdata = {
&s3c_device_fb, &s3c_device_fb,
&s5pc110_device_onenand, &s5p_device_onenand,
&goni_i2c_gpio_pmic, &goni_i2c_gpio_pmic,
&goni_device_gpiokeys, &goni_device_gpiokeys,
&s5p_device_fimc0, &s5p_device_fimc0,
......
...@@ -68,6 +68,8 @@ ...@@ -68,6 +68,8 @@
#define IRQ_IIC COMBINER_IRQ(27, 0) #define IRQ_IIC COMBINER_IRQ(27, 0)
#define IRQ_ONENAND_AUDI COMBINER_IRQ(34, 0)
/* Set the default NR_IRQS */ /* Set the default NR_IRQS */
#define NR_IRQS COMBINER_IRQ(MAX_COMBINER_NR, 0) #define NR_IRQS COMBINER_IRQ(MAX_COMBINER_NR, 0)
......
...@@ -25,6 +25,12 @@ ...@@ -25,6 +25,12 @@
#define S5PV310_PA_SYSRAM (0x02025000) #define S5PV310_PA_SYSRAM (0x02025000)
#define S5PC210_PA_ONENAND (0x0C000000)
#define S5P_PA_ONENAND S5PC210_PA_ONENAND
#define S5PC210_PA_ONENAND_DMA (0x0C600000)
#define S5P_PA_ONENAND_DMA S5PC210_PA_ONENAND_DMA
#define S5PV310_PA_CHIPID (0x10000000) #define S5PV310_PA_CHIPID (0x10000000)
#define S5P_PA_CHIPID S5PV310_PA_CHIPID #define S5P_PA_CHIPID S5PV310_PA_CHIPID
......
...@@ -46,3 +46,8 @@ config S5P_DEV_FIMC2 ...@@ -46,3 +46,8 @@ config S5P_DEV_FIMC2
bool bool
help help
Compile in platform device definitions for FIMC controller 2 Compile in platform device definitions for FIMC controller 2
config S5P_DEV_ONENAND
bool
help
Compile in platform device definition for OneNAND controller
...@@ -24,3 +24,4 @@ obj-$(CONFIG_S5P_EXT_INT) += irq-eint.o ...@@ -24,3 +24,4 @@ obj-$(CONFIG_S5P_EXT_INT) += irq-eint.o
obj-$(CONFIG_S5P_DEV_FIMC0) += dev-fimc0.o obj-$(CONFIG_S5P_DEV_FIMC0) += dev-fimc0.o
obj-$(CONFIG_S5P_DEV_FIMC1) += dev-fimc1.o obj-$(CONFIG_S5P_DEV_FIMC1) += dev-fimc1.o
obj-$(CONFIG_S5P_DEV_FIMC2) += dev-fimc2.o obj-$(CONFIG_S5P_DEV_FIMC2) += dev-fimc2.o
obj-$(CONFIG_S5P_DEV_ONENAND) += dev-onenand.o
/* /* linux/arch/arm/plat-s5p/dev-onenand.c
* linux/arch/arm/mach-s5pv210/dev-onenand.c *
* Copyright 2010 Samsung Electronics Co., Ltd.
* http://www.samsung.com
* *
* Copyright (c) 2008-2010 Samsung Electronics * Copyright (c) 2008-2010 Samsung Electronics
* Kyungmin Park <kyungmin.park@samsung.com> * Kyungmin Park <kyungmin.park@samsung.com>
* *
* S5PC110 series device definition for OneNAND devices * S5P series device definition for OneNAND devices
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as * it under the terms of the GNU General Public License version 2 as
...@@ -19,15 +21,15 @@ ...@@ -19,15 +21,15 @@
#include <mach/irqs.h> #include <mach/irqs.h>
#include <mach/map.h> #include <mach/map.h>
static struct resource s5pc110_onenand_resources[] = { static struct resource s5p_onenand_resources[] = {
[0] = { [0] = {
.start = S5PC110_PA_ONENAND, .start = S5P_PA_ONENAND,
.end = S5PC110_PA_ONENAND + SZ_128K - 1, .end = S5P_PA_ONENAND + SZ_128K - 1,
.flags = IORESOURCE_MEM, .flags = IORESOURCE_MEM,
}, },
[1] = { [1] = {
.start = S5PC110_PA_ONENAND_DMA, .start = S5P_PA_ONENAND_DMA,
.end = S5PC110_PA_ONENAND_DMA + SZ_8K - 1, .end = S5P_PA_ONENAND_DMA + SZ_8K - 1,
.flags = IORESOURCE_MEM, .flags = IORESOURCE_MEM,
}, },
[2] = { [2] = {
...@@ -37,19 +39,19 @@ static struct resource s5pc110_onenand_resources[] = { ...@@ -37,19 +39,19 @@ static struct resource s5pc110_onenand_resources[] = {
}, },
}; };
struct platform_device s5pc110_device_onenand = { struct platform_device s5p_device_onenand = {
.name = "s5pc110-onenand", .name = "s5pc110-onenand",
.id = -1, .id = -1,
.num_resources = ARRAY_SIZE(s5pc110_onenand_resources), .num_resources = ARRAY_SIZE(s5p_onenand_resources),
.resource = s5pc110_onenand_resources, .resource = s5p_onenand_resources,
}; };
void s5pc110_onenand_set_platdata(struct onenand_platform_data *pdata) void s5p_onenand_set_platdata(struct onenand_platform_data *pdata)
{ {
struct onenand_platform_data *pd; struct onenand_platform_data *pd;
pd = kmemdup(pdata, sizeof(struct onenand_platform_data), GFP_KERNEL); pd = kmemdup(pdata, sizeof(struct onenand_platform_data), GFP_KERNEL);
if (!pd) if (!pd)
printk(KERN_ERR "%s: no memory for platform data\n", __func__); printk(KERN_ERR "%s: no memory for platform data\n", __func__);
s5pc110_device_onenand.dev.platform_data = pd; s5p_device_onenand.dev.platform_data = pd;
} }
...@@ -73,7 +73,7 @@ extern struct platform_device s3c_device_hwmon; ...@@ -73,7 +73,7 @@ extern struct platform_device s3c_device_hwmon;
extern struct platform_device s3c_device_nand; extern struct platform_device s3c_device_nand;
extern struct platform_device s3c_device_onenand; extern struct platform_device s3c_device_onenand;
extern struct platform_device s3c64xx_device_onenand1; extern struct platform_device s3c64xx_device_onenand1;
extern struct platform_device s5pc110_device_onenand; extern struct platform_device s5p_device_onenand;
extern struct platform_device s3c_device_usbgadget; extern struct platform_device s3c_device_usbgadget;
extern struct platform_device s3c_device_usb_hsotg; extern struct platform_device s3c_device_usb_hsotg;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment