diff options
| author | Aradhya Bhatia <[email protected]> | 2025-03-29 11:39:12 +0000 |
|---|---|---|
| committer | Dmitry Baryshkov <[email protected]> | 2025-03-30 16:47:12 +0000 |
| commit | 688eb4d465484bc2a3471a6a6f06f833b58c7867 (patch) | |
| tree | 1493553580db32d7380f0ee3f277096eb75a838c /drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c | |
| parent | drm/nouveau: fix hibernate on disabled GPU (diff) | |
| download | kernel-688eb4d465484bc2a3471a6a6f06f833b58c7867.tar.gz kernel-688eb4d465484bc2a3471a6a6f06f833b58c7867.zip | |
drm/bridge: cdns-dsi: Fix connecting to next bridge
Fix the OF node pointer passed to the of_drm_find_bridge() call to find
the next bridge in the display chain.
The code to find the next panel (and create its panel-bridge) works
fine, but to find the next (non-panel) bridge does not.
To find the next bridge in the pipeline, we need to pass "np" - the OF
node pointer of the next entity in the devicetree chain. Passing
"of_node" to of_drm_find_bridge (which is what the code does currently)
will fetch the bridge for the cdns-dsi which is not what's required.
Fix that.
Fixes: e19233955d9e ("drm/bridge: Add Cadence DSI driver")
Cc: [email protected]
Reviewed-by: Dmitry Baryshkov <[email protected]>
Reviewed-by: Tomi Valkeinen <[email protected]>
Tested-by: Tomi Valkeinen <[email protected]>
Signed-off-by: Aradhya Bhatia <[email protected]>
Signed-off-by: Aradhya Bhatia <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Dmitry Baryshkov <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c')
| -rw-r--r-- | drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c b/drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c index 99d43944fb8f..1cfe17865b06 100644 --- a/drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c +++ b/drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c @@ -966,7 +966,7 @@ static int cdns_dsi_attach(struct mipi_dsi_host *host, bridge = drm_panel_bridge_add_typed(panel, DRM_MODE_CONNECTOR_DSI); } else { - bridge = of_drm_find_bridge(dev->dev.of_node); + bridge = of_drm_find_bridge(np); if (!bridge) bridge = ERR_PTR(-EINVAL); } |
