drm/omap: Add infrastructure to support drm_bridge local to DSS outputs
In order to support drm_bridge-based pipeline, the internal HDMI encoders will need to expose the EDID read operation through the drm_bridge API, and thus to expose a drm_bridge instance corresponding to the encoder. The HDMI encoders are however handled as omap_dss_device instances, which conflicts with this requirement. In order to move forward with the drm_bridge transition, add support for creating drm_bridge instances local to DSS outputs. If a local bridge is passed to the omapdss_device_init_output() function, it is used as the first bridge in the chain, and the omap_dss_device.next_bridge field is set to the next bridge for the use of the internal encoders' bridges. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Tested-by: Sebastian Reichel <sebastian.reichel@collabora.com> Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200226112514.12455-27-laurent.pinchart@ideasonboard.com
This commit is contained in:

committed by
Tomi Valkeinen

parent
c83fefd738
commit
326a1166ca
@@ -324,7 +324,7 @@ static int omap_modeset_init(struct drm_device *dev)
|
||||
struct drm_encoder *encoder = pipe->encoder;
|
||||
struct drm_crtc *crtc;
|
||||
|
||||
if (!pipe->output->bridge) {
|
||||
if (pipe->output->next) {
|
||||
pipe->connector = omap_connector_init(dev, pipe->output,
|
||||
encoder);
|
||||
if (!pipe->connector)
|
||||
|
Reference in New Issue
Block a user