diff options
69 files changed, 5211 insertions, 1126 deletions
diff --git a/Documentation/devicetree/bindings/gpio/gpio-twl4030.txt b/Documentation/devicetree/bindings/gpio/gpio-twl4030.txt new file mode 100644 index 000000000000..16695d9cf1e8 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/gpio-twl4030.txt | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | twl4030 GPIO controller bindings | ||
| 2 | |||
| 3 | Required properties: | ||
| 4 | - compatible: | ||
| 5 | - "ti,twl4030-gpio" for twl4030 GPIO controller | ||
| 6 | - #gpio-cells : Should be two. | ||
| 7 | - first cell is the pin number | ||
| 8 | - second cell is used to specify optional parameters (unused) | ||
| 9 | - gpio-controller : Marks the device node as a GPIO controller. | ||
| 10 | - #interrupt-cells : Should be 2. | ||
| 11 | - interrupt-controller: Mark the device node as an interrupt controller | ||
| 12 | The first cell is the GPIO number. | ||
| 13 | The second cell is not used. | ||
| 14 | |||
| 15 | Example: | ||
| 16 | |||
| 17 | twl_gpio: gpio { | ||
| 18 | compatible = "ti,twl4030-gpio"; | ||
| 19 | #gpio-cells = <2>; | ||
| 20 | gpio-controller; | ||
| 21 | #interrupt-cells = <2>; | ||
| 22 | interrupt-controller; | ||
| 23 | }; | ||
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c index 30768c2f53fd..37dcb1bc025e 100644 --- a/arch/arm/mach-omap2/board-4430sdp.c +++ b/arch/arm/mach-omap2/board-4430sdp.c | |||
| @@ -490,21 +490,22 @@ static struct platform_device omap_vwlan_device = { | |||
| 490 | 490 | ||
| 491 | static int omap4_twl6030_hsmmc_late_init(struct device *dev) | 491 | static int omap4_twl6030_hsmmc_late_init(struct device *dev) |
| 492 | { | 492 | { |
| 493 | int ret = 0; | 493 | int irq = 0; |
| 494 | struct platform_device *pdev = container_of(dev, | 494 | struct platform_device *pdev = container_of(dev, |
| 495 | struct platform_device, dev); | 495 | struct platform_device, dev); |
| 496 | struct omap_mmc_platform_data *pdata = dev->platform_data; | 496 | struct omap_mmc_platform_data *pdata = dev->platform_data; |
| 497 | 497 | ||
| 498 | /* Setting MMC1 Card detect Irq */ | 498 | /* Setting MMC1 Card detect Irq */ |
| 499 | if (pdev->id == 0) { | 499 | if (pdev->id == 0) { |
| 500 | ret = twl6030_mmc_card_detect_config(); | 500 | irq = twl6030_mmc_card_detect_config(); |
| 501 | if (ret) | 501 | if (irq < 0) { |
| 502 | pr_err("Failed configuring MMC1 card detect\n"); | 502 | pr_err("Failed configuring MMC1 card detect\n"); |
| 503 | pdata->slots[0].card_detect_irq = TWL6030_IRQ_BASE + | 503 | return irq; |
| 504 | MMCDETECT_INTR_OFFSET; | 504 | } |
| 505 | pdata->slots[0].card_detect_irq = irq; | ||
| 505 | pdata->slots[0].card_detect = twl6030_mmc_card_detect; | 506 | pdata->slots[0].card_detect = twl6030_mmc_card_detect; |
| 506 | } | 507 | } |
| 507 | return ret; | 508 | return 0; |
| 508 | } | 509 | } |
| 509 | 510 | ||
| 510 | static __init void omap4_twl6030_hsmmc_set_late_init(struct device *dev) | 511 | static __init void omap4_twl6030_hsmmc_set_late_init(struct device *dev) |
diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c index e9071a57c37b..8bf8e99c358e 100644 --- a/arch/arm/mach-omap2/board-omap4panda.c +++ b/arch/arm/mach-omap2/board-omap4panda.c | |||
| @@ -238,7 +238,7 @@ struct wl12xx_platform_data omap_panda_wlan_data __initdata = { | |||
| 238 | 238 | ||
| 239 | static int omap4_twl6030_hsmmc_late_init(struct device *dev) | 239 | static int omap4_twl6030_hsmmc_late_init(struct device *dev) |
| 240 | { | 240 | { |
| 241 | int ret = 0; | 241 | int irq = 0; |
| 242 | struct platform_device *pdev = container_of(dev, | 242 | struct platform_device *pdev = container_of(dev, |
| 243 | struct platform_device, dev); | 243 | struct platform_device, dev); |
| 244 | struct omap_mmc_platform_data *pdata = dev->platform_data; | 244 | struct omap_mmc_platform_data *pdata = dev->platform_data; |
| @@ -249,14 +249,15 @@ static int omap4_twl6030_hsmmc_late_init(struct device *dev) | |||
| 249 | } | 249 | } |
| 250 | /* Setting MMC1 Card detect Irq */ | 250 | /* Setting MMC1 Card detect Irq */ |
| 251 | if (pdev->id == 0) { | 251 | if (pdev->id == 0) { |
| 252 | ret = twl6030_mmc_card_detect_config(); | 252 | irq = twl6030_mmc_card_detect_config(); |
| 253 | if (ret) | 253 | if (irq < 0) { |
| 254 | dev_err(dev, "%s: Error card detect config(%d)\n", | ||
