aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-03-30 00:30:28 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-03-30 00:30:28 -0400
commit4bde23f8751f388867766b0a62ed1ef8b7e01561 (patch)
tree9ad3d165483fda3349c2bf0195406eebaa7af5ce /arch/arm/mach-omap2
parente152c38abaa92352679c9b53c4cce533c03997c6 (diff)
parentf00e9b11863abdb837e555a2b1e3417e8b5d80dd (diff)
Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull arm-soc fixes from Olof Johansson: "This is a first pass of some of the merge window fallout for ARM platforms. Nothing controversial: - A system.h fallout fix for OMAP - PXA fixes for breakage caused by the regulator struct changes - GPIO fixes for OMAP to properly deal with dynamic IRQ allocation - A mismerge in our arm-soc tree of an lpc32xx change for networking - A fix for USB setup on tegra - An undo of __init annotation of display mux setup on OMAP that's needed at runtime" * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: ARM: pxa: fix build issue on stargate2 ARM: pxa: fix build issue on cm-x300 ARM: pxa: fix build failure for regulator consumer in em-x270.c ARM: LPC32xx: clock.c: Fix lpc-eth clock reference ARM: OMAP: pm: fix compilation break ARM: OMAP: Remove OMAP_GPIO_IRQ macro definition drivers: input: Fix OMAP_GPIO_IRQ with gpio_to_irq() in ams_delta_serio_exit() ARM: OMAP: boards: Fix OMAP_GPIO_IRQ usage with gpio_to_irq() ARM: pxa: fix regulator related build fail in magician_defconfig ARM: tegra: Fix device tree AUXDATA for USB/EHCI ARM: OMAP2+: Remove __init from DSI mux functions
Diffstat (limited to 'arch/arm/mach-omap2')
-rw-r--r--arch/arm/mach-omap2/board-2430sdp.c2
-rw-r--r--arch/arm/mach-omap2/board-4430sdp.c2
-rw-r--r--arch/arm/mach-omap2/board-apollon.c4
-rw-r--r--arch/arm/mach-omap2/board-devkit8000.c2
-rw-r--r--arch/arm/mach-omap2/board-h4.c2
-rw-r--r--arch/arm/mach-omap2/board-omap3evm.c2
-rw-r--r--arch/arm/mach-omap2/board-omap4panda.c2
-rw-r--r--arch/arm/mach-omap2/board-rx51-peripherals.c3
-rw-r--r--arch/arm/mach-omap2/board-zoom-debugboard.c3
-rw-r--r--arch/arm/mach-omap2/board-zoom-peripherals.c6
-rw-r--r--arch/arm/mach-omap2/common-board-devices.c2
-rw-r--r--arch/arm/mach-omap2/display.c8
-rw-r--r--arch/arm/mach-omap2/pm.c2
13 files changed, 23 insertions, 17 deletions
diff --git a/arch/arm/mach-omap2/board-2430sdp.c b/arch/arm/mach-omap2/board-2430sdp.c
index c8bda62900d8..e658f835d0de 100644
--- a/arch/arm/mach-omap2/board-2430sdp.c
+++ b/arch/arm/mach-omap2/board-2430sdp.c
@@ -230,12 +230,12 @@ static struct i2c_board_info __initdata sdp2430_i2c1_boardinfo[] = {
230 { 230 {
231 I2C_BOARD_INFO("isp1301_omap", 0x2D), 231 I2C_BOARD_INFO("isp1301_omap", 0x2D),
232 .flags = I2C_CLIENT_WAKE, 232 .flags = I2C_CLIENT_WAKE,
233 .irq = OMAP_GPIO_IRQ(78),
234 }, 233 },
235}; 234};
236 235
237static int __init omap2430_i2c_init(void) 236static int __init omap2430_i2c_init(void)
238{ 237{
238 sdp2430_i2c1_boardinfo[0].irq = gpio_to_irq(78);
239 omap_register_i2c_bus(1, 100, sdp2430_i2c1_boardinfo, 239 omap_register_i2c_bus(1, 100, sdp2430_i2c1_boardinfo,
240 ARRAY_SIZE(sdp2430_i2c1_boardinfo)); 240 ARRAY_SIZE(sdp2430_i2c1_boardinfo));
241 omap_pmic_init(2, 100, "twl4030", INT_24XX_SYS_NIRQ, 241 omap_pmic_init(2, 100, "twl4030", INT_24XX_SYS_NIRQ,
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c
index 37dcb1bc025e..a39fc4bbd2b8 100644
--- a/arch/arm/mach-omap2/board-4430sdp.c
+++ b/arch/arm/mach-omap2/board-4430sdp.c
@@ -907,7 +907,6 @@ static void __init omap4_sdp4430_wifi_mux_init(void)
907} 907}
908 908
909static struct wl12xx_platform_data omap4_sdp4430_wlan_data __initdata = { 909static struct wl12xx_platform_data omap4_sdp4430_wlan_data __initdata = {
910 .irq = OMAP_GPIO_IRQ(GPIO_WIFI_IRQ),
911 .board_ref_clock = WL12XX_REFCLOCK_26, 910 .board_ref_clock = WL12XX_REFCLOCK_26,
912 .board_tcxo_clock = WL12XX_TCXOCLOCK_26, 911 .board_tcxo_clock = WL12XX_TCXOCLOCK_26,
913}; 912};
@@ -917,6 +916,7 @@ static void __init omap4_sdp4430_wifi_init(void)
917 int ret; 916 int ret;
918 917
919 omap4_sdp4430_wifi_mux_init(); 918 omap4_sdp4430_wifi_mux_init();
919 omap4_sdp4430_wlan_data.irq = gpio_to_irq(GPIO_WIFI_IRQ);
920 ret = wl12xx_set_platform_data(&omap4_sdp4430_wlan_data); 920 ret = wl12xx_set_platform_data(&omap4_sdp4430_wlan_data);
921 if (ret) 921 if (ret)
922 pr_err("Error setting wl12xx data: %d\n", ret); 922 pr_err("Error setting wl12xx data: %d\n", ret);
diff --git a/arch/arm/mach-omap2/board-apollon.c b/arch/arm/mach-omap2/board-apollon.c
index ac773829941f..768ece2e9c3b 100644
--- a/arch/arm/mach-omap2/board-apollon.c
+++ b/arch/arm/mach-omap2/board-apollon.c
@@ -136,8 +136,6 @@ static struct resource apollon_smc91x_resources[] = {
136 .flags = IORESOURCE_MEM, 136 .flags = IORESOURCE_MEM,
137 }, 137 },
138 [1] = { 138 [1] = {
139 .start = OMAP_GPIO_IRQ(APOLLON_ETHR_GPIO_IRQ),
140 .end = OMAP_GPIO_IRQ(APOLLON_ETHR_GPIO_IRQ),
141 .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE, 139 .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE,
142 }, 140 },
143}; 141};
@@ -341,6 +339,8 @@ static void __init omap_apollon_init(void)
341 * You have to mux them off in device drivers later on 339 * You have to mux them off in device drivers later on
342 * if not needed. 340 * if not needed.
343 */ 341 */
342 apollon_smc91x_resources[1].start = gpio_to_irq(APOLLON_ETHR_GPIO_IRQ);
343 apollon_smc91x_resources[1].end = gpio_to_irq(APOLLON_ETHR_GPIO_IRQ);
344 platform_add_devices(apollon_devices, ARRAY_SIZE(apollon_devices)); 344 platform_add_devices(apollon_devices, ARRAY_SIZE(apollon_devices));
345 omap_serial_init(); 345 omap_serial_init();
346 omap_sdrc_init(NULL, NULL); 346 omap_sdrc_init(NULL, NULL);
diff --git a/arch/arm/mach-omap2/board-devkit8000.c b/arch/arm/mach-omap2/board-devkit8000.c
index 11cd2a806093..a2010f07de31 100644
--- a/arch/arm/mach-omap2/board-devkit8000.c
+++ b/arch/arm/mach-omap2/board-devkit8000.c
@@ -411,7 +411,6 @@ static struct resource omap_dm9000_resources[] = {
411 .flags = IORESOURCE_MEM, 411 .flags = IORESOURCE_MEM,
412 }, 412 },
413 [2] = { 413 [2] = {
414 .start = OMAP_GPIO_IRQ(OMAP_DM9000_GPIO_IRQ),
415 .flags = IORESOURCE_IRQ | IRQF_TRIGGER_LOW, 414 .flags = IORESOURCE_IRQ | IRQF_TRIGGER_LOW,
416 }, 415 },
417}; 416};
@@ -639,6 +638,7 @@ static void __init devkit8000_init(void)
639 638
640 omap_hsmmc_init(mmc); 639 omap_hsmmc_init(mmc);
641 devkit8000_i2c_init(); 640 devkit8000_i2c_init();
641 omap_dm9000_resources[2].start = gpio_to_irq(OMAP_DM9000_GPIO_IRQ);
642 platform_add_devices(devkit8000_devices, 642 platform_add_devices(devkit8000_devices,
643 ARRAY_SIZE(devkit8000_devices)); 643 ARRAY_SIZE(devkit8000_devices));
644 644
diff --git a/arch/arm/mach-omap2/board-h4.c b/arch/arm/mach-omap2/board-h4.c
index 54af800d143c..0bbbabe28fcc 100644
--- a/arch/arm/mach-omap2/board-h4.c
+++ b/arch/arm/mach-omap2/board-h4.c
@@ -348,7 +348,6 @@ static struct at24_platform_data m24c01 = {
348static struct i2c_board_info __initdata h4_i2c_board_info[] = { 348static struct i2c_board_info __initdata h4_i2c_board_info[] = {
349 { 349 {
350 I2C_BOARD_INFO("isp1301_omap", 0x2d), 350 I2C_BOARD_INFO("isp1301_omap", 0x2d),
351 .irq = OMAP_GPIO_IRQ(125),
352 }, 351 },
353 { /* EEPROM on mainboard */ 352 { /* EEPROM on mainboard */
354 I2C_BOARD_INFO("24c01", 0x52), 353 I2C_BOARD_INFO("24c01", 0x52),
@@ -377,6 +376,7 @@ static void __init omap_h4_init(void)
377 */ 376 */
378 377
379 board_mkp_init(); 378 board_mkp_init();
379 h4_i2c_board_info[0].irq = gpio_to_irq(125);
380 i2c_register_board_info(1, h4_i2c_board_info, 380 i2c_register_board_info(1, h4_i2c_board_info,
381 ARRAY_SIZE(h4_i2c_board_info)); 381 ARRAY_SIZE(h4_i2c_board_info));
382 382
diff --git a/arch/arm/mach-omap2/board-omap3evm.c b/arch/arm/mach-omap2/board-omap3evm.c
index a659e198892b..4c90f078abe1 100644
--- a/arch/arm/mach-omap2/board-omap3evm.c
+++ b/arch/arm/mach-omap2/board-omap3evm.c
@@ -487,7 +487,6 @@ static struct platform_device omap3evm_wlan_regulator = {
487}; 487};
488 488
489struct wl12xx_platform_data omap3evm_wlan_data __initdata = { 489struct wl12xx_platform_data omap3evm_wlan_data __initdata = {
490 .irq = OMAP_GPIO_IRQ(OMAP3EVM_WLAN_IRQ_GPIO),
491 .board_ref_clock = WL12XX_REFCLOCK_38, /* 38.4 MHz */ 490 .board_ref_clock = WL12XX_REFCLOCK_38, /* 38.4 MHz */
492}; 491};
493#endif 492#endif
@@ -623,6 +622,7 @@ static void __init omap3_evm_wl12xx_init(void)
623 int ret; 622 int ret;
624 623
625 /* WL12xx WLAN Init */ 624 /* WL12xx WLAN Init */
625 omap3evm_wlan_data.irq = gpio_to_irq(OMAP3EVM_WLAN_IRQ_GPIO);
626 ret = wl12xx_set_platform_data(&omap3evm_wlan_data); 626 ret = wl12xx_set_platform_data(&omap3evm_wlan_data);
627 if (ret) 627 if (ret)
628 pr_err("error setting wl12xx data: %d\n", ret); 628 pr_err("error setting wl12xx data: %d\n", ret);
diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c
index 8bf8e99c358e..d8c0e89f0126 100644
--- a/arch/arm/mach-omap2/board-omap4panda.c
+++ b/arch/arm/mach-omap2/board-omap4panda.c
@@ -231,7 +231,6 @@ static struct platform_device omap_vwlan_device = {
231}; 231};
232 232
233struct wl12xx_platform_data omap_panda_wlan_data __initdata = { 233struct wl12xx_platform_data omap_panda_wlan_data __initdata = {
234 .irq = OMAP_GPIO_IRQ(GPIO_WIFI_IRQ),
235 /* PANDA ref clock is 38.4 MHz */ 234 /* PANDA ref clock is 38.4 MHz */
236 .board_ref_clock = 2, 235 .board_ref_clock = 2,
237}; 236};
@@ -558,6 +557,7 @@ static void __init omap4_panda_init(void)
558 package = OMAP_PACKAGE_CBL; 557 package = OMAP_PACKAGE_CBL;
559 omap4_mux_init(board_mux, NULL, package); 558 omap4_mux_init(board_mux, NULL, package);
560 559
560 omap_panda_wlan_data.irq = gpio_to_irq(GPIO_WIFI_IRQ);
561 ret = wl12xx_set_platform_data(&omap_panda_wlan_data); 561 ret = wl12xx_set_platform_data(&omap_panda_wlan_data);
562 if (ret) 562 if (ret)
563 pr_err("error setting wl12xx data: %d\n", ret); 563 pr_err("error setting wl12xx data: %d\n", ret);
diff --git a/arch/arm/mach-omap2/board-rx51-peripherals.c b/arch/arm/mach-omap2/board-rx51-peripherals.c
index f120997309af..d87ee0612098 100644
--- a/arch/arm/mach-omap2/board-rx51-peripherals.c
+++ b/arch/arm/mach-omap2/board-rx51-peripherals.c
@@ -170,7 +170,6 @@ static struct spi_board_info rx51_peripherals_spi_board_info[] __initdata = {
170 .modalias = "tsc2005", 170 .modalias = "tsc2005",
171 .bus_num = 1, 171 .bus_num = 1,
172 .chip_select = 0, 172 .chip_select = 0,
173 .irq = OMAP_GPIO_IRQ(RX51_TSC2005_IRQ_GPIO),
174 .max_speed_hz = 6000000, 173 .max_speed_hz = 6000000,
175 .controller_data = &tsc2005_mcspi_config, 174 .controller_data = &tsc2005_mcspi_config,
176 .platform_data = &tsc2005_pdata, 175 .platform_data = &tsc2005_pdata,
@@ -1129,6 +1128,8 @@ static void __init rx51_init_tsc2005(void)
1129 } 1128 }
1130 1129
1131 tsc2005_pdata.set_reset = rx51_tsc2005_set_reset; 1130 tsc2005_pdata.set_reset = rx51_tsc2005_set_reset;
1131 rx51_peripherals_spi_board_info[RX51_SPI_TSC2005].irq =
1132 gpio_to_irq(RX51_TSC2005_IRQ_GPIO);
1132} 1133}
1133 1134
1134void __init rx51_peripherals_init(void) 1135void __init rx51_peripherals_init(void)
diff --git a/arch/arm/mach-omap2/board-zoom-debugboard.c b/arch/arm/mach-omap2/board-zoom-debugboard.c
index 369c2eb7715b..1e8540eabde9 100644
--- a/arch/arm/mach-omap2/board-zoom-debugboard.c
+++ b/arch/arm/mach-omap2/board-zoom-debugboard.c
@@ -43,7 +43,6 @@ static inline void __init zoom_init_smsc911x(void)
43static struct plat_serial8250_port serial_platform_data[] = { 43static struct plat_serial8250_port serial_platform_data[] = {
44 { 44 {
45 .mapbase = ZOOM_UART_BASE, 45 .mapbase = ZOOM_UART_BASE,
46 .irq = OMAP_GPIO_IRQ(102),
47 .flags = UPF_BOOT_AUTOCONF|UPF_IOREMAP|UPF_SHARE_IRQ, 46 .flags = UPF_BOOT_AUTOCONF|UPF_IOREMAP|UPF_SHARE_IRQ,
48 .irqflags = IRQF_SHARED | IRQF_TRIGGER_RISING, 47 .irqflags = IRQF_SHARED | IRQF_TRIGGER_RISING,
49 .iotype = UPIO_MEM, 48 .iotype = UPIO_MEM,
@@ -89,6 +88,8 @@ static inline void __init zoom_init_quaduart(void)
89 if (gpio_request_one(quart_gpio, GPIOF_IN, "TL16CP754C GPIO") < 0) 88 if (gpio_request_one(quart_gpio, GPIOF_IN, "TL16CP754C GPIO") < 0)
90 printk(KERN_ERR "Failed to request GPIO%d for TL16CP754C\n", 89 printk(KERN_ERR "Failed to request GPIO%d for TL16CP754C\n",
91 quart_gpio); 90 quart_gpio);
91
92 serial_platform_data[0].irq = gpio_to_irq(102);
92} 93}
93 94
94static inline int omap_zoom_debugboard_detect(void) 95static inline int omap_zoom_debugboard_detect(void)
diff --git a/arch/arm/mach-omap2/board-zoom-peripherals.c b/arch/arm/mach-omap2/board-zoom-peripherals.c
index 3d39cdb2e250..b797cb279618 100644
--- a/arch/arm/mach-omap2/board-zoom-peripherals.c
+++ b/arch/arm/mach-omap2/board-zoom-peripherals.c
@@ -193,7 +193,6 @@ static struct platform_device omap_vwlan_device = {
193}; 193};
194 194
195static struct wl12xx_platform_data omap_zoom_wlan_data __initdata = { 195static struct wl12xx_platform_data omap_zoom_wlan_data __initdata = {
196 .irq = OMAP_GPIO_IRQ(OMAP_ZOOM_WLAN_IRQ_GPIO),
197 /* ZOOM ref clock is 26 MHz */ 196 /* ZOOM ref clock is 26 MHz */
198 .board_ref_clock = 1, 197 .board_ref_clock = 1,
199}; 198};
@@ -297,7 +296,10 @@ static void enable_board_wakeup_source(void)
297 296
298void __init zoom_peripherals_init(void) 297void __init zoom_peripherals_init(void)
299{ 298{
300 int ret = wl12xx_set_platform_data(&omap_zoom_wlan_data); 299 int ret;
300
301 omap_zoom_wlan_data.irq = gpio_to_irq(OMAP_ZOOM_WLAN_IRQ_GPIO);
302 ret = wl12xx_set_platform_data(&omap_zoom_wlan_data);
301 303
302 if (ret) 304 if (ret)
303 pr_err("error setting wl12xx data: %d\n", ret); 305 pr_err("error setting wl12xx data: %d\n", ret);
diff --git a/arch/arm/mach-omap2/common-board-devices.c b/arch/arm/mach-omap2/common-board-devices.c
index 9498b0f5fbd0..1706ebcec08d 100644
--- a/arch/arm/mach-omap2/common-board-devices.c
+++ b/arch/arm/mach-omap2/common-board-devices.c
@@ -76,7 +76,7 @@ void __init omap_ads7846_init(int bus_num, int gpio_pendown, int gpio_debounce,
76 } 76 }
77 77
78 spi_bi->bus_num = bus_num; 78 spi_bi->bus_num = bus_num;
79 spi_bi->irq = OMAP_GPIO_IRQ(gpio_pendown); 79 spi_bi->irq = gpio_to_irq(gpio_pendown);
80 80
81 if (board_pdata) { 81 if (board_pdata) {
82 board_pdata->gpio_pendown = gpio_pendown; 82 board_pdata->gpio_pendown = gpio_pendown;
diff --git a/arch/arm/mach-omap2/display.c b/arch/arm/mach-omap2/display.c
index 9706c648bc19..db5a88a36c63 100644
--- a/arch/arm/mach-omap2/display.c
+++ b/arch/arm/mach-omap2/display.c
@@ -99,7 +99,7 @@ static const struct omap_dss_hwmod_data omap4_dss_hwmod_data[] __initdata = {
99 { "dss_hdmi", "omapdss_hdmi", -1 }, 99 { "dss_hdmi", "omapdss_hdmi", -1 },
100}; 100};
101 101
102static void omap4_hdmi_mux_pads(enum omap_hdmi_flags flags) 102static void __init omap4_hdmi_mux_pads(enum omap_hdmi_flags flags)
103{ 103{
104 u32 reg; 104 u32 reg;
105 u16 control_i2c_1; 105 u16 control_i2c_1;
@@ -125,7 +125,7 @@ static void omap4_hdmi_mux_pads(enum omap_hdmi_flags flags)
125 } 125 }
126} 126}
127 127
128static int __init omap4_dsi_mux_pads(int dsi_id, unsigned lanes) 128static int omap4_dsi_mux_pads(int dsi_id, unsigned lanes)
129{ 129{
130 u32 enable_mask, enable_shift; 130 u32 enable_mask, enable_shift;
131 u32 pipd_mask, pipd_shift; 131 u32 pipd_mask, pipd_shift;
@@ -166,7 +166,7 @@ int __init omap_hdmi_init(enum omap_hdmi_flags flags)
166 return 0; 166 return 0;
167} 167}
168 168
169static int __init omap_dsi_enable_pads(int dsi_id, unsigned lane_mask) 169static int omap_dsi_enable_pads(int dsi_id, unsigned lane_mask)
170{ 170{
171 if (cpu_is_omap44xx()) 171 if (cpu_is_omap44xx())
172 return omap4_dsi_mux_pads(dsi_id, lane_mask); 172 return omap4_dsi_mux_pads(dsi_id, lane_mask);
@@ -174,7 +174,7 @@ static int __init omap_dsi_enable_pads(int dsi_id, unsigned lane_mask)
174 return 0; 174 return 0;
175} 175}
176 176
177static void __init omap_dsi_disable_pads(int dsi_id, unsigned lane_mask) 177static void omap_dsi_disable_pads(int dsi_id, unsigned lane_mask)
178{ 178{
179 if (cpu_is_omap44xx()) 179 if (cpu_is_omap44xx())
180 omap4_dsi_mux_pads(dsi_id, 0); 180 omap4_dsi_mux_pads(dsi_id, 0);
diff --git a/arch/arm/mach-omap2/pm.c b/arch/arm/mach-omap2/pm.c
index a7bdec69a2b3..d0c1c9695996 100644
--- a/arch/arm/mach-omap2/pm.c
+++ b/arch/arm/mach-omap2/pm.c
@@ -17,6 +17,8 @@
17#include <linux/export.h> 17#include <linux/export.h>
18#include <linux/suspend.h> 18#include <linux/suspend.h>
19 19
20#include <asm/system_misc.h>
21
20#include <plat/omap-pm.h> 22#include <plat/omap-pm.h>
21#include <plat/omap_device.h> 23#include <plat/omap_device.h>
22#include "common.h" 24#include "common.h"