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