mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 19:30:30 +09:00
vpp: set the sr position reg correctly [1/1]
PD#SWPL-14963 Problem: The position bits of super scaler is incorrect. Solution: Set the position bits correctly Verify: Verified on U212 Change-Id: I133662859456f65e130b8795f574da845039c717 Signed-off-by: Brian Zhu <brian.zhu@amlogic.com>
This commit is contained in:
@@ -8198,9 +8198,9 @@ SET_FILTER:
|
||||
if (cur_frame_par->sr0_position)
|
||||
vpp_misc_set |=
|
||||
PREBLD_SR0_VD1_SCALER;
|
||||
else
|
||||
else /* SR0_AFTER_DNLP */
|
||||
vpp_misc_set &=
|
||||
~SR0_AFTER_DNLP;
|
||||
~PREBLD_SR0_VD1_SCALER;
|
||||
else
|
||||
vpp_misc_set |=
|
||||
PREBLD_SR0_VD1_SCALER;
|
||||
@@ -8211,9 +8211,9 @@ SET_FILTER:
|
||||
if (cur_frame_par->sr1_position)
|
||||
vpp_misc_set |=
|
||||
DNLP_SR1_CM;
|
||||
else
|
||||
else /* SR1_AFTER_POSTBLEN */
|
||||
vpp_misc_set &=
|
||||
~SR1_AFTER_POSTBLEN;
|
||||
~DNLP_SR1_CM;
|
||||
else
|
||||
vpp_misc_set |=
|
||||
DNLP_SR1_CM;
|
||||
@@ -13261,9 +13261,8 @@ static int __init video_early_init(void)
|
||||
} else if (cpu_after_eq(MESON_CPU_MAJOR_ID_G12B)) {
|
||||
WRITE_VCBUS_REG_BITS(
|
||||
SRSHARP0_SHARP_SYNC_CTRL, 1, 0, 1);
|
||||
/* TODO: check if the bit8 is available */
|
||||
/* WRITE_VCBUS_REG_BITS( */
|
||||
/* SRSHARP0_SHARP_SYNC_CTRL, 1, 8, 1); */
|
||||
WRITE_VCBUS_REG_BITS(
|
||||
SRSHARP0_SHARP_SYNC_CTRL, 1, 8, 1);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2009,6 +2009,16 @@ static void vpp_set_super_scaler(
|
||||
next_frame_par->supsc1_vert_ratio ? 1 : 0;
|
||||
next_frame_par->supsc1_hori_ratio = 0;
|
||||
}
|
||||
|
||||
/*double check core0 input width for core0_vert_ratio!!!*/
|
||||
if (next_frame_par->supsc0_vert_ratio &&
|
||||
(width_out >> next_frame_par->supsc0_hori_ratio >
|
||||
sr->core0_v_enable_width_max)) {
|
||||
next_frame_par->supsc0_vert_ratio = 0;
|
||||
if (next_frame_par->supsc0_hori_ratio == 0)
|
||||
next_frame_par->supsc0_enable = 0;
|
||||
}
|
||||
|
||||
/*double check core1 input width for core1_vert_ratio!!!*/
|
||||
if (next_frame_par->supsc1_vert_ratio &&
|
||||
(width_out >> next_frame_par->supsc1_hori_ratio >
|
||||
@@ -2017,6 +2027,7 @@ static void vpp_set_super_scaler(
|
||||
if (next_frame_par->supsc1_hori_ratio == 0)
|
||||
next_frame_par->supsc1_enable = 0;
|
||||
}
|
||||
|
||||
/* option add patch */
|
||||
if ((ver_sc_multiple_num <= super_scaler_v_ratio) &&
|
||||
(src_height >= SUPER_CORE0_WIDTH_MAX / 2) &&
|
||||
|
||||
Reference in New Issue
Block a user