Lines Matching refs:connector

154 	/* Mark the type of connector */
210 static struct intel_sdvo *intel_attached_sdvo(struct drm_connector *connector)
212 return container_of(intel_attached_encoder(connector),
216 static struct intel_sdvo_connector *to_intel_sdvo_connector(struct drm_connector *connector)
218 return container_of(to_intel_connector(connector), struct intel_sdvo_connector, base);
1192 static bool intel_sdvo_connector_get_hw_state(struct intel_connector *connector)
1195 to_intel_sdvo_connector(&connector->base);
1196 struct intel_sdvo *intel_sdvo = intel_attached_sdvo(&connector->base);
1316 static void intel_sdvo_dpms(struct drm_connector *connector, int mode)
1319 struct intel_sdvo *intel_sdvo = intel_attached_sdvo(connector);
1325 if (mode == connector->dpms)
1328 connector->dpms = mode;
1355 intel_modeset_check_state(connector->dev);
1358 static int intel_sdvo_mode_valid(struct drm_connector *connector,
1361 struct intel_sdvo *intel_sdvo = intel_attached_sdvo(connector);
1453 intel_sdvo_get_edid(struct drm_connector *connector)
1455 struct intel_sdvo *sdvo = intel_attached_sdvo(connector);
1456 return drm_get_edid(connector, sdvo->ddc);
1459 /* Mac mini hack -- use the same DDC as the analog connector */
1461 intel_sdvo_get_analog_edid(struct drm_connector *connector)
1463 struct drm_i915_private *dev_priv = connector->dev->dev_private;
1465 return drm_get_edid(connector,
1471 intel_sdvo_tmds_sink_detect(struct drm_connector *connector)
1473 struct intel_sdvo *intel_sdvo = intel_attached_sdvo(connector);
1477 edid = intel_sdvo_get_edid(connector);
1488 edid = intel_sdvo_get_edid(connector);
1502 * port, try to use the CRT ddc to read the EDID for DVI-connector.
1505 edid = intel_sdvo_get_analog_edid(connector);
1509 /* DDC bus is shared, match EDID to connector type */
1522 struct intel_sdvo_connector *intel_sdvo_connector = to_intel_sdvo_connector(connector);
1543 intel_sdvo_detect(struct drm_connector *connector, bool force)
1546 struct intel_sdvo *intel_sdvo = intel_attached_sdvo(connector);
1547 struct intel_sdvo_connector *intel_sdvo_connector = to_intel_sdvo_connector(connector);
1570 ret = intel_sdvo_tmds_sink_detect(connector);
1575 edid = intel_sdvo_get_edid(connector);
1577 edid = intel_sdvo_get_analog_edid(connector);
1607 static void intel_sdvo_get_ddc_modes(struct drm_connector *connector)
1612 edid = intel_sdvo_get_edid(connector);
1615 * Mac mini hack. On this device, the DVI-I connector shares one DDC
1621 edid = intel_sdvo_get_analog_edid(connector);
1624 if (intel_sdvo_connector_matches_edid(to_intel_sdvo_connector(connector),
1626 drm_mode_connector_update_edid_property(connector, edid);
1627 drm_add_edid_modes(connector, edid);
1699 static void intel_sdvo_get_tv_modes(struct drm_connector *connector)
1701 struct intel_sdvo *intel_sdvo = intel_attached_sdvo(connector);
1727 nmode = drm_mode_duplicate(connector->dev,
1730 drm_mode_probed_add(connector, nmode);
1734 static void intel_sdvo_get_lvds_modes(struct drm_connector *connector)
1736 struct intel_sdvo *intel_sdvo = intel_attached_sdvo(connector);
1737 struct drm_i915_private *dev_priv = connector->dev->dev_private;
1745 intel_ddc_get_modes(connector, intel_sdvo->i2c);
1746 if (list_empty(&connector->probed_modes) == false)
1751 newmode = drm_mode_duplicate(connector->dev,
1757 drm_mode_probed_add(connector, newmode);
1762 list_for_each_entry(newmode, &connector->probed_modes, head) {
1765 drm_mode_duplicate(connector->dev, newmode);
1774 static int intel_sdvo_get_modes(struct drm_connector *connector)
1776 struct intel_sdvo_connector *intel_sdvo_connector = to_intel_sdvo_connector(connector);
1779 intel_sdvo_get_tv_modes(connector);
1781 intel_sdvo_get_lvds_modes(connector);
1783 intel_sdvo_get_ddc_modes(connector);
1785 return !list_empty(&connector->probed_modes);
1789 intel_sdvo_destroy_enhance_property(struct drm_connector *connector)
1791 struct intel_sdvo_connector *intel_sdvo_connector = to_intel_sdvo_connector(connector);
1792 struct drm_device *dev = connector->dev;
1830 static void intel_sdvo_destroy(struct drm_connector *connector)
1832 struct intel_sdvo_connector *intel_sdvo_connector = to_intel_sdvo_connector(connector);
1835 drm_property_destroy(connector->dev,
1838 intel_sdvo_destroy_enhance_property(connector);
1839 drm_connector_cleanup(connector);
1843 static bool intel_sdvo_detect_hdmi_audio(struct drm_connector *connector)
1845 struct intel_sdvo *intel_sdvo = intel_attached_sdvo(connector);
1852 edid = intel_sdvo_get_edid(connector);
1861 intel_sdvo_set_property(struct drm_connector *connector,
1865 struct intel_sdvo *intel_sdvo = intel_attached_sdvo(connector);
1866 struct intel_sdvo_connector *intel_sdvo_connector = to_intel_sdvo_connector(connector);
1867 struct drm_i915_private *dev_priv = connector->dev->dev_private;
1872 ret = drm_object_property_set_value(&connector->base, property, val);
1886 has_audio = intel_sdvo_detect_hdmi_audio(connector);
1927 drm_object_property_set_value(&connector->base,
1939 drm_object_property_set_value(&connector->base,
1951 drm_object_property_set_value(&connector->base,
1963 drm_object_property_set_value(&connector->base,
2181 intel_sdvo_connector_init(struct intel_sdvo_connector *connector,
2185 &connector->base.base,
2187 connector->base.base.connector_type);
2189 drm_connector_helper_add(&connector->base.base,
2192 connector->base.base.interlace_allowed = 1;
2193 connector->base.base.doublescan_allowed = 0;
2194 connector->base.base.display_info.subpixel_order = SubPixelHorizontalRGB;
2195 connector->base.get_hw_state = intel_sdvo_connector_get_hw_state;
2197 intel_connector_attach_encoder(&connector->base, &encoder->base);
2201 intel_sdvo_add_hdmi_properties(struct intel_sdvo_connector *connector)
2203 struct drm_device *dev = connector->base.base.dev;
2205 intel_attach_force_audio_property(&connector->base.base);
2207 intel_attach_broadcast_rgb_property(&connector->base.base);
2214 struct drm_connector *connector;
2232 connector = &intel_connector->base;
2235 connector->polled = DRM_CONNECTOR_POLL_HPD;
2243 connector->polled = DRM_CONNECTOR_POLL_CONNECT | DRM_CONNECTOR_POLL_DISCONNECT;
2246 connector->connector_type = DRM_MODE_CONNECTOR_DVID;
2249 connector->connector_type = DRM_MODE_CONNECTOR_HDMIA;
2264 struct drm_connector *connector;
2273 connector = &intel_connector->base;
2275 connector->connector_type = DRM_MODE_CONNECTOR_SVIDEO;
2294 intel_sdvo_destroy(connector);
2302 struct drm_connector *connector;
2311 connector = &intel_connector->base;
2312 connector->polled = DRM_CONNECTOR_POLL_CONNECT;
2314 connector->connector_type = DRM_MODE_CONNECTOR_VGA;
2333 struct drm_connector *connector;
2342 connector = &intel_connector->base;
2344 connector->connector_type = DRM_MODE_CONNECTOR_LVDS;
2361 intel_sdvo_destroy(connector);
2429 struct drm_connector *connector, *tmp;
2431 list_for_each_entry_safe(connector, tmp,
2433 if (intel_attached_encoder(connector) == &intel_sdvo->base)
2434 intel_sdvo_destroy(connector);
2494 drm_object_attach_property(&connector->base, \
2508 struct drm_connector *connector = &intel_sdvo_connector->base.base;
2531 drm_object_attach_property(&connector->base,
2540 drm_object_attach_property(&connector->base,
2568 drm_object_attach_property(&connector->base,
2578 drm_object_attach_property(&connector->base,
2610 drm_object_attach_property(&connector->base,
2625 struct drm_connector *connector = &intel_sdvo_connector->base.base;