The patch below does not apply to the 6.1-stable tree. If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to stable@vger.kernel.org.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.1.y git checkout FETCH_HEAD git cherry-pick -x 374de39d38f97b0e58cfee88da590b2d056ccf7f # <resolve conflicts, build, test, etc.> git commit -s git send-email --to 'stable@vger.kernel.org' --in-reply-to '2023112258-fancied-capsize-64cb@gregkh' --subject-prefix 'PATCH 6.1.y' HEAD^..
Possible dependencies:
374de39d38f9 ("pmdomain: imx: Make imx pgc power domain also set the fwnode")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 374de39d38f97b0e58cfee88da590b2d056ccf7f Mon Sep 17 00:00:00 2001 From: Pengfei Li pengfei.li_1@nxp.com Date: Sat, 21 Oct 2023 02:59:49 +0800 Subject: [PATCH] pmdomain: imx: Make imx pgc power domain also set the fwnode
Currently, The imx pgc power domain doesn't set the fwnode pointer, which results in supply regulator device can't get consumer imx pgc power domain device from fwnode when creating a link.
This causes the driver core to instead try to create a link between the parent gpc device of imx pgc power domain device and supply regulator device. However, at this point, the gpc device has already been bound, and the link creation will fail. So adding the fwnode pointer to the imx pgc power domain device will fix this issue.
Signed-off-by: Pengfei Li pengfei.li_1@nxp.com Tested-by: Emil Kronborg emil.kronborg@protonmail.com Fixes: 3fb16866b51d ("driver core: fw_devlink: Make cycle detection more robust") Cc: stable@vger.kernel.org Link: https://lore.kernel.org/r/20231020185949.537083-1-pengfei.li_1@nxp.com Signed-off-by: Ulf Hansson ulf.hansson@linaro.org
diff --git a/drivers/pmdomain/imx/gpc.c b/drivers/pmdomain/imx/gpc.c index 90a8b2c0676f..419ed15cc10c 100644 --- a/drivers/pmdomain/imx/gpc.c +++ b/drivers/pmdomain/imx/gpc.c @@ -498,6 +498,7 @@ static int imx_gpc_probe(struct platform_device *pdev)
pd_pdev->dev.parent = &pdev->dev; pd_pdev->dev.of_node = np; + pd_pdev->dev.fwnode = of_fwnode_handle(np);
ret = platform_device_add(pd_pdev); if (ret) {