Commit e23d7096f9633d37aa35dffab9b0bd594ed64533
Exists in
master
and in
20 other branches
Merge tag 'omap-fixes-for-v3.5-rc3' of git://git.kernel.org/pub/scm/linux/kernel…
…/git/tmlind/linux-omap into fixes From Tony Lindgren: "Here are a few fixes with the biggest one being fix for Beagle DVI reset. All of them are regression fixes, except for the missing omap2 interrupt controller binding that somehow got missed earlier." * tag 'omap-fixes-for-v3.5-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP: Fix Beagleboard DVI reset gpio arm/dts: OMAP2: Fix interrupt controller binding ARM: OMAP2: Fix tusb6010 GPIO interrupt for n8x0 ARM: OMAP2+: Fix MUSB ifdefs for platform init code
Showing 6 changed files Side-by-side Diff
arch/arm/boot/dts/omap2.dtsi
arch/arm/mach-omap2/board-n8x0.c
... | ... | @@ -83,11 +83,9 @@ |
83 | 83 | }; |
84 | 84 | |
85 | 85 | static struct musb_hdrc_platform_data tusb_data = { |
86 | -#if defined(CONFIG_USB_MUSB_OTG) | |
86 | +#ifdef CONFIG_USB_GADGET_MUSB_HDRC | |
87 | 87 | .mode = MUSB_OTG, |
88 | -#elif defined(CONFIG_USB_MUSB_PERIPHERAL) | |
89 | - .mode = MUSB_PERIPHERAL, | |
90 | -#else /* defined(CONFIG_USB_MUSB_HOST) */ | |
88 | +#else | |
91 | 89 | .mode = MUSB_HOST, |
92 | 90 | #endif |
93 | 91 | .set_power = tusb_set_power, |
arch/arm/mach-omap2/board-omap3beagle.c
... | ... | @@ -81,13 +81,13 @@ |
81 | 81 | static struct { |
82 | 82 | int mmc1_gpio_wp; |
83 | 83 | int usb_pwr_level; |
84 | - int reset_gpio; | |
84 | + int dvi_pd_gpio; | |
85 | 85 | int usr_button_gpio; |
86 | 86 | int mmc_caps; |
87 | 87 | } beagle_config = { |
88 | 88 | .mmc1_gpio_wp = -EINVAL, |
89 | 89 | .usb_pwr_level = GPIOF_OUT_INIT_LOW, |
90 | - .reset_gpio = 129, | |
90 | + .dvi_pd_gpio = -EINVAL, | |
91 | 91 | .usr_button_gpio = 4, |
92 | 92 | .mmc_caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA, |
93 | 93 | }; |
94 | 94 | |
95 | 95 | |
... | ... | @@ -126,21 +126,21 @@ |
126 | 126 | printk(KERN_INFO "OMAP3 Beagle Rev: Ax/Bx\n"); |
127 | 127 | omap3_beagle_version = OMAP3BEAGLE_BOARD_AXBX; |
128 | 128 | beagle_config.mmc1_gpio_wp = 29; |
129 | - beagle_config.reset_gpio = 170; | |
129 | + beagle_config.dvi_pd_gpio = 170; | |
130 | 130 | beagle_config.usr_button_gpio = 7; |
131 | 131 | break; |
132 | 132 | case 6: |
133 | 133 | printk(KERN_INFO "OMAP3 Beagle Rev: C1/C2/C3\n"); |
134 | 134 | omap3_beagle_version = OMAP3BEAGLE_BOARD_C1_3; |
135 | 135 | beagle_config.mmc1_gpio_wp = 23; |
136 | - beagle_config.reset_gpio = 170; | |
136 | + beagle_config.dvi_pd_gpio = 170; | |
137 | 137 | beagle_config.usr_button_gpio = 7; |
138 | 138 | break; |
139 | 139 | case 5: |
140 | 140 | printk(KERN_INFO "OMAP3 Beagle Rev: C4\n"); |
141 | 141 | omap3_beagle_version = OMAP3BEAGLE_BOARD_C4; |
142 | 142 | beagle_config.mmc1_gpio_wp = 23; |
143 | - beagle_config.reset_gpio = 170; | |
143 | + beagle_config.dvi_pd_gpio = 170; | |
144 | 144 | beagle_config.usr_button_gpio = 7; |
145 | 145 | break; |
146 | 146 | case 0: |
... | ... | @@ -274,11 +274,9 @@ |
274 | 274 | if (r) |
275 | 275 | pr_err("%s: unable to configure nDVI_PWR_EN\n", |
276 | 276 | __func__); |
277 | - r = gpio_request_one(gpio + 2, GPIOF_OUT_INIT_HIGH, | |
278 | - "DVI_LDO_EN"); | |
279 | - if (r) | |
280 | - pr_err("%s: unable to configure DVI_LDO_EN\n", | |
281 | - __func__); | |
277 | + | |
278 | + beagle_config.dvi_pd_gpio = gpio + 2; | |
279 | + | |
282 | 280 | } else { |
283 | 281 | /* |
284 | 282 | * REVISIT: need ehci-omap hooks for external VBUS |
... | ... | @@ -287,7 +285,7 @@ |
287 | 285 | if (gpio_request_one(gpio + 1, GPIOF_IN, "EHCI_nOC")) |
288 | 286 | pr_err("%s: unable to configure EHCI_nOC\n", __func__); |
289 | 287 | } |
290 | - dvi_panel.power_down_gpio = beagle_config.reset_gpio; | |
288 | + dvi_panel.power_down_gpio = beagle_config.dvi_pd_gpio; | |
291 | 289 | |
292 | 290 | gpio_request_one(gpio + TWL4030_GPIO_MAX, beagle_config.usb_pwr_level, |
293 | 291 | "nEN_USB_PWR"); |
... | ... | @@ -499,7 +497,7 @@ |
499 | 497 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); |
500 | 498 | omap3_beagle_init_rev(); |
501 | 499 | |
502 | - if (beagle_config.mmc1_gpio_wp != -EINVAL) | |
500 | + if (gpio_is_valid(beagle_config.mmc1_gpio_wp)) | |
503 | 501 | omap_mux_init_gpio(beagle_config.mmc1_gpio_wp, OMAP_PIN_INPUT); |
504 | 502 | mmc[0].caps = beagle_config.mmc_caps; |
505 | 503 | omap_hsmmc_init(mmc); |
506 | 504 | |
... | ... | @@ -510,14 +508,12 @@ |
510 | 508 | |
511 | 509 | platform_add_devices(omap3_beagle_devices, |
512 | 510 | ARRAY_SIZE(omap3_beagle_devices)); |
511 | + if (gpio_is_valid(beagle_config.dvi_pd_gpio)) | |
512 | + omap_mux_init_gpio(beagle_config.dvi_pd_gpio, OMAP_PIN_OUTPUT); | |
513 | 513 | omap_display_init(&beagle_dss_data); |
514 | 514 | omap_serial_init(); |
515 | 515 | omap_sdrc_init(mt46h32m32lf6_sdrc_params, |
516 | 516 | mt46h32m32lf6_sdrc_params); |
517 | - | |
518 | - omap_mux_init_gpio(170, OMAP_PIN_INPUT); | |
519 | - /* REVISIT leave DVI powered down until it's needed ... */ | |
520 | - gpio_request_one(170, GPIOF_OUT_INIT_HIGH, "DVI_nPD"); | |
521 | 517 | |
522 | 518 | usb_musb_init(NULL); |
523 | 519 | usbhs_init(&usbhs_bdata); |
arch/arm/mach-omap2/omap_phy_internal.c
... | ... | @@ -239,21 +239,15 @@ |
239 | 239 | |
240 | 240 | devconf2 &= ~CONF2_OTGMODE; |
241 | 241 | switch (musb_mode) { |
242 | -#ifdef CONFIG_USB_MUSB_HDRC_HCD | |
243 | 242 | case MUSB_HOST: /* Force VBUS valid, ID = 0 */ |
244 | 243 | devconf2 |= CONF2_FORCE_HOST; |
245 | 244 | break; |
246 | -#endif | |
247 | -#ifdef CONFIG_USB_GADGET_MUSB_HDRC | |
248 | 245 | case MUSB_PERIPHERAL: /* Force VBUS valid, ID = 1 */ |
249 | 246 | devconf2 |= CONF2_FORCE_DEVICE; |
250 | 247 | break; |
251 | -#endif | |
252 | -#ifdef CONFIG_USB_MUSB_OTG | |
253 | 248 | case MUSB_OTG: /* Don't override the VBUS/ID comparators */ |
254 | 249 | devconf2 |= CONF2_NO_OVERRIDE; |
255 | 250 | break; |
256 | -#endif | |
257 | 251 | default: |
258 | 252 | pr_info(KERN_INFO "Unsupported mode %u\n", musb_mode); |
259 | 253 | } |
arch/arm/mach-omap2/usb-musb.c
... | ... | @@ -41,12 +41,10 @@ |
41 | 41 | }; |
42 | 42 | |
43 | 43 | static struct musb_hdrc_platform_data musb_plat = { |
44 | -#ifdef CONFIG_USB_MUSB_OTG | |
44 | +#ifdef CONFIG_USB_GADGET_MUSB_HDRC | |
45 | 45 | .mode = MUSB_OTG, |
46 | -#elif defined(CONFIG_USB_MUSB_HDRC_HCD) | |
46 | +#else | |
47 | 47 | .mode = MUSB_HOST, |
48 | -#elif defined(CONFIG_USB_GADGET_MUSB_HDRC) | |
49 | - .mode = MUSB_PERIPHERAL, | |
50 | 48 | #endif |
51 | 49 | /* .clock is set dynamically */ |
52 | 50 | .config = &musb_config, |
arch/arm/mach-omap2/usb-tusb6010.c