2
1

0002-drm-bridge-ps8640-Get-the-EDID-from-eDP-control.patch 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. From cc0f2fea61fb34ca84e4812a615e0035d812aa8b Mon Sep 17 00:00:00 2001
  2. From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
  3. Date: Wed, 26 Aug 2020 10:15:23 +0200
  4. Subject: [PATCH 2/5] drm/bridge: ps8640: Get the EDID from eDP control
  5. The PS8640 DSI-to-eDP bridge can retrieve the EDID, so implement the
  6. .get_edid callback and set the flag to indicate the core to use it.
  7. Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  8. Acked-by: Sam Ravnborg <sam@ravnborg.org>
  9. Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
  10. ---
  11. drivers/gpu/drm/bridge/parade-ps8640.c | 12 ++++++++++++
  12. 1 file changed, 12 insertions(+)
  13. diff --git a/drivers/gpu/drm/bridge/parade-ps8640.c b/drivers/gpu/drm/bridge/parade-ps8640.c
  14. index 4b099196afeb..13755d278db6 100644
  15. --- a/drivers/gpu/drm/bridge/parade-ps8640.c
  16. +++ b/drivers/gpu/drm/bridge/parade-ps8640.c
  17. @@ -242,8 +242,18 @@ static int ps8640_bridge_attach(struct drm_bridge *bridge,
  18. return ret;
  19. }
  20. +static struct edid *ps8640_bridge_get_edid(struct drm_bridge *bridge,
  21. + struct drm_connector *connector)
  22. +{
  23. + struct ps8640 *ps_bridge = bridge_to_ps8640(bridge);
  24. +
  25. + return drm_get_edid(connector,
  26. + ps_bridge->page[PAGE0_DP_CNTL]->adapter);
  27. +}
  28. +
  29. static const struct drm_bridge_funcs ps8640_bridge_funcs = {
  30. .attach = ps8640_bridge_attach,
  31. + .get_edid = ps8640_bridge_get_edid,
  32. .post_disable = ps8640_post_disable,
  33. .pre_enable = ps8640_pre_enable,
  34. };
  35. @@ -294,6 +304,8 @@ static int ps8640_probe(struct i2c_client *client)
  36. ps_bridge->bridge.funcs = &ps8640_bridge_funcs;
  37. ps_bridge->bridge.of_node = dev->of_node;
  38. + ps_bridge->bridge.ops = DRM_BRIDGE_OP_EDID;
  39. + ps_bridge->bridge.type = DRM_MODE_CONNECTOR_eDP;
  40. ps_bridge->page[PAGE0_DP_CNTL] = client;
  41. --
  42. 2.25.1