Patch "regulator: rk808: fix asynchronous probing" has been added to the 6.4-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    regulator: rk808: fix asynchronous probing

to the 6.4-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     regulator-rk808-fix-asynchronous-probing.patch
and it can be found in the queue-6.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 3d640bf6561270d9adee39d1368bac800456f678
Author: Sebastian Reichel <sebastian.reichel@xxxxxxxxxxxxx>
Date:   Thu May 4 19:36:15 2023 +0200

    regulator: rk808: fix asynchronous probing
    
    [ Upstream commit 1b9e86d445a0f5c6d8dcbaf11508cb5dfb5848a8 ]
    
    If the probe routine fails with -EPROBE_DEFER after taking over the
    OF node from its parent driver, reprobing triggers pinctrl_bind_pins()
    and that will fail. Fix this by setting of_node_reused, so that the
    device does not try to setup pin muxing.
    
    For me this always happens once the driver is marked to prefer async
    probing and never happens without that flag.
    
    Fixes: 259b93b21a9f ("regulator: Set PROBE_PREFER_ASYNCHRONOUS for drivers that existed in 4.14")
    Signed-off-by: Sebastian Reichel <sebastian.reichel@xxxxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20230504173618.142075-12-sebastian.reichel@xxxxxxxxxxxxx
    Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/regulator/rk808-regulator.c b/drivers/regulator/rk808-regulator.c
index 3637e81654a8e..80ba782d89239 100644
--- a/drivers/regulator/rk808-regulator.c
+++ b/drivers/regulator/rk808-regulator.c
@@ -1336,6 +1336,7 @@ static int rk808_regulator_probe(struct platform_device *pdev)
 
 	config.dev = &pdev->dev;
 	config.dev->of_node = pdev->dev.parent->of_node;
+	config.dev->of_node_reused = true;
 	config.driver_data = pdata;
 	config.regmap = regmap;
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux