Lines Matching refs:encoder

110 		return connector->encoder;  in intel_find_encoder()
419 struct intel_encoder *encoder; in intel_pipe_has_type() local
421 for_each_encoder_on_crtc(dev, &crtc->base, encoder) in intel_pipe_has_type()
422 if (encoder->type == type) in intel_pipe_has_type()
439 struct intel_encoder *encoder; in intel_pipe_will_have_type() local
452 encoder = to_intel_encoder(connector_state->best_encoder); in intel_pipe_will_have_type()
453 if (encoder->type == type) in intel_pipe_will_have_type()
4516 struct intel_encoder *encoder; in ironlake_crtc_enable() local
4544 for_each_encoder_on_crtc(dev, crtc, encoder) in ironlake_crtc_enable()
4545 if (encoder->pre_enable) in ironlake_crtc_enable()
4546 encoder->pre_enable(encoder); in ironlake_crtc_enable()
4575 for_each_encoder_on_crtc(dev, crtc, encoder) in ironlake_crtc_enable()
4576 encoder->enable(encoder); in ironlake_crtc_enable()
4624 struct intel_encoder *encoder; in haswell_crtc_enable() local
4657 for_each_encoder_on_crtc(dev, crtc, encoder) in haswell_crtc_enable()
4658 if (encoder->pre_enable) in haswell_crtc_enable()
4659 encoder->pre_enable(encoder); in haswell_crtc_enable()
4695 for_each_encoder_on_crtc(dev, crtc, encoder) { in haswell_crtc_enable()
4696 encoder->enable(encoder); in haswell_crtc_enable()
4697 intel_opregion_notify_encoder(encoder, true); in haswell_crtc_enable()
4741 struct intel_encoder *encoder; in ironlake_crtc_disable() local
4750 for_each_encoder_on_crtc(dev, crtc, encoder) in ironlake_crtc_disable()
4751 encoder->disable(encoder); in ironlake_crtc_disable()
4763 for_each_encoder_on_crtc(dev, crtc, encoder) in ironlake_crtc_disable()
4764 if (encoder->post_disable) in ironlake_crtc_disable()
4765 encoder->post_disable(encoder); in ironlake_crtc_disable()
4806 struct intel_encoder *encoder; in haswell_crtc_disable() local
4814 for_each_encoder_on_crtc(dev, crtc, encoder) { in haswell_crtc_disable()
4815 intel_opregion_notify_encoder(encoder, false); in haswell_crtc_disable()
4816 encoder->disable(encoder); in haswell_crtc_disable()
4844 for_each_encoder_on_crtc(dev, crtc, encoder) in haswell_crtc_disable()
4845 if (encoder->post_disable) in haswell_crtc_disable()
4846 encoder->post_disable(encoder); in haswell_crtc_disable()
5268 struct intel_encoder *encoder; in valleyview_crtc_enable() local
5304 for_each_encoder_on_crtc(dev, crtc, encoder) in valleyview_crtc_enable()
5305 if (encoder->pre_pll_enable) in valleyview_crtc_enable()
5306 encoder->pre_pll_enable(encoder); in valleyview_crtc_enable()
5315 for_each_encoder_on_crtc(dev, crtc, encoder) in valleyview_crtc_enable()
5316 if (encoder->pre_enable) in valleyview_crtc_enable()
5317 encoder->pre_enable(encoder); in valleyview_crtc_enable()
5329 for_each_encoder_on_crtc(dev, crtc, encoder) in valleyview_crtc_enable()
5330 encoder->enable(encoder); in valleyview_crtc_enable()
5352 struct intel_encoder *encoder; in i9xx_crtc_enable() local
5374 for_each_encoder_on_crtc(dev, crtc, encoder) in i9xx_crtc_enable()
5375 if (encoder->pre_enable) in i9xx_crtc_enable()
5376 encoder->pre_enable(encoder); in i9xx_crtc_enable()
5390 for_each_encoder_on_crtc(dev, crtc, encoder) in i9xx_crtc_enable()
5391 encoder->enable(encoder); in i9xx_crtc_enable()
5429 struct intel_encoder *encoder; in i9xx_crtc_disable() local
5464 for_each_encoder_on_crtc(dev, crtc, encoder) in i9xx_crtc_disable()
5465 encoder->disable(encoder); in i9xx_crtc_disable()
5474 for_each_encoder_on_crtc(dev, crtc, encoder) in i9xx_crtc_disable()
5475 if (encoder->post_disable) in i9xx_crtc_disable()
5476 encoder->post_disable(encoder); in i9xx_crtc_disable()
5563 if (!connector->encoder || !connector->encoder->crtc) in intel_crtc_disable()
5566 if (connector->encoder->crtc != crtc) in intel_crtc_disable()
5570 to_intel_encoder(connector->encoder)->connectors_active = false; in intel_crtc_disable()
5574 void intel_encoder_destroy(struct drm_encoder *encoder) in intel_encoder_destroy() argument
5576 struct intel_encoder *intel_encoder = to_intel_encoder(encoder); in intel_encoder_destroy()
5578 drm_encoder_cleanup(encoder); in intel_encoder_destroy()
5585 static void intel_encoder_dpms(struct intel_encoder *encoder, int mode) in intel_encoder_dpms() argument
5588 encoder->connectors_active = true; in intel_encoder_dpms()
5590 intel_crtc_update_dpms(encoder->base.crtc); in intel_encoder_dpms()
5592 encoder->connectors_active = false; in intel_encoder_dpms()
5594 intel_crtc_update_dpms(encoder->base.crtc); in intel_encoder_dpms()
5603 struct intel_encoder *encoder = connector->encoder; in intel_connector_check_state() local
5614 I915_STATE_WARN(connector->base.encoder != &encoder->base, in intel_connector_check_state()
5617 if (encoder) { in intel_connector_check_state()
5618 I915_STATE_WARN(!encoder->connectors_active, in intel_connector_check_state()
5621 encoder_enabled = encoder->get_hw_state(encoder, &pipe); in intel_connector_check_state()
5623 if (I915_STATE_WARN_ON(!encoder->base.crtc)) in intel_connector_check_state()
5626 crtc = encoder->base.crtc; in intel_connector_check_state()
5679 if (connector->encoder) in intel_connector_dpms()
5680 intel_encoder_dpms(to_intel_encoder(connector->encoder), mode); in intel_connector_dpms()
5691 struct intel_encoder *encoder = connector->encoder; in intel_connector_get_hw_state() local
5693 return encoder->get_hw_state(encoder, &pipe); in intel_connector_get_hw_state()
6790 struct intel_encoder *encoder; in i9xx_crtc_compute_clock() local
6804 encoder = to_intel_encoder(connector_state->best_encoder); in i9xx_crtc_compute_clock()
6806 switch (encoder->type) { in i9xx_crtc_compute_clock()
7131 struct intel_encoder *encoder; in ironlake_init_pch_refclk() local
7140 for_each_intel_encoder(dev, encoder) { in ironlake_init_pch_refclk()
7141 switch (encoder->type) { in ironlake_init_pch_refclk()
7148 if (enc_to_dig_port(&encoder->base)->port == PORT_A) in ironlake_init_pch_refclk()
7449 struct intel_encoder *encoder; in lpt_init_pch_refclk() local
7452 for_each_intel_encoder(dev, encoder) { in lpt_init_pch_refclk()
7453 switch (encoder->type) { in lpt_init_pch_refclk()
7485 struct intel_encoder *encoder; in ironlake_get_refclk() local
7497 encoder = to_intel_encoder(connector_state->best_encoder); in ironlake_get_refclk()
7499 switch (encoder->type) { in ironlake_get_refclk()
7748 struct intel_encoder *encoder; in ironlake_compute_dpll() local
7761 encoder = to_intel_encoder(connector_state->best_encoder); in ironlake_compute_dpll()
7763 switch (encoder->type) { in ironlake_compute_dpll()
8988 struct drm_encoder *encoder = &intel_encoder->base; in intel_get_load_detect_pipe() local
8990 struct drm_device *dev = encoder->dev; in intel_get_load_detect_pipe()
8999 encoder->base.id, encoder->name); in intel_get_load_detect_pipe()
9017 if (encoder->crtc) { in intel_get_load_detect_pipe()
9018 crtc = encoder->crtc; in intel_get_load_detect_pipe()
9040 if (!(encoder->possible_crtcs & (1 << i))) in intel_get_load_detect_pipe()
9152 struct drm_encoder *encoder = &intel_encoder->base; in intel_release_load_detect_pipe() local
9153 struct drm_crtc *crtc = encoder->crtc; in intel_release_load_detect_pipe()
9160 encoder->base.id, encoder->name); in intel_release_load_detect_pipe()
10301 struct intel_encoder *encoder; in intel_modeset_update_staged_output_state() local
10306 to_intel_encoder(connector->base.encoder); in intel_modeset_update_staged_output_state()
10309 for_each_intel_encoder(dev, encoder) { in intel_modeset_update_staged_output_state()
10310 encoder->new_crtc = in intel_modeset_update_staged_output_state()
10311 to_intel_crtc(encoder->base.crtc); in intel_modeset_update_staged_output_state()
10333 if (connector->base.encoder) { in intel_modeset_update_connector_atomic_state()
10335 connector->base.encoder; in intel_modeset_update_connector_atomic_state()
10337 connector->base.encoder->crtc; in intel_modeset_update_connector_atomic_state()
10353 struct intel_encoder *encoder; in intel_modeset_commit_output_state() local
10357 connector->base.encoder = &connector->new_encoder->base; in intel_modeset_commit_output_state()
10360 for_each_intel_encoder(dev, encoder) { in intel_modeset_commit_output_state()
10361 encoder->base.crtc = &encoder->new_crtc->base; in intel_modeset_commit_output_state()
10547 struct intel_encoder *encoder) in check_single_encoder_cloning() argument
10556 if (!encoders_cloneable(encoder, source_encoder)) in check_single_encoder_cloning()
10566 struct intel_encoder *encoder; in check_encoder_cloning() local
10568 for_each_intel_encoder(dev, encoder) { in check_encoder_cloning()
10569 if (encoder->new_crtc != crtc) in check_encoder_cloning()
10572 if (!check_single_encoder_cloning(crtc, encoder)) in check_encoder_cloning()
10590 struct intel_encoder *encoder = connector->new_encoder; in check_digital_port_conflicts() local
10592 if (!encoder) in check_digital_port_conflicts()
10595 WARN_ON(!encoder->new_crtc); in check_digital_port_conflicts()
10597 switch (encoder->type) { in check_digital_port_conflicts()
10605 port_mask = 1 << enc_to_dig_port(&encoder->base)->port; in check_digital_port_conflicts()
10638 struct intel_encoder *encoder; in intel_modeset_pipe_config() local
10726 encoder = to_intel_encoder(connector_state->best_encoder); in intel_modeset_pipe_config()
10728 if (!(encoder->compute_config(encoder, pipe_config))) { in intel_modeset_pipe_config()
10774 struct intel_encoder *encoder; in intel_modeset_affected_pipes() local
10785 if (connector->base.encoder == &connector->new_encoder->base) in intel_modeset_affected_pipes()
10788 if (connector->base.encoder) { in intel_modeset_affected_pipes()
10789 tmp_crtc = connector->base.encoder->crtc; in intel_modeset_affected_pipes()
10799 for_each_intel_encoder(dev, encoder) { in intel_modeset_affected_pipes()
10800 if (encoder->base.crtc == &encoder->new_crtc->base) in intel_modeset_affected_pipes()
10803 if (encoder->base.crtc) { in intel_modeset_affected_pipes()
10804 tmp_crtc = encoder->base.crtc; in intel_modeset_affected_pipes()
10809 if (encoder->new_crtc) in intel_modeset_affected_pipes()
10810 *prepare_pipes |= 1 << encoder->new_crtc->pipe; in intel_modeset_affected_pipes()
10856 struct drm_encoder *encoder; in intel_crtc_in_use() local
10859 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) in intel_crtc_in_use()
10860 if (encoder->crtc == crtc) in intel_crtc_in_use()
10897 if (!connector->encoder || !connector->encoder->crtc) in intel_modeset_update_state()
10900 intel_crtc = to_intel_crtc(connector->encoder->crtc); in intel_modeset_update_state()
10911 intel_encoder = to_intel_encoder(connector->encoder); in intel_modeset_update_state()
11192 I915_STATE_WARN(&connector->new_encoder->base != connector->base.encoder, in check_connector_state()
11200 struct intel_encoder *encoder; in check_encoder_state() local
11203 for_each_intel_encoder(dev, encoder) { in check_encoder_state()
11209 encoder->base.base.id, in check_encoder_state()
11210 encoder->base.name); in check_encoder_state()
11212 I915_STATE_WARN(&encoder->new_crtc->base != encoder->base.crtc, in check_encoder_state()
11214 I915_STATE_WARN(encoder->connectors_active && !encoder->base.crtc, in check_encoder_state()
11218 if (connector->base.encoder != &encoder->base) in check_encoder_state()
11225 I915_STATE_WARN(!!encoder->base.crtc != enabled, in check_encoder_state()
11228 !!encoder->base.crtc, enabled); in check_encoder_state()
11229 I915_STATE_WARN(active && !encoder->base.crtc, in check_encoder_state()
11232 I915_STATE_WARN(encoder->connectors_active != active, in check_encoder_state()
11234 "(expected %i, found %i)\n", active, encoder->connectors_active); in check_encoder_state()
11236 active = encoder->get_hw_state(encoder, &pipe); in check_encoder_state()
11237 I915_STATE_WARN(active != encoder->connectors_active, in check_encoder_state()
11240 encoder->connectors_active, active); in check_encoder_state()
11242 if (!encoder->base.crtc) in check_encoder_state()
11245 tracked_pipe = to_intel_crtc(encoder->base.crtc)->pipe; in check_encoder_state()
11259 struct intel_encoder *encoder; in check_crtc_state() local
11274 for_each_intel_encoder(dev, encoder) { in check_crtc_state()
11275 if (encoder->base.crtc != &crtc->base) in check_crtc_state()
11278 if (encoder->connectors_active) in check_crtc_state()
11298 for_each_intel_encoder(dev, encoder) { in check_crtc_state()
11300 if (encoder->base.crtc != &crtc->base) in check_crtc_state()
11302 if (encoder->get_hw_state(encoder, &pipe)) in check_crtc_state()
11303 encoder->get_config(encoder, &pipe_config); in check_crtc_state()
11695 struct intel_encoder *encoder; in intel_crtc_restore_mode() local
11713 for_each_intel_encoder(dev, encoder) { in intel_crtc_restore_mode()
11714 if (&encoder->new_crtc->base != crtc) in intel_crtc_restore_mode()
11718 if (connector->new_encoder != encoder) in intel_crtc_restore_mode()
11731 connector_state->best_encoder = &encoder->base; in intel_crtc_restore_mode()
11758 struct drm_encoder *encoder; in intel_set_config_save_state() local
11790 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) { in intel_set_config_save_state()
11791 config->save_encoder_crtcs[count++] = encoder->crtc; in intel_set_config_save_state()
11796 config->save_connector_encoders[count++] = connector->encoder; in intel_set_config_save_state()
11806 struct intel_encoder *encoder; in intel_set_config_restore_state() local
11821 for_each_intel_encoder(dev, encoder) { in intel_set_config_restore_state()
11822 encoder->new_crtc = in intel_set_config_restore_state()
11845 if (set->connectors[i]->encoder && in is_crtc_connector_off()
11846 set->connectors[i]->encoder->crtc == set->crtc && in is_crtc_connector_off()
11912 struct intel_encoder *encoder; in intel_modeset_stage_output_state() local
11935 connector->base.encoder && in intel_modeset_stage_output_state()
11936 connector->base.encoder->crtc == set->crtc) { in intel_modeset_stage_output_state()
11945 if (&connector->new_encoder->base != connector->base.encoder) { in intel_modeset_stage_output_state()
11990 for_each_intel_encoder(dev, encoder) { in intel_modeset_stage_output_state()
11993 if (connector->new_encoder == encoder) { in intel_modeset_stage_output_state()
12000 encoder->new_crtc = NULL; in intel_modeset_stage_output_state()
12006 if (&encoder->new_crtc->base != encoder->base.crtc) { in intel_modeset_stage_output_state()
12008 encoder->base.base.id, in intel_modeset_stage_output_state()
12009 encoder->base.name); in intel_modeset_stage_output_state()
12021 if (connector->new_encoder != connector->encoder) in intel_modeset_stage_output_state()
12022 connector->encoder = connector->new_encoder; in intel_modeset_stage_output_state()
12030 for_each_intel_encoder(dev, encoder) { in intel_modeset_stage_output_state()
12031 if (encoder->new_crtc == crtc) { in intel_modeset_stage_output_state()
12056 struct intel_encoder *encoder; in disable_crtc_nofb() local
12068 for_each_intel_encoder(dev, encoder) { in disable_crtc_nofb()
12069 if (encoder->new_crtc == crtc) in disable_crtc_nofb()
12070 encoder->new_crtc = NULL; in disable_crtc_nofb()
12961 struct drm_encoder *encoder = connector->base.encoder; in intel_get_pipe_from_connector() local
12966 if (!encoder || WARN_ON(!encoder->crtc)) in intel_get_pipe_from_connector()
12969 return to_intel_crtc(encoder->crtc)->pipe; in intel_get_pipe_from_connector()
12992 static int intel_encoder_clones(struct intel_encoder *encoder) in intel_encoder_clones() argument
12994 struct drm_device *dev = encoder->base.dev; in intel_encoder_clones()
13000 if (encoders_cloneable(encoder, source_encoder)) in intel_encoder_clones()
13047 struct intel_encoder *encoder; in intel_setup_outputs() local
13185 for_each_intel_encoder(dev, encoder) { in intel_setup_outputs()
13186 encoder->base.possible_crtcs = encoder->crtc_mask; in intel_setup_outputs()
13187 encoder->base.possible_clones = in intel_setup_outputs()
13188 intel_encoder_clones(encoder); in intel_setup_outputs()
13898 if (connector->encoder->type == INTEL_OUTPUT_ANALOG) { in intel_enable_pipe_a()
13969 if (connector->encoder->base.crtc != &crtc->base) in intel_sanitize_crtc()
13973 connector->base.encoder = NULL; in intel_sanitize_crtc()
13978 if (connector->encoder->base.crtc == &crtc->base) { in intel_sanitize_crtc()
13979 connector->encoder->base.crtc = NULL; in intel_sanitize_crtc()
13980 connector->encoder->connectors_active = false; in intel_sanitize_crtc()
14002 struct intel_encoder *encoder; in intel_sanitize_crtc() local
14022 for_each_encoder_on_crtc(dev, &crtc->base, encoder) { in intel_sanitize_crtc()
14023 WARN_ON(encoder->connectors_active); in intel_sanitize_crtc()
14024 encoder->base.crtc = NULL; in intel_sanitize_crtc()
14047 static void intel_sanitize_encoder(struct intel_encoder *encoder) in intel_sanitize_encoder() argument
14050 struct drm_device *dev = encoder->base.dev; in intel_sanitize_encoder()
14055 bool has_active_crtc = encoder->base.crtc && in intel_sanitize_encoder()
14056 to_intel_crtc(encoder->base.crtc)->active; in intel_sanitize_encoder()
14058 if (encoder->connectors_active && !has_active_crtc) { in intel_sanitize_encoder()
14060 encoder->base.base.id, in intel_sanitize_encoder()
14061 encoder->base.name); in intel_sanitize_encoder()
14066 if (encoder->base.crtc) { in intel_sanitize_encoder()
14068 encoder->base.base.id, in intel_sanitize_encoder()
14069 encoder->base.name); in intel_sanitize_encoder()
14070 encoder->disable(encoder); in intel_sanitize_encoder()
14071 if (encoder->post_disable) in intel_sanitize_encoder()
14072 encoder->post_disable(encoder); in intel_sanitize_encoder()
14074 encoder->base.crtc = NULL; in intel_sanitize_encoder()
14075 encoder->connectors_active = false; in intel_sanitize_encoder()
14082 if (connector->encoder != encoder) in intel_sanitize_encoder()
14085 connector->base.encoder = NULL; in intel_sanitize_encoder()
14135 struct intel_encoder *encoder; in intel_modeset_readout_hw_state() local
14177 for_each_intel_encoder(dev, encoder) { in intel_modeset_readout_hw_state()
14180 if (encoder->get_hw_state(encoder, &pipe)) { in intel_modeset_readout_hw_state()
14182 encoder->base.crtc = &crtc->base; in intel_modeset_readout_hw_state()
14183 encoder->get_config(encoder, crtc->config); in intel_modeset_readout_hw_state()
14185 encoder->base.crtc = NULL; in intel_modeset_readout_hw_state()
14188 encoder->connectors_active = false; in intel_modeset_readout_hw_state()
14190 encoder->base.base.id, in intel_modeset_readout_hw_state()
14191 encoder->base.name, in intel_modeset_readout_hw_state()
14192 encoder->base.crtc ? "enabled" : "disabled", in intel_modeset_readout_hw_state()
14199 connector->encoder->connectors_active = true; in intel_modeset_readout_hw_state()
14200 connector->base.encoder = &connector->encoder->base; in intel_modeset_readout_hw_state()
14203 connector->base.encoder = NULL; in intel_modeset_readout_hw_state()
14208 connector->base.encoder ? "enabled" : "disabled"); in intel_modeset_readout_hw_state()
14220 struct intel_encoder *encoder; in intel_modeset_setup_hw_state() local
14241 for_each_intel_encoder(dev, encoder) { in intel_modeset_setup_hw_state()
14242 intel_sanitize_encoder(encoder); in intel_modeset_setup_hw_state()
14400 struct intel_encoder *encoder) in intel_connector_attach_encoder() argument
14402 connector->encoder = encoder; in intel_connector_attach_encoder()
14404 &encoder->base); in intel_connector_attach_encoder()