Lines Matching full:bridge

22  * The DRM bridge connector helper object provides a DRM connector
28 * To use the helper, display controller drivers create a bridge connector with
34 * The DRM bridge connector operations are implemented based on the operations
36 * to the bridge closest to the connector (at the end of the chain) that
39 * To make use of this helper, all bridges in the chain shall report bridge
40 * operation flags (&drm_bridge->ops) and bridge output type
62 * The last bridge in the chain (closest to the connector) that provides
69 * The last bridge in the chain (closest to the connector) that provides
76 * The last bridge in the chain (closest to the connector) that provides
83 * The last bridge in the chain (closest to the connector) that provides
93 * Bridge Connector Hot-Plug Handling
101 struct drm_bridge *bridge; in drm_bridge_connector_hpd_notify() local
104 drm_for_each_bridge_in_chain(bridge_connector->encoder, bridge) { in drm_bridge_connector_hpd_notify()
105 if (bridge->funcs->hpd_notify) in drm_bridge_connector_hpd_notify()
106 bridge->funcs->hpd_notify(bridge, status); in drm_bridge_connector_hpd_notify()
133 * @connector: The DRM bridge connector
135 * This function enables hot-plug detection for the given bridge connector.
153 * @connector: The DRM bridge connector
155 * This function disables hot-plug detection for the given bridge connector.
170 * Bridge Connector Functions
225 struct drm_bridge *bridge; in drm_bridge_connector_debugfs_init() local
227 list_for_each_entry(bridge, &encoder->bridge_chain, chain_node) { in drm_bridge_connector_debugfs_init()
228 if (bridge->funcs->debugfs_init) in drm_bridge_connector_debugfs_init()
229 bridge->funcs->debugfs_init(bridge, root); in drm_bridge_connector_debugfs_init()
244 * Bridge Connector Helper Functions
248 struct drm_bridge *bridge) in drm_bridge_connector_get_modes_edid() argument
258 edid = bridge->funcs->get_edid(bridge, connector); in drm_bridge_connector_get_modes_edid()
279 struct drm_bridge *bridge; in drm_bridge_connector_get_modes() local
285 bridge = bridge_connector->bridge_edid; in drm_bridge_connector_get_modes()
286 if (bridge) in drm_bridge_connector_get_modes()
287 return drm_bridge_connector_get_modes_edid(connector, bridge); in drm_bridge_connector_get_modes()
293 bridge = bridge_connector->bridge_modes; in drm_bridge_connector_get_modes()
294 if (bridge) in drm_bridge_connector_get_modes()
295 return bridge->funcs->get_modes(bridge, connector); in drm_bridge_connector_get_modes()
311 * Bridge Connector Initialisation
317 * @encoder: the encoder where the bridge chain starts
321 * the @encoder. All bridges in the chain shall report bridge operation flags
322 * (&drm_bridge->ops) and bridge output type (&drm_bridge->type), and none of
334 struct drm_bridge *bridge, *panel_bridge = NULL; in drm_bridge_connector_init() local
358 drm_for_each_bridge_in_chain(encoder, bridge) { in drm_bridge_connector_init()
359 if (!bridge->interlace_allowed) in drm_bridge_connector_init()
362 if (bridge->ops & DRM_BRIDGE_OP_EDID) in drm_bridge_connector_init()
363 bridge_connector->bridge_edid = bridge; in drm_bridge_connector_init()
364 if (bridge->ops & DRM_BRIDGE_OP_HPD) in drm_bridge_connector_init()
365 bridge_connector->bridge_hpd = bridge; in drm_bridge_connector_init()
366 if (bridge->ops & DRM_BRIDGE_OP_DETECT) in drm_bridge_connector_init()
367 bridge_connector->bridge_detect = bridge; in drm_bridge_connector_init()
368 if (bridge->ops & DRM_BRIDGE_OP_MODES) in drm_bridge_connector_init()
369 bridge_connector->bridge_modes = bridge; in drm_bridge_connector_init()
371 if (!drm_bridge_get_next_bridge(bridge)) in drm_bridge_connector_init()
372 connector_type = bridge->type; in drm_bridge_connector_init()
374 if (bridge->ddc) in drm_bridge_connector_init()
375 ddc = bridge->ddc; in drm_bridge_connector_init()
377 if (drm_bridge_is_panel(bridge)) in drm_bridge_connector_init()
378 panel_bridge = bridge; in drm_bridge_connector_init()