Home | History | Annotate | Download | only in drm

Lines Matching defs:encoder

41  * &struct drm_bridge represents a device that hangs on to an encoder. These are
43 * encoder chain.
48 * encoder ---> bridge B ---> bridge A
50 * Here, the output of the encoder feeds to bridge B, and that furthers feeds to
54 * the encoder and bridges. Once these links are made, the bridges will
55 * participate along with encoder functions to perform mode_set/enable/disable
61 * encoder chain.
114 * drm_bridge_attach - attach the bridge to an encoder's chain
116 * @encoder: DRM encoder
120 * Called by a kms driver to link the bridge to an encoder's chain. The previous
122 * linked directly at the encoder's output. Otherwise it is linked at the
128 * Note that bridges attached to encoders are auto-detached during encoder
135 int drm_bridge_attach(struct drm_encoder *encoder, struct drm_bridge *bridge,
140 if (!encoder || !bridge)
143 if (previous && (!previous->dev || previous->encoder != encoder))
149 bridge->dev = encoder->dev;
150 bridge->encoder = encoder;
155 list_add(&bridge->chain_node, &encoder->bridge_chain);
162 bridge->encoder = NULL;
192 * during encoder configuration.
199 * encoder chain
205 * encoder chain, starting from the first bridge to the last.
207 * Note: the bridge passed should be the one closest to the encoder
216 struct drm_encoder *encoder;
221 encoder = bridge->encoder;
222 list_for_each_entry_from(bridge, &encoder->bridge_chain, chain_node) {
236 * encoder chain.
240 * Calls &drm_bridge_funcs.mode_valid for all the bridges in the encoder
244 * Note: the bridge passed should be the one closest to the encoder.
253 struct drm_encoder *encoder;
258 encoder = bridge->encoder;
259 list_for_each_entry_from(bridge, &encoder->bridge_chain, chain_node) {
275 * drm_bridge_chain_disable - disables all bridges in the encoder chain
278 * Calls &drm_bridge_funcs.disable op for all the bridges in the encoder
280 * calling the encoder's prepare op.
282 * Note: the bridge passed should be the one closest to the encoder
286 struct drm_encoder *encoder;
292 encoder = bridge->encoder;
293 list_for_each_entry_reverse(iter, &encoder->bridge_chain, chain_node) {
305 * encoder chain
309 * encoder chain, starting from the first bridge to the last. These are called
310 * after completing the encoder's prepare op.
312 * Note: the bridge passed should be the one closest to the encoder
316 struct drm_encoder *encoder;
321 encoder = bridge->encoder;
322 list_for_each_entry_from(bridge, &encoder->bridge_chain, chain_node) {
331 * encoder chain
333 * @mode: desired mode to be set for the encoder chain
334 * @adjusted_mode: updated mode that works for this encoder chain
337 * encoder chain, starting from the first bridge to the last.
339 * Note: the bridge passed should be the one closest to the encoder
345 struct drm_encoder *encoder;
350 encoder = bridge->encoder;
351 list_for_each_entry_from(bridge, &encoder->bridge_chain, chain_node) {
360 * encoder chain
363 * Calls &drm_bridge_funcs.pre_enable op for all the bridges in the encoder
365 * before calling the encoder's commit op.
367 * Note: the bridge passed should be the one closest to the encoder
371 struct drm_encoder *encoder;
377 encoder = bridge->encoder;
378 list_for_each_entry_reverse(iter, &encoder->bridge_chain, chain_node) {
386 * drm_bridge_chain_enable - enables all bridges in the encoder chain
389 * Calls &drm_bridge_funcs.enable op for all the bridges in the encoder
391 * after completing the encoder's commit op.
393 * Note that the bridge passed should be the one closest to the encoder
397 struct drm_encoder *encoder;
402 encoder = bridge->encoder;
403 list_for_each_entry_from(bridge, &encoder->bridge_chain, chain_node) {
411 * drm_atomic_bridge_chain_disable - disables all bridges in the encoder chain
416 * &drm_bridge_funcs.disable) op for all the bridges in the encoder chain,
420 * Note: the bridge passed should be the one closest to the encoder
425 struct drm_encoder *encoder;
431 encoder = bridge->encoder;
432 list_for_each_entry_reverse(iter, &encoder->bridge_chain, chain_node) {
446 * in the encoder chain
451 * &drm_bridge_funcs.post_disable) op for all the bridges in the encoder chain,
455 * Note: the bridge passed should be the one closest to the encoder
460 struct drm_encoder *encoder;
465 encoder = bridge->encoder;
466 list_for_each_entry_from(bridge, &encoder->bridge_chain, chain_node) {
477 * the encoder chain
482 * &drm_bridge_funcs.pre_enable) op for all the bridges in the encoder chain,
486 * Note: the bridge passed should be the one closest to the encoder
491 struct drm_encoder *encoder;
497 encoder = bridge->encoder;
498 list_for_each_entry_reverse(iter, &encoder->bridge_chain, chain_node) {
511 * drm_atomic_bridge_chain_enable - enables all bridges in the encoder chain
516 * &drm_bridge_funcs.enable) op for all the bridges in the encoder chain,
520 * Note: the bridge passed should be the one closest to the encoder
525 struct drm_encoder *encoder;
530 encoder = bridge->encoder;
531 list_for_each_entry_from(bridge, &encoder->bridge_chain, chain_node) {