From: Adrian Hunter <adrian.hunter@intel.com> To: "Ulf Hansson" <ulf.hansson@linaro.org>, "Andy Shevchenko" <andriy.shevchenko@linux.intel.com>, "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>, "Yangtao Li" <frank.li@vivo.com> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>, Kunihiko Hayashi <hayashi.kunihiko@socionext.com>, Al Cooper <alcooperx@gmail.com>, Li Zetao <lizetao1@huawei.com>, Brad Larson <blarson@amd.com>, Swati Agarwal <swati.agarwal@amd.com>, linux-kernel@vger.kernel.org, Sai Krishna Potthuri <sai.krishna.potthuri@amd.com>, Jiapeng Chong <jiapeng.chong@linux.alibaba.com>, Florian Fainelli <florian.fainelli@broadcom.com>, Steen Hegelund <Steen.Hegelund@microchip.com>, Brian Norris <briannorris@chromium.org>, Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>, linux-arm-kernel@lists.infradead.org, Ye Xingchen <ye.xingchen@zte.com.cn>, Patrice Chotard <patrice.chotard@foss.st.com>, Kamal Dasu <kamal.dasu@broadcom.com>, Doug Brown <doug@schmorgal.com>, Daniel Machon <daniel.machon@microchip.com>, Ray Jui <rjui@broadcom.com>, Eugen Hristev <eugen.hristev@collabora.com>, Jassi Brar <jaswinder.singh@linaro.org>, Christophe JAILLET <christophe.jaillet@wanadoo.fr>, Georgii Kruglov <georgy.kruglov@yandex.ru>, Michal Simek <michal.simek@amd.com>, Lars Povlsen <lars.povlsen@microchip.com>, Andy Tang <andy.tang@nxp.com>, Scott Branden <sbranden@broadcom.com>, linux-mmc@vger.kernel.org, UNGLinuxDriver@microchip.com, Claudiu Beznea <claudiu.beznea@microchip.com> Subject: [PATCH 03/16] mmc: sdhci-brcmstb: Use sdhci_pltfm_remove() Date: Fri, 11 Aug 2023 16:03:38 +0300 [thread overview] Message-ID: <20230811130351.7038-4-adrian.hunter@intel.com> (raw) In-Reply-To: <20230811130351.7038-1-adrian.hunter@intel.com> Use sdhci_pltfm_remove() instead of sdhci_pltfm_unregister() so that devm_clk_get_optional_enabled() can be used for pltfm_host->clk. This has the side effect that the order of operations on the error path and remove path is not the same as it was before, but should be safe nevertheless. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> --- drivers/mmc/host/sdhci-brcmstb.c | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/drivers/mmc/host/sdhci-brcmstb.c b/drivers/mmc/host/sdhci-brcmstb.c index a2b6d8f2eeb6..c23251bb95f3 100644 --- a/drivers/mmc/host/sdhci-brcmstb.c +++ b/drivers/mmc/host/sdhci-brcmstb.c @@ -264,23 +264,17 @@ static int sdhci_brcmstb_probe(struct platform_device *pdev) dev_dbg(&pdev->dev, "Probe found match for %s\n", match->compatible); - clk = devm_clk_get_optional(&pdev->dev, NULL); + clk = devm_clk_get_optional_enabled(&pdev->dev, NULL); if (IS_ERR(clk)) return dev_err_probe(&pdev->dev, PTR_ERR(clk), - "Failed to get clock from Device Tree\n"); - - res = clk_prepare_enable(clk); - if (res) - return res; + "Failed to get and enable clock from Device Tree\n"); memset(&brcmstb_pdata, 0, sizeof(brcmstb_pdata)); brcmstb_pdata.ops = match_priv->ops; host = sdhci_pltfm_init(pdev, &brcmstb_pdata, sizeof(struct sdhci_brcmstb_priv)); - if (IS_ERR(host)) { - res = PTR_ERR(host); - goto err_clk; - } + if (IS_ERR(host)) + return PTR_ERR(host); pltfm_host = sdhci_priv(host); priv = sdhci_pltfm_priv(pltfm_host); @@ -369,9 +363,7 @@ static int sdhci_brcmstb_probe(struct platform_device *pdev) err: sdhci_pltfm_free(pdev); -err_clk: clk_disable_unprepare(base_clk); - clk_disable_unprepare(clk); return res; } @@ -430,7 +422,7 @@ static struct platform_driver sdhci_brcmstb_driver = { .of_match_table = of_match_ptr(sdhci_brcm_of_match), }, .probe = sdhci_brcmstb_probe, - .remove_new = sdhci_pltfm_unregister, + .remove_new = sdhci_pltfm_remove, .shutdown = sdhci_brcmstb_shutdown, }; -- 2.34.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Adrian Hunter <adrian.hunter@intel.com> To: "Ulf Hansson" <ulf.hansson@linaro.org>, "Andy Shevchenko" <andriy.shevchenko@linux.intel.com>, "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>, "Yangtao Li" <frank.li@vivo.com> Cc: Florian Fainelli <florian.fainelli@broadcom.com>, Ray Jui <rjui@broadcom.com>, Scott Branden <sbranden@broadcom.com>, Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>, Kamal Dasu <kamal.dasu@broadcom.com>, Al Cooper <alcooperx@gmail.com>, Michal Simek <michal.simek@amd.com>, Eugen Hristev <eugen.hristev@collabora.com>, Nicolas Ferre <nicolas.ferre@microchip.com>, Alexandre Belloni <alexandre.belloni@bootlin.com>, Claudiu Beznea <claudiu.beznea@microchip.com>, Lars Povlsen <lars.povlsen@microchip.com>, Steen Hegelund <Steen.Hegelund@microchip.com>, Daniel Machon <daniel.machon@microchip.com>, UNGLinuxDriver@microchip.com, Patrice Chotard <patrice.chotard@foss.st.com>, Brian Norris <briannorris@chromium.org>, Ye Xingchen <ye.xingchen@zte.com.cn>, Brad Larson <blarson@amd.com>, Christophe JAILLET <christophe.jaillet@wanadoo.fr>, Sai Krishna Potthuri <sai.krishna.potthuri@amd.com>, Swati Agarwal <swati.agarwal@amd.com>, Andy Tang <andy.tang@nxp.com>, Georgii Kruglov <georgy.kruglov@yandex.ru>, Jiapeng Chong <jiapeng.chong@linux.alibaba.com>, Doug Brown <doug@schmorgal.com>, Li Zetao <lizetao1@huawei.com>, Kunihiko Hayashi <hayashi.kunihiko@socionext.com>, Jassi Brar <jaswinder.singh@linaro.org>, linux-mmc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH 03/16] mmc: sdhci-brcmstb: Use sdhci_pltfm_remove() Date: Fri, 11 Aug 2023 16:03:38 +0300 [thread overview] Message-ID: <20230811130351.7038-4-adrian.hunter@intel.com> (raw) In-Reply-To: <20230811130351.7038-1-adrian.hunter@intel.com> Use sdhci_pltfm_remove() instead of sdhci_pltfm_unregister() so that devm_clk_get_optional_enabled() can be used for pltfm_host->clk. This has the side effect that the order of operations on the error path and remove path is not the same as it was before, but should be safe nevertheless. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> --- drivers/mmc/host/sdhci-brcmstb.c | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/drivers/mmc/host/sdhci-brcmstb.c b/drivers/mmc/host/sdhci-brcmstb.c index a2b6d8f2eeb6..c23251bb95f3 100644 --- a/drivers/mmc/host/sdhci-brcmstb.c +++ b/drivers/mmc/host/sdhci-brcmstb.c @@ -264,23 +264,17 @@ static int sdhci_brcmstb_probe(struct platform_device *pdev) dev_dbg(&pdev->dev, "Probe found match for %s\n", match->compatible); - clk = devm_clk_get_optional(&pdev->dev, NULL); + clk = devm_clk_get_optional_enabled(&pdev->dev, NULL); if (IS_ERR(clk)) return dev_err_probe(&pdev->dev, PTR_ERR(clk), - "Failed to get clock from Device Tree\n"); - - res = clk_prepare_enable(clk); - if (res) - return res; + "Failed to get and enable clock from Device Tree\n"); memset(&brcmstb_pdata, 0, sizeof(brcmstb_pdata)); brcmstb_pdata.ops = match_priv->ops; host = sdhci_pltfm_init(pdev, &brcmstb_pdata, sizeof(struct sdhci_brcmstb_priv)); - if (IS_ERR(host)) { - res = PTR_ERR(host); - goto err_clk; - } + if (IS_ERR(host)) + return PTR_ERR(host); pltfm_host = sdhci_priv(host); priv = sdhci_pltfm_priv(pltfm_host); @@ -369,9 +363,7 @@ static int sdhci_brcmstb_probe(struct platform_device *pdev) err: sdhci_pltfm_free(pdev); -err_clk: clk_disable_unprepare(base_clk); - clk_disable_unprepare(clk); return res; } @@ -430,7 +422,7 @@ static struct platform_driver sdhci_brcmstb_driver = { .of_match_table = of_match_ptr(sdhci_brcm_of_match), }, .probe = sdhci_brcmstb_probe, - .remove_new = sdhci_pltfm_unregister, + .remove_new = sdhci_pltfm_remove, .shutdown = sdhci_brcmstb_shutdown, }; -- 2.34.1
next prev parent reply other threads:[~2023-08-11 13:05 UTC|newest] Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-08-11 13:03 [PATCH 00/16] mmc: sdhci-pltfm: Minor clean up Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 01/16] mmc: sdhci-pltfm: Add sdhci_pltfm_remove() Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 02/16] mmc: sdhci-bcm-kona: Use sdhci_pltfm_remove() Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter [this message] 2023-08-11 13:03 ` [PATCH 03/16] mmc: sdhci-brcmstb: " Adrian Hunter 2023-08-25 16:22 ` Kamal Dasu 2023-08-25 16:22 ` Kamal Dasu 2023-08-11 13:03 ` [PATCH 04/16] mmc: sdhci-cadence: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 05/16] mmc: sdhci-dove: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 06/16] mmc: sdhci_f_sdh30: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 07/16] mmc: sdhci-iproc: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 08/16] mmc: sdhci-of-arasan: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 09/16] mmc: sdhci-of-at91: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 10/16] mmc: sdhci-of-esdhc: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 11/16] mmc: sdhci-of-hlwd: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 12/16] mmc: sdhci-of-sparx5: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 13/16] mmc: sdhci-pxav2: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 14/16] mmc: sdhci-st: " Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 15/16] mmc: sdhci-pltfm: Remove sdhci_pltfm_unregister() Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:03 ` [PATCH 16/16] mmc: sdhci-pltfm: Rename sdhci_pltfm_register() Adrian Hunter 2023-08-11 13:03 ` Adrian Hunter 2023-08-11 13:42 ` [PATCH 00/16] mmc: sdhci-pltfm: Minor clean up Andy Shevchenko 2023-08-11 13:42 ` Andy Shevchenko 2023-08-15 11:40 ` Ulf Hansson 2023-08-15 11:40 ` Ulf Hansson
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20230811130351.7038-4-adrian.hunter@intel.com \ --to=adrian.hunter@intel.com \ --cc=Steen.Hegelund@microchip.com \ --cc=UNGLinuxDriver@microchip.com \ --cc=alcooperx@gmail.com \ --cc=alexandre.belloni@bootlin.com \ --cc=andriy.shevchenko@linux.intel.com \ --cc=andy.tang@nxp.com \ --cc=bcm-kernel-feedback-list@broadcom.com \ --cc=blarson@amd.com \ --cc=briannorris@chromium.org \ --cc=christophe.jaillet@wanadoo.fr \ --cc=claudiu.beznea@microchip.com \ --cc=daniel.machon@microchip.com \ --cc=doug@schmorgal.com \ --cc=eugen.hristev@collabora.com \ --cc=florian.fainelli@broadcom.com \ --cc=frank.li@vivo.com \ --cc=georgy.kruglov@yandex.ru \ --cc=hayashi.kunihiko@socionext.com \ --cc=jaswinder.singh@linaro.org \ --cc=jiapeng.chong@linux.alibaba.com \ --cc=kamal.dasu@broadcom.com \ --cc=lars.povlsen@microchip.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mmc@vger.kernel.org \ --cc=lizetao1@huawei.com \ --cc=michal.simek@amd.com \ --cc=patrice.chotard@foss.st.com \ --cc=rjui@broadcom.com \ --cc=sai.krishna.potthuri@amd.com \ --cc=sbranden@broadcom.com \ --cc=swati.agarwal@amd.com \ --cc=u.kleine-koenig@pengutronix.de \ --cc=ulf.hansson@linaro.org \ --cc=ye.xingchen@zte.com.cn \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.