Rev 6660 | Rev 6937 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6660 | Rev 6935 | ||
---|---|---|---|
Line 914... | Line 914... | ||
914 | return; |
914 | return; |
915 | } |
915 | } |
916 | /* no need to clean up vcpi |
916 | /* no need to clean up vcpi |
917 | * as if we have no connector we never setup a vcpi */ |
917 | * as if we have no connector we never setup a vcpi */ |
918 | drm_dp_port_teardown_pdt(port, port->pdt); |
918 | drm_dp_port_teardown_pdt(port, port->pdt); |
- | 919 | port->pdt = DP_PEER_DEVICE_NONE; |
|
919 | } |
920 | } |
920 | kfree(port); |
921 | kfree(port); |
921 | } |
922 | } |
Line 922... | Line 923... | ||
922 | 923 | ||
Line 1159... | Line 1160... | ||
1159 | mutex_unlock(&mstb->mgr->lock); |
1160 | mutex_unlock(&mstb->mgr->lock); |
1160 | /* drop port list reference */ |
1161 | /* drop port list reference */ |
1161 | drm_dp_put_port(port); |
1162 | drm_dp_put_port(port); |
1162 | goto out; |
1163 | goto out; |
1163 | } |
1164 | } |
- | 1165 | if ((port->pdt == DP_PEER_DEVICE_DP_LEGACY_CONV || |
|
- | 1166 | port->pdt == DP_PEER_DEVICE_SST_SINK) && |
|
1164 | if (port->port_num >= DP_MST_LOGICAL_PORT_0) { |
1167 | port->port_num >= DP_MST_LOGICAL_PORT_0) { |
1165 | port->cached_edid = drm_get_edid(port->connector, &port->aux.ddc); |
1168 | port->cached_edid = drm_get_edid(port->connector, &port->aux.ddc); |
1166 | drm_mode_connector_set_tile_property(port->connector); |
1169 | drm_mode_connector_set_tile_property(port->connector); |
1167 | } |
1170 | } |
1168 | (*mstb->mgr->cbs->register_connector)(port->connector); |
1171 | (*mstb->mgr->cbs->register_connector)(port->connector); |
1169 | } |
1172 | } |
Line 1814... | Line 1817... | ||
1814 | if (req_payload.num_slots) { |
1817 | if (req_payload.num_slots) { |
1815 | drm_dp_create_payload_step1(mgr, mgr->proposed_vcpis[i]->vcpi, &req_payload); |
1818 | drm_dp_create_payload_step1(mgr, mgr->proposed_vcpis[i]->vcpi, &req_payload); |
1816 | mgr->payloads[i].num_slots = req_payload.num_slots; |
1819 | mgr->payloads[i].num_slots = req_payload.num_slots; |
1817 | } else if (mgr->payloads[i].num_slots) { |
1820 | } else if (mgr->payloads[i].num_slots) { |
1818 | mgr->payloads[i].num_slots = 0; |
1821 | mgr->payloads[i].num_slots = 0; |
1819 | drm_dp_destroy_payload_step1(mgr, port, port->vcpi.vcpi, &mgr->payloads[i]); |
1822 | drm_dp_destroy_payload_step1(mgr, port, mgr->payloads[i].vcpi, &mgr->payloads[i]); |
1820 | req_payload.payload_state = mgr->payloads[i].payload_state; |
1823 | req_payload.payload_state = mgr->payloads[i].payload_state; |
1821 | mgr->payloads[i].start_slot = 0; |
1824 | mgr->payloads[i].start_slot = 0; |
1822 | } |
1825 | } |
1823 | mgr->payloads[i].payload_state = req_payload.payload_state; |
1826 | mgr->payloads[i].payload_state = req_payload.payload_state; |
1824 | } |
1827 | } |