usb: renesas_usbhs: add IRQ resource decoding for
PATCH v2 1/2 usb: renesas_usbhs: add IRQ resource decoding for
In case of the SH7757, the irq number of USB module and SUDMAC are the same. So, we have to set the IRQF_SHARED in such a case.
Signed-off-by Yoshihiro Shimoda <[email protected]>
---
about v2:
- add a comment in git log
drivers/usb/renesas_usbhs/common.c | 11 ++++++----- drivers/usb/renesas_usbhs/common.h | 1 + drivers/usb/renesas_usbhs/mod.c | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-)
drivers/usb/renesas_usbhs/common.c +6 -5
@@ -410,8 +410,7 @@ static int usbhs_probe(struct platform_device *pdev)struct renesas_usbhs_platform_info *info = pdev->dev.platform_data;struct renesas_usbhs_driver_callback *dfunc;struct usbhs_priv *priv; -struct resource *res; -unsigned int irq; +struct resource *res, *irq_res;int ret;/* check platform information */
@@ -423,8 +422,8 @@ static int usbhs_probe(struct platform_device *pdev)/* platform data */ res =platform_get_resource (pdev,IORESOURCE_MEM ,0 ); - irq =platform_get_irq (pdev,0 ); -if (!res || (int )irq <=0 ) { + irq_res =platform_get_resource (pdev,IORESOURCE_IRQ ,0 ); +if (!res || !irq_res) {dev_err (&pdev->dev,"Not enough Renesas USB platform resources.\n" );return -ENODEV ; }
@@ -473,7 +472,9 @@ static int usbhs_probe(struct platform_device *pdev)/* * priv settings */ - priv->irq = irq; + priv->irq = irq_res->start; +if (irq_res->flags &IORESOURCE_IRQ_SHAREABLE ) + priv->irqflags =IRQF_SHARED ; priv->pdev = pdev;INIT_DELAYED_WORK (&priv->notify_hotplug_work, usbhsc_notify_hotplug);spin_lock_init (usbhs_priv_to_lock (priv));
drivers/usb/renesas_usbhs/common.h +1 -0
@@ -241,6 +241,7 @@ struct usbhs_priv {void __iomem *base;unsigned int irq; +unsigned long irqflags;struct renesas_usbhs_platform_callback pfunc;struct renesas_usbhs_driver_param dparam;
drivers/usb/renesas_usbhs/mod.c +1 -1
@@ -150,7 +150,7 @@ int usbhs_mod_probe(struct usbhs_priv *priv)/* irq settings */ ret =request_irq (priv->irq, usbhs_interrupt, -0 ,dev_name (dev), priv); + priv->irqflags,dev_name (dev), priv);if (ret) {dev_err (dev,"irq request err\n" ); goto mod_init_gadget_err;
Signature · 1 line
1.7.1
Felipe Balbi
AppliedRe: [PATCH v2 1/2] usb: renesas_usbhs: add IRQ resource decoding for IRQF_SHARED
Quoted 4 lines · Yoshihiro
In case of the SH7757, the irq number of USB module and SUDMAC are the same. So, we have to set the
IRQF_SHAREDin such a case.Signed-off-by Yoshihiro Shimoda <[email protected]>
applied, thanks
Signature · 1 line
balbi