Hi,
On Thu, Oct 28, 2021 at 10:58 AM Philip Chen philipchen@chromium.org wrote:
Conventionally, panel is listed under the root of the device tree. When userland asks for display mode, ps8640 bridge is responsible for returning EDID when ps8640_bridge_get_edid() is called.
Now enable a new option of listing panel under "aux-bus" of ps8640 bridge node in the device tree. In this case, panel driver can retrieve EDID by triggering AUX transactions, without ps8640_bridge_get_edid() calls at all.
To prevent the "old" and "new" options from interfering with each other's logic flow, disable DRM_BRIDGE_OP_EDID when the new option is taken.
Signed-off-by: Philip Chen philipchen@chromium.org Reviewed-by: Stephen Boyd swboyd@chromium.org
In v4, I factored out the "ps8640_ensure_hpd" change and added it to patch 1/2 in this patch series. But I forgot to mention it in v4 change log. Edit v4 change log retroactively.
In v3, I factored out the "put_sync_suspend" change and added it to patch 1/2 in this patch series. But I forgot to mention it in v3 change log. Edit v3 change log retroactively.
(no changes since v4)
Changes in v4:
- Move the change of "ps8640_ensure_hpd" to patch 1/2 in this patch series.
Changes in v3:
- Fix when to call of_node_put() in ps8640_of_panel_on_aux_bus()
- Move the change of "put_sync_suspend" to patch 1/2 in this patch series.
Changes in v2:
- Add of_node_put() calls in ps8640_of_panel_on_aux_bus()
- Select DRM_DP_AUX_BUS for PS8640 driver in Kconfig
drivers/gpu/drm/bridge/Kconfig | 1 + drivers/gpu/drm/bridge/parade-ps8640.c | 51 ++++++++++++++++++++------ 2 files changed, 40 insertions(+), 12 deletions(-)
Should have carried my tag from v4, but here it is again:
Reviewed-by: Douglas Anderson dianders@chromium.org