diff options
author | Lee Jones <lee.jones@linaro.org> | 2012-05-29 02:40:04 -0400 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2012-07-13 03:55:43 -0400 |
commit | 5e1ac7db04f963e230ffa0a39c5df376733f8c0b (patch) | |
tree | 084953653c4f6fe5fa12965c60ffcc02da70a296 /arch/arm/mach-ux500 | |
parent | 2b667a2d8005e7c8362a77365cedbcd71fa5d6c1 (diff) |
ARM: ux500: Enable Device Tree support mmci for Snowball
Allow proper initialisation for MMC via the mmci driver
for the Snowball low-cost development board using DT. At
the moment we continue to use DMA setup from platform code.
Once the DMA generic DT bindings have been completed we
can then port the remainder over to DT.
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'arch/arm/mach-ux500')
-rw-r--r-- | arch/arm/mach-ux500/board-mop500-sdi.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-ux500/board-mop500.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-ux500/board-mop500.h | 3 |
3 files changed, 7 insertions, 3 deletions
diff --git a/arch/arm/mach-ux500/board-mop500-sdi.c b/arch/arm/mach-ux500/board-mop500-sdi.c index 920251cf834c..18ff781cfbe4 100644 --- a/arch/arm/mach-ux500/board-mop500-sdi.c +++ b/arch/arm/mach-ux500/board-mop500-sdi.c | |||
@@ -80,7 +80,7 @@ static struct stedma40_chan_cfg mop500_sdi0_dma_cfg_tx = { | |||
80 | }; | 80 | }; |
81 | #endif | 81 | #endif |
82 | 82 | ||
83 | static struct mmci_platform_data mop500_sdi0_data = { | 83 | struct mmci_platform_data mop500_sdi0_data = { |
84 | .ios_handler = mop500_sdi0_ios_handler, | 84 | .ios_handler = mop500_sdi0_ios_handler, |
85 | .ocr_mask = MMC_VDD_29_30, | 85 | .ocr_mask = MMC_VDD_29_30, |
86 | .f_max = 50000000, | 86 | .f_max = 50000000, |
@@ -227,7 +227,7 @@ static struct stedma40_chan_cfg mop500_sdi4_dma_cfg_tx = { | |||
227 | }; | 227 | }; |
228 | #endif | 228 | #endif |
229 | 229 | ||
230 | static struct mmci_platform_data mop500_sdi4_data = { | 230 | struct mmci_platform_data mop500_sdi4_data = { |
231 | .ocr_mask = MMC_VDD_29_30, | 231 | .ocr_mask = MMC_VDD_29_30, |
232 | .f_max = 50000000, | 232 | .f_max = 50000000, |
233 | .capabilities = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA | | 233 | .capabilities = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA | |
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c index 4fd93f5c49ec..1bf179e91eab 100644 --- a/arch/arm/mach-ux500/board-mop500.c +++ b/arch/arm/mach-ux500/board-mop500.c | |||
@@ -776,6 +776,8 @@ struct of_dev_auxdata u8500_auxdata_lookup[] __initdata = { | |||
776 | OF_DEV_AUXDATA("arm,pl011", 0x80007000, "uart2", &uart2_plat), | 776 | OF_DEV_AUXDATA("arm,pl011", 0x80007000, "uart2", &uart2_plat), |
777 | /* Requires DMA bindings. */ | 777 | /* Requires DMA bindings. */ |
778 | OF_DEV_AUXDATA("arm,pl022", 0x80002000, "ssp0", &ssp0_plat), | 778 | OF_DEV_AUXDATA("arm,pl022", 0x80002000, "ssp0", &ssp0_plat), |
779 | OF_DEV_AUXDATA("arm,pl18x", 0x80126000, "sdi0", &mop500_sdi0_data), | ||
780 | OF_DEV_AUXDATA("arm,pl18x", 0x80114000, "sdi4", &mop500_sdi4_data), | ||
779 | /* Requires clock name bindings. */ | 781 | /* Requires clock name bindings. */ |
780 | OF_DEV_AUXDATA("st,nomadik-gpio", 0x8012e000, "gpio.0", NULL), | 782 | OF_DEV_AUXDATA("st,nomadik-gpio", 0x8012e000, "gpio.0", NULL), |
781 | OF_DEV_AUXDATA("st,nomadik-gpio", 0x8012e080, "gpio.1", NULL), | 783 | OF_DEV_AUXDATA("st,nomadik-gpio", 0x8012e080, "gpio.1", NULL), |
@@ -851,7 +853,6 @@ static void __init u8500_init_machine(void) | |||
851 | platform_add_devices(snowball_of_platform_devs, | 853 | platform_add_devices(snowball_of_platform_devs, |
852 | ARRAY_SIZE(snowball_of_platform_devs)); | 854 | ARRAY_SIZE(snowball_of_platform_devs)); |
853 | 855 | ||
854 | snowball_sdi_init(parent); | ||
855 | } else if (of_machine_is_compatible("st-ericsson,hrefv60+")) { | 856 | } else if (of_machine_is_compatible("st-ericsson,hrefv60+")) { |
856 | /* | 857 | /* |
857 | * The HREFv60 board removed a GPIO expander and routed | 858 | * The HREFv60 board removed a GPIO expander and routed |
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h index 2f87b25a908a..b5bfc1a78b1a 100644 --- a/arch/arm/mach-ux500/board-mop500.h +++ b/arch/arm/mach-ux500/board-mop500.h | |||
@@ -9,6 +9,7 @@ | |||
9 | 9 | ||
10 | /* For NOMADIK_NR_GPIO */ | 10 | /* For NOMADIK_NR_GPIO */ |
11 | #include <mach/irqs.h> | 11 | #include <mach/irqs.h> |
12 | #include <linux/amba/mmci.h> | ||
12 | 13 | ||
13 | /* Snowball specific GPIO assignments, this board has no GPIO expander */ | 14 | /* Snowball specific GPIO assignments, this board has no GPIO expander */ |
14 | #define SNOWBALL_ACCEL_INT1_GPIO 163 | 15 | #define SNOWBALL_ACCEL_INT1_GPIO 163 |
@@ -78,6 +79,8 @@ | |||
78 | 79 | ||
79 | struct device; | 80 | struct device; |
80 | struct i2c_board_info; | 81 | struct i2c_board_info; |
82 | extern struct mmci_platform_data mop500_sdi0_data; | ||
83 | extern struct mmci_platform_data mop500_sdi4_data; | ||
81 | 84 | ||
82 | extern void mop500_sdi_init(struct device *parent); | 85 | extern void mop500_sdi_init(struct device *parent); |
83 | extern void snowball_sdi_init(struct device *parent); | 86 | extern void snowball_sdi_init(struct device *parent); |