* RE: [PATCH RE-SEND] ARM: S5P: Move OneNAND device definitions in plat-s5p [not found] <1282522043-2420-1-git-send-email-kgene.kim@samsung.com> @ 2010-08-23 2:11 ` Kyungmin Park 2010-08-23 2:35 ` Kukjin Kim 2010-08-25 23:27 ` Kukjin Kim 0 siblings, 2 replies; 5+ messages in thread From: Kyungmin Park @ 2010-08-23 2:11 UTC (permalink / raw) To: 'Kukjin Kim', linux-arm-kernel, linux-samsung-soc Cc: ben-linux, 'Kyungmin Park' " Note: S5PC110 and S5PC210 have same OneNAND driver." Yes I also think it's same device. At least Spec is same. But I heard it has some different feature related with DMA operation. I'm not yet receive the official release from LSI. So I can't tell the exact one. If it's true. we need to separate it if required. Thank you, Kyungmin Park -----Original Message----- From: Kukjin Kim [mailto:kgene.kim@samsung.com] Sent: Monday, August 23, 2010 9:07 AM To: linux-arm-kernel@lists.infradead.org; linux-samsung-soc@vger.kernel.org Cc: ben-linux@fluff.org; Kukjin Kim; Kyungmin Park Subject: [PATCH RE-SEND] 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: Kukjin Kim <kgene.kim@samsung.com> Cc: Kyungmin Park <Kyungmin Park <kyungmin.park@samsung.com> --- arch/arm/mach-s5pv210/Kconfig | 9 +----- arch/arm/mach-s5pv210/Makefile | 1 - arch/arm/mach-s5pv210/include/mach/map.h | 3 ++ arch/arm/mach-s5pv210/mach-aquila.c | 2 +- arch/arm/mach-s5pv210/mach-goni.c | 2 +- arch/arm/mach-s5pv310/include/mach/irqs.h | 2 + arch/arm/mach-s5pv310/include/mach/map.h | 6 ++++ arch/arm/plat-s5p/Kconfig | 5 +++ arch/arm/plat-s5p/Makefile | 1 + arch/arm/{mach-s5pv210 => plat-s5p}/dev-onenand.c | 28 +++++++++++--------- arch/arm/plat-samsung/include/plat/devs.h | 2 +- 11 files changed, 37 insertions(+), 24 deletions(-) rename arch/arm/{mach-s5pv210 => plat-s5p}/dev-onenand.c (59%) diff --git a/arch/arm/mach-s5pv210/Kconfig b/arch/arm/mach-s5pv210/Kconfig index d3a3895..5315fec 100644 --- a/arch/arm/mach-s5pv210/Kconfig +++ b/arch/arm/mach-s5pv210/Kconfig @@ -53,11 +53,6 @@ config S5PV210_SETUP_SDHCI_GPIO help Common setup code for SDHCI gpio. -config S5PC110_DEV_ONENAND - bool - help - Compile in platform device definition for OneNAND1 controller - menu "S5PC110 Machines" config MACH_AQUILA @@ -71,7 +66,7 @@ config MACH_AQUILA select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC2 - select S5PC110_DEV_ONENAND + select S5P_DEV_ONENAND select S5PV210_SETUP_FB_24BPP select S5PV210_SETUP_SDHCI help @@ -88,7 +83,7 @@ config MACH_GONI select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC2 - select S5PC110_DEV_ONENAND + select S5P_DEV_ONENAND select S5PV210_SETUP_FB_24BPP select S5PV210_SETUP_SDHCI help diff --git a/arch/arm/mach-s5pv210/Makefile b/arch/arm/mach-s5pv210/Makefile index 05048c5..7045489 100644 --- a/arch/arm/mach-s5pv210/Makefile +++ b/arch/arm/mach-s5pv210/Makefile @@ -26,7 +26,6 @@ obj-$(CONFIG_MACH_GONI) += mach-goni.o obj-y += dev-audio.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_I2C1) += setup-i2c1.o diff --git a/arch/arm/mach-s5pv210/include/mach/map.h b/arch/arm/mach-s5pv210/include/mach/map.h index dd4fb6b..aa19d2f 100644 --- a/arch/arm/mach-s5pv210/include/mach/map.h +++ b/arch/arm/mach-s5pv210/include/mach/map.h @@ -17,7 +17,10 @@ #include <plat/map-s5p.h> #define S5PC110_PA_ONENAND (0xB0000000) +#define S5P_PA_ONENAND S5PC110_PA_ONENAND + #define S5PC110_PA_ONENAND_DMA (0xB0600000) +#define S5P_PA_ONENAND_DMA S5PC110_PA_ONENAND_DMA #define S5PV210_PA_CHIPID (0xE0000000) #define S5P_PA_CHIPID S5PV210_PA_CHIPID diff --git a/arch/arm/mach-s5pv210/mach-aquila.c b/arch/arm/mach-s5pv210/mach-aquila.c index 0dda801..bf772de 100644 --- a/arch/arm/mach-s5pv210/mach-aquila.c +++ b/arch/arm/mach-s5pv210/mach-aquila.c @@ -477,7 +477,7 @@ static struct platform_device *aquila_devices[] __initdata = { &aquila_i2c_gpio_pmic, &aquila_device_gpiokeys, &s3c_device_fb, - &s5pc110_device_onenand, + &s5p_device_onenand, &s3c_device_hsmmc0, &s3c_device_hsmmc1, &s3c_device_hsmmc2, diff --git a/arch/arm/mach-s5pv210/mach-goni.c b/arch/arm/mach-s5pv210/mach-goni.c index 53754d7..fdc5cca 100644 --- a/arch/arm/mach-s5pv210/mach-goni.c +++ b/arch/arm/mach-s5pv210/mach-goni.c @@ -456,7 +456,7 @@ static void goni_setup_sdhci(void) static struct platform_device *goni_devices[] __initdata = { &s3c_device_fb, - &s5pc110_device_onenand, + &s5p_device_onenand, &goni_i2c_gpio_pmic, &goni_device_gpiokeys, &s5p_device_fimc0, diff --git a/arch/arm/mach-s5pv310/include/mach/irqs.h b/arch/arm/mach-s5pv310/include/mach/irqs.h index 522352f..7b4b09f 100644 --- a/arch/arm/mach-s5pv310/include/mach/irqs.h +++ b/arch/arm/mach-s5pv310/include/mach/irqs.h @@ -73,6 +73,8 @@ #define IRQ_HSMMC2 COMBINER_IRQ(29, 2) #define IRQ_HSMMC3 COMBINER_IRQ(29, 3) +#define IRQ_ONENAND_AUDI COMBINER_IRQ(34, 0) + /* Set the default NR_IRQS */ #define NR_IRQS COMBINER_IRQ(MAX_COMBINER_NR, 0) diff --git a/arch/arm/mach-s5pv310/include/mach/map.h b/arch/arm/mach-s5pv310/include/mach/map.h index 6c7b1fc..5288f5a 100644 --- a/arch/arm/mach-s5pv310/include/mach/map.h +++ b/arch/arm/mach-s5pv310/include/mach/map.h @@ -23,6 +23,12 @@ #include <plat/map-s5p.h> +#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 S5P_PA_CHIPID S5PV310_PA_CHIPID diff --git a/arch/arm/plat-s5p/Kconfig b/arch/arm/plat-s5p/Kconfig index c6a855d..407e323 100644 --- a/arch/arm/plat-s5p/Kconfig +++ b/arch/arm/plat-s5p/Kconfig @@ -46,3 +46,8 @@ config S5P_DEV_FIMC2 bool help Compile in platform device definitions for FIMC controller 2 + +config S5P_DEV_ONENAND + bool + help + Compile in platform device definition for OneNAND controller diff --git a/arch/arm/plat-s5p/Makefile b/arch/arm/plat-s5p/Makefile index b2e0296..f3e917e 100644 --- a/arch/arm/plat-s5p/Makefile +++ b/arch/arm/plat-s5p/Makefile @@ -24,3 +24,4 @@ obj-$(CONFIG_S5P_EXT_INT) += irq-eint.o obj-$(CONFIG_S5P_DEV_FIMC0) += dev-fimc0.o obj-$(CONFIG_S5P_DEV_FIMC1) += dev-fimc1.o obj-$(CONFIG_S5P_DEV_FIMC2) += dev-fimc2.o +obj-$(CONFIG_S5P_DEV_ONENAND) += dev-onenand.o diff --git a/arch/arm/mach-s5pv210/dev-onenand.c b/arch/arm/plat-s5p/dev-onenand.c similarity index 59% rename from arch/arm/mach-s5pv210/dev-onenand.c rename to arch/arm/plat-s5p/dev-onenand.c index f8ede33..6db9262 100644 --- a/arch/arm/mach-s5pv210/dev-onenand.c +++ b/arch/arm/plat-s5p/dev-onenand.c @@ -1,10 +1,12 @@ -/* - * linux/arch/arm/mach-s5pv210/dev-onenand.c +/* linux/arch/arm/plat-s5p/dev-onenand.c + * + * Copyright 2010 Samsung Electronics Co., Ltd. + * http://www.samsung.com * * Copyright (c) 2008-2010 Samsung Electronics * 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 * it under the terms of the GNU General Public License version 2 as @@ -19,15 +21,15 @@ #include <mach/irqs.h> #include <mach/map.h> -static struct resource s5pc110_onenand_resources[] = { +static struct resource s5p_onenand_resources[] = { [0] = { - .start = S5PC110_PA_ONENAND, - .end = S5PC110_PA_ONENAND + SZ_128K - 1, + .start = S5P_PA_ONENAND, + .end = S5P_PA_ONENAND + SZ_128K - 1, .flags = IORESOURCE_MEM, }, [1] = { - .start = S5PC110_PA_ONENAND_DMA, - .end = S5PC110_PA_ONENAND_DMA + SZ_8K - 1, + .start = S5P_PA_ONENAND_DMA, + .end = S5P_PA_ONENAND_DMA + SZ_8K - 1, .flags = IORESOURCE_MEM, }, [2] = { @@ -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", .id = -1, - .num_resources = ARRAY_SIZE(s5pc110_onenand_resources), - .resource = s5pc110_onenand_resources, + .num_resources = ARRAY_SIZE(s5p_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; pd = kmemdup(pdata, sizeof(struct onenand_platform_data), GFP_KERNEL); if (!pd) 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; } diff --git a/arch/arm/plat-samsung/include/plat/devs.h b/arch/arm/plat-samsung/include/plat/devs.h index 85f6f23..cb12102 100644 --- a/arch/arm/plat-samsung/include/plat/devs.h +++ b/arch/arm/plat-samsung/include/plat/devs.h @@ -73,7 +73,7 @@ extern struct platform_device s3c_device_hwmon; extern struct platform_device s3c_device_nand; extern struct platform_device s3c_device_onenand; 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_usb_hsotg; -- 1.6.2.5 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* RE: [PATCH RE-SEND] ARM: S5P: Move OneNAND device definitions in plat-s5p 2010-08-23 2:11 ` [PATCH RE-SEND] ARM: S5P: Move OneNAND device definitions in plat-s5p Kyungmin Park @ 2010-08-23 2:35 ` Kukjin Kim 2010-08-23 3:58 ` Kyungmin Park 2010-08-25 23:27 ` Kukjin Kim 1 sibling, 1 reply; 5+ messages in thread From: Kukjin Kim @ 2010-08-23 2:35 UTC (permalink / raw) To: kyungmin.park, linux-arm-kernel, linux-samsung-soc Cc: ben-linux, 'Kyungmin Park' Kyungmin Park wrote: > > " Note: S5PC110 and S5PC210 have same OneNAND driver." > > Yes I also think it's same device. At least Spec is same. But I heard it has > some different feature related with DMA operation. > I'm not yet receive the official release from LSI. So I can't tell the exact > one. > > If it's true. we need to separate it if required. > No need to separate this stuff. It means that no problem to use this commonly for S5PC110 and S5PC210. But...I will check it again before applying. > Thank you, > Kyungmin Park > > -----Original Message----- > From: Kukjin Kim [mailto:kgene.kim@samsung.com] > Sent: Monday, August 23, 2010 9:07 AM > To: linux-arm-kernel@lists.infradead.org; linux-samsung-soc@vger.kernel.org > Cc: ben-linux@fluff.org; Kukjin Kim; Kyungmin Park > Subject: [PATCH RE-SEND] 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: Kukjin Kim <kgene.kim@samsung.com> > Cc: Kyungmin Park <Kyungmin Park <kyungmin.park@samsung.com> > --- > arch/arm/mach-s5pv210/Kconfig | 9 +----- > arch/arm/mach-s5pv210/Makefile | 1 - > arch/arm/mach-s5pv210/include/mach/map.h | 3 ++ > arch/arm/mach-s5pv210/mach-aquila.c | 2 +- > arch/arm/mach-s5pv210/mach-goni.c | 2 +- > arch/arm/mach-s5pv310/include/mach/irqs.h | 2 + > arch/arm/mach-s5pv310/include/mach/map.h | 6 ++++ > arch/arm/plat-s5p/Kconfig | 5 +++ > arch/arm/plat-s5p/Makefile | 1 + > arch/arm/{mach-s5pv210 => plat-s5p}/dev-onenand.c | 28 > +++++++++++--------- > arch/arm/plat-samsung/include/plat/devs.h | 2 +- > 11 files changed, 37 insertions(+), 24 deletions(-) > rename arch/arm/{mach-s5pv210 => plat-s5p}/dev-onenand.c (59%) > > diff --git a/arch/arm/mach-s5pv210/Kconfig b/arch/arm/mach-s5pv210/Kconfig > index d3a3895..5315fec 100644 > --- a/arch/arm/mach-s5pv210/Kconfig > +++ b/arch/arm/mach-s5pv210/Kconfig > @@ -53,11 +53,6 @@ config S5PV210_SETUP_SDHCI_GPIO > help > Common setup code for SDHCI gpio. > > -config S5PC110_DEV_ONENAND > - bool > - help > - Compile in platform device definition for OneNAND1 controller > - > menu "S5PC110 Machines" > > config MACH_AQUILA > @@ -71,7 +66,7 @@ config MACH_AQUILA > select S3C_DEV_HSMMC > select S3C_DEV_HSMMC1 > select S3C_DEV_HSMMC2 > - select S5PC110_DEV_ONENAND > + select S5P_DEV_ONENAND > select S5PV210_SETUP_FB_24BPP > select S5PV210_SETUP_SDHCI > help > @@ -88,7 +83,7 @@ config MACH_GONI > select S3C_DEV_HSMMC > select S3C_DEV_HSMMC1 > select S3C_DEV_HSMMC2 > - select S5PC110_DEV_ONENAND > + select S5P_DEV_ONENAND > select S5PV210_SETUP_FB_24BPP > select S5PV210_SETUP_SDHCI > help > diff --git a/arch/arm/mach-s5pv210/Makefile b/arch/arm/mach-s5pv210/Makefile > index 05048c5..7045489 100644 > --- a/arch/arm/mach-s5pv210/Makefile > +++ b/arch/arm/mach-s5pv210/Makefile > @@ -26,7 +26,6 @@ obj-$(CONFIG_MACH_GONI) += mach-goni.o > > obj-y += dev-audio.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_I2C1) += setup-i2c1.o > diff --git a/arch/arm/mach-s5pv210/include/mach/map.h > b/arch/arm/mach-s5pv210/include/mach/map.h > index dd4fb6b..aa19d2f 100644 > --- a/arch/arm/mach-s5pv210/include/mach/map.h > +++ b/arch/arm/mach-s5pv210/include/mach/map.h > @@ -17,7 +17,10 @@ > #include <plat/map-s5p.h> > > #define S5PC110_PA_ONENAND (0xB0000000) > +#define S5P_PA_ONENAND S5PC110_PA_ONENAND > + > #define S5PC110_PA_ONENAND_DMA (0xB0600000) > +#define S5P_PA_ONENAND_DMA S5PC110_PA_ONENAND_DMA > > #define S5PV210_PA_CHIPID (0xE0000000) > #define S5P_PA_CHIPID S5PV210_PA_CHIPID > diff --git a/arch/arm/mach-s5pv210/mach-aquila.c > b/arch/arm/mach-s5pv210/mach-aquila.c > index 0dda801..bf772de 100644 > --- a/arch/arm/mach-s5pv210/mach-aquila.c > +++ b/arch/arm/mach-s5pv210/mach-aquila.c > @@ -477,7 +477,7 @@ static struct platform_device *aquila_devices[] > __initdata = { > &aquila_i2c_gpio_pmic, > &aquila_device_gpiokeys, > &s3c_device_fb, > - &s5pc110_device_onenand, > + &s5p_device_onenand, > &s3c_device_hsmmc0, > &s3c_device_hsmmc1, > &s3c_device_hsmmc2, > diff --git a/arch/arm/mach-s5pv210/mach-goni.c > b/arch/arm/mach-s5pv210/mach-goni.c > index 53754d7..fdc5cca 100644 > --- a/arch/arm/mach-s5pv210/mach-goni.c > +++ b/arch/arm/mach-s5pv210/mach-goni.c > @@ -456,7 +456,7 @@ static void goni_setup_sdhci(void) > > static struct platform_device *goni_devices[] __initdata = { > &s3c_device_fb, > - &s5pc110_device_onenand, > + &s5p_device_onenand, > &goni_i2c_gpio_pmic, > &goni_device_gpiokeys, > &s5p_device_fimc0, > diff --git a/arch/arm/mach-s5pv310/include/mach/irqs.h > b/arch/arm/mach-s5pv310/include/mach/irqs.h > index 522352f..7b4b09f 100644 > --- a/arch/arm/mach-s5pv310/include/mach/irqs.h > +++ b/arch/arm/mach-s5pv310/include/mach/irqs.h > @@ -73,6 +73,8 @@ > #define IRQ_HSMMC2 COMBINER_IRQ(29, 2) > #define IRQ_HSMMC3 COMBINER_IRQ(29, 3) > > +#define IRQ_ONENAND_AUDI COMBINER_IRQ(34, 0) > + > /* Set the default NR_IRQS */ > > #define NR_IRQS > COMBINER_IRQ(MAX_COMBINER_NR, 0) > diff --git a/arch/arm/mach-s5pv310/include/mach/map.h > b/arch/arm/mach-s5pv310/include/mach/map.h > index 6c7b1fc..5288f5a 100644 > --- a/arch/arm/mach-s5pv310/include/mach/map.h > +++ b/arch/arm/mach-s5pv310/include/mach/map.h > @@ -23,6 +23,12 @@ > > #include <plat/map-s5p.h> > > +#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 S5P_PA_CHIPID S5PV310_PA_CHIPID > > diff --git a/arch/arm/plat-s5p/Kconfig b/arch/arm/plat-s5p/Kconfig > index c6a855d..407e323 100644 > --- a/arch/arm/plat-s5p/Kconfig > +++ b/arch/arm/plat-s5p/Kconfig > @@ -46,3 +46,8 @@ config S5P_DEV_FIMC2 > bool > help > Compile in platform device definitions for FIMC controller 2 > + > +config S5P_DEV_ONENAND > + bool > + help > + Compile in platform device definition for OneNAND controller > diff --git a/arch/arm/plat-s5p/Makefile b/arch/arm/plat-s5p/Makefile > index b2e0296..f3e917e 100644 > --- a/arch/arm/plat-s5p/Makefile > +++ b/arch/arm/plat-s5p/Makefile > @@ -24,3 +24,4 @@ obj-$(CONFIG_S5P_EXT_INT) += irq-eint.o > obj-$(CONFIG_S5P_DEV_FIMC0) += dev-fimc0.o > obj-$(CONFIG_S5P_DEV_FIMC1) += dev-fimc1.o > obj-$(CONFIG_S5P_DEV_FIMC2) += dev-fimc2.o > +obj-$(CONFIG_S5P_DEV_ONENAND) += dev-onenand.o > diff --git a/arch/arm/mach-s5pv210/dev-onenand.c > b/arch/arm/plat-s5p/dev-onenand.c > similarity index 59% > rename from arch/arm/mach-s5pv210/dev-onenand.c > rename to arch/arm/plat-s5p/dev-onenand.c > index f8ede33..6db9262 100644 > --- a/arch/arm/mach-s5pv210/dev-onenand.c > +++ b/arch/arm/plat-s5p/dev-onenand.c > @@ -1,10 +1,12 @@ > -/* > - * linux/arch/arm/mach-s5pv210/dev-onenand.c > +/* linux/arch/arm/plat-s5p/dev-onenand.c > + * > + * Copyright 2010 Samsung Electronics Co., Ltd. > + * http://www.samsung.com > * > * Copyright (c) 2008-2010 Samsung Electronics > * 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 > * it under the terms of the GNU General Public License version 2 as > @@ -19,15 +21,15 @@ > #include <mach/irqs.h> > #include <mach/map.h> > > -static struct resource s5pc110_onenand_resources[] = { > +static struct resource s5p_onenand_resources[] = { > [0] = { > - .start = S5PC110_PA_ONENAND, > - .end = S5PC110_PA_ONENAND + SZ_128K - 1, > + .start = S5P_PA_ONENAND, > + .end = S5P_PA_ONENAND + SZ_128K - 1, > .flags = IORESOURCE_MEM, > }, > [1] = { > - .start = S5PC110_PA_ONENAND_DMA, > - .end = S5PC110_PA_ONENAND_DMA + SZ_8K - 1, > + .start = S5P_PA_ONENAND_DMA, > + .end = S5P_PA_ONENAND_DMA + SZ_8K - 1, > .flags = IORESOURCE_MEM, > }, > [2] = { > @@ -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", > .id = -1, > - .num_resources = ARRAY_SIZE(s5pc110_onenand_resources), > - .resource = s5pc110_onenand_resources, > + .num_resources = ARRAY_SIZE(s5p_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; > > pd = kmemdup(pdata, sizeof(struct onenand_platform_data), > GFP_KERNEL); > if (!pd) > 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; > } > diff --git a/arch/arm/plat-samsung/include/plat/devs.h > b/arch/arm/plat-samsung/include/plat/devs.h > index 85f6f23..cb12102 100644 > --- a/arch/arm/plat-samsung/include/plat/devs.h > +++ b/arch/arm/plat-samsung/include/plat/devs.h > @@ -73,7 +73,7 @@ extern struct platform_device s3c_device_hwmon; > extern struct platform_device s3c_device_nand; > extern struct platform_device s3c_device_onenand; > 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_usb_hsotg; > -- > 1.6.2.5 Thanks. Best regards, Kgene. -- Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH RE-SEND] ARM: S5P: Move OneNAND device definitions in plat-s5p 2010-08-23 2:35 ` Kukjin Kim @ 2010-08-23 3:58 ` Kyungmin Park 2010-08-25 23:23 ` Kukjin Kim 0 siblings, 1 reply; 5+ messages in thread From: Kyungmin Park @ 2010-08-23 3:58 UTC (permalink / raw) To: Kukjin Kim; +Cc: linux-arm-kernel, linux-samsung-soc, ben-linux, Kyungmin Park On Mon, Aug 23, 2010 at 11:35 AM, Kukjin Kim <kgene.kim@samsung.com> wrote: > Kyungmin Park wrote: >> >> " Note: S5PC110 and S5PC210 have same OneNAND driver." >> >> Yes I also think it's same device. At least Spec is same. But I heard it > has >> some different feature related with DMA operation. >> I'm not yet receive the official release from LSI. So I can't tell the > exact >> one. >> >> If it's true. we need to separate it if required. >> > No need to separate this stuff. > It means that no problem to use this commonly for S5PC110 and S5PC210. As DMA operation is changed, we need to register onenand device separately like s5pc210-onenand. to use the different read operations. > > But...I will check it again before applying. > >> Thank you, >> Kyungmin Park >> >> -----Original Message----- >> From: Kukjin Kim [mailto:kgene.kim@samsung.com] >> Sent: Monday, August 23, 2010 9:07 AM >> To: linux-arm-kernel@lists.infradead.org; > linux-samsung-soc@vger.kernel.org >> Cc: ben-linux@fluff.org; Kukjin Kim; Kyungmin Park >> Subject: [PATCH RE-SEND] 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: Kukjin Kim <kgene.kim@samsung.com> >> Cc: Kyungmin Park <Kyungmin Park <kyungmin.park@samsung.com> >> --- >> arch/arm/mach-s5pv210/Kconfig | 9 +----- >> arch/arm/mach-s5pv210/Makefile | 1 - >> arch/arm/mach-s5pv210/include/mach/map.h | 3 ++ >> arch/arm/mach-s5pv210/mach-aquila.c | 2 +- >> arch/arm/mach-s5pv210/mach-goni.c | 2 +- >> arch/arm/mach-s5pv310/include/mach/irqs.h | 2 + >> arch/arm/mach-s5pv310/include/mach/map.h | 6 ++++ >> arch/arm/plat-s5p/Kconfig | 5 +++ >> arch/arm/plat-s5p/Makefile | 1 + >> arch/arm/{mach-s5pv210 => plat-s5p}/dev-onenand.c | 28 >> +++++++++++--------- >> arch/arm/plat-samsung/include/plat/devs.h | 2 +- >> 11 files changed, 37 insertions(+), 24 deletions(-) >> rename arch/arm/{mach-s5pv210 => plat-s5p}/dev-onenand.c (59%) >> >> diff --git a/arch/arm/mach-s5pv210/Kconfig b/arch/arm/mach-s5pv210/Kconfig >> index d3a3895..5315fec 100644 >> --- a/arch/arm/mach-s5pv210/Kconfig >> +++ b/arch/arm/mach-s5pv210/Kconfig >> @@ -53,11 +53,6 @@ config S5PV210_SETUP_SDHCI_GPIO >> help >> Common setup code for SDHCI gpio. >> >> -config S5PC110_DEV_ONENAND >> - bool >> - help >> - Compile in platform device definition for OneNAND1 controller >> - >> menu "S5PC110 Machines" >> >> config MACH_AQUILA >> @@ -71,7 +66,7 @@ config MACH_AQUILA >> select S3C_DEV_HSMMC >> select S3C_DEV_HSMMC1 >> select S3C_DEV_HSMMC2 >> - select S5PC110_DEV_ONENAND >> + select S5P_DEV_ONENAND >> select S5PV210_SETUP_FB_24BPP >> select S5PV210_SETUP_SDHCI >> help >> @@ -88,7 +83,7 @@ config MACH_GONI >> select S3C_DEV_HSMMC >> select S3C_DEV_HSMMC1 >> select S3C_DEV_HSMMC2 >> - select S5PC110_DEV_ONENAND >> + select S5P_DEV_ONENAND >> select S5PV210_SETUP_FB_24BPP >> select S5PV210_SETUP_SDHCI >> help >> diff --git a/arch/arm/mach-s5pv210/Makefile > b/arch/arm/mach-s5pv210/Makefile >> index 05048c5..7045489 100644 >> --- a/arch/arm/mach-s5pv210/Makefile >> +++ b/arch/arm/mach-s5pv210/Makefile >> @@ -26,7 +26,6 @@ obj-$(CONFIG_MACH_GONI) += mach-goni.o >> >> obj-y += dev-audio.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_I2C1) += setup-i2c1.o >> diff --git a/arch/arm/mach-s5pv210/include/mach/map.h >> b/arch/arm/mach-s5pv210/include/mach/map.h >> index dd4fb6b..aa19d2f 100644 >> --- a/arch/arm/mach-s5pv210/include/mach/map.h >> +++ b/arch/arm/mach-s5pv210/include/mach/map.h >> @@ -17,7 +17,10 @@ >> #include <plat/map-s5p.h> >> >> #define S5PC110_PA_ONENAND (0xB0000000) >> +#define S5P_PA_ONENAND S5PC110_PA_ONENAND >> + >> #define S5PC110_PA_ONENAND_DMA (0xB0600000) >> +#define S5P_PA_ONENAND_DMA S5PC110_PA_ONENAND_DMA >> >> #define S5PV210_PA_CHIPID (0xE0000000) >> #define S5P_PA_CHIPID S5PV210_PA_CHIPID >> diff --git a/arch/arm/mach-s5pv210/mach-aquila.c >> b/arch/arm/mach-s5pv210/mach-aquila.c >> index 0dda801..bf772de 100644 >> --- a/arch/arm/mach-s5pv210/mach-aquila.c >> +++ b/arch/arm/mach-s5pv210/mach-aquila.c >> @@ -477,7 +477,7 @@ static struct platform_device *aquila_devices[] >> __initdata = { >> &aquila_i2c_gpio_pmic, >> &aquila_device_gpiokeys, >> &s3c_device_fb, >> - &s5pc110_device_onenand, >> + &s5p_device_onenand, >> &s3c_device_hsmmc0, >> &s3c_device_hsmmc1, >> &s3c_device_hsmmc2, >> diff --git a/arch/arm/mach-s5pv210/mach-goni.c >> b/arch/arm/mach-s5pv210/mach-goni.c >> index 53754d7..fdc5cca 100644 >> --- a/arch/arm/mach-s5pv210/mach-goni.c >> +++ b/arch/arm/mach-s5pv210/mach-goni.c >> @@ -456,7 +456,7 @@ static void goni_setup_sdhci(void) >> >> static struct platform_device *goni_devices[] __initdata = { >> &s3c_device_fb, >> - &s5pc110_device_onenand, >> + &s5p_device_onenand, >> &goni_i2c_gpio_pmic, >> &goni_device_gpiokeys, >> &s5p_device_fimc0, >> diff --git a/arch/arm/mach-s5pv310/include/mach/irqs.h >> b/arch/arm/mach-s5pv310/include/mach/irqs.h >> index 522352f..7b4b09f 100644 >> --- a/arch/arm/mach-s5pv310/include/mach/irqs.h >> +++ b/arch/arm/mach-s5pv310/include/mach/irqs.h >> @@ -73,6 +73,8 @@ >> #define IRQ_HSMMC2 COMBINER_IRQ(29, 2) >> #define IRQ_HSMMC3 COMBINER_IRQ(29, 3) >> >> +#define IRQ_ONENAND_AUDI COMBINER_IRQ(34, 0) >> + >> /* Set the default NR_IRQS */ >> >> #define NR_IRQS >> COMBINER_IRQ(MAX_COMBINER_NR, 0) >> diff --git a/arch/arm/mach-s5pv310/include/mach/map.h >> b/arch/arm/mach-s5pv310/include/mach/map.h >> index 6c7b1fc..5288f5a 100644 >> --- a/arch/arm/mach-s5pv310/include/mach/map.h >> +++ b/arch/arm/mach-s5pv310/include/mach/map.h >> @@ -23,6 +23,12 @@ >> >> #include <plat/map-s5p.h> >> >> +#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 S5P_PA_CHIPID S5PV310_PA_CHIPID >> >> diff --git a/arch/arm/plat-s5p/Kconfig b/arch/arm/plat-s5p/Kconfig >> index c6a855d..407e323 100644 >> --- a/arch/arm/plat-s5p/Kconfig >> +++ b/arch/arm/plat-s5p/Kconfig >> @@ -46,3 +46,8 @@ config S5P_DEV_FIMC2 >> bool >> help >> Compile in platform device definitions for FIMC controller 2 >> + >> +config S5P_DEV_ONENAND >> + bool >> + help >> + Compile in platform device definition for OneNAND controller >> diff --git a/arch/arm/plat-s5p/Makefile b/arch/arm/plat-s5p/Makefile >> index b2e0296..f3e917e 100644 >> --- a/arch/arm/plat-s5p/Makefile >> +++ b/arch/arm/plat-s5p/Makefile >> @@ -24,3 +24,4 @@ obj-$(CONFIG_S5P_EXT_INT) += irq-eint.o >> obj-$(CONFIG_S5P_DEV_FIMC0) += dev-fimc0.o >> obj-$(CONFIG_S5P_DEV_FIMC1) += dev-fimc1.o >> obj-$(CONFIG_S5P_DEV_FIMC2) += dev-fimc2.o >> +obj-$(CONFIG_S5P_DEV_ONENAND) += dev-onenand.o >> diff --git a/arch/arm/mach-s5pv210/dev-onenand.c >> b/arch/arm/plat-s5p/dev-onenand.c >> similarity index 59% >> rename from arch/arm/mach-s5pv210/dev-onenand.c >> rename to arch/arm/plat-s5p/dev-onenand.c >> index f8ede33..6db9262 100644 >> --- a/arch/arm/mach-s5pv210/dev-onenand.c >> +++ b/arch/arm/plat-s5p/dev-onenand.c >> @@ -1,10 +1,12 @@ >> -/* >> - * linux/arch/arm/mach-s5pv210/dev-onenand.c >> +/* linux/arch/arm/plat-s5p/dev-onenand.c >> + * >> + * Copyright 2010 Samsung Electronics Co., Ltd. >> + * http://www.samsung.com >> * >> * Copyright (c) 2008-2010 Samsung Electronics >> * 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 >> * it under the terms of the GNU General Public License version 2 as >> @@ -19,15 +21,15 @@ >> #include <mach/irqs.h> >> #include <mach/map.h> >> >> -static struct resource s5pc110_onenand_resources[] = { >> +static struct resource s5p_onenand_resources[] = { >> [0] = { >> - .start = S5PC110_PA_ONENAND, >> - .end = S5PC110_PA_ONENAND + SZ_128K - 1, >> + .start = S5P_PA_ONENAND, >> + .end = S5P_PA_ONENAND + SZ_128K - 1, >> .flags = IORESOURCE_MEM, >> }, >> [1] = { >> - .start = S5PC110_PA_ONENAND_DMA, >> - .end = S5PC110_PA_ONENAND_DMA + SZ_8K - 1, >> + .start = S5P_PA_ONENAND_DMA, >> + .end = S5P_PA_ONENAND_DMA + SZ_8K - 1, >> .flags = IORESOURCE_MEM, >> }, >> [2] = { >> @@ -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", >> .id = -1, >> - .num_resources = ARRAY_SIZE(s5pc110_onenand_resources), >> - .resource = s5pc110_onenand_resources, >> + .num_resources = ARRAY_SIZE(s5p_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; >> >> pd = kmemdup(pdata, sizeof(struct onenand_platform_data), >> GFP_KERNEL); >> if (!pd) >> 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; >> } >> diff --git a/arch/arm/plat-samsung/include/plat/devs.h >> b/arch/arm/plat-samsung/include/plat/devs.h >> index 85f6f23..cb12102 100644 >> --- a/arch/arm/plat-samsung/include/plat/devs.h >> +++ b/arch/arm/plat-samsung/include/plat/devs.h >> @@ -73,7 +73,7 @@ extern struct platform_device s3c_device_hwmon; >> extern struct platform_device s3c_device_nand; >> extern struct platform_device s3c_device_onenand; >> 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_usb_hsotg; >> -- >> 1.6.2.5 > > > Thanks. > > Best regards, > Kgene. > -- > Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer, > SW Solution Development Team, Samsung Electronics Co., Ltd. > > -- > To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > ^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [PATCH RE-SEND] ARM: S5P: Move OneNAND device definitions in plat-s5p 2010-08-23 3:58 ` Kyungmin Park @ 2010-08-25 23:23 ` Kukjin Kim 0 siblings, 0 replies; 5+ messages in thread From: Kukjin Kim @ 2010-08-25 23:23 UTC (permalink / raw) To: 'Kyungmin Park' Cc: linux-arm-kernel, linux-samsung-soc, ben-linux, 'Kyungmin Park' Kyungmin Park wrote: > > On Mon, Aug 23, 2010 at 11:35 AM, Kukjin Kim <kgene.kim@samsung.com> wrote: > > Kyungmin Park wrote: > >> > >> " Note: S5PC110 and S5PC210 have same OneNAND driver." > >> > >> Yes I also think it's same device. At least Spec is same. But I heard it > > has > >> some different feature related with DMA operation. > >> I'm not yet receive the official release from LSI. So I can't tell the > > exact > >> one. > >> > >> If it's true. we need to separate it if required. > >> > > No need to separate this stuff. > > It means that no problem to use this commonly for S5PC110 and S5PC210. > As DMA operation is changed, we need to register onenand device > separately like s5pc210-onenand. > to use the different read operations. > I'm not sure why we need separate platform data even though changed DMA operation. Anyway, maybe you received information that we can use this on S5PC110 and S5PC210. > > > > But...I will check it again before applying. > > > >> Thank you, > >> Kyungmin Park > >> > >> -----Original Message----- > >> From: Kukjin Kim [mailto:kgene.kim@samsung.com] > >> Sent: Monday, August 23, 2010 9:07 AM > >> To: linux-arm-kernel@lists.infradead.org; > > linux-samsung-soc@vger.kernel.org > >> Cc: ben-linux@fluff.org; Kukjin Kim; Kyungmin Park > >> Subject: [PATCH RE-SEND] 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: Kukjin Kim <kgene.kim@samsung.com> > >> Cc: Kyungmin Park <Kyungmin Park <kyungmin.park@samsung.com> > >> --- (snip) Thanks. Best regards, Kgene. -- Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd. ^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [PATCH RE-SEND] ARM: S5P: Move OneNAND device definitions in plat-s5p 2010-08-23 2:11 ` [PATCH RE-SEND] ARM: S5P: Move OneNAND device definitions in plat-s5p Kyungmin Park 2010-08-23 2:35 ` Kukjin Kim @ 2010-08-25 23:27 ` Kukjin Kim 1 sibling, 0 replies; 5+ messages in thread From: Kukjin Kim @ 2010-08-25 23:27 UTC (permalink / raw) To: linux-arm-kernel, linux-samsung-soc; +Cc: ben-linux, kyungmin.park Kukjin Kim wrote: > > 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: Kukjin Kim <kgene.kim@samsung.com> > Cc: Kyungmin Park <Kyungmin Park <kyungmin.park@samsung.com> Hmm...typo...will fix like following. Cc: Kyungmin Park <kyungmin.park@samsung.com> > --- > arch/arm/mach-s5pv210/Kconfig | 9 +----- > arch/arm/mach-s5pv210/Makefile | 1 - > arch/arm/mach-s5pv210/include/mach/map.h | 3 ++ > arch/arm/mach-s5pv210/mach-aquila.c | 2 +- > arch/arm/mach-s5pv210/mach-goni.c | 2 +- > arch/arm/mach-s5pv310/include/mach/irqs.h | 2 + > arch/arm/mach-s5pv310/include/mach/map.h | 6 ++++ > arch/arm/plat-s5p/Kconfig | 5 +++ > arch/arm/plat-s5p/Makefile | 1 + > arch/arm/{mach-s5pv210 => plat-s5p}/dev-onenand.c | 28 > +++++++++++--------- > arch/arm/plat-samsung/include/plat/devs.h | 2 +- > 11 files changed, 37 insertions(+), 24 deletions(-) > rename arch/arm/{mach-s5pv210 => plat-s5p}/dev-onenand.c (59%) > (snip) > -- Thanks. Best regards, Kgene. -- Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2010-08-25 23:27 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1282522043-2420-1-git-send-email-kgene.kim@samsung.com>
2010-08-23 2:11 ` [PATCH RE-SEND] ARM: S5P: Move OneNAND device definitions in plat-s5p Kyungmin Park
2010-08-23 2:35 ` Kukjin Kim
2010-08-23 3:58 ` Kyungmin Park
2010-08-25 23:23 ` Kukjin Kim
2010-08-25 23:27 ` Kukjin Kim
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox