diff options
author | Ben Dooks <ben-linux@fluff.org> | 2008-11-03 20:14:53 +0000 |
---|---|---|
committer | Ben Dooks <ben-linux@fluff.org> | 2008-12-15 23:53:05 +0000 |
commit | b24636cff11fc7953e3a7f1a9b905349c0b838bf (patch) | |
tree | 8727b0d1b68dbc820edd70b4e4c7071d3c4a1788 | |
parent | 4f507d19ca9e2d703527072f7d8eeb0f0241d6b9 (diff) | |
download | blackbird-op-linux-b24636cff11fc7953e3a7f1a9b905349c0b838bf.tar.gz blackbird-op-linux-b24636cff11fc7953e3a7f1a9b905349c0b838bf.zip |
[ARM] SMDK6410: Add availability of second hsmmc channel
Add SDHCI channel 1.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
-rw-r--r-- | arch/arm/mach-s3c6410/Kconfig | 30 | ||||
-rw-r--r-- | arch/arm/mach-s3c6410/mach-smdk6410.c | 6 |
2 files changed, 35 insertions, 1 deletions
diff --git a/arch/arm/mach-s3c6410/Kconfig b/arch/arm/mach-s3c6410/Kconfig index 2462693a1128..d00b5605100d 100644 --- a/arch/arm/mach-s3c6410/Kconfig +++ b/arch/arm/mach-s3c6410/Kconfig @@ -23,8 +23,38 @@ config MACH_SMDK6410 bool "SMDK6410" select CPU_S3C6410 select S3C_DEV_HSMMC + select S3C_DEV_HSMMC1 select S3C_DEV_I2C1 select S3C6410_SETUP_SDHCI select S3C64XX_SETUP_I2C1 help Machine support for the Samsung SMDK6410 + +# At least some of the SMDK6410s were shipped with the card detect +# for the MMC/SD slots connected to the same input. This means that +# either the boards need to be altered to have channel0 to an alternate +# configuration or that only one slot can be used. + +choice + prompt "SMDK6410 MMC/SD slot setup" + depends on MACH_SMDK6410 + +config SMDK6410_SD_CH0 + bool "Use channel 0 only" + depends on MACH_SMDK6410 + help + Select CON7 (channel 0) as the MMC/SD slot, as + at least some SMDK6410 boards come with the + resistors fitted so that the card detects for + channels 0 and 1 are the same. + +config SMDK6410_SD_CH1 + bool "Use channel 1 only" + depends on MACH_SMDK6410 + help + Select CON6 (channel 1) as the MMC/SD slot, as + at least some SMDK6410 boards come with the + resistors fitted so that the card detects for + channels 0 and 1 are the same. + +endchoice diff --git a/arch/arm/mach-s3c6410/mach-smdk6410.c b/arch/arm/mach-s3c6410/mach-smdk6410.c index e845b2a1becf..b900244a91d3 100644 --- a/arch/arm/mach-s3c6410/mach-smdk6410.c +++ b/arch/arm/mach-s3c6410/mach-smdk6410.c @@ -64,12 +64,16 @@ static struct s3c2410_uartcfg smdk6410_uartcfgs[] __initdata = { struct map_desc smdk6410_iodesc[] = {}; static struct platform_device *smdk6410_devices[] __initdata = { +#ifdef CONFIG_SMDK6410_SD_CH0 &s3c_device_hsmmc0, +#endif +#ifdef CONFIG_SMDK6410_SD_CH1 + &s3c_device_hsmmc1, +#endif &s3c_device_i2c0, &s3c_device_i2c1, }; - static struct i2c_board_info i2c_devs0[] __initdata = { { I2C_BOARD_INFO("24c08", 0x50), }, { I2C_BOARD_INFO("WM8580", 0X1b), }, |