mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 10:58:48 +09:00
drm/rockchip: vop2: use rkiommu 1.0 for rk3576 reserved plane mode
reserved plane mode will enable iommu bypass for rtos reserved plane display, but rkiommu 2.0 can't support iommu bypass function, so use rkiommu 1.0 at reserved plane mode by default, others will use rkiommu 2.0 by default. Signed-off-by: Sandy Huang <hjc@rock-chips.com> Change-Id: I68f2ae66e4e0d7eec45264c39a7f23deab01c8eb
This commit is contained in:
@@ -4712,8 +4712,14 @@ static void vop2_initial(struct drm_crtc *crtc)
|
||||
vop2_mask_write(vop2, 0x700, 0x3, 4, 0, 0, true);
|
||||
|
||||
if (vop2->version == VOP_VERSION_RK3576) {
|
||||
/* Default use rkiommu 2.0 for axi0 */
|
||||
VOP_CTRL_SET(vop2, rkmmu_v2_en, 1);
|
||||
/* reserved plane mode will enable iommu bypass for rtos reserved plane display,
|
||||
* but rkiommu 2.0 can't support iommu bypass function, so use rkiommu 1.0
|
||||
* at reserved plane mode by default, others will use rkiommu 2.0 by default.
|
||||
*/
|
||||
if (vop2->enable_reserved_plane)
|
||||
VOP_CTRL_SET(vop2, rkmmu_v2_en, 0);
|
||||
else /* Default use rkiommu 2.0 for axi0 */
|
||||
VOP_CTRL_SET(vop2, rkmmu_v2_en, 1);
|
||||
|
||||
if (vop2->merge_irq == true)
|
||||
VOP_CTRL_SET(vop2, vp_intr_merge_en, 1);
|
||||
|
||||
Reference in New Issue
Block a user