From patchwork Thu Oct 21 19:14:28 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Shtylyov X-Patchwork-Id: 12576301 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 056F6C433F5 for ; Thu, 21 Oct 2021 19:14:44 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id DDEA5611CB for ; Thu, 21 Oct 2021 19:14:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231626AbhJUTQ7 (ORCPT ); Thu, 21 Oct 2021 15:16:59 -0400 Received: from mxout01.lancloud.ru ([45.84.86.81]:52526 "EHLO mxout01.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230267AbhJUTQ5 (ORCPT ); Thu, 21 Oct 2021 15:16:57 -0400 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout01.lancloud.ru 1085620CDA47 Received: from LanCloud Received: from LanCloud Received: from LanCloud From: Sergey Shtylyov To: , Greg Kroah-Hartman , Felipe Balbi CC: Kevin Cernekee , Florian Fainelli , , Subject: [PATCH 01/10] usb: gadget: udc: bcm63xx: fix deferred probing Date: Thu, 21 Oct 2021 22:14:28 +0300 Message-ID: <20211021191437.8737-2-s.shtylyov@omp.ru> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20211021191437.8737-1-s.shtylyov@omp.ru> References: <20211021191437.8737-1-s.shtylyov@omp.ru> MIME-Version: 1.0 X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org The driver overrides the error codes returned by platform_get_irq() to -ENXIO for some strange reason, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream. Fixes: 613065e53cb1 ("usb: gadget: bcm63xx UDC driver") Signed-off-by: Sergey Shtylyov Reviewed-by: Florian Fainelli --- drivers/usb/gadget/udc/bcm63xx_udc.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/usb/gadget/udc/bcm63xx_udc.c b/drivers/usb/gadget/udc/bcm63xx_udc.c index a9f07c59fc37..2cdb07905bde 100644 --- a/drivers/usb/gadget/udc/bcm63xx_udc.c +++ b/drivers/usb/gadget/udc/bcm63xx_udc.c @@ -2321,8 +2321,10 @@ static int bcm63xx_udc_probe(struct platform_device *pdev) /* IRQ resource #0: control interrupt (VBUS, speed, etc.) */ irq = platform_get_irq(pdev, 0); - if (irq < 0) + if (irq < 0) { + rc = irq; goto out_uninit; + } if (devm_request_irq(dev, irq, &bcm63xx_udc_ctrl_isr, 0, dev_name(dev), udc) < 0) goto report_request_failure; @@ -2330,8 +2332,10 @@ static int bcm63xx_udc_probe(struct platform_device *pdev) /* IRQ resources #1-6: data interrupts for IUDMA channels 0-5 */ for (i = 0; i < BCM63XX_NUM_IUDMA; i++) { irq = platform_get_irq(pdev, i + 1); - if (irq < 0) + if (irq < 0) { + rc = irq; goto out_uninit; + } if (devm_request_irq(dev, irq, &bcm63xx_udc_data_isr, 0, dev_name(dev), &udc->iudma[i]) < 0) goto report_request_failure; From patchwork Thu Oct 21 19:14:29 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Shtylyov X-Patchwork-Id: 12576307 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C5355C433EF for ; Thu, 21 Oct 2021 19:14:45 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A82D761183 for ; Thu, 21 Oct 2021 19:14:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231788AbhJUTRA (ORCPT ); Thu, 21 Oct 2021 15:17:00 -0400 Received: from mxout02.lancloud.ru ([45.84.86.82]:36212 "EHLO mxout02.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231336AbhJUTQ6 (ORCPT ); Thu, 21 Oct 2021 15:16:58 -0400 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout02.lancloud.ru 669EF2090F6B Received: from LanCloud Received: from LanCloud Received: from LanCloud From: Sergey Shtylyov To: , Greg Kroah-Hartman , Felipe Balbi Subject: [PATCH 02/10] usb: gadget: udc: gr: fix deferred probing Date: Thu, 21 Oct 2021 22:14:29 +0300 Message-ID: <20211021191437.8737-3-s.shtylyov@omp.ru> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20211021191437.8737-1-s.shtylyov@omp.ru> References: <20211021191437.8737-1-s.shtylyov@omp.ru> MIME-Version: 1.0 X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org The driver overrides the error codes (and also IRQ0) returned by platform_get_irq() to -ENODEV, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream, considering IRQ0 valid for simplicity devm_request_threaded_irq() can always override that decision... Fixes: 196800da39a1 ("usb: gadget: gr_udc: Use platform_get_irq instead of irq_of_parse_and_map") Signed-off-by: Sergey Shtylyov --- drivers/usb/gadget/udc/gr_udc.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/usb/gadget/udc/gr_udc.c b/drivers/usb/gadget/udc/gr_udc.c index 4b35739d3695..4aa5246a77e5 100644 --- a/drivers/usb/gadget/udc/gr_udc.c +++ b/drivers/usb/gadget/udc/gr_udc.c @@ -2136,15 +2136,15 @@ static int gr_probe(struct platform_device *pdev) return PTR_ERR(regs); dev->irq = platform_get_irq(pdev, 0); - if (dev->irq <= 0) - return -ENODEV; + if (dev->irq < 0) + return dev->irq; /* Some core configurations has separate irqs for IN and OUT events */ dev->irqi = platform_get_irq(pdev, 1); if (dev->irqi > 0) { dev->irqo = platform_get_irq(pdev, 2); - if (dev->irqo <= 0) - return -ENODEV; + if (dev->irqo < 0) + return dev->irqo; } else { dev->irqi = 0; } From patchwork Thu Oct 21 19:14:30 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Shtylyov X-Patchwork-Id: 12576303 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7C1A9C433FE for ; Thu, 21 Oct 2021 19:14:44 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 642266112D for ; Thu, 21 Oct 2021 19:14:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231640AbhJUTQ7 (ORCPT ); Thu, 21 Oct 2021 15:16:59 -0400 Received: from mxout03.lancloud.ru ([45.84.86.113]:48172 "EHLO mxout03.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230272AbhJUTQ6 (ORCPT ); Thu, 21 Oct 2021 15:16:58 -0400 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout03.lancloud.ru CADE420A4B54 Received: from LanCloud Received: from LanCloud Received: from LanCloud From: Sergey Shtylyov To: , Greg Kroah-Hartman , Felipe Balbi CC: Daniel Mack , Subject: [PATCH 03/10] usb: gadget: udc: pxa25x: fix deferred probing Date: Thu, 21 Oct 2021 22:14:30 +0300 Message-ID: <20211021191437.8737-4-s.shtylyov@omp.ru> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20211021191437.8737-1-s.shtylyov@omp.ru> References: <20211021191437.8737-1-s.shtylyov@omp.ru> MIME-Version: 1.0 X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org The driver overrides the error codes returned by platform_get_irq() to -ENODEV for some strange reason, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream. Fixes: 34ebcd28235d ("pxa2xx_udc: cleanups, use platform_get_irq") Signed-off-by: Sergey Shtylyov --- drivers/usb/gadget/udc/pxa25x_udc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/gadget/udc/pxa25x_udc.c b/drivers/usb/gadget/udc/pxa25x_udc.c index 52cdfd8212d6..b38747fd3bb0 100644 --- a/drivers/usb/gadget/udc/pxa25x_udc.c +++ b/drivers/usb/gadget/udc/pxa25x_udc.c @@ -2364,7 +2364,7 @@ static int pxa25x_udc_probe(struct platform_device *pdev) irq = platform_get_irq(pdev, 0); if (irq < 0) - return -ENODEV; + return irq; dev->regs = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(dev->regs)) From patchwork Thu Oct 21 19:14:31 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Shtylyov X-Patchwork-Id: 12576305 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7A83FC4332F for ; Thu, 21 Oct 2021 19:14:45 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 5C86660F0F for ; Thu, 21 Oct 2021 19:14:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231764AbhJUTRA (ORCPT ); Thu, 21 Oct 2021 15:17:00 -0400 Received: from mxout01.lancloud.ru ([45.84.86.81]:52538 "EHLO mxout01.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231424AbhJUTQ6 (ORCPT ); Thu, 21 Oct 2021 15:16:58 -0400 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout01.lancloud.ru 564F220CDA53 Received: from LanCloud Received: from LanCloud Received: from LanCloud From: Sergey Shtylyov To: , Greg Kroah-Hartman , Alan Stern CC: Nicolas Ferre , Alexandre Belloni , Ludovic Desroches , Subject: [PATCH 04/10] usb: host: ehci-atmel: fix deferred probing Date: Thu, 21 Oct 2021 22:14:31 +0300 Message-ID: <20211021191437.8737-5-s.shtylyov@omp.ru> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20211021191437.8737-1-s.shtylyov@omp.ru> References: <20211021191437.8737-1-s.shtylyov@omp.ru> MIME-Version: 1.0 X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org The driver overrides the error codes (and also IRQ0) returned by platform_get_irq() to -ENODEV, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream -- that means we have to explicitly filter out IRQ0 as bad since usb_add_hcd() doesn't quite like it... :-) Fixes: 501c9c0802d9 ("USB: at91: Add USB EHCI driver for at91sam9g45 series") Signed-off-by: Sergey Shtylyov Acked-by: Alan Stern --- drivers/usb/host/ehci-atmel.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/usb/host/ehci-atmel.c b/drivers/usb/host/ehci-atmel.c index 05d41fd65f25..3f7c8ccc6d7f 100644 --- a/drivers/usb/host/ehci-atmel.c +++ b/drivers/usb/host/ehci-atmel.c @@ -104,8 +104,12 @@ static int ehci_atmel_drv_probe(struct platform_device *pdev) pr_debug("Initializing Atmel-SoC USB Host Controller\n"); irq = platform_get_irq(pdev, 0); - if (irq <= 0) { - retval = -ENODEV; + if (irq < 0) { + retval = irq; + goto fail_create_hcd; + } + if (!irq) { + retval = -EINVAL; goto fail_create_hcd; } From patchwork Thu Oct 21 19:14:32 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Shtylyov X-Patchwork-Id: 12576309 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8132DC43217 for ; Thu, 21 Oct 2021 19:14:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 687F0610A1 for ; Thu, 21 Oct 2021 19:14:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231424AbhJUTRB (ORCPT ); Thu, 21 Oct 2021 15:17:01 -0400 Received: from mxout04.lancloud.ru ([45.84.86.114]:44138 "EHLO mxout04.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231611AbhJUTQ7 (ORCPT ); Thu, 21 Oct 2021 15:16:59 -0400 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout04.lancloud.ru BB3072097A0A Received: from LanCloud Received: from LanCloud Received: from LanCloud From: Sergey Shtylyov To: , Greg Kroah-Hartman , Alan Stern Subject: [PATCH 05/10] usb: host: ehci-orion: fix deferred probing Date: Thu, 21 Oct 2021 22:14:32 +0300 Message-ID: <20211021191437.8737-6-s.shtylyov@omp.ru> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20211021191437.8737-1-s.shtylyov@omp.ru> References: <20211021191437.8737-1-s.shtylyov@omp.ru> MIME-Version: 1.0 X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org The driver overrides the error codes (and also IRQ0) returned by platform_get_irq() to -ENODEV, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream -- that means we have to explicitly filter out IRQ0 as bad since usb_add_hcd() doesn't quite like it... :-) Fixes: e96ffe2f9deb ("USB: add Marvell Orion USB host support") Signed-off-by: Sergey Shtylyov --- drivers/usb/host/ehci-orion.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/usb/host/ehci-orion.c b/drivers/usb/host/ehci-orion.c index 3626758b3e2a..4fa77883f901 100644 --- a/drivers/usb/host/ehci-orion.c +++ b/drivers/usb/host/ehci-orion.c @@ -222,8 +222,12 @@ static int ehci_orion_drv_probe(struct platform_device *pdev) pr_debug("Initializing Orion-SoC USB Host Controller\n"); irq = platform_get_irq(pdev, 0); - if (irq <= 0) { - err = -ENODEV; + if (irq < 0) { + err = irq; + goto err; + } + if (!irq) { + err = -EINVAL; goto err; } From patchwork Thu Oct 21 19:14:33 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Shtylyov X-Patchwork-Id: 12576311 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DF9B5C43219 for ; Thu, 21 Oct 2021 19:14:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id CAAD4610A1 for ; Thu, 21 Oct 2021 19:14:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231793AbhJUTRC (ORCPT ); Thu, 21 Oct 2021 15:17:02 -0400 Received: from mxout01.lancloud.ru ([45.84.86.81]:52552 "EHLO mxout01.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231618AbhJUTQ7 (ORCPT ); Thu, 21 Oct 2021 15:16:59 -0400 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout01.lancloud.ru 21B8020CDA54 Received: from LanCloud Received: from LanCloud Received: from LanCloud From: Sergey Shtylyov To: , Greg Kroah-Hartman , Alan Stern Subject: [PATCH 06/10] usb: host: ehci-sh: fix deferred probing Date: Thu, 21 Oct 2021 22:14:33 +0300 Message-ID: <20211021191437.8737-7-s.shtylyov@omp.ru> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20211021191437.8737-1-s.shtylyov@omp.ru> References: <20211021191437.8737-1-s.shtylyov@omp.ru> MIME-Version: 1.0 X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org The driver overrides the error codes (and also IRQ0) returned by platform_get_irq() to -ENODEV, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream -- that means we have to explicitly filter out IRQ0 as bad since usb_add_hcd() doesn't quite like it... :-) Fixes: 9ec36cafe43b ("of/irq: do irq resolution in platform_get_irq") Signed-off-by: Sergey Shtylyov --- drivers/usb/host/ehci-sh.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/usb/host/ehci-sh.c b/drivers/usb/host/ehci-sh.c index c25c51d26f26..8ce880610212 100644 --- a/drivers/usb/host/ehci-sh.c +++ b/drivers/usb/host/ehci-sh.c @@ -82,8 +82,12 @@ static int ehci_hcd_sh_probe(struct platform_device *pdev) return -ENODEV; irq = platform_get_irq(pdev, 0); - if (irq <= 0) { - ret = -ENODEV; + if (irq < 0) { + ret = irq; + goto fail_create_hcd; + } + if (!irq) { + ret = -EINVAL; goto fail_create_hcd; } From patchwork Thu Oct 21 19:14:34 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Shtylyov X-Patchwork-Id: 12576313 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 39573C433F5 for ; Thu, 21 Oct 2021 19:14:47 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 25DB9610A1 for ; Thu, 21 Oct 2021 19:14:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231800AbhJUTRC (ORCPT ); Thu, 21 Oct 2021 15:17:02 -0400 Received: from mxout02.lancloud.ru ([45.84.86.82]:36220 "EHLO mxout02.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230267AbhJUTRA (ORCPT ); Thu, 21 Oct 2021 15:17:00 -0400 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout02.lancloud.ru A03C920998CA Received: from LanCloud Received: from LanCloud Received: from LanCloud From: Sergey Shtylyov To: , Greg Kroah-Hartman , Alan Stern CC: Sergey Shtylyov Subject: [PATCH 07/10] usb: host: ohci-da8xx: fix deferred probing Date: Thu, 21 Oct 2021 22:14:34 +0300 Message-ID: <20211021191437.8737-8-s.shtylyov@omp.ru> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20211021191437.8737-1-s.shtylyov@omp.ru> References: <20211021191437.8737-1-s.shtylyov@omp.ru> MIME-Version: 1.0 X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org From: Sergey Shtylyov The driver overrides the error codes returned by platform_get_irq() to -ENODEV for some strange reason, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream. Fixes: efe7daf2231a ("USB: OHCI: DA8xx/OMAP-L1x glue layer") Signed-off-by: Sergey Shtylyov Signed-off-by: Sergey Shtylyov --- drivers/usb/host/ohci-da8xx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/host/ohci-da8xx.c b/drivers/usb/host/ohci-da8xx.c index 6d08ab2bf163..8eceb6a92fe9 100644 --- a/drivers/usb/host/ohci-da8xx.c +++ b/drivers/usb/host/ohci-da8xx.c @@ -446,7 +446,7 @@ static int ohci_da8xx_probe(struct platform_device *pdev) hcd_irq = platform_get_irq(pdev, 0); if (hcd_irq < 0) { - error = -ENODEV; + error = hcd_irq; goto err; } if (!hcd_irq) { From patchwork Thu Oct 21 19:14:35 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Shtylyov X-Patchwork-Id: 12576315 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EB8DFC433FE for ; Thu, 21 Oct 2021 19:14:47 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id D6B25610A1 for ; Thu, 21 Oct 2021 19:14:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231854AbhJUTRD (ORCPT ); Thu, 21 Oct 2021 15:17:03 -0400 Received: from mxout03.lancloud.ru ([45.84.86.113]:48182 "EHLO mxout03.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231702AbhJUTRA (ORCPT ); Thu, 21 Oct 2021 15:17:00 -0400 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout03.lancloud.ru 2572720A584F Received: from LanCloud Received: from LanCloud Received: from LanCloud From: Sergey Shtylyov To: , Greg Kroah-Hartman , Alan Stern CC: Vladimir Zapolskiy , Subject: [PATCH 08/10] usb: host: ohci-nxp: fix deferred probing Date: Thu, 21 Oct 2021 22:14:35 +0300 Message-ID: <20211021191437.8737-9-s.shtylyov@omp.ru> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20211021191437.8737-1-s.shtylyov@omp.ru> References: <20211021191437.8737-1-s.shtylyov@omp.ru> MIME-Version: 1.0 X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org The driver overrides the error codes returned by platform_get_irq() to -ENXIO for some strange reason, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream... Fixes: 60bbfc84b6d9 ("USB OHCI controller support for PNX4008") Signed-off-by: Sergey Shtylyov Acked-by: Vladimir Zapolskiy --- drivers/usb/host/ohci-nxp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/host/ohci-nxp.c b/drivers/usb/host/ohci-nxp.c index afb9c2fc85c3..2492f78da6f1 100644 --- a/drivers/usb/host/ohci-nxp.c +++ b/drivers/usb/host/ohci-nxp.c @@ -212,7 +212,7 @@ static int ohci_hcd_nxp_probe(struct platform_device *pdev) irq = platform_get_irq(pdev, 0); if (irq < 0) { - ret = -ENXIO; + ret = irq; goto fail_resource; } if (!irq) { From patchwork Thu Oct 21 19:14:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Shtylyov X-Patchwork-Id: 12576317 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6861DC4332F for ; Thu, 21 Oct 2021 19:14:48 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 51F5D610A1 for ; Thu, 21 Oct 2021 19:14:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231861AbhJUTRD (ORCPT ); Thu, 21 Oct 2021 15:17:03 -0400 Received: from mxout04.lancloud.ru ([45.84.86.114]:44150 "EHLO mxout04.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231749AbhJUTRA (ORCPT ); Thu, 21 Oct 2021 15:17:00 -0400 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout04.lancloud.ru 93F7C2097EC1 Received: from LanCloud Received: from LanCloud Received: from LanCloud From: Sergey Shtylyov To: , Greg Kroah-Hartman , Alan Stern Subject: [PATCH 09/10] usb: host: ohci-omap: fix deferred probing Date: Thu, 21 Oct 2021 22:14:36 +0300 Message-ID: <20211021191437.8737-10-s.shtylyov@omp.ru> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20211021191437.8737-1-s.shtylyov@omp.ru> References: <20211021191437.8737-1-s.shtylyov@omp.ru> MIME-Version: 1.0 X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org The driver overrides the error codes returned by platform_get_irq() to -ENXIO for some strange reason, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream. Fixes: 60bbfc84b6d9 ("USB OHCI controller support for PNX4008") Signed-off-by: Sergey Shtylyov --- drivers/usb/host/ohci-omap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/host/ohci-omap.c b/drivers/usb/host/ohci-omap.c index 6d5f964d0995..87e27c478c4f 100644 --- a/drivers/usb/host/ohci-omap.c +++ b/drivers/usb/host/ohci-omap.c @@ -306,7 +306,7 @@ static int ohci_hcd_omap_probe(struct platform_device *pdev) irq = platform_get_irq(pdev, 0); if (irq < 0) { - retval = -ENXIO; + retval = irq; goto err3; } if (!irq) { From patchwork Thu Oct 21 19:14:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Shtylyov X-Patchwork-Id: 12576319 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0C6E5C433F5 for ; Thu, 21 Oct 2021 19:14:49 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E7D8E6112D for ; Thu, 21 Oct 2021 19:14:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231849AbhJUTRE (ORCPT ); Thu, 21 Oct 2021 15:17:04 -0400 Received: from mxout04.lancloud.ru ([45.84.86.114]:44154 "EHLO mxout04.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231775AbhJUTRB (ORCPT ); Thu, 21 Oct 2021 15:17:01 -0400 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout04.lancloud.ru 090AD2097EC9 Received: from LanCloud Received: from LanCloud Received: from LanCloud From: Sergey Shtylyov To: , Greg Kroah-Hartman , Bin Liu Subject: [PATCH 10/10] usb: musb: core: fix deferred probing Date: Thu, 21 Oct 2021 22:14:37 +0300 Message-ID: <20211021191437.8737-11-s.shtylyov@omp.ru> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20211021191437.8737-1-s.shtylyov@omp.ru> References: <20211021191437.8737-1-s.shtylyov@omp.ru> MIME-Version: 1.0 X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org The driver overrides the error codes returned by platform_get_irq() to -ENODEV, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream, while considering IRQ0 valid for simplicity -- request_irq() can always override that decision... Fixes: 9ec36cafe43b ("of/irq: do irq resolution in platform_get_irq") Signed-off-by: Sergey Shtylyov --- drivers/usb/musb/musb_core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index f7b1d5993f8c..e57abc54d12b 100644 --- a/drivers/usb/musb/musb_core.c +++ b/drivers/usb/musb/musb_core.c @@ -2618,8 +2618,8 @@ static int musb_probe(struct platform_device *pdev) int irq = platform_get_irq_byname(pdev, "mc"); void __iomem *base; - if (irq <= 0) - return -ENODEV; + if (irq < 0) + return irq; base = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(base))