[PATCH v3 22/29] media: rkisp1: Use v4l2_subdev_get_frame_desc()
Sakari Ailus <[email protected]>
| Newsgroups | org.kernel.vger.linux-media |
|---|---|
| Organization | Intel Finland Oy - BIC 0357606-4 - c/o Alberga Business Park, 6 krs, Bertel Jungin Aukio 5, 02600 Espoo |
| Message-ID | <[email protected]> |
Call v4l2_subdev_get_frame_desc() to obtain the frame descriptor. This is preferred over calling the get_frame_desc() pad operation directly. Signed-off-by: Sakari Ailus <[email protected]> --- .../platform/rockchip/rkisp1/rkisp1-isp.c | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c b/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c index 2311672cedb1..eb8e881759f7 100644 --- a/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c +++ b/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c @@ -8,6 +8,7 @@ * Copyright (C) 2017 Rockchip Electronics Co., Ltd. */ +#include <linux/cleanup.h> #include <linux/iopoll.h> #include <linux/pm_runtime.h> #include <linux/regmap.h> @@ -87,11 +88,9 @@ static int rkisp1_gasket_enable(struct rkisp1_device *rkisp1, struct media_pad *source) { struct v4l2_subdev *source_sd; - struct v4l2_mbus_frame_desc fd; unsigned int dt; u32 mask; u32 val; - int ret; /* * Configure and enable the gasket with the CSI-2 data type. Set the @@ -101,22 +100,24 @@ static int rkisp1_gasket_enable(struct rkisp1_device *rkisp1, */ source_sd = media_entity_to_v4l2_subdev(source->entity); - ret = v4l2_subdev_call(source_sd, pad, get_frame_desc, - source->index, &fd); - if (ret) { + + struct v4l2_mbus_frame_desc *fd __free(v4l2_subdev_free_frame_desc) = + v4l2_subdev_get_frame_desc(source_sd, source->index, + V4L2_MBUS_FRAME_DESC_TYPE_CSI2); + if (IS_ERR(fd)) { dev_err(rkisp1->dev, - "failed to get frame descriptor from '%s':%u: %d\n", - source_sd->name, 0, ret); - return ret; + "failed to get frame descriptor from '%s':%u: %pe\n", + source_sd->name, 0, fd); + return PTR_ERR(fd); } - if (fd.num_entries != 1) { + if (fd->num_entries != 1) { dev_err(rkisp1->dev, "invalid frame descriptor for '%s':%u\n", source_sd->name, 0); return -EINVAL; } - dt = fd.entry[0].bus.csi2.dt; + dt = fd->entry[0].bus.csi2.dt; if (rkisp1->gasket_id == 0) { mask = ISP_DEWARP_CONTROL_MIPI_CSI1_HS_POLARITY -- 2.47.3