Lines Matching refs:mstc

865 	struct nv50_mstc *mstc;  member
878 if (!msto->mstc) in nv50_real_outp()
880 return msto->mstc->mstm->outp; in nv50_real_outp()
891 drm_atomic_get_mst_payload_state(mst_state, msto->mstc->port); in nv50_msto_cleanup()
896 msto->mstc = NULL; in nv50_msto_cleanup()
911 struct nv50_mstc *mstc = msto->mstc; in nv50_msto_prepare() local
912 struct nv50_mstm *mstm = mstc->mstm; in nv50_msto_prepare()
920 payload = drm_atomic_get_mst_payload_state(mst_state, mstc->port); in nv50_msto_prepare()
921 old_payload = drm_atomic_get_mst_payload_state(old_mst_state, mstc->port); in nv50_msto_prepare()
946 struct nv50_mstc *mstc = nv50_mstc(connector); in nv50_msto_atomic_check() local
947 struct nv50_mstm *mstm = mstc->mstm; in nv50_msto_atomic_check()
953 mstc->native); in nv50_msto_atomic_check()
978 struct nouveau_encoder *outp = mstc->mstm->outp; in nv50_msto_atomic_check()
984 slots = drm_dp_atomic_find_time_slots(state, &mstm->mgr, mstc->port, asyh->dp.pbn); in nv50_msto_atomic_check()
1011 struct nv50_mstc *mstc = NULL; in nv50_msto_atomic_enable() local
1020 mstc = nv50_mstc(connector); in nv50_msto_atomic_enable()
1021 mstm = mstc->mstm; in nv50_msto_atomic_enable()
1027 if (WARN_ON(!mstc)) in nv50_msto_atomic_enable()
1043 msto->mstc = mstc; in nv50_msto_atomic_enable()
1052 struct nv50_mstc *mstc = msto->mstc; in nv50_msto_atomic_disable() local
1053 struct nv50_mstm *mstm = mstc->mstm; in nv50_msto_atomic_disable()
1111 struct nv50_mstc *mstc = nv50_mstc(connector); in nv50_mstc_atomic_best_encoder() local
1114 if (!(mstc->mstm->outp->dcb->heads & drm_crtc_mask(crtc))) in nv50_mstc_atomic_best_encoder()
1124 struct nv50_mstc *mstc = nv50_mstc(connector); in nv50_mstc_mode_valid() local
1125 struct nouveau_encoder *outp = mstc->mstm->outp; in nv50_mstc_mode_valid()
1137 struct nv50_mstc *mstc = nv50_mstc(connector); in nv50_mstc_get_modes() local
1140 mstc->edid = drm_dp_mst_get_edid(&mstc->connector, mstc->port->mgr, mstc->port); in nv50_mstc_get_modes()
1141 drm_connector_update_edid_property(&mstc->connector, mstc->edid); in nv50_mstc_get_modes()
1142 if (mstc->edid) in nv50_mstc_get_modes()
1143 ret = drm_add_edid_modes(&mstc->connector, mstc->edid); in nv50_mstc_get_modes()
1157 if (mstc->native) in nv50_mstc_get_modes()
1158 drm_mode_destroy(mstc->connector.dev, mstc->native); in nv50_mstc_get_modes()
1159 mstc->native = nouveau_conn_native_mode(&mstc->connector); in nv50_mstc_get_modes()
1167 struct nv50_mstc *mstc = nv50_mstc(connector); in nv50_mstc_atomic_check() local
1168 struct drm_dp_mst_topology_mgr *mgr = &mstc->mstm->mgr; in nv50_mstc_atomic_check()
1170 return drm_dp_atomic_release_time_slots(state, mgr, mstc->port); in nv50_mstc_atomic_check()
1177 struct nv50_mstc *mstc = nv50_mstc(connector); in nv50_mstc_detect() local
1189 ret = drm_dp_mst_detect_port(connector, ctx, mstc->port->mgr, in nv50_mstc_detect()
1190 mstc->port); in nv50_mstc_detect()
1212 struct nv50_mstc *mstc = nv50_mstc(connector); in nv50_mstc_destroy() local
1214 drm_connector_cleanup(&mstc->connector); in nv50_mstc_destroy()
1215 drm_dp_mst_put_port_malloc(mstc->port); in nv50_mstc_destroy()
1217 kfree(mstc); in nv50_mstc_destroy()
1237 struct nv50_mstc *mstc; in nv50_mstc_new() local
1240 if (!(mstc = *pmstc = kzalloc(sizeof(*mstc), GFP_KERNEL))) in nv50_mstc_new()
1242 mstc->mstm = mstm; in nv50_mstc_new()
1243 mstc->port = port; in nv50_mstc_new()
1245 ret = drm_connector_init(dev, &mstc->connector, &nv50_mstc, in nv50_mstc_new()
1253 drm_connector_helper_add(&mstc->connector, &nv50_mstc_help); in nv50_mstc_new()
1255 mstc->connector.funcs->reset(&mstc->connector); in nv50_mstc_new()
1256 nouveau_conn_attach_properties(&mstc->connector); in nv50_mstc_new()
1262 drm_connector_attach_encoder(&mstc->connector, in nv50_mstc_new()
1266 drm_object_attach_property(&mstc->connector.base, dev->mode_config.path_property, 0); in nv50_mstc_new()
1267 drm_object_attach_property(&mstc->connector.base, dev->mode_config.tile_property, 0); in nv50_mstc_new()
1268 drm_connector_set_path_property(&mstc->connector, path); in nv50_mstc_new()
1287 struct nv50_mstc *mstc = msto->mstc; in nv50_mstm_cleanup() local
1288 if (mstc && mstc->mstm == mstm) in nv50_mstm_cleanup()
1310 struct nv50_mstc *mstc = msto->mstc; in nv50_mstm_prepare() local
1311 if (mstc && mstc->mstm == mstm && msto->disabled) in nv50_mstm_prepare()
1322 struct nv50_mstc *mstc = msto->mstc; in nv50_mstm_prepare() local
1323 if (mstc && mstc->mstm == mstm && !msto->disabled) in nv50_mstm_prepare()
1340 struct nv50_mstc *mstc; in nv50_mstm_add_connector() local
1343 ret = nv50_mstc_new(mstm, port, path, &mstc); in nv50_mstm_add_connector()
1347 return &mstc->connector; in nv50_mstm_add_connector()