linux-samsung-soc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/87] spi: Convert to platform remove callback returning void
@ 2023-03-03 17:19 Uwe Kleine-König
  2023-03-03 17:20 ` [PATCH 62/87] spi: s3c64xx: " Uwe Kleine-König
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Uwe Kleine-König @ 2023-03-03 17:19 UTC (permalink / raw)
  To: Mark Brown, Chin-Ting Kuo, Cédric Le Goater, Joel Stanley,
	Radu Pirea, Nicolas Ferre, Alexandre Belloni, Claudiu Beznea,
	Tudor Ambarus, Florian Fainelli, Ray Jui, Scott Branden,
	William Zhang, Kursad Oney, Jonas Gorski, Anand Gore,
	Rafał Miłecki, Kamal Dasu, Serge Semin,
	Vladimir Oltean, Han Xu, Andy Gross, Bjorn Andersson, Jay Fang,
	Neil Armstrong, Kevin Hilman, Conor Dooley, Daire McNamara,
	Matthias Brugger, Shawn Guo, Sascha Hauer, Avi Fishman,
	Tomer Maimon, Tali Perry, Haibo Chen, Daniel Mack,
	Haojian Zhuang, Robert Jarzmik, Heiko Stuebner,
	Krzysztof Kozlowski, Andi Shyti, Palmer Dabbelt, Paul Walmsley,
	Orson Zhai, Baolin Wang, Chunyan Zhang, Maxime Coquelin,
	Alexandre Torgue, Alain Volmat, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland, Li-hao Kuo, Masahisa Kojima, Jassi Brar,
	Laxman Dewangan, Thierry Reding, Jonathan Hunter,
	Sowjanya Komatineni, Kunihiko Hayashi, Masami Hiramatsu,
	Michal Simek, Max Filippov
  Cc: linux-spi, Andrew Jeffery, linux-aspeed, openbmc,
	linux-arm-kernel, Broadcom internal kernel review list,
	linux-rpi-kernel, Konrad Dybcio, linux-arm-msm, Jerome Brunet,
	Martin Blumenstingl, linux-amlogic, linux-riscv,
	AngeloGioacchino Del Regno, linux-mediatek,
	Pengutronix Kernel Team, Fabio Estevam, NXP Linux Team,
	Patrick Venture, Nancy Yuen, Benjamin Fair, Yogesh Gaur,
	linux-rockchip, Alim Akhtar, linux-samsung-soc, linux-stm32,
	linux-sunxi, linux-tegra, linux-xtensa

Hello,

this patch series adapts the platform drivers below drivers/spi
to use the .remove_new() callback. Compared to the traditional .remove()
callback .remove_new() returns no value. This is a good thing because
the driver core doesn't (and cannot) cope for errors during remove. The
only effect of a non-zero return value in .remove() is that the driver
core emits a warning. The device is removed anyhow and an early return
from .remove() usually yields a resource leak.

By changing the remove callback to return void driver authors cannot
reasonably assume any more that there is some kind of cleanup later.

All drivers touched here returned zero unconditionally in their remove
callback, so they could all be converted trivially to .remove_new().

Note that this series depends on commit 5c5a7680e67b ("platform: Provide
a remove callback that returns no value") that is already in Linus' tree
but not yet included in a tagged version.

Best regards
Uwe

Uwe Kleine-König (87):
  spi: ar934x: Convert to platform remove callback returning void
  spi: armada-3700: Convert to platform remove callback returning void
  spi: aspeed-smc: Convert to platform remove callback returning void
  spi: at91-usart: Convert to platform remove callback returning void
  spi: ath79: Convert to platform remove callback returning void
  spi: atmel: Convert to platform remove callback returning void
  spi: au1550: Convert to platform remove callback returning void
  spi: axi-spi-engine: Convert to platform remove callback returning void
  spi: bcm2835: Convert to platform remove callback returning void
  spi: bcm2835aux: Convert to platform remove callback returning void
  spi: bcm63xx-hsspi: Convert to platform remove callback returning void
  spi: bcm63xx: Convert to platform remove callback returning void
  spi: bcmbca-hsspi: Convert to platform remove callback returning void
  spi: brcmstb-qspi: Convert to platform remove callback returning void
  spi: cadence-quadspi: Convert to platform remove callback returning void
  spi: cadence: Convert to platform remove callback returning void
  spi: cavium-octeon: Convert to platform remove callback returning void
  spi: coldfire-qspi: Convert to platform remove callback returning void
  spi: davinci: Convert to platform remove callback returning void
  spi: dln2: Convert to platform remove callback returning void
  spi: dw-bt1: Convert to platform remove callback returning void
  spi: dw-mmio: Convert to platform remove callback returning void
  spi: ep93xx: Convert to platform remove callback returning void
  spi: fsl-dspi: Convert to platform remove callback returning void
  spi: fsl-espi: Convert to platform remove callback returning void
  spi: fsl-lpspi: Convert to platform remove callback returning void
  spi: fsl-qspi: Convert to platform remove callback returning void
  spi: fsl-spi: Convert to platform remove callback returning void
  spi: geni-qcom: Convert to platform remove callback returning void
  spi: hisi-kunpeng: Convert to platform remove callback returning void
  spi: img-spfi: Convert to platform remove callback returning void
  spi: iproc-qspi: Convert to platform remove callback returning void
  spi: lantiq-ssc: Convert to platform remove callback returning void
  spi: meson-spicc: Convert to platform remove callback returning void
  spi: meson-spifc: Convert to platform remove callback returning void
  spi: microchip-core-qspi: Convert to platform remove callback returning void
  spi: microchip-core: Convert to platform remove callback returning void
  spi: mpc512x-psc: Convert to platform remove callback returning void
  spi: mpc52xx-psc: Convert to platform remove callback returning void
  spi: mpc52xx: Convert to platform remove callback returning void
  spi: mtk-nor: Convert to platform remove callback returning void
  spi: mtk-snfi: Convert to platform remove callback returning void
  spi: mxic: Convert to platform remove callback returning void
  spi: mxs: Convert to platform remove callback returning void
  spi: npcm-fiu: Convert to platform remove callback returning void
  spi: npcm-pspi: Convert to platform remove callback returning void
  spi: nxp-fspi: Convert to platform remove callback returning void
  spi: oc-tiny: Convert to platform remove callback returning void
  spi: omap-uwire: Convert to platform remove callback returning void
  spi: omap2-mcspi: Convert to platform remove callback returning void
  spi: orion: Convert to platform remove callback returning void
  spi: pic32-sqi: Convert to platform remove callback returning void
  spi: pic32: Convert to platform remove callback returning void
  spi: ppc4xx: Convert to platform remove callback returning void
  spi: pxa2xx: Convert to platform remove callback returning void
  spi: qcom-qspi: Convert to platform remove callback returning void
  spi: rb4xx: Convert to platform remove callback returning void
  spi: rockchip-sfc: Convert to platform remove callback returning void
  spi: rockchip: Convert to platform remove callback returning void
  spi: rpc-if: Convert to platform remove callback returning void
  spi: rspi: Convert to platform remove callback returning void
  spi: s3c64xx: Convert to platform remove callback returning void
  spi: sh-hspi: Convert to platform remove callback returning void
  spi: sh-msiof: Convert to platform remove callback returning void
  spi: sh-sci: Convert to platform remove callback returning void
  spi: sh: Convert to platform remove callback returning void
  spi: sifive: Convert to platform remove callback returning void
  spi: slave-mt27xx: Convert to platform remove callback returning void
  spi: sn-f-ospi: Convert to platform remove callback returning void
  spi: sprd-adi: Convert to platform remove callback returning void
  spi: st-ssc4: Convert to platform remove callback returning void
  spi: stm32-qspi: Convert to platform remove callback returning void
  spi: stm32: Convert to platform remove callback returning void
  spi: sun4i: Convert to platform remove callback returning void
  spi: sun6i: Convert to platform remove callback returning void
  spi: sunplus-sp7021: Convert to platform remove callback returning void
  spi: synquacer: Convert to platform remove callback returning void
  spi: tegra114: Convert to platform remove callback returning void
  spi: tegra20-sflash: Convert to platform remove callback returning void
  spi: tegra20-slink: Convert to platform remove callback returning void
  spi: tegra210-quad: Convert to platform remove callback returning void
  spi: topcliff-pch: Convert to platform remove callback returning void
  spi: uniphier: Convert to platform remove callback returning void
  spi: xilinx: Convert to platform remove callback returning void
  spi: xtensa-xtfpga: Convert to platform remove callback returning void
  spi: zynq-qspi: Convert to platform remove callback returning void
  spi: zynqmp-gqspi: Convert to platform remove callback returning void

 drivers/spi/spi-ar934x.c              |  6 ++----
 drivers/spi/spi-armada-3700.c         |  6 ++----
 drivers/spi/spi-aspeed-smc.c          |  5 ++---
 drivers/spi/spi-at91-usart.c          |  6 ++----
 drivers/spi/spi-ath79.c               |  6 ++----
 drivers/spi/spi-atmel.c               |  6 ++----
 drivers/spi/spi-au1550.c              |  5 ++---
 drivers/spi/spi-axi-spi-engine.c      |  6 ++----
 drivers/spi/spi-bcm2835.c             | 12 +++---------
 drivers/spi/spi-bcm2835aux.c          |  6 ++----
 drivers/spi/spi-bcm63xx-hsspi.c       |  6 ++----
 drivers/spi/spi-bcm63xx.c             |  6 ++----
 drivers/spi/spi-bcmbca-hsspi.c        |  6 ++----
 drivers/spi/spi-brcmstb-qspi.c        |  6 ++----
 drivers/spi/spi-cadence-quadspi.c     |  6 ++----
 drivers/spi/spi-cadence.c             |  6 ++----
 drivers/spi/spi-cavium-octeon.c       |  6 ++----
 drivers/spi/spi-coldfire-qspi.c       |  6 ++----
 drivers/spi/spi-davinci.c             |  5 ++---
 drivers/spi/spi-dln2.c                |  6 ++----
 drivers/spi/spi-dw-bt1.c              |  6 ++----
 drivers/spi/spi-dw-mmio.c             |  6 ++----
 drivers/spi/spi-ep93xx.c              |  6 ++----
 drivers/spi/spi-fsl-dspi.c            |  6 ++----
 drivers/spi/spi-fsl-espi.c            |  6 ++----
 drivers/spi/spi-fsl-lpspi.c           |  5 ++---
 drivers/spi/spi-fsl-qspi.c            |  6 ++----
 drivers/spi/spi-fsl-spi.c             | 11 ++++-------
 drivers/spi/spi-geni-qcom.c           |  5 ++---
 drivers/spi/spi-hisi-kunpeng.c        |  6 ++----
 drivers/spi/spi-img-spfi.c            |  6 ++----
 drivers/spi/spi-iproc-qspi.c          |  6 ++----
 drivers/spi/spi-lantiq-ssc.c          |  6 ++----
 drivers/spi/spi-meson-spicc.c         |  6 ++----
 drivers/spi/spi-meson-spifc.c         |  6 ++----
 drivers/spi/spi-microchip-core-qspi.c |  6 ++----
 drivers/spi/spi-microchip-core.c      |  6 ++----
 drivers/spi/spi-mpc512x-psc.c         | 22 ++++++++--------------
 drivers/spi/spi-mpc52xx-psc.c         |  6 ++----
 drivers/spi/spi-mpc52xx.c             |  6 ++----
 drivers/spi/spi-mtk-nor.c             |  6 ++----
 drivers/spi/spi-mtk-snfi.c            |  5 ++---
 drivers/spi/spi-mxic.c                |  6 ++----
 drivers/spi/spi-mxs.c                 |  6 ++----
 drivers/spi/spi-npcm-fiu.c            |  5 ++---
 drivers/spi/spi-npcm-pspi.c           |  6 ++----
 drivers/spi/spi-nxp-fspi.c            |  6 ++----
 drivers/spi/spi-oc-tiny.c             |  5 ++---
 drivers/spi/spi-omap-uwire.c          |  5 ++---
 drivers/spi/spi-omap2-mcspi.c         |  6 ++----
 drivers/spi/spi-orion.c               |  6 ++----
 drivers/spi/spi-pic32-sqi.c           |  6 ++----
 drivers/spi/spi-pic32.c               |  6 ++----
 drivers/spi/spi-ppc4xx.c              |  5 ++---
 drivers/spi/spi-pxa2xx.c              |  6 ++----
 drivers/spi/spi-qcom-qspi.c           |  6 ++----
 drivers/spi/spi-rb4xx.c               |  6 ++----
 drivers/spi/spi-rockchip-sfc.c        |  6 ++----
 drivers/spi/spi-rockchip.c            |  6 ++----
 drivers/spi/spi-rpc-if.c              |  6 ++----
 drivers/spi/spi-rspi.c                |  6 ++----
 drivers/spi/spi-s3c64xx.c             |  6 ++----
 drivers/spi/spi-sh-hspi.c             |  6 ++----
 drivers/spi/spi-sh-msiof.c            |  5 ++---
 drivers/spi/spi-sh-sci.c              |  5 ++---
 drivers/spi/spi-sh.c                  |  6 ++----
 drivers/spi/spi-sifive.c              |  6 ++----
 drivers/spi/spi-slave-mt27xx.c        |  6 ++----
 drivers/spi/spi-sn-f-ospi.c           |  6 ++----
 drivers/spi/spi-sprd-adi.c            |  5 ++---
 drivers/spi/spi-st-ssc4.c             |  6 ++----
 drivers/spi/spi-stm32-qspi.c          |  6 ++----
 drivers/spi/spi-stm32.c               |  6 ++----
 drivers/spi/spi-sun4i.c               |  6 ++----
 drivers/spi/spi-sun6i.c               |  5 ++---
 drivers/spi/spi-sunplus-sp7021.c      |  5 ++---
 drivers/spi/spi-synquacer.c           |  6 ++----
 drivers/spi/spi-tegra114.c            |  6 ++----
 drivers/spi/spi-tegra20-sflash.c      |  6 ++----
 drivers/spi/spi-tegra20-slink.c       |  5 ++---
 drivers/spi/spi-tegra210-quad.c       |  6 ++----
 drivers/spi/spi-topcliff-pch.c        |  6 ++----
 drivers/spi/spi-uniphier.c            |  6 ++----
 drivers/spi/spi-xilinx.c              |  6 ++----
 drivers/spi/spi-xtensa-xtfpga.c       |  6 ++----
 drivers/spi/spi-zynq-qspi.c           |  6 ++----
 drivers/spi/spi-zynqmp-gqspi.c        |  6 ++----
 87 files changed, 183 insertions(+), 350 deletions(-)

base-commit: 2eb29d59ddf02e39774abfb60b2030b0b7e27c1f
-- 
2.39.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 62/87] spi: s3c64xx: Convert to platform remove callback returning void
  2023-03-03 17:19 [PATCH 00/87] spi: Convert to platform remove callback returning void Uwe Kleine-König
@ 2023-03-03 17:20 ` Uwe Kleine-König
  2023-03-03 18:39 ` [PATCH 00/87] spi: " Uwe Kleine-König
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: Uwe Kleine-König @ 2023-03-03 17:20 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Andi Shyti, Mark Brown
  Cc: Alim Akhtar, linux-spi, linux-samsung-soc, linux-arm-kernel, kernel

The .remove() callback for a platform driver returns an int which makes
many driver authors wrongly assume it's possible to do error handling by
returning an error code. However the value returned is (mostly) ignored
and this typically results in resource leaks. To improve here there is a
quest to make the remove callback return void. In the first step of this
quest all drivers are converted to .remove_new() which already returns
void.

Trivially convert this driver from always returning zero in the remove
callback to the void returning variant.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
 drivers/spi/spi-s3c64xx.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c
index 71d324ec9a70..cc69f8ffdbdc 100644
--- a/drivers/spi/spi-s3c64xx.c
+++ b/drivers/spi/spi-s3c64xx.c
@@ -1286,7 +1286,7 @@ static int s3c64xx_spi_probe(struct platform_device *pdev)
 	return ret;
 }
 
-static int s3c64xx_spi_remove(struct platform_device *pdev)
+static void s3c64xx_spi_remove(struct platform_device *pdev)
 {
 	struct spi_master *master = platform_get_drvdata(pdev);
 	struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(master);
@@ -1309,8 +1309,6 @@ static int s3c64xx_spi_remove(struct platform_device *pdev)
 	pm_runtime_put_noidle(&pdev->dev);
 	pm_runtime_disable(&pdev->dev);
 	pm_runtime_set_suspended(&pdev->dev);
-
-	return 0;
 }
 
 #ifdef CONFIG_PM_SLEEP
@@ -1531,7 +1529,7 @@ static struct platform_driver s3c64xx_spi_driver = {
 		.of_match_table = of_match_ptr(s3c64xx_spi_dt_match),
 	},
 	.probe = s3c64xx_spi_probe,
-	.remove = s3c64xx_spi_remove,
+	.remove_new = s3c64xx_spi_remove,
 	.id_table = s3c64xx_spi_driver_ids,
 };
 MODULE_ALIAS("platform:s3c64xx-spi");
-- 
2.39.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 00/87] spi: Convert to platform remove callback returning void
  2023-03-03 17:19 [PATCH 00/87] spi: Convert to platform remove callback returning void Uwe Kleine-König
  2023-03-03 17:20 ` [PATCH 62/87] spi: s3c64xx: " Uwe Kleine-König
@ 2023-03-03 18:39 ` Uwe Kleine-König
  2023-03-07 16:47 ` Mark Brown
  2023-03-07 17:00 ` Mark Brown
  3 siblings, 0 replies; 6+ messages in thread
From: Uwe Kleine-König @ 2023-03-03 18:39 UTC (permalink / raw)
  To: Mark Brown, Chin-Ting Kuo, Cédric Le Goater, Joel Stanley,
	Radu Pirea, Nicolas Ferre, Alexandre Belloni, Claudiu Beznea,
	Tudor Ambarus, Florian Fainelli, Ray Jui, Scott Branden,
	William Zhang, Kursad Oney, Jonas Gorski, Anand Gore,
	Rafał Miłecki, Kamal Dasu, Serge Semin,
	Vladimir Oltean, Han Xu, Andy Gross, Bjorn Andersson, Jay Fang,
	Neil Armstrong, Kevin Hilman, Conor Dooley, Daire McNamara,
	Matthias Brugger, Shawn Guo, Sascha Hauer, Avi Fishman,
	Tomer Maimon, Tali Perry, Haibo Chen, Daniel Mack,
	Haojian Zhuang, Robert Jarzmik, Heiko Stuebner,
	Krzysztof Kozlowski, Andi Shyti, Palmer Dabbelt, Paul Walmsley,
	Orson Zhai, Baolin Wang, Chunyan Zhang, Maxime Coquelin,
	Alexandre Torgue, Alain Volmat, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland, Li-hao Kuo, Masahisa Kojima, Jassi Brar,
	Laxman Dewangan, Thierry Reding, Jonathan Hunter,
	Sowjanya Komatineni, Kunihiko Hayashi, Masami Hiramatsu,
	Michal Simek, Max Filippov
  Cc: linux-aspeed, Alim Akhtar, linux-riscv, Fabio Estevam,
	linux-stm32, Jerome Brunet, linux-samsung-soc, Benjamin Fair,
	linux-rockchip, openbmc, Nancy Yuen,
	Broadcom internal kernel review list, NXP Linux Team,
	linux-sunxi, linux-xtensa, Martin Blumenstingl, linux-arm-msm,
	linux-mediatek, linux-rpi-kernel, linux-tegra, linux-amlogic,
	linux-arm-kernel, AngeloGioacchino Del Regno, Andrew Jeffery,
	Patrick Venture, linux-spi, Konrad Dybcio, Yogesh Gaur,
	Pengutronix Kernel Team

[-- Attachment #1: Type: text/plain, Size: 1474 bytes --]

Hello,

On Fri, Mar 03, 2023 at 06:19:14PM +0100, Uwe Kleine-König wrote:
> this patch series adapts the platform drivers below drivers/spi
> to use the .remove_new() callback. Compared to the traditional .remove()
> callback .remove_new() returns no value. This is a good thing because
> the driver core doesn't (and cannot) cope for errors during remove. The
> only effect of a non-zero return value in .remove() is that the driver
> core emits a warning. The device is removed anyhow and an early return
> from .remove() usually yields a resource leak.
> 
> By changing the remove callback to return void driver authors cannot
> reasonably assume any more that there is some kind of cleanup later.
> 
> All drivers touched here returned zero unconditionally in their remove
> callback, so they could all be converted trivially to .remove_new().

One thing I failed to mention here (because my coccinelle patch to
detect that was suboptimal) is: There are 6 drivers---namely
atmel-quadspi.c, spi-imx.c, spi-mt65xx.c, spi-qup.c, spi-sprd.c, and
spi-ti-qspi.c---that might return a non-zero value in their remove
function. Note that this is exactly the problem that I target to rub out
with the effort to change .remove() to return void.

I'll address them separately.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | https://www.pengutronix.de/ |

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 00/87] spi: Convert to platform remove callback returning void
  2023-03-03 17:19 [PATCH 00/87] spi: Convert to platform remove callback returning void Uwe Kleine-König
  2023-03-03 17:20 ` [PATCH 62/87] spi: s3c64xx: " Uwe Kleine-König
  2023-03-03 18:39 ` [PATCH 00/87] spi: " Uwe Kleine-König
@ 2023-03-07 16:47 ` Mark Brown
  2023-03-07 17:00 ` Mark Brown
  3 siblings, 0 replies; 6+ messages in thread
From: Mark Brown @ 2023-03-07 16:47 UTC (permalink / raw)
  To: Chin-Ting Kuo, Cédric Le Goater, Joel Stanley, Radu Pirea,
	Nicolas Ferre, Alexandre Belloni, Claudiu Beznea, Tudor Ambarus,
	Florian Fainelli, Ray Jui, Scott Branden, William Zhang,
	Kursad Oney, Jonas Gorski, Anand Gore, Rafał Miłecki,
	Kamal Dasu, Serge Semin, Vladimir Oltean, Han Xu, Andy Gross,
	Bjorn Andersson, Jay Fang, Neil Armstrong, Kevin Hilman,
	Conor Dooley, Daire McNamara, Matthias Brugger, Shawn Guo,
	Sascha Hauer, Avi Fishman, Tomer Maimon, Tali Perry, Haibo Chen,
	Daniel Mack, Haojian Zhuang, Robert Jarzmik, Heiko Stuebner,
	Krzysztof Kozlowski, Andi Shyti, Palmer Dabbelt, Paul Walmsley,
	Orson Zhai, Baolin Wang, Chunyan Zhang, Maxime Coquelin,
	Alexandre Torgue, Alain Volmat, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland, Li-hao Kuo, Masahisa Kojima, Jassi Brar,
	Laxman Dewangan, Thierry Reding, Jonathan Hunter,
	Sowjanya Komatineni, Kunihiko Hayashi, Masami Hiramatsu,
	Michal Simek, Max Filippov, Uwe Kleine-König
  Cc: linux-spi, Andrew Jeffery, linux-aspeed, openbmc,
	linux-arm-kernel, Broadcom internal kernel review list,
	linux-rpi-kernel, Konrad Dybcio, linux-arm-msm, Jerome Brunet,
	Martin Blumenstingl, linux-amlogic, linux-riscv,
	AngeloGioacchino Del Regno, linux-mediatek,
	Pengutronix Kernel Team, Fabio Estevam, NXP Linux Team,
	Patrick Venture, Nancy Yuen, Benjamin Fair, Yogesh Gaur,
	linux-rockchip, Alim Akhtar, linux-samsung-soc, linux-stm32,
	linux-sunxi, linux-tegra, linux-xtensa

On Fri, 03 Mar 2023 18:19:14 +0100, Uwe Kleine-König wrote:
> this patch series adapts the platform drivers below drivers/spi
> to use the .remove_new() callback. Compared to the traditional .remove()
> callback .remove_new() returns no value. This is a good thing because
> the driver core doesn't (and cannot) cope for errors during remove. The
> only effect of a non-zero return value in .remove() is that the driver
> core emits a warning. The device is removed anyhow and an early return
> from .remove() usually yields a resource leak.
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next

Thanks!

[01/87] spi: ar934x: Convert to platform remove callback returning void
        commit: 24644ae031e71491e729d415d88c3cea98288c39
[02/87] spi: armada-3700: Convert to platform remove callback returning void
        commit: 9a49f22852201e6ba8aafd359e9fc13d32717748
[03/87] spi: aspeed-smc: Convert to platform remove callback returning void
        commit: ebf9a50d13a4406b9831f9e2b35f786a3bb18a3e
[04/87] spi: at91-usart: Convert to platform remove callback returning void
        commit: b9c5544877b03b7d5b3c4c97e9133d0bb695c9cb
[05/87] spi: ath79: Convert to platform remove callback returning void
        commit: 48c42f970b7d0cf034721fe7faf59e5698ad7382
[06/87] spi: atmel: Convert to platform remove callback returning void
        commit: 7412afb044178ac0e6facc5f12b5ab220e06c34c
[07/87] spi: au1550: Convert to platform remove callback returning void
        commit: 02a52038fe42bc4dcb477935d60fc779f9238bda
[08/87] spi: axi-spi-engine: Convert to platform remove callback returning void
        commit: fc87abbef23413943457459e2c473ce607b4dd24
[09/87] spi: bcm2835: Convert to platform remove callback returning void
        (no commit info)
[10/87] spi: bcm2835aux: Convert to platform remove callback returning void
        commit: f3a1c6a016193728a62929e0588e5f640cfe7c34
[11/87] spi: bcm63xx-hsspi: Convert to platform remove callback returning void
        commit: 04cd5f3fad161c27fe101ad7906ddd9085c2b4be
[12/87] spi: bcm63xx: Convert to platform remove callback returning void
        commit: 8c26432e9b5fd04aa59010941051d33fa4e289ba
[13/87] spi: bcmbca-hsspi: Convert to platform remove callback returning void
        commit: f54f9b00c62fb3ee280cd3ad0e4e483c9d401107
[14/87] spi: brcmstb-qspi: Convert to platform remove callback returning void
        commit: c4c34d5ded66204db90acaeaff5af1277ea0c21b
[15/87] spi: cadence-quadspi: Convert to platform remove callback returning void
        commit: 6fe41879e93313afdb18104d20d30783600591fe
[16/87] spi: cadence: Convert to platform remove callback returning void
        commit: 427353015333a1e0d6f61785a2f134c4c382f11f
[17/87] spi: cavium-octeon: Convert to platform remove callback returning void
        commit: f74d4b8b97e39b31ad88f6f679180c0800d57a0c
[18/87] spi: coldfire-qspi: Convert to platform remove callback returning void
        commit: 3f025840b9e9313dbd6479ca9117b1eb827d689f
[19/87] spi: davinci: Convert to platform remove callback returning void
        commit: d1a9fa8a3ece62c62aa8aaa573d8ceea8d8fae69
[20/87] spi: dln2: Convert to platform remove callback returning void
        commit: f8b81e0528b67a86172315aa0b516a5050e89c5d
[21/87] spi: dw-bt1: Convert to platform remove callback returning void
        commit: 42f8295cd7ea680f0e9a5a4d864186736f9f9b24
[22/87] spi: dw-mmio: Convert to platform remove callback returning void
        commit: f74abea25ab2809958c7ce8e29e710c66a490b64
[23/87] spi: ep93xx: Convert to platform remove callback returning void
        commit: bb2714d140913de16bcd59f068b1d7f6dafef964
[24/87] spi: fsl-dspi: Convert to platform remove callback returning void
        commit: 1bcab55f13e1c4d03c20a3d7ea37c4228e7bd41e
[25/87] spi: fsl-espi: Convert to platform remove callback returning void
        commit: de60b184d8dd274f36c7c93f3cefad3904420d00
[26/87] spi: fsl-lpspi: Convert to platform remove callback returning void
        commit: edd49c898751838009940fe38a7ad4c1d23224df
[27/87] spi: fsl-qspi: Convert to platform remove callback returning void
        commit: 94f445096932efc48cac128c8be4e34845a702d6
[28/87] spi: fsl-spi: Convert to platform remove callback returning void
        commit: fc4935a0f7ab1521a5f0500a9894d97558067985
[29/87] spi: geni-qcom: Convert to platform remove callback returning void
        commit: d0b52f6539e008a0d42bf673486bd21b7d2dc191
[30/87] spi: hisi-kunpeng: Convert to platform remove callback returning void
        commit: e77ccdfe0145211b5a20ab62950894aea881bbb3
[31/87] spi: img-spfi: Convert to platform remove callback returning void
        commit: 6b854e44b66ee1b3798eff87f1af8738edeccbde
[32/87] spi: iproc-qspi: Convert to platform remove callback returning void
        commit: a57b08c231ae4240c01b0623053a54cb7ec23194
[33/87] spi: lantiq-ssc: Convert to platform remove callback returning void
        commit: 1f85ed7d4757a24ba5b92fdf2a639002bcc78e95
[34/87] spi: meson-spicc: Convert to platform remove callback returning void
        commit: 8e8355d14187f6a65d9168c7dcfbb916f7fef9a7
[35/87] spi: meson-spifc: Convert to platform remove callback returning void
        commit: a4f5ad1196daf1f6f3329082c95d19adf05bd423
[36/87] spi: microchip-core-qspi: Convert to platform remove callback returning void
        commit: e4cf312d6db2941b8267de6e094312afc1b523ee
[37/87] spi: microchip-core: Convert to platform remove callback returning void
        commit: beb6ed0f8cfa844556ac1f6d494cc9b4f6cb1994
[38/87] spi: mpc512x-psc: Convert to platform remove callback returning void
        (no commit info)
[39/87] spi: mpc52xx-psc: Convert to platform remove callback returning void
        (no commit info)
[40/87] spi: mpc52xx: Convert to platform remove callback returning void
        commit: 3fa689a85df4664a62ea931be31e5276cde1e8fe
[41/87] spi: mtk-nor: Convert to platform remove callback returning void
        commit: b558435810cc68755527e55ccaba6c35c340900a
[42/87] spi: mtk-snfi: Convert to platform remove callback returning void
        commit: 976a689122df6c7d8d826ad36578c0291a1dc214
[43/87] spi: mxic: Convert to platform remove callback returning void
        commit: c64e92dfa0bd1256fc3f9f1a32a5c844e49d8681
[44/87] spi: mxs: Convert to platform remove callback returning void
        commit: a760db097cfdce093c0483343d9f831a33702ad9
[45/87] spi: npcm-fiu: Convert to platform remove callback returning void
        commit: 5e4830adb09a3577eb80c0b8c7611d0c0de02ab8
[46/87] spi: npcm-pspi: Convert to platform remove callback returning void
        commit: 445534b5f25ab8394082b47b50d973676ce54ee4
[47/87] spi: nxp-fspi: Convert to platform remove callback returning void
        commit: 2dd82e32c20b57ad693287b546f775c933670e43
[48/87] spi: oc-tiny: Convert to platform remove callback returning void
        commit: bdffa602d741126896de50307126803ffab7a3de
[49/87] spi: omap-uwire: Convert to platform remove callback returning void
        commit: c43bdb3a1154facd844f6a753b6a30fecaadc16e
[50/87] spi: omap2-mcspi: Convert to platform remove callback returning void
        commit: 0a4192a52082118d0da3bdd34145ebabfde40d93
[51/87] spi: orion: Convert to platform remove callback returning void
        commit: 2e0de1efb233ab8b1a488a6663d31edab9ef0f4f
[52/87] spi: pic32-sqi: Convert to platform remove callback returning void
        commit: 503425ed9c50096a0e0c61f38bc39752f3696266
[53/87] spi: pic32: Convert to platform remove callback returning void
        commit: 01c30f51266acf2595cc06885071e752080ca052
[54/87] spi: ppc4xx: Convert to platform remove callback returning void
        commit: 224d9437eb2967b67ae67c4743bb589f86668e8d
[55/87] spi: pxa2xx: Convert to platform remove callback returning void
        commit: 31f6d96d6807cc1dde70cda36cb45ec61d41fe6b
[56/87] spi: qcom-qspi: Convert to platform remove callback returning void
        commit: e0c30566e5333247bbfdad61f98dccf989ff54e1
[57/87] spi: rb4xx: Convert to platform remove callback returning void
        commit: a006c353a115d429c114e9bc26ab0f6a40d3de23
[58/87] spi: rockchip-sfc: Convert to platform remove callback returning void
        commit: e5fcb34d7934aceb39c7d68d30fbf53d93f1eda6
[59/87] spi: rockchip: Convert to platform remove callback returning void
        commit: 5ff5e676201deca9bcc3c9474842b2f4456f24b8
[60/87] spi: rpc-if: Convert to platform remove callback returning void
        commit: c42ee93aded47fe8cf3615df2e20704c720b7433
[61/87] spi: rspi: Convert to platform remove callback returning void
        commit: 72ec0e8f89a1536e4594606d60a946636ee7d94b
[62/87] spi: s3c64xx: Convert to platform remove callback returning void
        commit: 2b7981a65527a51706b895e170e07b2eaeae69c5
[63/87] spi: sh-hspi: Convert to platform remove callback returning void
        commit: f3a762b613598d198b5ebd5c1fcf6a902f8a9d9f
[64/87] spi: sh-msiof: Convert to platform remove callback returning void
        commit: 74af1328a694d3a2a176935c93db8ad406aacb81
[65/87] spi: sh-sci: Convert to platform remove callback returning void
        commit: 80dc51da19cebaf85b03d910cbf4e56af165b0ff
[66/87] spi: sh: Convert to platform remove callback returning void
        commit: dee2e25572e42faa581b6c86cd1252546680362a
[67/87] spi: sifive: Convert to platform remove callback returning void
        commit: fd8998c4633737310c8165c6c3fc81197380d1d9
[68/87] spi: slave-mt27xx: Convert to platform remove callback returning void
        commit: 1037cfa33cedf733a751c8708d174ba11708ce4a
[69/87] spi: sn-f-ospi: Convert to platform remove callback returning void
        commit: 462414a3d0613cf71ecb3c4fb183698d2441bbb9
[70/87] spi: sprd-adi: Convert to platform remove callback returning void
        commit: f7f785f125d03360d3766d96d04cf08b8472ce8f
[71/87] spi: st-ssc4: Convert to platform remove callback returning void
        commit: 2dd42da0b479ffb4604c81b7c1b30aa9b5f0a4a9
[72/87] spi: stm32-qspi: Convert to platform remove callback returning void
        commit: a19ca20a0e4eccacf44119fccc86c2f3e5edb3f0
[73/87] spi: stm32: Convert to platform remove callback returning void
        commit: 3e11e4f336f603d3cddcc89f94e518391b6a08a5
[74/87] spi: sun4i: Convert to platform remove callback returning void
        commit: b7b949458ac391963e56ae354b73fee63016dcee
[75/87] spi: sun6i: Convert to platform remove callback returning void
        commit: edf69ab9c777abf9ab30c6a5a215d16a094bae87
[76/87] spi: sunplus-sp7021: Convert to platform remove callback returning void
        commit: 18bb7328171203f4ade267bcd7cf5b073a1a9405
[77/87] spi: synquacer: Convert to platform remove callback returning void
        commit: 1972cdc47df737f5b90ac2132080004f5e413e91
[78/87] spi: tegra114: Convert to platform remove callback returning void
        commit: bff9694e97790c7f8c9ff1e979b2af9cb6e69adc
[79/87] spi: tegra20-sflash: Convert to platform remove callback returning void
        commit: 8394b7186cf27be24a75516212d5e76d263397d7
[80/87] spi: tegra20-slink: Convert to platform remove callback returning void
        commit: 7f47f7a2ee28938a7ac104e187ec0bd81b0aecf7
[81/87] spi: tegra210-quad: Convert to platform remove callback returning void
        commit: 001ea026c07dad216e1f6fbb8b1619e1d31c8799
[82/87] spi: topcliff-pch: Convert to platform remove callback returning void
        commit: b082694f18bdff807b42a3bccc62c3a524168f23
[83/87] spi: uniphier: Convert to platform remove callback returning void
        commit: 1b13d196d2813dadc1947940dbd4aaad6ae21c02
[84/87] spi: xilinx: Convert to platform remove callback returning void
        commit: 3b1d7e1193315fc96f5e28d08bc3a7e3594628e5
[85/87] spi: xtensa-xtfpga: Convert to platform remove callback returning void
        commit: 795b3ac702716eca422494766cc0136b4a0554ce
[86/87] spi: zynq-qspi: Convert to platform remove callback returning void
        commit: ae9084b6458d34ebf3e377d0407ebe513e41ac71
[87/87] spi: zynqmp-gqspi: Convert to platform remove callback returning void
        commit: 3ffefa1d9c9eba60c7f8b4a9ce2df3e4c7f4a88e

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 00/87] spi: Convert to platform remove callback returning void
  2023-03-03 17:19 [PATCH 00/87] spi: Convert to platform remove callback returning void Uwe Kleine-König
                   ` (2 preceding siblings ...)
  2023-03-07 16:47 ` Mark Brown
@ 2023-03-07 17:00 ` Mark Brown
  2023-03-07 17:46   ` Uwe Kleine-König
  3 siblings, 1 reply; 6+ messages in thread
From: Mark Brown @ 2023-03-07 17:00 UTC (permalink / raw)
  To: Uwe Kleine-König
  Cc: Chin-Ting Kuo, Cédric Le Goater, Joel Stanley, Radu Pirea,
	Nicolas Ferre, Alexandre Belloni, Claudiu Beznea, Tudor Ambarus,
	Florian Fainelli, Ray Jui, Scott Branden, William Zhang,
	Kursad Oney, Jonas Gorski, Anand Gore, Rafał Miłecki,
	Kamal Dasu, Serge Semin, Vladimir Oltean, Han Xu, Andy Gross,
	Bjorn Andersson, Jay Fang, Neil Armstrong, Kevin Hilman,
	Conor Dooley, Daire McNamara, Matthias Brugger, Shawn Guo,
	Sascha Hauer, Avi Fishman, Tomer Maimon, Tali Perry, Haibo Chen,
	Daniel Mack, Haojian Zhuang, Robert Jarzmik, Heiko Stuebner,
	Krzysztof Kozlowski, Andi Shyti, Palmer Dabbelt, Paul Walmsley,
	Orson Zhai, Baolin Wang, Chunyan Zhang, Maxime Coquelin,
	Alexandre Torgue, Alain Volmat, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland, Li-hao Kuo, Masahisa Kojima, Jassi Brar,
	Laxman Dewangan, Thierry Reding, Jonathan Hunter,
	Sowjanya Komatineni, Kunihiko Hayashi, Masami Hiramatsu,
	Michal Simek, Max Filippov, linux-spi, Andrew Jeffery,
	linux-aspeed, openbmc, linux-arm-kernel,
	Broadcom internal kernel review list, linux-rpi-kernel,
	Konrad Dybcio, linux-arm-msm, Jerome Brunet, Martin Blumenstingl,
	linux-amlogic, linux-riscv, AngeloGioacchino Del Regno,
	linux-mediatek, Pengutronix Kernel Team, Fabio Estevam,
	NXP Linux Team, Patrick Venture, Nancy Yuen, Benjamin Fair,
	Yogesh Gaur, linux-rockchip, Alim Akhtar, linux-samsung-soc,
	linux-stm32, linux-sunxi, linux-tegra, linux-xtensa

[-- Attachment #1: Type: text/plain, Size: 441 bytes --]

On Fri, Mar 03, 2023 at 06:19:14PM +0100, Uwe Kleine-König wrote:

>   spi: mpc512x-psc: Convert to platform remove callback returning void
>   spi: mpc52xx-psc: Convert to platform remove callback returning void

As well as the Raspberry Pi patch dropped due to build failures I also
dropped these two as they conflicted with Rob's refactoring of that
driver, nothing especially complex but since there's stuff to resend
anyway...

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 00/87] spi: Convert to platform remove callback returning void
  2023-03-07 17:00 ` Mark Brown
@ 2023-03-07 17:46   ` Uwe Kleine-König
  0 siblings, 0 replies; 6+ messages in thread
From: Uwe Kleine-König @ 2023-03-07 17:46 UTC (permalink / raw)
  To: Mark Brown
  Cc: Kursad Oney, Tomer Maimon, Conor Dooley, Alim Akhtar,
	Rafał Miłecki, linux-stm32, Heiko Stuebner,
	linux-samsung-soc, Samuel Holland, Kevin Hilman, Michal Simek,
	Haibo Chen, Tudor Ambarus, NXP Linux Team, linux-sunxi,
	Anand Gore, Sascha Hauer, Scott Branden, Andrew Jeffery,
	linux-spi, Yogesh Gaur, Sowjanya Komatineni, Masami Hiramatsu,
	Pengutronix Kernel Team, Vladimir Oltean, Claudiu Beznea,
	Alexandre Belloni, Kunihiko Hayashi, Max Filippov,
	Laxman Dewangan, Jonas Gorski, Chunyan Zhang, Jonathan Hunter,
	linux-rockchip, Alain Volmat, Jerome Brunet, linux-xtensa,
	Andi Shyti, Martin Blumenstingl, linux-arm-msm, Radu Pirea,
	Jay Fang, Haojian Zhuang, Jassi Brar, Cédric Le Goater,
	linux-amlogic, linux-arm-kernel, Neil Armstrong, Maxime Coquelin,
	linux-rpi-kernel, linux-tegra, Masahisa Kojima, Fabio Estevam,
	linux-aspeed, Florian Fainelli, Benjamin Fair, Daire McNamara,
	Jernej Skrabec, Nancy Yuen, Chen-Yu Tsai,
	Broadcom internal kernel review list, Joel Stanley, Orson Zhai,
	William Zhang, Ray Jui, Baolin Wang, Li-hao Kuo, Avi Fishman,
	Konrad Dybcio, Thierry Reding, Shawn Guo, Alexandre Torgue,
	Tali Perry, linux-riscv, Robert Jarzmik, Kamal Dasu,
	Chin-Ting Kuo, Andy Gross, linux-mediatek, Paul Walmsley,
	Matthias Brugger, Han Xu, AngeloGioacchino Del Regno,
	Patrick Venture, Bjorn Andersson, Nicolas Ferre, Serge Semin,
	Krzysztof Kozlowski, Palmer Dabbelt, openbmc, Daniel Mack

[-- Attachment #1: Type: text/plain, Size: 991 bytes --]

Hello Mark,

On Tue, Mar 07, 2023 at 05:00:47PM +0000, Mark Brown wrote:
> On Fri, Mar 03, 2023 at 06:19:14PM +0100, Uwe Kleine-König wrote:
> 
> >   spi: mpc512x-psc: Convert to platform remove callback returning void
> >   spi: mpc52xx-psc: Convert to platform remove callback returning void
> 
> As well as the Raspberry Pi patch dropped due to build failures I also
> dropped these two as they conflicted with Rob's refactoring of that
> driver, nothing especially complex but since there's stuff to resend
> anyway...

Fine for me. Given that my queue of patches to convert the remove
callbacks is quite big, there is no pressure from my side to get these
all in. 84 from 87 is great already, I'll care about the remaining 3
patches (and the few drivers that don't return 0 in .remove()) later.

Thanks
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | https://www.pengutronix.de/ |

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-03-07 17:53 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-03 17:19 [PATCH 00/87] spi: Convert to platform remove callback returning void Uwe Kleine-König
2023-03-03 17:20 ` [PATCH 62/87] spi: s3c64xx: " Uwe Kleine-König
2023-03-03 18:39 ` [PATCH 00/87] spi: " Uwe Kleine-König
2023-03-07 16:47 ` Mark Brown
2023-03-07 17:00 ` Mark Brown
2023-03-07 17:46   ` Uwe Kleine-König

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).