Re: [PATCH v3 22/29] media: rkisp1: Use v4l2_subdev_get_frame_desc()
Frank Li <[email protected]>
| Newsgroups | org.kernel.vger.linux-media |
|---|---|
| Message-ID | <aoy0D4eZ1PIj3RKQ@lizhi-Precision-Tower-5810> |
On Mon, Aug 24, 2026 at 03:14:44PM +0300, Sakari Ailus wrote: > 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]> > --- Reviewed-by: Frank Li <[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 >