mbox series

[v2,0/2] Fix tps65217-charger vs vbus irq conflict

Message ID 20230823085430.6610-1-nemith592@gmail.com
Headers show
Series Fix tps65217-charger vs vbus irq conflict | expand

Message

Grant B Adams Aug. 23, 2023, 8:54 a.m. UTC
Both the tps65217-charger and vbus drivers are trying to allocate the same
TPS65217 device interrupt line (TPS65217 is a TI power management IC) 
which results in the following error and a probe failure:

genirq: Flags mismatch irq 148. 00002000 (vbus) vs. 00000000 
(tps65217-charger)

For the Beaglebone Black's config the tps65217-charger driver is currently
disabled and therefore no conflict. Based on comments from Robert C Nelson
this driver has been disabled for a long time and he is uncertain on the
reasons why it was disabled. With a battery connected to the BBB, I 
re-enabled the tps65217-charger driver which resulted in the 
abovementioned.

The conflict is resolved by changing both driver's threaded interrupt
request function from IRQF_ONESHOT to IRQF_SHARED.

Changes in v2:
   Initial patches where emailed individually and not threaded. V2 patches 
   sent as email thread. Feedback provided by gregkh@linuxfoundation.org

Grant B Adams (2):
  power: supply: Fix tps65217-charger vs vbus irq conflict
  usb: musb: dsps: Fix vbus vs tps65217-charger irq conflict

 drivers/power/supply/tps65217_charger.c | 2 +-
 drivers/usb/musb/musb_dsps.c            | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comments

Tony Lindgren Sept. 5, 2023, 6:35 a.m. UTC | #1
* Grant B Adams <nemith592@gmail.com> [230823 08:54]:
> Both the tps65217-charger and vbus drivers are trying to allocate the same
> TPS65217 device interrupt line (TPS65217 is a TI power management IC) 
> which results in the following error and a probe failure:
> 
> genirq: Flags mismatch irq 148. 00002000 (vbus) vs. 00000000 
> (tps65217-charger)
> 
> For the Beaglebone Black's config the tps65217-charger driver is currently
> disabled and therefore no conflict. Based on comments from Robert C Nelson
> this driver has been disabled for a long time and he is uncertain on the
> reasons why it was disabled. With a battery connected to the BBB, I 
> re-enabled the tps65217-charger driver which resulted in the 
> abovementioned.
> 
> The conflict is resolved by changing both driver's threaded interrupt
> request function from IRQF_ONESHOT to IRQF_SHARED.

Looks good to me:

Reviewed-by: Tony Lindgren <tony@atomide.com>