media: rockchip: isp: fix default link status

Change-Id: I173dd75902bf144e38c11f7d54afb320caafb7d6
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This commit is contained in:
Cai YiWei
2020-05-28 16:33:36 +08:00
committed by Tao Huang
parent 6e74bb2732
commit bfdb45a89b
4 changed files with 13 additions and 3 deletions

View File

@@ -2562,6 +2562,10 @@ void rkisp_set_stream_def_fmt(struct rkisp_device *dev, u32 id,
memset(&pixm, 0, sizeof(pixm));
if (pixelformat)
pixm.pixelformat = pixelformat;
else
pixm.pixelformat = stream->out_isp_fmt.fourcc;
if (!pixm.pixelformat)
return;
pixm.width = width;
pixm.height = height;
rkisp_set_fmt(stream, &pixm, false);
@@ -2899,7 +2903,6 @@ static int rkisp_register_stream_vdev(struct rkisp_stream *stream)
case RKISP_STREAM_DMATX2://CSI_SRC_CH3
case RKISP_STREAM_DMATX3://CSI_SRC_CH4
pad = stream->id;
stream->linked = true;
dev->csi_dev.sink[pad - 1].linked = true;
dev->csi_dev.sink[pad - 1].index = BIT(pad - 1);
break;
@@ -2935,6 +2938,7 @@ static int rkisp_stream_init(struct rkisp_device *dev, u32 id)
init_waitqueue_head(&stream->done);
spin_lock_init(&stream->vbq_lock);
stream->linked = MEDIA_LNK_FL_ENABLED;
/* isp2 disable MP/SP, enable BRIDGE default */
if ((id == RKISP_STREAM_SP || id == RKISP_STREAM_MP) &&
dev->isp_ver == ISP_V20)

View File

@@ -44,7 +44,7 @@
#include "isp_stats.h"
#include "isp_mipi_luma.h"
#ifdef VIDEO_ROCKCHIP_ISP1
#ifdef CONFIG_VIDEO_ROCKCHIP_ISP1
#define DRIVER_NAME "rkisp1"
#else
#define DRIVER_NAME "rkisp"

View File

@@ -426,6 +426,9 @@ int rkisp_register_luma_vdev(struct rkisp_luma_vdev *luma_vdev,
struct media_entity *source, *sink;
luma_vdev->dev = dev;
if (dev->isp_ver != ISP_V20)
return 0;
INIT_LIST_HEAD(&luma_vdev->stat);
spin_lock_init(&luma_vdev->irq_lock);
spin_lock_init(&luma_vdev->rd_lock);
@@ -494,10 +497,11 @@ void rkisp_unregister_luma_vdev(struct rkisp_luma_vdev *luma_vdev)
struct rkisp_vdev_node *node = &luma_vdev->vnode;
struct video_device *vdev = &node->vdev;
if (luma_vdev->dev->isp_ver != ISP_V20)
return;
kfifo_free(&luma_vdev->rd_kfifo);
tasklet_kill(&luma_vdev->rd_tasklet);
video_unregister_device(vdev);
media_entity_cleanup(&vdev->entity);
vb2_queue_release(vdev->queue);
}

View File

@@ -1582,6 +1582,8 @@ static int rkisp_subdev_link_setup(struct media_entity *entity,
struct rkisp_stream *stream = NULL;
u8 rawrd = INP_RAWRD0 | INP_RAWRD1 | INP_RAWRD2;
if (local->index != RKISP_ISP_PAD_SINK)
return 0;
if (!sd)
return -ENODEV;
dev = sd_to_isp_dev(sd);