Lines Matching refs:nv_connector

102 	struct nouveau_connector *nv_connector = nouveau_connector(connector);  in nouveau_connector_destroy()  local
103 nvif_notify_fini(&nv_connector->hpd); in nouveau_connector_destroy()
104 kfree(nv_connector->edid); in nouveau_connector_destroy()
107 if (nv_connector->aux.transfer) in nouveau_connector_destroy()
108 drm_dp_aux_unregister(&nv_connector->aux); in nouveau_connector_destroy()
116 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_ddc_detect() local
127 if (nv_connector->type == DCB_CONNECTOR_eDP) { in nouveau_connector_ddc_detect()
170 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_of_detect() local
185 nv_connector->edid = in nouveau_connector_of_detect()
199 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_set_encoder() local
203 if (nv_connector->detected_encoder == nv_encoder) in nouveau_connector_set_encoder()
205 nv_connector->detected_encoder = nv_encoder; in nouveau_connector_set_encoder()
227 if (nv_connector->type == DCB_CONNECTOR_DVI_I) { in nouveau_connector_set_encoder()
241 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_detect() local
250 if (nv_connector->edid) { in nouveau_connector_detect()
252 kfree(nv_connector->edid); in nouveau_connector_detect()
253 nv_connector->edid = NULL; in nouveau_connector_detect()
262 nv_connector->edid = drm_get_edid(connector, &i2c->adapter); in nouveau_connector_detect()
264 nv_connector->edid); in nouveau_connector_detect()
265 if (!nv_connector->edid) { in nouveau_connector_detect()
286 if (nv_connector->edid->input & DRM_EDID_INPUT_DIGITAL) in nouveau_connector_detect()
337 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_detect_lvds() local
342 if (nv_connector->edid) { in nouveau_connector_detect_lvds()
344 kfree(nv_connector->edid); in nouveau_connector_detect_lvds()
345 nv_connector->edid = NULL; in nouveau_connector_detect_lvds()
369 if ((nv_connector->edid = nouveau_acpi_edid(dev, connector))) { in nouveau_connector_detect_lvds()
392 nv_connector->edid = in nouveau_connector_detect_lvds()
394 if (nv_connector->edid) in nouveau_connector_detect_lvds()
407 drm_mode_connector_update_edid_property(connector, nv_connector->edid); in nouveau_connector_detect_lvds()
416 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_force() local
420 if (nv_connector->type == DCB_CONNECTOR_DVI_I) { in nouveau_connector_force()
444 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_set_property() local
445 struct nouveau_encoder *nv_encoder = nv_connector->detected_encoder; in nouveau_connector_set_property()
469 switch (nv_connector->type) { in nouveau_connector_set_property()
494 if ((nv_connector->scaling_mode == DRM_MODE_SCALE_NONE) || in nouveau_connector_set_property()
497 nv_connector->scaling_mode = value; in nouveau_connector_set_property()
520 if (nv_connector->underscan != value) { in nouveau_connector_set_property()
521 nv_connector->underscan = value; in nouveau_connector_set_property()
532 if (nv_connector->underscan_hborder != value) { in nouveau_connector_set_property()
533 nv_connector->underscan_hborder = value; in nouveau_connector_set_property()
544 if (nv_connector->underscan_vborder != value) { in nouveau_connector_set_property()
545 nv_connector->underscan_vborder = value; in nouveau_connector_set_property()
557 nv_connector->dithering_mode = value; in nouveau_connector_set_property()
565 nv_connector->dithering_depth = value; in nouveau_connector_set_property()
597 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_native_mode() local
602 list_for_each_entry(mode, &nv_connector->base.probed_modes, head) { in nouveau_connector_native_mode()
664 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_scaler_modes_add() local
665 struct drm_display_mode *native = nv_connector->native_mode, *m; in nouveau_connector_scaler_modes_add()
698 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_detect_depth() local
699 struct nouveau_encoder *nv_encoder = nv_connector->detected_encoder; in nouveau_connector_detect_depth()
701 struct drm_display_mode *mode = nv_connector->native_mode; in nouveau_connector_detect_depth()
705 if (nv_connector->edid && connector->display_info.bpc) in nouveau_connector_detect_depth()
709 if (nv_connector->type == DCB_CONNECTOR_eDP) { in nouveau_connector_detect_depth()
732 if (nv_connector->edid && in nouveau_connector_detect_depth()
733 nv_connector->type == DCB_CONNECTOR_LVDS_SPWG) in nouveau_connector_detect_depth()
734 duallink = ((u8 *)nv_connector->edid)[121] == 2; in nouveau_connector_detect_depth()
748 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_get_modes() local
749 struct nouveau_encoder *nv_encoder = nv_connector->detected_encoder; in nouveau_connector_get_modes()
755 if (nv_connector->native_mode) { in nouveau_connector_get_modes()
756 drm_mode_destroy(dev, nv_connector->native_mode); in nouveau_connector_get_modes()
757 nv_connector->native_mode = NULL; in nouveau_connector_get_modes()
760 if (nv_connector->edid) in nouveau_connector_get_modes()
761 ret = drm_add_edid_modes(connector, nv_connector->edid); in nouveau_connector_get_modes()
769 nv_connector->native_mode = drm_mode_duplicate(dev, &mode); in nouveau_connector_get_modes()
782 if (!nv_connector->native_mode) in nouveau_connector_get_modes()
783 nv_connector->native_mode = in nouveau_connector_get_modes()
785 if (ret == 0 && nv_connector->native_mode) { in nouveau_connector_get_modes()
788 mode = drm_mode_duplicate(dev, nv_connector->native_mode); in nouveau_connector_get_modes()
803 if (nv_connector->type == DCB_CONNECTOR_LVDS || in nouveau_connector_get_modes()
804 nv_connector->type == DCB_CONNECTOR_LVDS_SPWG || in nouveau_connector_get_modes()
805 nv_connector->type == DCB_CONNECTOR_eDP) in nouveau_connector_get_modes()
814 struct nouveau_connector *nv_connector = nouveau_connector(connector); in get_tmds_link_bandwidth() local
816 struct dcb_output *dcb = nv_connector->detected_encoder->dcb; in get_tmds_link_bandwidth()
833 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_mode_valid() local
834 struct nouveau_encoder *nv_encoder = nv_connector->detected_encoder; in nouveau_connector_mode_valid()
841 if (nv_connector->native_mode && in nouveau_connector_mode_valid()
842 (mode->hdisplay > nv_connector->native_mode->hdisplay || in nouveau_connector_mode_valid()
843 mode->vdisplay > nv_connector->native_mode->vdisplay)) in nouveau_connector_mode_valid()
883 struct nouveau_connector *nv_connector = nouveau_connector(connector); in nouveau_connector_best_encoder() local
885 if (nv_connector->detected_encoder) in nouveau_connector_best_encoder()
886 return to_drm_encoder(nv_connector->detected_encoder); in nouveau_connector_best_encoder()
959 struct nouveau_connector *nv_connector = in nouveau_connector_hotplug() local
960 container_of(notify, typeof(*nv_connector), hpd); in nouveau_connector_hotplug()
961 struct drm_connector *connector = &nv_connector->base; in nouveau_connector_hotplug()
988 struct nouveau_connector *nv_connector = in nouveau_connector_aux_xfer() local
989 container_of(aux, typeof(*nv_connector), aux); in nouveau_connector_aux_xfer()
994 nv_encoder = find_encoder(&nv_connector->base, DCB_OUTPUT_DP); in nouveau_connector_aux_xfer()
1051 struct nouveau_connector *nv_connector = NULL; in nouveau_connector_create() local
1057 nv_connector = nouveau_connector(connector); in nouveau_connector_create()
1058 if (nv_connector->index == index) in nouveau_connector_create()
1062 nv_connector = kzalloc(sizeof(*nv_connector), GFP_KERNEL); in nouveau_connector_create()
1063 if (!nv_connector) in nouveau_connector_create()
1066 connector = &nv_connector->base; in nouveau_connector_create()
1067 nv_connector->index = index; in nouveau_connector_create()
1070 nv_connector->dcb = olddcb_conn(dev, index); in nouveau_connector_create()
1071 if (nv_connector->dcb) { in nouveau_connector_create()
1072 u32 entry = ROM16(nv_connector->dcb[0]); in nouveau_connector_create()
1074 entry |= (u32)ROM16(nv_connector->dcb[2]) << 16; in nouveau_connector_create()
1076 nv_connector->type = nv_connector->dcb[0]; in nouveau_connector_create()
1077 if (drm_conntype_from_dcb(nv_connector->type) == in nouveau_connector_create()
1080 nv_connector->type); in nouveau_connector_create()
1081 nv_connector->type = DCB_CONNECTOR_NONE; in nouveau_connector_create()
1086 if (nv_connector->type == DCB_CONNECTOR_HDMI_1) in nouveau_connector_create()
1087 nv_connector->type = DCB_CONNECTOR_DVI_I; in nouveau_connector_create()
1092 if (nv_connector->type == DCB_CONNECTOR_HDMI_1) in nouveau_connector_create()
1093 nv_connector->type = DCB_CONNECTOR_DVI_I; in nouveau_connector_create()
1096 nv_connector->type = DCB_CONNECTOR_NONE; in nouveau_connector_create()
1102 if (nv_connector->type == DCB_CONNECTOR_NONE) { in nouveau_connector_create()
1109 if (dcbt->entry[i].connector == nv_connector->index) in nouveau_connector_create()
1115 nv_connector->type = DCB_CONNECTOR_DP; in nouveau_connector_create()
1117 nv_connector->type = DCB_CONNECTOR_eDP; in nouveau_connector_create()
1121 nv_connector->type = DCB_CONNECTOR_DVI_I; in nouveau_connector_create()
1123 nv_connector->type = DCB_CONNECTOR_DVI_D; in nouveau_connector_create()
1126 nv_connector->type = DCB_CONNECTOR_VGA; in nouveau_connector_create()
1129 nv_connector->type = DCB_CONNECTOR_LVDS; in nouveau_connector_create()
1132 nv_connector->type = DCB_CONNECTOR_TV_0; in nouveau_connector_create()
1136 switch ((type = drm_conntype_from_dcb(nv_connector->type))) { in nouveau_connector_create()
1141 kfree(nv_connector); in nouveau_connector_create()
1149 nv_connector->aux.dev = dev->dev; in nouveau_connector_create()
1150 nv_connector->aux.transfer = nouveau_connector_aux_xfer; in nouveau_connector_create()
1151 ret = drm_dp_aux_register(&nv_connector->aux); in nouveau_connector_create()
1154 kfree(nv_connector); in nouveau_connector_create()
1173 if (nv_connector->type == DCB_CONNECTOR_DVI_I) in nouveau_connector_create()
1204 switch (nv_connector->type) { in nouveau_connector_create()
1210 nv_connector->scaling_mode = DRM_MODE_SCALE_FULLSCREEN; in nouveau_connector_create()
1213 nv_connector->scaling_mode = DRM_MODE_SCALE_NONE; in nouveau_connector_create()
1216 nv_connector->scaling_mode = DRM_MODE_SCALE_NONE; in nouveau_connector_create()
1221 switch (nv_connector->type) { in nouveau_connector_create()
1233 nv_connector->scaling_mode); in nouveau_connector_create()
1238 switch (nv_connector->type) { in nouveau_connector_create()
1248 nv_connector-> in nouveau_connector_create()
1250 nv_connector->dithering_mode = DITHERING_MODE_AUTO; in nouveau_connector_create()
1255 nv_connector-> in nouveau_connector_create()
1257 nv_connector->dithering_depth = DITHERING_DEPTH_AUTO; in nouveau_connector_create()
1270 &nv_connector->hpd); in nouveau_connector_create()