[PATCH RFC] pmdomain: imx: reject a missing bus power domain

Frank Li Frank.li at oss.nxp.com
Fri Sep 11 08:01:03 PDT 2026


On Fri, Sep 11, 2026 at 02:09:29PM +0800, Slavin Liu wrote:

Please remove RFC for this kind fix patches.

>
> The named-domain attach API may return NULL for an absent name.
> Treat that as -ENODEV before publishing bus_power_dev to later unwind
> paths, without changing the handling of existing error pointers.
>
> Detected by static analysis and reviewed with AI-assisted source auditing.
>
> Fixes: 2684ac05a8c4 ("soc: imx: add i.MX8M blk-ctrl driver")
> Fixes: 556f5cf9568a ("soc: imx: add i.MX8MP HSIO blk-ctrl")
> Assisted-by: LLM
> Signed-off-by: Slavin Liu <bolin.liu at seu.edu.cn>
> ---
>  drivers/pmdomain/imx/imx8m-blk-ctrl.c  | 2 ++
>  drivers/pmdomain/imx/imx8mp-blk-ctrl.c | 2 ++
>  2 files changed, 4 insertions(+)
>
> diff --git a/drivers/pmdomain/imx/imx8m-blk-ctrl.c b/drivers/pmdomain/imx/imx8m-blk-ctrl.c
> index 479789009c7f..9653a8ac9a6e 100644
> --- a/drivers/pmdomain/imx/imx8m-blk-ctrl.c
> +++ b/drivers/pmdomain/imx/imx8m-blk-ctrl.c
> @@ -228,6 +228,8 @@ static int imx8m_blk_ctrl_probe(struct platform_device *pdev)
>                 return -ENOMEM;
>
>         bc->bus_power_dev = dev_pm_domain_attach_by_name(dev, "bus");
> +       if (!bc->bus_power_dev)
> +               return dev_err_probe(dev, -ENODEV, "missing bus power domain\n");
>         if (IS_ERR(bc->bus_power_dev)) {
>                 if (PTR_ERR(bc->bus_power_dev) == -ENODEV)
>                         return dev_err_probe(dev, -EPROBE_DEFER,
> diff --git a/drivers/pmdomain/imx/imx8mp-blk-ctrl.c b/drivers/pmdomain/imx/imx8mp-blk-ctrl.c
> index d255c20f58e2..e952b4ee75c0 100644
> --- a/drivers/pmdomain/imx/imx8mp-blk-ctrl.c
> +++ b/drivers/pmdomain/imx/imx8mp-blk-ctrl.c
> @@ -655,6 +655,8 @@ static int imx8mp_blk_ctrl_probe(struct platform_device *pdev)
>                 return -ENOMEM;
>
>         bc->bus_power_dev = dev_pm_domain_attach_by_name(dev, "bus");
> +       if (!bc->bus_power_dev)
> +               return dev_err_probe(dev, -ENODEV, "missing bus power domain\n");
>         if (IS_ERR(bc->bus_power_dev))
>                 return dev_err_probe(dev, PTR_ERR(bc->bus_power_dev),
>                                      "failed to attach bus power domain\n");
>



More information about the linux-arm-kernel mailing list