From patchwork Tue Nov 10 04:05:36 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Frank Lee X-Patchwork-Id: 321899 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, UNPARSEABLE_RELAY, URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2ACECC56201 for ; Tue, 10 Nov 2020 04:06:22 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E6E4B21D7F for ; Tue, 10 Nov 2020 04:06:21 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732182AbgKJEGV (ORCPT ); Mon, 9 Nov 2020 23:06:21 -0500 Received: from smtp2207-205.mail.aliyun.com ([121.197.207.205]:48822 "EHLO smtp2207-205.mail.aliyun.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1733277AbgKJEGU (ORCPT ); Mon, 9 Nov 2020 23:06:20 -0500 X-Alimail-AntiSpam: AC=CONTINUE; BC=0.1946372|-1; CH=green; DM=|CONTINUE|false|; DS=CONTINUE|ham_system_inform|0.00566465-0.00129434-0.993041; FP=0|0|0|0|0|-1|-1|-1; HT=ay29a033018047202; MF=frank@allwinnertech.com; NM=1; PH=DS; RN=28; RT=28; SR=0; TI=SMTPD_---.IulFdj5_1604981159; Received: from allwinnertech.com(mailfrom:frank@allwinnertech.com fp:SMTPD_---.IulFdj5_1604981159) by smtp.aliyun-inc.com(10.147.42.135); Tue, 10 Nov 2020 12:06:13 +0800 From: Frank Lee To: vkoul@kernel.org, robh+dt@kernel.org, mripard@kernel.org, wens@csie.org, ulf.hansson@linaro.org, kishon@ti.com, wim@linux-watchdog.org, linux@roeck-us.net, dan.j.williams@intel.com, linus.walleij@linaro.org, wsa+renesas@sang-engineering.com, dianders@chromium.org, marex@denx.de, colin.king@canonical.com, rdunlap@infradead.org, krzk@kernel.org, gregkh@linuxfoundation.org, megous@megous.com, rikard.falkeborn@gmail.com, dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org, linux-watchdog@vger.kernel.org, linux-gpio@vger.kernel.org, tiny.windzz@gmail.com Cc: Yangtao Li Subject: [PATCH 02/19] pinctrl: sunxi: Mark the irq bank not found in sunxi_pinctrl_irq_handler() with WARN_ON Date: Tue, 10 Nov 2020 12:05:36 +0800 Message-Id: <20201110040553.1381-3-frank@allwinnertech.com> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201110040553.1381-1-frank@allwinnertech.com> References: <20201110040553.1381-1-frank@allwinnertech.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-watchdog@vger.kernel.org From: Yangtao Li The interrupt descriptor cannot be found in the interrupt processing function, and this situation cannot happen when the system is running normally. It doesn't seem right to return directly to the status of not handling gic. In this case, it must be a bug, let's mark it with BUG_ON. Signed-off-by: Yangtao Li --- drivers/pinctrl/sunxi/pinctrl-sunxi.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/pinctrl/sunxi/pinctrl-sunxi.c b/drivers/pinctrl/sunxi/pinctrl-sunxi.c index 8e792f8e2dc9..9d8b59dafa4b 100644 --- a/drivers/pinctrl/sunxi/pinctrl-sunxi.c +++ b/drivers/pinctrl/sunxi/pinctrl-sunxi.c @@ -1139,8 +1139,7 @@ static void sunxi_pinctrl_irq_handler(struct irq_desc *desc) if (irq == pctl->irq[bank]) break; - if (bank == pctl->desc->irq_banks) - return; + WARN_ON(bank == pctl->desc->irq_banks); reg = sunxi_irq_status_reg_from_bank(pctl->desc, bank); val = readl(pctl->membase + reg); From patchwork Tue Nov 10 04:05:40 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Frank Lee X-Patchwork-Id: 321896 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.9 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, UNPARSEABLE_RELAY, UNWANTED_LANGUAGE_BODY, URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EABD7C4742C for ; Tue, 10 Nov 2020 04:06:57 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id BAF7120721 for ; Tue, 10 Nov 2020 04:06:57 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733026AbgKJEGz (ORCPT ); Mon, 9 Nov 2020 23:06:55 -0500 Received: from smtp2207-205.mail.aliyun.com ([121.197.207.205]:53880 "EHLO smtp2207-205.mail.aliyun.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387513AbgKJEG3 (ORCPT ); Mon, 9 Nov 2020 23:06:29 -0500 X-Alimail-AntiSpam: AC=CONTINUE; BC=0.1478366|-1; CH=green; DM=|CONTINUE|false|; DS=CONTINUE|ham_system_inform|0.0231434-0.00763199-0.969225; FP=0|0|0|0|0|-1|-1|-1; HT=ay29a033018047199; MF=frank@allwinnertech.com; NM=1; PH=DS; RN=28; RT=28; SR=0; TI=SMTPD_---.IulFdj5_1604981159; Received: from allwinnertech.com(mailfrom:frank@allwinnertech.com fp:SMTPD_---.IulFdj5_1604981159) by smtp.aliyun-inc.com(10.147.42.135); Tue, 10 Nov 2020 12:06:22 +0800 From: Frank Lee To: vkoul@kernel.org, robh+dt@kernel.org, mripard@kernel.org, wens@csie.org, ulf.hansson@linaro.org, kishon@ti.com, wim@linux-watchdog.org, linux@roeck-us.net, dan.j.williams@intel.com, linus.walleij@linaro.org, wsa+renesas@sang-engineering.com, dianders@chromium.org, marex@denx.de, colin.king@canonical.com, rdunlap@infradead.org, krzk@kernel.org, gregkh@linuxfoundation.org, megous@megous.com, rikard.falkeborn@gmail.com, dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org, linux-watchdog@vger.kernel.org, linux-gpio@vger.kernel.org, tiny.windzz@gmail.com Cc: Yangtao Li Subject: [PATCH 06/19] arm64: allwinner: a100: Add device node for DMA controller Date: Tue, 10 Nov 2020 12:05:40 +0800 Message-Id: <20201110040553.1381-7-frank@allwinnertech.com> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201110040553.1381-1-frank@allwinnertech.com> References: <20201110040553.1381-1-frank@allwinnertech.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-watchdog@vger.kernel.org From: Yangtao Li The A100 SoC has a DMA controller that supports 8 DMA channels to and from various peripherals. Add a device node for it. Signed-off-by: Yangtao Li --- arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi index cc321c04f121..c34ed8045363 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi @@ -101,6 +101,18 @@ ccu: clock@3001000 { #reset-cells = <1>; }; + dma: dma-controller@3002000 { + compatible = "allwinner,sun50i-a100-dma"; + reg = <0x03002000 0x1000>; + interrupts = ; + clocks = <&ccu CLK_BUS_DMA>, <&ccu CLK_MBUS_DMA>; + clock-names = "bus", "mbus"; + dma-channels = <8>; + dma-requests = <51>; + resets = <&ccu RST_BUS_DMA>; + #dma-cells = <1>; + }; + gic: interrupt-controller@3021000 { compatible = "arm,gic-400"; reg = <0x03021000 0x1000>, <0x03022000 0x2000>, From patchwork Tue Nov 10 04:05:41 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Frank Lee X-Patchwork-Id: 321897 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, UNPARSEABLE_RELAY, URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 63BB2C55ABD for ; Tue, 10 Nov 2020 04:06:50 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 2E33821527 for ; Tue, 10 Nov 2020 04:06:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387421AbgKJEGr (ORCPT ); Mon, 9 Nov 2020 23:06:47 -0500 Received: from smtp2207-205.mail.aliyun.com ([121.197.207.205]:41716 "EHLO smtp2207-205.mail.aliyun.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1733073AbgKJEGc (ORCPT ); Mon, 9 Nov 2020 23:06:32 -0500 X-Alimail-AntiSpam: AC=CONTINUE; BC=0.1456938|-1; CH=green; DM=|CONTINUE|false|; DS=CONTINUE|ham_system_inform|0.446168-0.0014012-0.552431; FP=0|0|0|0|0|-1|-1|-1; HT=ay29a033018047201; MF=frank@allwinnertech.com; NM=1; PH=DS; RN=28; RT=28; SR=0; TI=SMTPD_---.IulFdj5_1604981159; Received: from allwinnertech.com(mailfrom:frank@allwinnertech.com fp:SMTPD_---.IulFdj5_1604981159) by smtp.aliyun-inc.com(10.147.42.135); Tue, 10 Nov 2020 12:06:24 +0800 From: Frank Lee To: vkoul@kernel.org, robh+dt@kernel.org, mripard@kernel.org, wens@csie.org, ulf.hansson@linaro.org, kishon@ti.com, wim@linux-watchdog.org, linux@roeck-us.net, dan.j.williams@intel.com, linus.walleij@linaro.org, wsa+renesas@sang-engineering.com, dianders@chromium.org, marex@denx.de, colin.king@canonical.com, rdunlap@infradead.org, krzk@kernel.org, gregkh@linuxfoundation.org, megous@megous.com, rikard.falkeborn@gmail.com, dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org, linux-watchdog@vger.kernel.org, linux-gpio@vger.kernel.org, tiny.windzz@gmail.com Cc: Yangtao Li Subject: [PATCH 07/19] arm64: dts: allwinner: A100: Add PMU mode Date: Tue, 10 Nov 2020 12:05:41 +0800 Message-Id: <20201110040553.1381-8-frank@allwinnertech.com> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201110040553.1381-1-frank@allwinnertech.com> References: <20201110040553.1381-1-frank@allwinnertech.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-watchdog@vger.kernel.org From: Yangtao Li Add the Performance Monitoring Unit (PMU) device tree node to the A100 .dtsi, which tells DT users which interrupts are triggered by PMU overflow events on each core. Signed-off-by: Yangtao Li --- arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi index c34ed8045363..01ff53b5a7a8 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi @@ -25,21 +25,21 @@ cpu0: cpu@0 { enable-method = "psci"; }; - cpu@1 { + cpu1: cpu@1 { compatible = "arm,cortex-a53"; device_type = "cpu"; reg = <0x1>; enable-method = "psci"; }; - cpu@2 { + cpu2: cpu@2 { compatible = "arm,cortex-a53"; device_type = "cpu"; reg = <0x2>; enable-method = "psci"; }; - cpu@3 { + cpu3: cpu@3 { compatible = "arm,cortex-a53"; device_type = "cpu"; reg = <0x3>; @@ -47,6 +47,15 @@ cpu@3 { }; }; + pmu { + compatible = "arm,cortex-a53-pmu"; + interrupts = , + , + , + ; + interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>; + }; + psci { compatible = "arm,psci-1.0"; method = "smc"; From patchwork Tue Nov 10 04:05:43 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Frank Lee X-Patchwork-Id: 321898 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, UNPARSEABLE_RELAY, URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4F200C388F7 for ; Tue, 10 Nov 2020 04:06:37 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 02DB2206D8 for ; Tue, 10 Nov 2020 04:06:36 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387616AbgKJEGg (ORCPT ); Mon, 9 Nov 2020 23:06:36 -0500 Received: from smtp2207-205.mail.aliyun.com ([121.197.207.205]:60098 "EHLO smtp2207-205.mail.aliyun.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387574AbgKJEGf (ORCPT ); Mon, 9 Nov 2020 23:06:35 -0500 X-Alimail-AntiSpam: AC=CONTINUE; BC=0.07436289|-1; CH=green; DM=|CONTINUE|false|; DS=CONTINUE|ham_system_inform|0.019185-0.0136594-0.967156; FP=0|0|0|0|0|-1|-1|-1; HT=ay29a033018047193; MF=frank@allwinnertech.com; NM=1; PH=DS; RN=28; RT=28; SR=0; TI=SMTPD_---.IulFdj5_1604981159; Received: from allwinnertech.com(mailfrom:frank@allwinnertech.com fp:SMTPD_---.IulFdj5_1604981159) by smtp.aliyun-inc.com(10.147.42.135); Tue, 10 Nov 2020 12:06:29 +0800 From: Frank Lee To: vkoul@kernel.org, robh+dt@kernel.org, mripard@kernel.org, wens@csie.org, ulf.hansson@linaro.org, kishon@ti.com, wim@linux-watchdog.org, linux@roeck-us.net, dan.j.williams@intel.com, linus.walleij@linaro.org, wsa+renesas@sang-engineering.com, dianders@chromium.org, marex@denx.de, colin.king@canonical.com, rdunlap@infradead.org, krzk@kernel.org, gregkh@linuxfoundation.org, megous@megous.com, rikard.falkeborn@gmail.com, dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org, linux-watchdog@vger.kernel.org, linux-gpio@vger.kernel.org, tiny.windzz@gmail.com Cc: Yangtao Li Subject: [PATCH 09/19] phy: allwinner: Convert to devm_platform_ioremap_* API Date: Tue, 10 Nov 2020 12:05:43 +0800 Message-Id: <20201110040553.1381-10-frank@allwinnertech.com> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201110040553.1381-1-frank@allwinnertech.com> References: <20201110040553.1381-1-frank@allwinnertech.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-watchdog@vger.kernel.org From: Yangtao Li Use the devm_platform_ioremap_resource_byname() and devm_platform_ioremap_resource helper to simplify the code. Signed-off-by: Yangtao Li --- drivers/phy/allwinner/phy-sun4i-usb.c | 9 +++------ drivers/phy/allwinner/phy-sun50i-usb3.c | 4 +--- drivers/phy/allwinner/phy-sun6i-mipi-dphy.c | 4 +--- drivers/phy/allwinner/phy-sun9i-usb.c | 4 +--- 4 files changed, 6 insertions(+), 15 deletions(-) diff --git a/drivers/phy/allwinner/phy-sun4i-usb.c b/drivers/phy/allwinner/phy-sun4i-usb.c index 0f1888b55dbd..a6900495baa5 100644 --- a/drivers/phy/allwinner/phy-sun4i-usb.c +++ b/drivers/phy/allwinner/phy-sun4i-usb.c @@ -686,7 +686,6 @@ static int sun4i_usb_phy_probe(struct platform_device *pdev) struct device *dev = &pdev->dev; struct device_node *np = dev->of_node; struct phy_provider *phy_provider; - struct resource *res; int i, ret; data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL); @@ -700,8 +699,7 @@ static int sun4i_usb_phy_probe(struct platform_device *pdev) if (!data->cfg) return -EINVAL; - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "phy_ctrl"); - data->base = devm_ioremap_resource(dev, res); + data->base = devm_platform_ioremap_resource_byname(pdev, "phy_ctrl"); if (IS_ERR(data->base)) return PTR_ERR(data->base); @@ -796,9 +794,8 @@ static int sun4i_usb_phy_probe(struct platform_device *pdev) if (i || data->cfg->phy0_dual_route) { /* No pmu for musb */ snprintf(name, sizeof(name), "pmu%d", i); - res = platform_get_resource_byname(pdev, - IORESOURCE_MEM, name); - phy->pmu = devm_ioremap_resource(dev, res); + phy->pmu = devm_platform_ioremap_resource_byname(pdev, + name); if (IS_ERR(phy->pmu)) return PTR_ERR(phy->pmu); } diff --git a/drivers/phy/allwinner/phy-sun50i-usb3.c b/drivers/phy/allwinner/phy-sun50i-usb3.c index b1c04f71a31d..84055b720016 100644 --- a/drivers/phy/allwinner/phy-sun50i-usb3.c +++ b/drivers/phy/allwinner/phy-sun50i-usb3.c @@ -134,7 +134,6 @@ static int sun50i_usb3_phy_probe(struct platform_device *pdev) struct sun50i_usb3_phy *phy; struct device *dev = &pdev->dev; struct phy_provider *phy_provider; - struct resource *res; phy = devm_kzalloc(dev, sizeof(*phy), GFP_KERNEL); if (!phy) @@ -153,8 +152,7 @@ static int sun50i_usb3_phy_probe(struct platform_device *pdev) return PTR_ERR(phy->reset); } - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - phy->regs = devm_ioremap_resource(dev, res); + phy->regs = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(phy->regs)) return PTR_ERR(phy->regs); diff --git a/drivers/phy/allwinner/phy-sun6i-mipi-dphy.c b/drivers/phy/allwinner/phy-sun6i-mipi-dphy.c index 1fa761ba6cbb..f0bc87d654d4 100644 --- a/drivers/phy/allwinner/phy-sun6i-mipi-dphy.c +++ b/drivers/phy/allwinner/phy-sun6i-mipi-dphy.c @@ -253,15 +253,13 @@ static int sun6i_dphy_probe(struct platform_device *pdev) { struct phy_provider *phy_provider; struct sun6i_dphy *dphy; - struct resource *res; void __iomem *regs; dphy = devm_kzalloc(&pdev->dev, sizeof(*dphy), GFP_KERNEL); if (!dphy) return -ENOMEM; - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - regs = devm_ioremap_resource(&pdev->dev, res); + regs = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(regs)) { dev_err(&pdev->dev, "Couldn't map the DPHY encoder registers\n"); return PTR_ERR(regs); diff --git a/drivers/phy/allwinner/phy-sun9i-usb.c b/drivers/phy/allwinner/phy-sun9i-usb.c index fc6784dd7fa0..2f9e60c188b8 100644 --- a/drivers/phy/allwinner/phy-sun9i-usb.c +++ b/drivers/phy/allwinner/phy-sun9i-usb.c @@ -117,7 +117,6 @@ static int sun9i_usb_phy_probe(struct platform_device *pdev) struct device *dev = &pdev->dev; struct device_node *np = dev->of_node; struct phy_provider *phy_provider; - struct resource *res; phy = devm_kzalloc(dev, sizeof(*phy), GFP_KERNEL); if (!phy) @@ -156,8 +155,7 @@ static int sun9i_usb_phy_probe(struct platform_device *pdev) } } - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - phy->pmu = devm_ioremap_resource(dev, res); + phy->pmu = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(phy->pmu)) return PTR_ERR(phy->pmu);