Lines Matching refs:bridge
16 struct drm_bridge bridge; member
23 drm_bridge_to_panel_bridge(struct drm_bridge *bridge) in drm_bridge_to_panel_bridge() argument
25 return container_of(bridge, struct panel_bridge, bridge); in drm_bridge_to_panel_bridge()
55 static int panel_bridge_attach(struct drm_bridge *bridge) in panel_bridge_attach() argument
57 struct panel_bridge *panel_bridge = drm_bridge_to_panel_bridge(bridge); in panel_bridge_attach()
61 if (!bridge->encoder) { in panel_bridge_attach()
69 ret = drm_connector_init(bridge->dev, connector, in panel_bridge_attach()
78 bridge->encoder); in panel_bridge_attach()
87 static void panel_bridge_detach(struct drm_bridge *bridge) in panel_bridge_detach() argument
89 struct panel_bridge *panel_bridge = drm_bridge_to_panel_bridge(bridge); in panel_bridge_detach()
94 static void panel_bridge_pre_enable(struct drm_bridge *bridge) in panel_bridge_pre_enable() argument
96 struct panel_bridge *panel_bridge = drm_bridge_to_panel_bridge(bridge); in panel_bridge_pre_enable()
101 static void panel_bridge_enable(struct drm_bridge *bridge) in panel_bridge_enable() argument
103 struct panel_bridge *panel_bridge = drm_bridge_to_panel_bridge(bridge); in panel_bridge_enable()
108 static void panel_bridge_disable(struct drm_bridge *bridge) in panel_bridge_disable() argument
110 struct panel_bridge *panel_bridge = drm_bridge_to_panel_bridge(bridge); in panel_bridge_disable()
115 static void panel_bridge_post_disable(struct drm_bridge *bridge) in panel_bridge_post_disable() argument
117 struct panel_bridge *panel_bridge = drm_bridge_to_panel_bridge(bridge); in panel_bridge_post_disable()
170 panel_bridge->bridge.funcs = &panel_bridge_bridge_funcs; in drm_panel_bridge_add()
172 panel_bridge->bridge.of_node = panel->dev->of_node; in drm_panel_bridge_add()
175 drm_bridge_add(&panel_bridge->bridge); in drm_panel_bridge_add()
177 return &panel_bridge->bridge; in drm_panel_bridge_add()
187 void drm_panel_bridge_remove(struct drm_bridge *bridge) in drm_panel_bridge_remove() argument
191 if (!bridge) in drm_panel_bridge_remove()
194 if (bridge->funcs != &panel_bridge_bridge_funcs) in drm_panel_bridge_remove()
197 panel_bridge = drm_bridge_to_panel_bridge(bridge); in drm_panel_bridge_remove()
199 drm_bridge_remove(bridge); in drm_panel_bridge_remove()
200 devm_kfree(panel_bridge->panel->dev, bridge); in drm_panel_bridge_remove()
206 struct drm_bridge **bridge = res; in devm_drm_panel_bridge_release() local
208 drm_panel_bridge_remove(*bridge); in devm_drm_panel_bridge_release()
226 struct drm_bridge **ptr, *bridge; in devm_drm_panel_bridge_add() local
233 bridge = drm_panel_bridge_add(panel, connector_type); in devm_drm_panel_bridge_add()
234 if (!IS_ERR(bridge)) { in devm_drm_panel_bridge_add()
235 *ptr = bridge; in devm_drm_panel_bridge_add()
241 return bridge; in devm_drm_panel_bridge_add()