Lines Matching refs:bridge

71 void drm_bridge_add(struct drm_bridge *bridge)  in drm_bridge_add()  argument
74 list_add_tail(&bridge->list, &bridge_list); in drm_bridge_add()
84 void drm_bridge_remove(struct drm_bridge *bridge) in drm_bridge_remove() argument
87 list_del_init(&bridge->list); in drm_bridge_remove()
110 int drm_bridge_attach(struct drm_encoder *encoder, struct drm_bridge *bridge, in drm_bridge_attach() argument
115 if (!encoder || !bridge) in drm_bridge_attach()
121 if (bridge->dev) in drm_bridge_attach()
124 bridge->dev = encoder->dev; in drm_bridge_attach()
125 bridge->encoder = encoder; in drm_bridge_attach()
127 if (bridge->funcs->attach) { in drm_bridge_attach()
128 ret = bridge->funcs->attach(bridge); in drm_bridge_attach()
130 bridge->dev = NULL; in drm_bridge_attach()
131 bridge->encoder = NULL; in drm_bridge_attach()
137 previous->next = bridge; in drm_bridge_attach()
139 encoder->bridge = bridge; in drm_bridge_attach()
145 void drm_bridge_detach(struct drm_bridge *bridge) in drm_bridge_detach() argument
147 if (WARN_ON(!bridge)) in drm_bridge_detach()
150 if (WARN_ON(!bridge->dev)) in drm_bridge_detach()
153 if (bridge->funcs->detach) in drm_bridge_detach()
154 bridge->funcs->detach(bridge); in drm_bridge_detach()
156 bridge->dev = NULL; in drm_bridge_detach()
185 bool drm_bridge_mode_fixup(struct drm_bridge *bridge, in drm_bridge_mode_fixup() argument
191 if (!bridge) in drm_bridge_mode_fixup()
194 if (bridge->funcs->mode_fixup) in drm_bridge_mode_fixup()
195 ret = bridge->funcs->mode_fixup(bridge, mode, adjusted_mode); in drm_bridge_mode_fixup()
197 ret = ret && drm_bridge_mode_fixup(bridge->next, mode, adjusted_mode); in drm_bridge_mode_fixup()
218 enum drm_mode_status drm_bridge_mode_valid(struct drm_bridge *bridge, in drm_bridge_mode_valid() argument
223 if (!bridge) in drm_bridge_mode_valid()
226 if (bridge->funcs->mode_valid) in drm_bridge_mode_valid()
227 ret = bridge->funcs->mode_valid(bridge, mode); in drm_bridge_mode_valid()
232 return drm_bridge_mode_valid(bridge->next, mode); in drm_bridge_mode_valid()
246 void drm_bridge_disable(struct drm_bridge *bridge) in drm_bridge_disable() argument
248 if (!bridge) in drm_bridge_disable()
251 drm_bridge_disable(bridge->next); in drm_bridge_disable()
253 if (bridge->funcs->disable) in drm_bridge_disable()
254 bridge->funcs->disable(bridge); in drm_bridge_disable()
268 void drm_bridge_post_disable(struct drm_bridge *bridge) in drm_bridge_post_disable() argument
270 if (!bridge) in drm_bridge_post_disable()
273 if (bridge->funcs->post_disable) in drm_bridge_post_disable()
274 bridge->funcs->post_disable(bridge); in drm_bridge_post_disable()
276 drm_bridge_post_disable(bridge->next); in drm_bridge_post_disable()
292 void drm_bridge_mode_set(struct drm_bridge *bridge, in drm_bridge_mode_set() argument
296 if (!bridge) in drm_bridge_mode_set()
299 if (bridge->funcs->mode_set) in drm_bridge_mode_set()
300 bridge->funcs->mode_set(bridge, mode, adjusted_mode); in drm_bridge_mode_set()
302 drm_bridge_mode_set(bridge->next, mode, adjusted_mode); in drm_bridge_mode_set()
317 void drm_bridge_pre_enable(struct drm_bridge *bridge) in drm_bridge_pre_enable() argument
319 if (!bridge) in drm_bridge_pre_enable()
322 drm_bridge_pre_enable(bridge->next); in drm_bridge_pre_enable()
324 if (bridge->funcs->pre_enable) in drm_bridge_pre_enable()
325 bridge->funcs->pre_enable(bridge); in drm_bridge_pre_enable()
339 void drm_bridge_enable(struct drm_bridge *bridge) in drm_bridge_enable() argument
341 if (!bridge) in drm_bridge_enable()
344 if (bridge->funcs->enable) in drm_bridge_enable()
345 bridge->funcs->enable(bridge); in drm_bridge_enable()
347 drm_bridge_enable(bridge->next); in drm_bridge_enable()
363 struct drm_bridge *bridge; in of_drm_find_bridge() local
367 list_for_each_entry(bridge, &bridge_list, list) { in of_drm_find_bridge()
368 if (bridge->of_node == np) { in of_drm_find_bridge()
370 return bridge; in of_drm_find_bridge()