[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <575A7B0C.40103@ti.com>
Date: Fri, 10 Jun 2016 11:32:12 +0300
From: Roger Quadros <rogerq@...com>
To: Felipe Balbi <balbi@...nel.org>,
Grygorii Strashko <grygorii.strashko@...com>
CC: <tony@...mide.com>, <Joao.Pinto@...opsys.com>,
<sergei.shtylyov@...entembedded.com>, <peter.chen@...escale.com>,
<jun.li@...escale.com>, <yoshihiro.shimoda.uh@...esas.com>,
<nsekhar@...com>, <b-liu@...com>, <linux-usb@...r.kernel.org>,
<linux-omap@...r.kernel.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v9 5/5] usb: dwc3: core: cleanup IRQ resources
On 10/06/16 11:18, Felipe Balbi wrote:
>
> Hi,
>
> Roger Quadros <rogerq@...com> writes:
>>> dwc->xhci_resource[1] = *res;
>>
>> Probably not as we don't want to change parent/child members.
>
> oh, you had already replied. Sorry. This is correct
>
np :).
So what i'll do is get the irq via platform_get_irq() and friends
and if it was a success use platform_get_resource() and friends
to get struct resource and just edit the relevant parts for the
XHCI irq resource.
Sounds OK?
something like this.
+ int ret, irq;
+ struct resource *res;
+ struct platform_device *dwc3_pdev = to_platform_device(dwc->dev);
+
+ irq = platform_get_irq_byname(dwc3_pdev, "host");
+ if (irq == -EPROBE_DEFER)
+ return irq;
+
+ if (irq <= 0) {
+ irq = platform_get_irq_byname(dwc3_pdev, "dwc_usb3");
+ if (irq == -EPROBE_DEFER)
+ return irq;
+
+ if (irq <= 0) {
+ irq = platform_get_irq(dwc3_pdev, 0);
+ if (irq <= 0) {
+ if (irq != -EPROBE_DEFER) {
+ dev_err(dwc->dev,
+ "missing host IRQ\n");
+ }
+ return irq;
+ } else {
+ res = platform_get_resource(dwc3_pdev,
+ IORESOURCE_IRQ, 0);
+ }
+ } else {
+ res = platform_get_resource_byname(dwc3_pdev,
+ IORESOURCE_IRQ,
+ "dwc_usb3");
+ }
+
+ } else {
+ res = platform_get_resource_byname(dwc3_pdev, IORESOURCE_IRQ,
+ "host");
+ }
+
+ dwc->xhci_resources[1].start = irq;
+ dwc->xhci_resources[1].end = irq;
+ dwc->xhci_resources[1].flags = res->flags;
+ dwc->xhci_resources[1].name = res->name;
--
cheers,
-roger
Download attachment "signature.asc" of type "application/pgp-signature" (820 bytes)
Powered by blists - more mailing lists