mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 11:50:43 +09:00
drm/rockchip: vop2: add support soft te for mipi cmd mode
some product will use gpio to instead of TE, so we add soft TE for all vp. Signed-off-by: Sandy Huang <hjc@rock-chips.com> Change-Id: Idb2d8b6a63c17308519761ae986f853b2baf0bc4
This commit is contained in:
@@ -181,6 +181,11 @@ struct rockchip_crtc_state {
|
||||
* (3) edp psr mode
|
||||
*/
|
||||
bool hold_mode;
|
||||
/**
|
||||
* when enable soft_te, use gpio irq to triggle new fs,
|
||||
* otherwise use hardware te
|
||||
*/
|
||||
bool soft_te;
|
||||
|
||||
struct drm_tv_connector_state *tv_state;
|
||||
int left_margin;
|
||||
|
||||
@@ -6599,7 +6599,7 @@ static void vop2_crtc_atomic_enable(struct drm_crtc *crtc, struct drm_crtc_state
|
||||
VOP_CTRL_SET(vop2, mipi_pin_pol, val);
|
||||
VOP_CTRL_SET(vop2, mipi_dclk_pol, dclk_inv);
|
||||
if (vcstate->hold_mode) {
|
||||
VOP_MODULE_SET(vop2, vp, edpi_te_en, 1);
|
||||
VOP_MODULE_SET(vop2, vp, edpi_te_en, !vcstate->soft_te);
|
||||
VOP_MODULE_SET(vop2, vp, edpi_wms_hold_en, 1);
|
||||
}
|
||||
}
|
||||
@@ -6621,11 +6621,7 @@ static void vop2_crtc_atomic_enable(struct drm_crtc *crtc, struct drm_crtc_state
|
||||
VOP_CTRL_SET(vop2, mipi_pin_pol, val);
|
||||
VOP_CTRL_SET(vop2, mipi_dclk_pol, dclk_inv);
|
||||
if (vcstate->hold_mode) {
|
||||
/* RK3588 VP1->DSC1->DSI1 only can support soft TE mode */
|
||||
if (vop2->version == VOP_VERSION_RK3588 && vp->id == 1)
|
||||
VOP_MODULE_SET(vop2, vp, edpi_te_en, 0);
|
||||
else
|
||||
VOP_MODULE_SET(vop2, vp, edpi_te_en, 1);
|
||||
VOP_MODULE_SET(vop2, vp, edpi_te_en, !vcstate->soft_te);
|
||||
VOP_MODULE_SET(vop2, vp, edpi_wms_hold_en, 1);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user