if (legacy_vpp || is_meson_tl1_cpu())
iret = vpp_set_filters_no_scaler(
&glayer_info[1], vf,
- nextpip_frame_par, vinfo);
+ nextpip_frame_par, vinfo, 1);
else
iret = vpp_set_filters(
&glayer_info[1], vf,
nextpip_frame_par, vinfo,
- true);
+ true, 1);
if (iret == VppFilter_Success_and_Changed)
pip_property_changed = 1;
&glayer_info[0], vf,
next_frame_par, vinfo,
(is_dolby_vision_on() &&
- is_dolby_vision_stb_mode()));
+ is_dolby_vision_stb_mode()), 1);
if (iret == VppFilter_Success_and_Changed)
video_property_changed = 1;
&glayer_info[0],
vf, &frame_par, vinfo,
(is_dolby_vision_on() &&
- is_dolby_vision_stb_mode()));
+ is_dolby_vision_stb_mode()), 0);
ret = frame_par.vscale_skip_count;
if (cur_frame_par && (process_3d_type & MODE_3D_ENABLE))
ret |= (cur_frame_par->vpp_3d_mode<<8);
(vf->canvas0Addr != 0) &&
(next_frame_par->vscale_skip_count > 1) &&
(!next_frame_par->nocomp)) {
- pr_info(
+ if (vpp_flags & VPP_FLAG_MORE_LOG)
+ pr_info(
"layer%d: Try DW buffer for compressed frame scaling.\n",
input->layer_id);
(vf->canvas0Addr != 0) &&
(next_frame_par->vscale_skip_count > 1) &&
(!next_frame_par->nocomp)) {
- pr_info(
+ if (vpp_flags & VPP_FLAG_MORE_LOG)
+ pr_info(
"layer%d: Try DW buffer for compressed frame scaling.\n",
input->layer_id);
struct vframe_s *vf,
struct vpp_frame_par_s *next_frame_par,
const struct vinfo_s *vinfo,
- bool bypass_sr)
+ bool bypass_sr, u32 op_flag)
{
u32 src_width = 0;
u32 src_height = 0;
if (vinfo->field_height != vinfo->height)
vpp_flags |= VPP_FLAG_INTERLACE_OUT;
+ if (op_flag & 1)
+ vpp_flags |= VPP_FLAG_MORE_LOG;
+
next_frame_par->VPP_post_blend_vd_v_end_ = vinfo->field_height - 1;
next_frame_par->VPP_post_blend_vd_h_end_ = vinfo->width - 1;
next_frame_par->VPP_post_blend_h_size_ = vinfo->width;
struct disp_info_s *input,
struct vframe_s *vf,
struct vpp_frame_par_s *next_frame_par,
- const struct vinfo_s *vinfo)
+ const struct vinfo_s *vinfo, u32 op_flag)
{
u32 src_width = 0;
u32 src_height = 0;
if (vinfo->field_height != vinfo->height)
vpp_flags |= VPP_FLAG_INTERLACE_OUT;
+ if (op_flag & 1)
+ vpp_flags |= VPP_FLAG_MORE_LOG;
+
next_frame_par->VPP_post_blend_vd_v_end_ = vinfo->field_height - 1;
next_frame_par->VPP_post_blend_vd_h_end_ = vinfo->width - 1;
next_frame_par->VPP_post_blend_h_size_ = vinfo->width;
#define VPP_FLAG_AR_BITS 8
#define VPP_FLAG_PORTRAIT_MODE 0x00040000
#define VPP_FLAG_VSCALE_DISABLE 0x00080000
+#define VPP_FLAG_MORE_LOG 0x00100000
#define IDX_H (2 << 8)
#define IDX_V_Y (1 << 13)
struct vframe_s *vf,
struct vpp_frame_par_s *next_frame_par,
const struct vinfo_s *vinfo,
- bool bypass_sr);
+ bool bypass_sr, u32 op_flag);
extern int vpp_set_filters_no_scaler(
struct disp_info_s *input,
struct vframe_s *vf,
struct vpp_frame_par_s *next_frame_par,
- const struct vinfo_s *vinfo);
+ const struct vinfo_s *vinfo, u32 op_flag);
extern s32 vpp_set_nonlinear_factor(
struct disp_info_s *info, u32 f);