diff mbox series

[2/2] usb: musb: dsps: Fix vbus vs tps65217-charger irq conflict

Message ID 20230811114856.35486-1-nemith592@gmail.com
State Superseded
Headers show
Series None | expand

Commit Message

Grant B Adams Aug. 11, 2023, 11:48 a.m. UTC
Enabling the tps65217-charger driver/module causes an interrupt conflict
with the vbus driver resulting in a probe failure.
The conflict is resolved by changing both driver's threaded interrupt
request function from IRQF_ONESHOT to IRQF_SHARED.

Signed-off-by: Grant B Adams <nemith592@gmail.com>
---
 drivers/usb/musb/musb_dsps.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Greg Kroah-Hartman Aug. 22, 2023, 12:35 p.m. UTC | #1
On Fri, Aug 11, 2023 at 01:48:56PM +0200, Grant B Adams wrote:
> Enabling the tps65217-charger driver/module causes an interrupt conflict
> with the vbus driver resulting in a probe failure.
> The conflict is resolved by changing both driver's threaded interrupt
> request function from IRQF_ONESHOT to IRQF_SHARED.
> 
> Signed-off-by: Grant B Adams <nemith592@gmail.com>
> ---
>  drivers/usb/musb/musb_dsps.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
> index 9119b1d51370..cbb45de5a76f 100644
> --- a/drivers/usb/musb/musb_dsps.c
> +++ b/drivers/usb/musb/musb_dsps.c
> @@ -851,7 +851,7 @@ static int dsps_setup_optional_vbus_irq(struct platform_device *pdev,
>  
>  	error = devm_request_threaded_irq(glue->dev, glue->vbus_irq,
>  					  NULL, dsps_vbus_threaded_irq,
> -					  IRQF_ONESHOT,
> +					  IRQF_SHARED,
>  					  "vbus", glue);
>  	if (error) {
>  		glue->vbus_irq = 0;
> -- 
> 2.34.1
> 

Where is patch 1/2 of this series?

Please resend the whole series.

thanks,

greg k-h
diff mbox series

Patch

diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
index 9119b1d51370..cbb45de5a76f 100644
--- a/drivers/usb/musb/musb_dsps.c
+++ b/drivers/usb/musb/musb_dsps.c
@@ -851,7 +851,7 @@  static int dsps_setup_optional_vbus_irq(struct platform_device *pdev,
 
 	error = devm_request_threaded_irq(glue->dev, glue->vbus_irq,
 					  NULL, dsps_vbus_threaded_irq,
-					  IRQF_ONESHOT,
+					  IRQF_SHARED,
 					  "vbus", glue);
 	if (error) {
 		glue->vbus_irq = 0;