[PATCH AUTOSEL 6.12 08/15] drm: display: Set fwnode for aux bus devices

Saravana Kannan saravanak at google.com
Thu Dec 5 16:06:58 PST 2024


On Wed, Dec 4, 2024 at 3:28 PM Sasha Levin <sashal at kernel.org> wrote:
>
> From: Saravana Kannan <saravanak at google.com>
>
> [ Upstream commit fe2e59aa5d7077c5c564d55b7e2997e83710c314 ]
>
> fwnode needs to be set for a device for fw_devlink to be able to
> track/enforce its dependencies correctly. Without this, you'll see error
> messages like this when the supplier has probed and tries to make sure
> all its fwnode consumers are linked to it using device links:
>
> mediatek-drm-dp 1c500000.edp-tx: Failed to create device link (0x180) with backlight-lcd0
>
> Reported-by: Nícolas F. R. A. Prado <nfraprado at collabora.com>
> Closes: https://lore.kernel.org/all/7b995947-4540-4b17-872e-e107adca4598@notapiano/
> Tested-by: Nícolas F. R. A. Prado <nfraprado at collabora.com>
> Signed-off-by: Saravana Kannan <saravanak at google.com>
> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
> Reviewed-by: Thierry Reding <treding at nvidia.com>
> Tested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno at collabora.com>
> Link: https://lore.kernel.org/r/20241024061347.1771063-2-saravanak@google.com
> Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
> Signed-off-by: Sasha Levin <sashal at kernel.org>

I'm okay pulling this into 6.12 as it's recent enough.

-Saravana

> ---
>  drivers/gpu/drm/display/drm_dp_aux_bus.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/display/drm_dp_aux_bus.c b/drivers/gpu/drm/display/drm_dp_aux_bus.c
> index d810529ebfb6e..ec7eac6b595f7 100644
> --- a/drivers/gpu/drm/display/drm_dp_aux_bus.c
> +++ b/drivers/gpu/drm/display/drm_dp_aux_bus.c
> @@ -292,7 +292,7 @@ int of_dp_aux_populate_bus(struct drm_dp_aux *aux,
>         aux_ep->dev.parent = aux->dev;
>         aux_ep->dev.bus = &dp_aux_bus_type;
>         aux_ep->dev.type = &dp_aux_device_type_type;
> -       aux_ep->dev.of_node = of_node_get(np);
> +       device_set_node(&aux_ep->dev, of_fwnode_handle(of_node_get(np)));
>         dev_set_name(&aux_ep->dev, "aux-%s", dev_name(aux->dev));
>
>         ret = device_register(&aux_ep->dev);
> --
> 2.43.0
>



More information about the linux-arm-kernel mailing list