drm/rockchip: vop: Add MCU support for RV1126B

Change-Id: Ic91e167930d92a7cb13f345199a5ee5560df1fa8
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
This commit is contained in:
Chaoyi Chen
2025-03-25 11:18:46 +00:00
committed by Tao Huang
parent 6990c888f1
commit 5b8f017ee3
3 changed files with 8 additions and 3 deletions

View File

@@ -4144,8 +4144,10 @@ static void vop_crtc_atomic_enable(struct drm_crtc *crtc,
vop_crtc_load_lut(crtc);
if (vop->mcu_timing.mcu_pix_total) {
if (vop->version == VOP_VERSION_RK3576_LITE ||
vop->version == VOP_VERSION_RK3506)
/*
* For RK3576_LITE/RK3506/RV1126B
*/
if (vop->version >= VOP_VERSION_RK3576_LITE && vop->version <= VOP_VERSION_RK3288)
vop_set_out_mode(vop, s->output_mode);
else
vop_set_out_mode(vop, ROCKCHIP_OUT_MODE_P888);

View File

@@ -31,6 +31,7 @@
#define VOP_VERSION_RV1106 VOP_VERSION(2, 0xc)
#define VOP_VERSION_RK3576_LITE VOP_VERSION(2, 0xd)
#define VOP_VERSION_RK3506 VOP_VERSION(2, 0xe)
#define VOP_VERSION_RV1126B VOP_VERSION(2, 0xf)
#define VOP_VERSION_RK3288 VOP_VERSION(3, 0)
#define VOP_VERSION_RK3288W VOP_VERSION(3, 1)
#define VOP_VERSION_RK3368 VOP_VERSION(3, 2)

View File

@@ -35,6 +35,7 @@
VOP_REG_VER_MASK(off, _mask, s, false, \
_major, _begin_minor, _end_minor)
static const struct vop_mcu_bypass_cfg rk3576_lit_mcu_bypass_cfg;
static const uint32_t formats_win_full[] = {
DRM_FORMAT_XRGB8888,
@@ -2040,7 +2041,7 @@ static const struct vop_wb_data rv1126b_vop_wb_data = {
static const struct vop_data rv1126b_vop = {
.soc_id = 0x1126b,
.vop_id = 0,
.version = VOP_VERSION(2, 5),
.version = VOP_VERSION(2, 0xf),
.max_input = {1920, 1920},
.max_output = {1920, 1080},
.ctrl = &rv1126b_ctrl_data,
@@ -2050,6 +2051,7 @@ static const struct vop_data rv1126b_vop = {
.grf = &rv1126b_grf_ctrl,
.win = rv1126_vop_win_data,
.win_size = ARRAY_SIZE(rv1126_vop_win_data),
.mcu_bypass_cfg = &rk3576_lit_mcu_bypass_cfg,
};
static const struct vop_ctrl rv1106_ctrl_data = {