RE: [PATCH 1/4] ARM: S3C64XX: Add support for Compact Flash driver on SMDK6410
Ben Dooks wrote: On Thu, May 27, 2010 at 05:22:01PM +0900, Kukjin Kim wrote: From: Abhilash Kesavan a.kesa...@samsung.com Following is added for the CF-ATA driver: - Platform data strucure definition and instantiation - Platform device definition and enabling code - Platform-specific gpio setup code - CF controller register definitions Signed-off-by: Abhilash Kesavan a.kesa...@samsung.com Signed-off-by: Thomas Abraham thomas...@samsung.com Signed-off-by: Kukjin Kim kgene@samsung.com --- arch/arm/mach-s3c64xx/Kconfig |7 +++ arch/arm/mach-s3c64xx/Makefile |1 + arch/arm/mach-s3c64xx/clock.c |6 +++ arch/arm/mach-s3c64xx/include/mach/map.h|5 ++- arch/arm/mach-s3c64xx/include/mach/regs-clock.h |5 ++ arch/arm/mach-s3c64xx/mach-smdk6410.c |9 arch/arm/mach-s3c64xx/s3c6410.c |1 + arch/arm/mach-s3c64xx/setup-ide.c | 55 ++ arch/arm/plat-samsung/Kconfig |5 ++ arch/arm/plat-samsung/Makefile |1 + arch/arm/plat-samsung/dev-ide.c | 52 + arch/arm/plat-samsung/include/plat/ata.h| 38 +++ arch/arm/plat-samsung/include/plat/devs.h |1 + arch/arm/plat-samsung/include/plat/regs-ata.h | 56 +++ it would have been useful to keep the plat-samsung changes seperate. Ok..will separate the plat-samsung and machine code into different patches. 14 files changed, 241 insertions(+), 1 deletions(-) create mode 100644 arch/arm/mach-s3c64xx/setup-ide.c create mode 100644 arch/arm/plat-samsung/dev-ide.c create mode 100644 arch/arm/plat-samsung/include/plat/ata.h create mode 100644 arch/arm/plat-samsung/include/plat/regs-ata.h diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach-s3c64xx/Kconfig index f5a5972..c00401e 100644 --- a/arch/arm/mach-s3c64xx/Kconfig +++ b/arch/arm/mach-s3c64xx/Kconfig @@ -67,6 +67,11 @@ config S3C64XX_SETUP_SDHCI_GPIO help Common setup code for S3C64XX SDHCI GPIO configurations +config S3C64XX_SETUP_IDE + bool + help + Common setup code for S3C64XX IDE. + # S36400 Macchine support config MACH_SMDK6400 @@ -101,9 +106,11 @@ config MACH_SMDK6410 select S3C_DEV_USB_HSOTG select S3C_DEV_WDT select HAVE_S3C2410_WATCHDOG + select S3C_DEV_IDE select S3C64XX_SETUP_SDHCI select S3C64XX_SETUP_I2C1 select S3C64XX_SETUP_FB_24BPP + select S3C64XX_SETUP_IDE help Machine support for the Samsung SMDK6410 diff --git a/arch/arm/mach-s3c64xx/Makefile b/arch/arm/mach-s3c64xx/Makefile index 9d10069..0d52c35 100644 --- a/arch/arm/mach-s3c64xx/Makefile +++ b/arch/arm/mach-s3c64xx/Makefile @@ -38,6 +38,7 @@ obj-$(CONFIG_S3C64XX_SETUP_I2C1) += setup-i2c1.o obj-$(CONFIG_S3C64XX_SETUP_SDHCI) += setup-sdhci.o obj-$(CONFIG_S3C64XX_SETUP_FB_24BPP) += setup-fb-24bpp.o obj-$(CONFIG_S3C64XX_SETUP_SDHCI_GPIO) += setup-sdhci-gpio.o +obj-$(CONFIG_S3C64XX_SETUP_IDE) += setup-ide.o # PM diff --git a/arch/arm/mach-s3c64xx/clock.c b/arch/arm/mach-s3c64xx/clock.c index 7a4138b..9dac5c4 100644 --- a/arch/arm/mach-s3c64xx/clock.c +++ b/arch/arm/mach-s3c64xx/clock.c @@ -304,6 +304,12 @@ static struct clk init_clocks[] = { .id = -1, .parent = clk_p, .ctrlbit= S3C_CLKCON_PCLK_AC97, + }, { + .name = cfcon, + .id = -1, + .parent = clk_h, + .enable = s3c64xx_hclk_ctrl, + .ctrlbit= S3C_CLKCON_HCLK_IHOST, } }; diff --git a/arch/arm/mach-s3c64xx/include/mach/map.h b/arch/arm/mach- s3c64xx/include/mach/map.h index e1eab3c..4b1ac79 100644 --- a/arch/arm/mach-s3c64xx/include/mach/map.h +++ b/arch/arm/mach-s3c64xx/include/mach/map.h @@ -86,6 +86,9 @@ #define S3C64XX_SZ_GPIOSZ_4K #define S3C64XX_PA_SDRAM (0x5000) + +#define S3C64XX_PA_CFCON (0x7030) + #define S3C64XX_PA_VIC0(0x7120) #define S3C64XX_PA_VIC1(0x7130) @@ -118,7 +121,7 @@ #define S3C_VA_USB_HSPHY S3C64XX_VA_USB_HSPHY #define S3C_PA_RTC S3C64XX_PA_RTC #define S3C_PA_WDT S3C64XX_PA_WATCHDOG - +#define SAMSUNG_PA_CFCON S3C64XX_PA_CFCON #define SAMSUNG_PA_ADC S3C64XX_PA_ADC #endif /* __ASM_ARCH_6400_MAP_H */ diff --git a/arch/arm/mach-s3c64xx/include/mach/regs-clock.h b/arch/arm/mach- s3c64xx/include/mach/regs-clock.h index 0114eb0..05332b9 100644 --- a/arch/arm/mach-s3c64xx/include/mach/regs-clock.h +++ b/arch/arm/mach-s3c64xx/include/mach/regs-clock.h @@ -34,6 +34,7 @@ #define S3C_SCLK_GATE
RE: [PATCH 1/4] ARM: S3C64XX: Add support for Compact Flash driver on SMDK6410
Russell King - ARM Linux wrote: On Thu, May 27, 2010 at 05:22:01PM +0900, Kukjin Kim wrote: +#include mach/map.h +#include mach/gpio.h shouldn't this be linux/gpio.h ? Will change it. Thanks. Best regards, Kgene. -- Kukjin Kim kgene@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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/4] ARM: S3C64XX: Add support for Compact Flash driver on SMDK6410
On Thu, May 27, 2010 at 05:22:01PM +0900, Kukjin Kim wrote: From: Abhilash Kesavan a.kesa...@samsung.com Following is added for the CF-ATA driver: - Platform data strucure definition and instantiation - Platform device definition and enabling code - Platform-specific gpio setup code - CF controller register definitions Signed-off-by: Abhilash Kesavan a.kesa...@samsung.com Signed-off-by: Thomas Abraham thomas...@samsung.com Signed-off-by: Kukjin Kim kgene@samsung.com --- arch/arm/mach-s3c64xx/Kconfig |7 +++ arch/arm/mach-s3c64xx/Makefile |1 + arch/arm/mach-s3c64xx/clock.c |6 +++ arch/arm/mach-s3c64xx/include/mach/map.h|5 ++- arch/arm/mach-s3c64xx/include/mach/regs-clock.h |5 ++ arch/arm/mach-s3c64xx/mach-smdk6410.c |9 arch/arm/mach-s3c64xx/s3c6410.c |1 + arch/arm/mach-s3c64xx/setup-ide.c | 55 ++ arch/arm/plat-samsung/Kconfig |5 ++ arch/arm/plat-samsung/Makefile |1 + arch/arm/plat-samsung/dev-ide.c | 52 + arch/arm/plat-samsung/include/plat/ata.h| 38 +++ arch/arm/plat-samsung/include/plat/devs.h |1 + arch/arm/plat-samsung/include/plat/regs-ata.h | 56 +++ it would have been useful to keep the plat-samsung changes seperate. 14 files changed, 241 insertions(+), 1 deletions(-) create mode 100644 arch/arm/mach-s3c64xx/setup-ide.c create mode 100644 arch/arm/plat-samsung/dev-ide.c create mode 100644 arch/arm/plat-samsung/include/plat/ata.h create mode 100644 arch/arm/plat-samsung/include/plat/regs-ata.h diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach-s3c64xx/Kconfig index f5a5972..c00401e 100644 --- a/arch/arm/mach-s3c64xx/Kconfig +++ b/arch/arm/mach-s3c64xx/Kconfig @@ -67,6 +67,11 @@ config S3C64XX_SETUP_SDHCI_GPIO help Common setup code for S3C64XX SDHCI GPIO configurations +config S3C64XX_SETUP_IDE + bool + help + Common setup code for S3C64XX IDE. + # S36400 Macchine support config MACH_SMDK6400 @@ -101,9 +106,11 @@ config MACH_SMDK6410 select S3C_DEV_USB_HSOTG select S3C_DEV_WDT select HAVE_S3C2410_WATCHDOG + select S3C_DEV_IDE select S3C64XX_SETUP_SDHCI select S3C64XX_SETUP_I2C1 select S3C64XX_SETUP_FB_24BPP + select S3C64XX_SETUP_IDE help Machine support for the Samsung SMDK6410 diff --git a/arch/arm/mach-s3c64xx/Makefile b/arch/arm/mach-s3c64xx/Makefile index 9d10069..0d52c35 100644 --- a/arch/arm/mach-s3c64xx/Makefile +++ b/arch/arm/mach-s3c64xx/Makefile @@ -38,6 +38,7 @@ obj-$(CONFIG_S3C64XX_SETUP_I2C1) += setup-i2c1.o obj-$(CONFIG_S3C64XX_SETUP_SDHCI) += setup-sdhci.o obj-$(CONFIG_S3C64XX_SETUP_FB_24BPP) += setup-fb-24bpp.o obj-$(CONFIG_S3C64XX_SETUP_SDHCI_GPIO) += setup-sdhci-gpio.o +obj-$(CONFIG_S3C64XX_SETUP_IDE) += setup-ide.o # PM diff --git a/arch/arm/mach-s3c64xx/clock.c b/arch/arm/mach-s3c64xx/clock.c index 7a4138b..9dac5c4 100644 --- a/arch/arm/mach-s3c64xx/clock.c +++ b/arch/arm/mach-s3c64xx/clock.c @@ -304,6 +304,12 @@ static struct clk init_clocks[] = { .id = -1, .parent = clk_p, .ctrlbit= S3C_CLKCON_PCLK_AC97, + }, { + .name = cfcon, + .id = -1, + .parent = clk_h, + .enable = s3c64xx_hclk_ctrl, + .ctrlbit= S3C_CLKCON_HCLK_IHOST, } }; diff --git a/arch/arm/mach-s3c64xx/include/mach/map.h b/arch/arm/mach-s3c64xx/include/mach/map.h index e1eab3c..4b1ac79 100644 --- a/arch/arm/mach-s3c64xx/include/mach/map.h +++ b/arch/arm/mach-s3c64xx/include/mach/map.h @@ -86,6 +86,9 @@ #define S3C64XX_SZ_GPIO SZ_4K #define S3C64XX_PA_SDRAM (0x5000) + +#define S3C64XX_PA_CFCON (0x7030) + #define S3C64XX_PA_VIC0 (0x7120) #define S3C64XX_PA_VIC1 (0x7130) @@ -118,7 +121,7 @@ #define S3C_VA_USB_HSPHY S3C64XX_VA_USB_HSPHY #define S3C_PA_RTC S3C64XX_PA_RTC #define S3C_PA_WDT S3C64XX_PA_WATCHDOG - +#define SAMSUNG_PA_CFCON S3C64XX_PA_CFCON #define SAMSUNG_PA_ADC S3C64XX_PA_ADC #endif /* __ASM_ARCH_6400_MAP_H */ diff --git a/arch/arm/mach-s3c64xx/include/mach/regs-clock.h b/arch/arm/mach-s3c64xx/include/mach/regs-clock.h index 0114eb0..05332b9 100644 --- a/arch/arm/mach-s3c64xx/include/mach/regs-clock.h +++ b/arch/arm/mach-s3c64xx/include/mach/regs-clock.h @@ -34,6 +34,7 @@ #define S3C_SCLK_GATES3C_CLKREG(0x38) #define S3C_MEM0_GATES3C_CLKREG(0x3C) #define S3C6410_CLK_SRC2 S3C_CLKREG(0x10C) +#define
Re: [PATCH 1/4] ARM: S3C64XX: Add support for Compact Flash driver on SMDK6410
On Thu, May 27, 2010 at 05:22:01PM +0900, Kukjin Kim wrote: +#include mach/map.h +#include mach/gpio.h shouldn't this be linux/gpio.h ? -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [PATCH 1/4] ARM: S3C64XX: Add support for Compact Flash driver on SMDK6410
Hello, On Thursday, May 27, 2010 10:53 AM Ben Dooks wrote: On Thu, May 27, 2010 at 05:22:01PM +0900, Kukjin Kim wrote: From: Abhilash Kesavan a.kesa...@samsung.com Following is added for the CF-ATA driver: - Platform data strucure definition and instantiation - Platform device definition and enabling code - Platform-specific gpio setup code - CF controller register definitions Signed-off-by: Abhilash Kesavan a.kesa...@samsung.com Signed-off-by: Thomas Abraham thomas...@samsung.com Signed-off-by: Kukjin Kim kgene@samsung.com --- arch/arm/mach-s3c64xx/Kconfig |7 +++ arch/arm/mach-s3c64xx/Makefile |1 + arch/arm/mach-s3c64xx/clock.c |6 +++ arch/arm/mach-s3c64xx/include/mach/map.h|5 ++- arch/arm/mach-s3c64xx/include/mach/regs-clock.h |5 ++ arch/arm/mach-s3c64xx/mach-smdk6410.c |9 arch/arm/mach-s3c64xx/s3c6410.c |1 + arch/arm/mach-s3c64xx/setup-ide.c | 55 ++ arch/arm/plat-samsung/Kconfig |5 ++ arch/arm/plat-samsung/Makefile |1 + arch/arm/plat-samsung/dev-ide.c | 52 + arch/arm/plat-samsung/include/plat/ata.h| 38 +++ arch/arm/plat-samsung/include/plat/devs.h |1 + arch/arm/plat-samsung/include/plat/regs-ata.h | 56 +++ it would have been useful to keep the plat-samsung changes seperate. 14 files changed, 241 insertions(+), 1 deletions(-) create mode 100644 arch/arm/mach-s3c64xx/setup-ide.c create mode 100644 arch/arm/plat-samsung/dev-ide.c create mode 100644 arch/arm/plat-samsung/include/plat/ata.h create mode 100644 arch/arm/plat-samsung/include/plat/regs-ata.h diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach- s3c64xx/Kconfig index f5a5972..c00401e 100644 --- a/arch/arm/mach-s3c64xx/Kconfig +++ b/arch/arm/mach-s3c64xx/Kconfig @@ -67,6 +67,11 @@ config S3C64XX_SETUP_SDHCI_GPIO help Common setup code for S3C64XX SDHCI GPIO configurations +config S3C64XX_SETUP_IDE + bool + help + Common setup code for S3C64XX IDE. + # S36400 Macchine support config MACH_SMDK6400 @@ -101,9 +106,11 @@ config MACH_SMDK6410 select S3C_DEV_USB_HSOTG select S3C_DEV_WDT select HAVE_S3C2410_WATCHDOG + select S3C_DEV_IDE select S3C64XX_SETUP_SDHCI select S3C64XX_SETUP_I2C1 select S3C64XX_SETUP_FB_24BPP + select S3C64XX_SETUP_IDE help Machine support for the Samsung SMDK6410 diff --git a/arch/arm/mach-s3c64xx/Makefile b/arch/arm/mach- s3c64xx/Makefile index 9d10069..0d52c35 100644 --- a/arch/arm/mach-s3c64xx/Makefile +++ b/arch/arm/mach-s3c64xx/Makefile @@ -38,6 +38,7 @@ obj-$(CONFIG_S3C64XX_SETUP_I2C1) += setup-i2c1.o obj-$(CONFIG_S3C64XX_SETUP_SDHCI) += setup-sdhci.o obj-$(CONFIG_S3C64XX_SETUP_FB_24BPP) += setup-fb-24bpp.o obj-$(CONFIG_S3C64XX_SETUP_SDHCI_GPIO) += setup-sdhci-gpio.o +obj-$(CONFIG_S3C64XX_SETUP_IDE) += setup-ide.o # PM diff --git a/arch/arm/mach-s3c64xx/clock.c b/arch/arm/mach- s3c64xx/clock.c index 7a4138b..9dac5c4 100644 --- a/arch/arm/mach-s3c64xx/clock.c +++ b/arch/arm/mach-s3c64xx/clock.c @@ -304,6 +304,12 @@ static struct clk init_clocks[] = { .id = -1, .parent = clk_p, .ctrlbit= S3C_CLKCON_PCLK_AC97, + }, { + .name = cfcon, + .id = -1, + .parent = clk_h, + .enable = s3c64xx_hclk_ctrl, + .ctrlbit= S3C_CLKCON_HCLK_IHOST, } }; diff --git a/arch/arm/mach-s3c64xx/include/mach/map.h b/arch/arm/mach- s3c64xx/include/mach/map.h index e1eab3c..4b1ac79 100644 --- a/arch/arm/mach-s3c64xx/include/mach/map.h +++ b/arch/arm/mach-s3c64xx/include/mach/map.h @@ -86,6 +86,9 @@ #define S3C64XX_SZ_GPIOSZ_4K #define S3C64XX_PA_SDRAM (0x5000) + +#define S3C64XX_PA_CFCON (0x7030) + #define S3C64XX_PA_VIC0(0x7120) #define S3C64XX_PA_VIC1(0x7130) @@ -118,7 +121,7 @@ #define S3C_VA_USB_HSPHY S3C64XX_VA_USB_HSPHY #define S3C_PA_RTC S3C64XX_PA_RTC #define S3C_PA_WDT S3C64XX_PA_WATCHDOG - +#define SAMSUNG_PA_CFCON S3C64XX_PA_CFCON #define SAMSUNG_PA_ADC S3C64XX_PA_ADC #endif /* __ASM_ARCH_6400_MAP_H */ diff --git a/arch/arm/mach-s3c64xx/include/mach/regs-clock.h b/arch/arm/mach-s3c64xx/include/mach/regs-clock.h index 0114eb0..05332b9 100644 --- a/arch/arm/mach-s3c64xx/include/mach/regs-clock.h +++ b/arch/arm/mach-s3c64xx/include/mach/regs-clock.h @@ -34,6 +34,7 @@ #define S3C_SCLK_GATE S3C_CLKREG(0x38) #define S3C_MEM0_GATE