mirror of
https://github.com/torvalds/linux.git
synced 2026-06-08 14:42:37 +02:00
media: rockchip: isp: fix no work for internal read back case
Change-Id: I00722d7cd0f6e5011ea24c14cbdd7a5437a82eb4 Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This commit is contained in:
parent
6d25c622a5
commit
a17a958f85
|
|
@ -694,8 +694,7 @@ void rkisp_bridge_isr(u32 *mis_val, struct rkisp_device *dev)
|
|||
|
||||
/* dmarx isr is unreliable, MI frame end to replace it */
|
||||
if (*mis_val & (MI_MP_FRAME | MI_MPFBC_FRAME) &&
|
||||
IS_HDR_RDBK(dev->hdr.op_mode) &&
|
||||
dev->dmarx_dev.trigger == T_MANUAL) {
|
||||
IS_HDR_RDBK(dev->hdr.op_mode)) {
|
||||
switch (dev->hdr.op_mode) {
|
||||
case HDR_RDBK_FRAME3://for rd1 rd0 rd2
|
||||
val |= RAW1_RD_FRAME;
|
||||
|
|
@ -708,7 +707,8 @@ void rkisp_bridge_isr(u32 *mis_val, struct rkisp_device *dev)
|
|||
/* FALLTHROUGH */
|
||||
}
|
||||
rkisp2_rawrd_isr(val, dev);
|
||||
rkisp_csi_trigger_event(&dev->csi_dev, NULL);
|
||||
if (dev->dmarx_dev.trigger == T_MANUAL)
|
||||
rkisp_csi_trigger_event(&dev->csi_dev, NULL);
|
||||
}
|
||||
|
||||
if (!bridge->en || !bridge->cfg ||
|
||||
|
|
|
|||
|
|
@ -1289,11 +1289,12 @@ static void update_dmatx_v2(struct rkisp_stream *stream)
|
|||
else
|
||||
hdr_qbuf(&dev->hdr.q_tx[index], buf);
|
||||
}
|
||||
if (!buf)
|
||||
if (!buf && stream->dummy_buf.mem_priv)
|
||||
buf = &stream->dummy_buf;
|
||||
mi_set_y_addr(stream, buf->dma_addr);
|
||||
if (buf)
|
||||
mi_set_y_addr(stream, buf->dma_addr);
|
||||
}
|
||||
v4l2_dbg(1, rkisp_debug, &dev->v4l2_dev,
|
||||
v4l2_dbg(2, rkisp_debug, &dev->v4l2_dev,
|
||||
"%s stream:%d Y:0x%x SHD:0x%x\n",
|
||||
__func__, stream->id,
|
||||
readl(base + stream->config->mi.y_base_ad_init),
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user