Lines Matching refs:connector

40 int intel_connector_init(struct intel_connector *connector)
54 __drm_atomic_helper_connector_reset(&connector->base,
57 intel_panel_init_alloc(connector);
64 struct intel_connector *connector;
66 connector = kzalloc(sizeof(*connector), GFP_KERNEL);
67 if (!connector)
70 if (intel_connector_init(connector) < 0) {
71 kfree(connector);
75 return connector;
82 * Otherwise the destroy callbacks for the connector and the state should
85 void intel_connector_free(struct intel_connector *connector)
87 kfree(to_intel_digital_connector_state(connector->base.state));
88 kfree(connector);
94 void intel_connector_destroy(struct drm_connector *connector)
96 struct intel_connector *intel_connector = to_intel_connector(connector);
104 drm_connector_cleanup(connector);
109 kfree(connector);
112 int intel_connector_register(struct drm_connector *connector)
114 struct intel_connector *intel_connector = to_intel_connector(connector);
121 if (i915_inject_probe_failure(to_i915(connector->dev))) {
136 void intel_connector_unregister(struct drm_connector *connector)
138 struct intel_connector *intel_connector = to_intel_connector(connector);
143 void intel_connector_attach_encoder(struct intel_connector *connector,
146 connector->encoder = encoder;
147 drm_connector_attach_encoder(&connector->base, &encoder->base);
151 * Simple connector->get_hw_state implementation for encoders that support only
152 * one connector and no cloning and hence the encoder state determines the state
153 * of the connector.
155 bool intel_connector_get_hw_state(struct intel_connector *connector)
158 struct intel_encoder *encoder = intel_attached_encoder(connector);
163 enum pipe intel_connector_get_pipe(struct intel_connector *connector)
165 struct drm_device *dev = connector->base.dev;
170 if (!connector->base.state->crtc)
173 return to_intel_crtc(connector->base.state->crtc)->pipe;
177 * intel_connector_update_modes - update connector from edid
178 * @connector: DRM connector device to use
181 int intel_connector_update_modes(struct drm_connector *connector,
186 drm_edid_connector_update(connector, drm_edid);
187 ret = drm_edid_connector_add_modes(connector);
194 * @connector: DRM connector device to use
197 * Fetch the EDID information from @connector using the DDC bus.
199 int intel_ddc_get_modes(struct drm_connector *connector,
205 drm_edid = drm_edid_read_ddc(connector, ddc);
209 ret = intel_connector_update_modes(connector, drm_edid);
223 intel_attach_force_audio_property(struct drm_connector *connector)
225 struct drm_device *dev = connector->dev;
240 drm_object_attach_property(&connector->base, prop, 0);
250 intel_attach_broadcast_rgb_property(struct drm_connector *connector)
252 struct drm_device *dev = connector->dev;
268 drm_object_attach_property(&connector->base, prop, 0);
272 intel_attach_aspect_ratio_property(struct drm_connector *connector)
274 if (!drm_mode_create_aspect_ratio_property(connector->dev))
275 drm_object_attach_property(&connector->base,
276 connector->dev->mode_config.aspect_ratio_property,
281 intel_attach_hdmi_colorspace_property(struct drm_connector *connector)
283 if (!drm_mode_create_hdmi_colorspace_property(connector, 0))
284 drm_connector_attach_colorspace_property(connector);
288 intel_attach_dp_colorspace_property(struct drm_connector *connector)
290 if (!drm_mode_create_dp_colorspace_property(connector, 0))
291 drm_connector_attach_colorspace_property(connector);
295 intel_attach_scaling_mode_property(struct drm_connector *connector)
297 struct drm_i915_private *i915 = to_i915(connector->dev);
304 if (!HAS_GMCH(i915) || connector->connector_type == DRM_MODE_CONNECTOR_LVDS)
307 drm_connector_attach_scaling_mode_property(connector, scaling_modes);
309 connector->state->scaling_mode = DRM_MODE_SCALE_ASPECT;