diff mbox series

usb: ohci-s3c2410: Use platform_get_irq() to get the interrupt

Message ID 20211215225358.1993774-1-robh@kernel.org
State New
Headers show
Series usb: ohci-s3c2410: Use platform_get_irq() to get the interrupt | expand

Commit Message

Rob Herring Dec. 15, 2021, 10:53 p.m. UTC
Accessing platform device resources directly has long been deprecated for
DT as IRQ resources may not be available at device creation time. Drivers
relying on the static IRQ resources is blocking removing the static setup
from the DT core code.

Signed-off-by: Rob Herring <robh@kernel.org>
---
 drivers/usb/host/ohci-s3c2410.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

Comments

Krzysztof Kozlowski Dec. 16, 2021, 7:38 a.m. UTC | #1
On 15/12/2021 23:53, Rob Herring wrote:
> Accessing platform device resources directly has long been deprecated for
> DT as IRQ resources may not be available at device creation time. Drivers
> relying on the static IRQ resources is blocking removing the static setup
> from the DT core code.
> 
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  drivers/usb/host/ohci-s3c2410.c | 10 ++++++++--
>  1 file changed, 8 insertions(+), 2 deletions(-)
> 


Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>


Best regards,
Krzysztof
Alan Stern Dec. 16, 2021, 4:10 p.m. UTC | #2
On Wed, Dec 15, 2021 at 04:53:57PM -0600, Rob Herring wrote:
> Accessing platform device resources directly has long been deprecated for
> DT as IRQ resources may not be available at device creation time. Drivers
> relying on the static IRQ resources is blocking removing the static setup
> from the DT core code.
> 
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---

Acked-by: Alan Stern <stern@rowland.harvard.edu>

>  drivers/usb/host/ohci-s3c2410.c | 10 ++++++++--
>  1 file changed, 8 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/usb/host/ohci-s3c2410.c b/drivers/usb/host/ohci-s3c2410.c
> index 1bec9b585e2d..12264c048601 100644
> --- a/drivers/usb/host/ohci-s3c2410.c
> +++ b/drivers/usb/host/ohci-s3c2410.c
> @@ -356,7 +356,7 @@ static int ohci_hcd_s3c2410_probe(struct platform_device *dev)
>  {
>  	struct usb_hcd *hcd = NULL;
>  	struct s3c2410_hcd_info *info = dev_get_platdata(&dev->dev);
> -	int retval;
> +	int retval, irq;
>  
>  	s3c2410_usb_set_power(info, 1, 1);
>  	s3c2410_usb_set_power(info, 2, 1);
> @@ -388,9 +388,15 @@ static int ohci_hcd_s3c2410_probe(struct platform_device *dev)
>  		goto err_put;
>  	}
>  
> +	irq = platform_get_irq(dev, 0);
> +	if (irq < 0) {
> +		retval = irq;
> +		goto err_put;
> +	}
> +
>  	s3c2410_start_hc(dev, hcd);
>  
> -	retval = usb_add_hcd(hcd, dev->resource[1].start, 0);
> +	retval = usb_add_hcd(hcd, irq, 0);
>  	if (retval != 0)
>  		goto err_ioremap;
>  
> -- 
> 2.32.0
>
diff mbox series

Patch

diff --git a/drivers/usb/host/ohci-s3c2410.c b/drivers/usb/host/ohci-s3c2410.c
index 1bec9b585e2d..12264c048601 100644
--- a/drivers/usb/host/ohci-s3c2410.c
+++ b/drivers/usb/host/ohci-s3c2410.c
@@ -356,7 +356,7 @@  static int ohci_hcd_s3c2410_probe(struct platform_device *dev)
 {
 	struct usb_hcd *hcd = NULL;
 	struct s3c2410_hcd_info *info = dev_get_platdata(&dev->dev);
-	int retval;
+	int retval, irq;
 
 	s3c2410_usb_set_power(info, 1, 1);
 	s3c2410_usb_set_power(info, 2, 1);
@@ -388,9 +388,15 @@  static int ohci_hcd_s3c2410_probe(struct platform_device *dev)
 		goto err_put;
 	}
 
+	irq = platform_get_irq(dev, 0);
+	if (irq < 0) {
+		retval = irq;
+		goto err_put;
+	}
+
 	s3c2410_start_hc(dev, hcd);
 
-	retval = usb_add_hcd(hcd, dev->resource[1].start, 0);
+	retval = usb_add_hcd(hcd, irq, 0);
 	if (retval != 0)
 		goto err_ioremap;