mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-14 13:26:44 +07:00
[media] s5p-fimc: Add support for sensors with multiple pads
Some sensors can have more than one pad (case of S5C73M3). In such cases FIMC assumes the last pad of the sensor is the source pad. Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
6319d6a002
commit
1c9f5bd7cb
@ -884,14 +884,16 @@ static int fimc_get_sensor_frame_desc(struct v4l2_subdev *sensor,
|
||||
{
|
||||
struct v4l2_mbus_frame_desc fd;
|
||||
int i, ret;
|
||||
int pad;
|
||||
|
||||
for (i = 0; i < num_planes; i++)
|
||||
fd.entry[i].length = plane_fmt[i].sizeimage;
|
||||
|
||||
pad = sensor->entity.num_pads - 1;
|
||||
if (try)
|
||||
ret = v4l2_subdev_call(sensor, pad, set_frame_desc, 0, &fd);
|
||||
ret = v4l2_subdev_call(sensor, pad, set_frame_desc, pad, &fd);
|
||||
else
|
||||
ret = v4l2_subdev_call(sensor, pad, get_frame_desc, 0, &fd);
|
||||
ret = v4l2_subdev_call(sensor, pad, get_frame_desc, pad, &fd);
|
||||
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
@ -659,7 +659,8 @@ static int fimc_md_create_links(struct fimc_md *fmd)
|
||||
"but s5p-csis module is not loaded!\n"))
|
||||
return -EINVAL;
|
||||
|
||||
ret = media_entity_create_link(&sensor->entity, 0,
|
||||
pad = sensor->entity.num_pads - 1;
|
||||
ret = media_entity_create_link(&sensor->entity, pad,
|
||||
&csis->entity, CSIS_PAD_SINK,
|
||||
MEDIA_LNK_FL_IMMUTABLE |
|
||||
MEDIA_LNK_FL_ENABLED);
|
||||
|
Loading…
Reference in New Issue
Block a user