mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 03:15:31 +09:00
media: rockchip: isp: fix sp no output when hdr dynamic switch
Change-Id: Idbb35a9c40e62fbc876345aaa516a842416c1bb3 Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This commit is contained in:
@@ -576,6 +576,10 @@ static int rkisp_stream_config_dcrop(struct rkisp_stream *stream, bool async)
|
||||
rkisp_disable_dcrop(stream, async);
|
||||
v4l2_dbg(1, rkisp_debug, &dev->v4l2_dev,
|
||||
"stream %d crop disabled\n", stream->id);
|
||||
if (RKMODULE_EXTEND_LINE != 0) {
|
||||
rkisp_write(dev, stream->config->dual_crop.h_size, src_w, false);
|
||||
rkisp_write(dev, stream->config->dual_crop.v_size, src_h, false);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -515,15 +515,16 @@ void rkisp_trigger_read_back(struct rkisp_device *dev, u8 dma2frm, u32 mode, boo
|
||||
}
|
||||
|
||||
if (dev->isp_ver == ISP_V20 && dev->dmarx_dev.trigger == T_MANUAL && !is_try) {
|
||||
if (dev->rd_mode != rd_mode && dev->br_dev.en) {
|
||||
if (dev->rd_mode != rd_mode && RKMODULE_EXTEND_LINE != 0) {
|
||||
tmp = dev->isp_sdev.in_crop.height;
|
||||
val = rkisp_read(dev, CIF_DUAL_CROP_CTRL, false);
|
||||
if (rd_mode == HDR_RDBK_FRAME1) {
|
||||
val |= CIF_DUAL_CROP_MP_MODE_YUV;
|
||||
val |= CIF_DUAL_CROP_MP_MODE_YUV | CIF_DUAL_CROP_SP_MODE_YUV;
|
||||
tmp += RKMODULE_EXTEND_LINE;
|
||||
} else {
|
||||
val &= ~CIF_DUAL_CROP_MP_MODE_YUV;
|
||||
val &= ~(CIF_DUAL_CROP_MP_MODE_YUV | CIF_DUAL_CROP_SP_MODE_YUV);
|
||||
}
|
||||
val |= CIF_DUAL_CROP_CFG_UPD;
|
||||
rkisp_write(dev, CIF_DUAL_CROP_CTRL, val, false);
|
||||
rkisp_write(dev, CIF_ISP_ACQ_V_SIZE, tmp, false);
|
||||
rkisp_write(dev, CIF_ISP_OUT_V_SIZE, tmp, false);
|
||||
|
||||
Reference in New Issue
Block a user