.. | .. |
---|
729 | 729 | static void cdn_dp_encoder_disable(struct drm_encoder *encoder) |
---|
730 | 730 | { |
---|
731 | 731 | struct cdn_dp_device *dp = encoder_to_dp(encoder); |
---|
| 732 | + struct drm_crtc *crtc = encoder->crtc; |
---|
| 733 | + struct rockchip_crtc_state *s = to_rockchip_crtc_state(crtc->state); |
---|
732 | 734 | int ret; |
---|
733 | 735 | |
---|
734 | 736 | mutex_lock(&dp->lock); |
---|
.. | .. |
---|
752 | 754 | */ |
---|
753 | 755 | if (!dp->connected && cdn_dp_connected_port(dp)) |
---|
754 | 756 | schedule_work(&dp->event_work); |
---|
| 757 | + |
---|
| 758 | + s->output_if &= ~VOP_OUTPUT_IF_DP0; |
---|
755 | 759 | } |
---|
756 | 760 | |
---|
757 | 761 | static int cdn_dp_encoder_atomic_check(struct drm_encoder *encoder, |
---|
.. | .. |
---|
773 | 777 | } |
---|
774 | 778 | |
---|
775 | 779 | s->output_mode = ROCKCHIP_OUT_MODE_AAAA; |
---|
| 780 | + s->output_if |= VOP_OUTPUT_IF_DP0; |
---|
776 | 781 | s->output_type = DRM_MODE_CONNECTOR_DisplayPort; |
---|
777 | 782 | s->tv_state = &conn_state->tv; |
---|
778 | 783 | s->eotf = TRADITIONAL_GAMMA_SDR; |
---|