diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-26 20:41:04 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-26 20:41:04 -0400 |
commit | 69f1d1a6acbaa7d83ef3f4ee26209c58cd000204 (patch) | |
tree | 12be981f8a123b8361edd64b84fd72f339a9655d /arch/arm/mach-mxs | |
parent | 2d86a3f04e345b03d5e429bfe14985ce26bff4dc (diff) | |
parent | 1e09939bad24df95ddeeeca4fbec64fa94b66def (diff) |
Merge branch 'next/devel' of ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc
* 'next/devel' of ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: (128 commits)
ARM: S5P64X0: External Interrupt Support
ARM: EXYNOS4: Enable MFC on Samsung NURI
ARM: EXYNOS4: Enable MFC on universal_c210
ARM: S5PV210: Enable MFC on Goni
ARM: S5P: Add support for MFC device
ARM: EXYNOS4: Add support FIMD on SMDKC210
ARM: EXYNOS4: Add platform device and helper functions for FIMD
ARM: EXYNOS4: Add resource definition for FIMD
ARM: EXYNOS4: Change devname for FIMD clkdev
ARM: SAMSUNG: Add IRQ_I2S0 definition
ARM: SAMSUNG: Add platform device for idma
ARM: EXYNOS4: Add more registers to be saved and restored for PM
ARM: EXYNOS4: Add more register addresses of CMU
ARM: EXYNOS4: Add platform device for dwmci driver
ARM: EXYNOS4: configure rtc-s3c on NURI
ARM: EXYNOS4: configure MAX8903 secondary charger on NURI
ARM: EXYNOS4: configure ADC on NURI
ARM: EXYNOS4: configure MAX17042 fuel gauge on NURI
ARM: EXYNOS4: configure regulators and PMIC(MAX8997) on NURI
ARM: EXYNOS4: Increase NR_IRQS for devices with more IRQs
...
Fix up tons of silly conflicts:
- arch/arm/mach-davinci/include/mach/psc.h
- arch/arm/mach-exynos4/Kconfig
- arch/arm/mach-exynos4/mach-smdkc210.c
- arch/arm/mach-exynos4/pm.c
- arch/arm/mach-imx/mm-imx1.c
- arch/arm/mach-imx/mm-imx21.c
- arch/arm/mach-imx/mm-imx25.c
- arch/arm/mach-imx/mm-imx27.c
- arch/arm/mach-imx/mm-imx31.c
- arch/arm/mach-imx/mm-imx35.c
- arch/arm/mach-mx5/mm.c
- arch/arm/mach-s5pv210/mach-goni.c
- arch/arm/mm/Kconfig
Diffstat (limited to 'arch/arm/mach-mxs')
-rw-r--r-- | arch/arm/mach-mxs/Kconfig | 2 | ||||
-rw-r--r-- | arch/arm/mach-mxs/mach-mx28evk.c | 21 | ||||
-rw-r--r-- | arch/arm/mach-mxs/mach-tx28.c | 6 |
3 files changed, 29 insertions, 0 deletions
diff --git a/arch/arm/mach-mxs/Kconfig b/arch/arm/mach-mxs/Kconfig index 162b0b0bc356..4cd0231ee539 100644 --- a/arch/arm/mach-mxs/Kconfig +++ b/arch/arm/mach-mxs/Kconfig | |||
@@ -41,6 +41,7 @@ config MACH_MX23EVK | |||
41 | config MACH_MX28EVK | 41 | config MACH_MX28EVK |
42 | bool "Support MX28EVK Platform" | 42 | bool "Support MX28EVK Platform" |
43 | select SOC_IMX28 | 43 | select SOC_IMX28 |
44 | select LEDS_GPIO_REGISTER | ||
44 | select MXS_HAVE_AMBA_DUART | 45 | select MXS_HAVE_AMBA_DUART |
45 | select MXS_HAVE_PLATFORM_AUART | 46 | select MXS_HAVE_PLATFORM_AUART |
46 | select MXS_HAVE_PLATFORM_FEC | 47 | select MXS_HAVE_PLATFORM_FEC |
@@ -60,6 +61,7 @@ config MODULE_TX28 | |||
60 | select MXS_HAVE_PLATFORM_AUART | 61 | select MXS_HAVE_PLATFORM_AUART |
61 | select MXS_HAVE_PLATFORM_FEC | 62 | select MXS_HAVE_PLATFORM_FEC |
62 | select MXS_HAVE_PLATFORM_MXS_I2C | 63 | select MXS_HAVE_PLATFORM_MXS_I2C |
64 | select MXS_HAVE_PLATFORM_MXS_MMC | ||
63 | select MXS_HAVE_PLATFORM_MXS_PWM | 65 | select MXS_HAVE_PLATFORM_MXS_PWM |
64 | 66 | ||
65 | config MACH_TX28 | 67 | config MACH_TX28 |
diff --git a/arch/arm/mach-mxs/mach-mx28evk.c b/arch/arm/mach-mxs/mach-mx28evk.c index 56767a5cce0e..eaaf6ff28990 100644 --- a/arch/arm/mach-mxs/mach-mx28evk.c +++ b/arch/arm/mach-mxs/mach-mx28evk.c | |||
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/delay.h> | 15 | #include <linux/delay.h> |
16 | #include <linux/platform_device.h> | 16 | #include <linux/platform_device.h> |
17 | #include <linux/gpio.h> | 17 | #include <linux/gpio.h> |
18 | #include <linux/leds.h> | ||
18 | #include <linux/irq.h> | 19 | #include <linux/irq.h> |
19 | #include <linux/clk.h> | 20 | #include <linux/clk.h> |
20 | 21 | ||
@@ -29,6 +30,7 @@ | |||
29 | 30 | ||
30 | #define MX28EVK_FLEXCAN_SWITCH MXS_GPIO_NR(2, 13) | 31 | #define MX28EVK_FLEXCAN_SWITCH MXS_GPIO_NR(2, 13) |
31 | #define MX28EVK_FEC_PHY_POWER MXS_GPIO_NR(2, 15) | 32 | #define MX28EVK_FEC_PHY_POWER MXS_GPIO_NR(2, 15) |
33 | #define MX28EVK_GPIO_LED MXS_GPIO_NR(3, 5) | ||
32 | #define MX28EVK_BL_ENABLE MXS_GPIO_NR(3, 18) | 34 | #define MX28EVK_BL_ENABLE MXS_GPIO_NR(3, 18) |
33 | #define MX28EVK_LCD_ENABLE MXS_GPIO_NR(3, 30) | 35 | #define MX28EVK_LCD_ENABLE MXS_GPIO_NR(3, 30) |
34 | #define MX28EVK_FEC_PHY_RESET MXS_GPIO_NR(4, 13) | 36 | #define MX28EVK_FEC_PHY_RESET MXS_GPIO_NR(4, 13) |
@@ -178,6 +180,23 @@ static const iomux_cfg_t mx28evk_pads[] __initconst = { | |||
178 | /* slot power enable */ | 180 | /* slot power enable */ |
179 | MX28_PAD_PWM4__GPIO_3_29 | | 181 | MX28_PAD_PWM4__GPIO_3_29 | |
180 | (MXS_PAD_4MA | MXS_PAD_3V3 | MXS_PAD_NOPULL), | 182 | (MXS_PAD_4MA | MXS_PAD_3V3 | MXS_PAD_NOPULL), |
183 | |||
184 | /* led */ | ||
185 | MX28_PAD_AUART1_TX__GPIO_3_5 | MXS_PAD_CTRL, | ||
186 | }; | ||
187 | |||
188 | /* led */ | ||
189 | static const struct gpio_led mx28evk_leds[] __initconst = { | ||
190 | { | ||
191 | .name = "GPIO-LED", | ||
192 | .default_trigger = "heartbeat", | ||
193 | .gpio = MX28EVK_GPIO_LED, | ||
194 | }, | ||
195 | }; | ||
196 | |||
197 | static const struct gpio_led_platform_data mx28evk_led_data __initconst = { | ||
198 | .leds = mx28evk_leds, | ||
199 | .num_leds = ARRAY_SIZE(mx28evk_leds), | ||
181 | }; | 200 | }; |
182 | 201 | ||
183 | /* fec */ | 202 | /* fec */ |
@@ -385,6 +404,8 @@ static void __init mx28evk_init(void) | |||
385 | if (ret) | 404 | if (ret) |
386 | pr_warn("failed to request gpio mmc1-slot-power: %d\n", ret); | 405 | pr_warn("failed to request gpio mmc1-slot-power: %d\n", ret); |
387 | mx28_add_mxs_mmc(1, &mx28evk_mmc_pdata[1]); | 406 | mx28_add_mxs_mmc(1, &mx28evk_mmc_pdata[1]); |
407 | |||
408 | gpio_led_register_device(0, &mx28evk_led_data); | ||
388 | } | 409 | } |
389 | 410 | ||
390 | static void __init mx28evk_timer_init(void) | 411 | static void __init mx28evk_timer_init(void) |
diff --git a/arch/arm/mach-mxs/mach-tx28.c b/arch/arm/mach-mxs/mach-tx28.c index 6766a12cca7f..515a423f82cd 100644 --- a/arch/arm/mach-mxs/mach-tx28.c +++ b/arch/arm/mach-mxs/mach-tx28.c | |||
@@ -139,6 +139,11 @@ static struct i2c_board_info tx28_stk5v3_i2c_boardinfo[] __initdata = { | |||
139 | }, | 139 | }, |
140 | }; | 140 | }; |
141 | 141 | ||
142 | static struct mxs_mmc_platform_data tx28_mmc0_pdata __initdata = { | ||
143 | .wp_gpio = -EINVAL, | ||
144 | .flags = SLOTF_4_BIT_CAPABLE, | ||
145 | }; | ||
146 | |||
142 | static void __init tx28_stk5v3_init(void) | 147 | static void __init tx28_stk5v3_init(void) |
143 | { | 148 | { |
144 | mxs_iomux_setup_multiple_pads(tx28_stk5v3_pads, | 149 | mxs_iomux_setup_multiple_pads(tx28_stk5v3_pads, |
@@ -155,6 +160,7 @@ static void __init tx28_stk5v3_init(void) | |||
155 | mx28_add_mxs_i2c(0); | 160 | mx28_add_mxs_i2c(0); |
156 | i2c_register_board_info(0, tx28_stk5v3_i2c_boardinfo, | 161 | i2c_register_board_info(0, tx28_stk5v3_i2c_boardinfo, |
157 | ARRAY_SIZE(tx28_stk5v3_i2c_boardinfo)); | 162 | ARRAY_SIZE(tx28_stk5v3_i2c_boardinfo)); |
163 | mx28_add_mxs_mmc(0, &tx28_mmc0_pdata); | ||
158 | } | 164 | } |
159 | 165 | ||
160 | static void __init tx28_timer_init(void) | 166 | static void __init tx28_timer_init(void) |