[PATCH v2 2/5] clk: add uclass id check to clk_get_parent()

Simon Glass sjg at chromium.org
Tue Jan 6 17:22:23 CET 2026


On Wed, 31 Dec 2025 at 12:52, Yang Xiwen via B4 Relay
<devnull+forbidden405.outlook.com at kernel.org> wrote:
>
> From: Yang Xiwen <forbidden405 at outlook.com>
>
> Check the uclass id in clk_get_parent() before casting dev->priv to
> struct clk *.  This sanity check can be also found in some other places
> and should be enforced.
>
> Signed-off-by: Yang Xiwen <forbidden405 at outlook.com>
> ---
>  drivers/clk/clk-uclass.c | 4 ++++
>  1 file changed, 4 insertions(+)
>

Reviewed-by: Simon Glass <simon.glass at canonical.com>


> diff --git a/drivers/clk/clk-uclass.c b/drivers/clk/clk-uclass.c
> index 2167cd5ad0fe..bd18de972bb9 100644
> --- a/drivers/clk/clk-uclass.c
> +++ b/drivers/clk/clk-uclass.c
> @@ -502,6 +502,10 @@ struct clk *clk_get_parent(struct clk *clk)
>         pdev = dev_get_parent(clk->dev);
>         if (!pdev)
>                 return ERR_PTR(-ENODEV);
> +
> +       if (device_get_uclass_id(pdev) != UCLASS_CLK)
> +               return ERR_PTR(-ENODEV);
> +
>         pclk = dev_get_clk_ptr(pdev);
>         if (!pclk)
>                 return ERR_PTR(-ENODEV);
>
> --
> 2.43.0
>
>


More information about the U-Boot mailing list