From: Sasha Levin Date: Mon, 7 Oct 2024 20:39:46 +0000 (-0400) Subject: Drop driver-core-platform-change-logic-implementing-platf.patch X-Git-Tag: v6.6.55~51 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=221582bfd7fc7bc5ada48ac5b0ab66cf64ed2166;p=thirdparty%2Fkernel%2Fstable-queue.git Drop driver-core-platform-change-logic-implementing-platf.patch Signed-off-by: Sasha Levin --- diff --git a/queue-5.10/driver-core-platform-change-logic-implementing-platf.patch b/queue-5.10/driver-core-platform-change-logic-implementing-platf.patch deleted file mode 100644 index ca0402c345d..00000000000 --- a/queue-5.10/driver-core-platform-change-logic-implementing-platf.patch +++ /dev/null @@ -1,83 +0,0 @@ -From a891de5fc808516a5b5ca246efe145a32a6ae7e1 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Thu, 19 Nov 2020 13:46:10 +0100 -Subject: driver core: platform: change logic implementing - platform_driver_probe -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -From: Uwe Kleine-König - -[ Upstream commit 16085668eacdc56c46652d0f3bfef81ecace57de ] - -Instead of overwriting the core driver's probe function handle probing -devices for drivers loaded by platform_driver_probe() in the platform -driver probe function. - -The intended goal is to not have to change the probe function to -simplify converting the platform bus to use bus functions. - -Signed-off-by: Uwe Kleine-König -Link: https://lore.kernel.org/r/20201119124611.2573057-2-u.kleine-koenig@pengutronix.de -Signed-off-by: Greg Kroah-Hartman -Stable-dep-of: cfd67903977b ("PCI: xilinx-nwl: Clean up clock on probe failure/removal") -Signed-off-by: Sasha Levin ---- - drivers/base/platform.c | 18 +++++++++++++++--- - 1 file changed, 15 insertions(+), 3 deletions(-) - -diff --git a/drivers/base/platform.c b/drivers/base/platform.c -index fa023cf80dc48..16426eb934632 100644 ---- a/drivers/base/platform.c -+++ b/drivers/base/platform.c -@@ -743,12 +743,25 @@ struct platform_device *platform_device_register_full( - } - EXPORT_SYMBOL_GPL(platform_device_register_full); - -+static int platform_probe_fail(struct platform_device *pdev); -+ - static int platform_drv_probe(struct device *_dev) - { - struct platform_driver *drv = to_platform_driver(_dev->driver); - struct platform_device *dev = to_platform_device(_dev); - int ret; - -+ /* -+ * A driver registered using platform_driver_probe() cannot be bound -+ * again later because the probe function usually lives in __init code -+ * and so is gone. For these drivers .probe is set to -+ * platform_probe_fail in __platform_driver_probe(). Don't even -+ * prepare clocks and PM domains for these to match the traditional -+ * behaviour. -+ */ -+ if (unlikely(drv->probe == platform_probe_fail)) -+ return -ENXIO; -+ - ret = of_clk_set_defaults(_dev->of_node, false); - if (ret < 0) - return ret; -@@ -822,7 +835,7 @@ void platform_driver_unregister(struct platform_driver *drv) - } - EXPORT_SYMBOL_GPL(platform_driver_unregister); - --static int platform_drv_probe_fail(struct device *_dev) -+static int platform_probe_fail(struct platform_device *pdev) - { - return -ENXIO; - } -@@ -887,10 +900,9 @@ int __init_or_module __platform_driver_probe(struct platform_driver *drv, - * new devices fail. - */ - spin_lock(&drv->driver.bus->p->klist_drivers.k_lock); -- drv->probe = NULL; -+ drv->probe = platform_probe_fail; - if (code == 0 && list_empty(&drv->driver.p->klist_devices.k_list)) - retval = -ENODEV; -- drv->driver.probe = platform_drv_probe_fail; - spin_unlock(&drv->driver.bus->p->klist_drivers.k_lock); - - if (code != retval) --- -2.43.0 - diff --git a/queue-5.10/series b/queue-5.10/series index 045ec4b4d99..0e151fc3865 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -165,7 +165,6 @@ drivers-media-dvb-frontends-rtl2830-fix-an-out-of-bo.patch pci-keystone-fix-if-statement-expression-in-ks_pcie_.patch pci-xilinx-nwl-fix-register-misspelling.patch driver-core-platform-reorder-functions.patch -driver-core-platform-change-logic-implementing-platf.patch driver-core-platform-use-bus_type-functions.patch driver-core-platform-emit-a-warning-if-a-remove-call.patch platform-provide-a-remove-callback-that-returns-no-v.patch