[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <e9ccecd2-6148-44fc-a4da-217219da9d3d@ti.com>
Date: Mon, 17 Feb 2025 13:37:45 +0530
From: Yemike Abhilash Chandra <y-abhilashchandra@...com>
To: Jai Luthra <jai.luthra@...ux.dev>
CC: <linux-media@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<devicetree@...r.kernel.org>, <mripard@...nel.org>,
<mchehab@...nel.org>, <robh@...nel.org>, <krzk+dt@...nel.org>,
<conor+dt@...nel.org>, <devarsht@...com>, <vaishnav.a@...com>,
<r-donadkar@...com>, <u-kumar1@...com>
Subject: Re: [RFC PATCH 3/3] media: ti: j721e-csi2rx: Add support for
VIDIOC_LOG_STATUS
Hi Jai,
Thank you for the review.
On 13/02/25 18:56, Jai Luthra wrote:
> Hi Abhilash,
>
> On Wed, Feb 12, 2025 at 06:42:44PM +0530, Yemike Abhilash Chandra wrote:
>> The VIDIOC_LOG_STATUS ioctl outputs the current status of a device to the
>> kernel log. When this ioctl is called on a video device, the current
>> implementation queries the log status for all connected subdevices in the
>> media pipeline.
>>
>
> What is the benefit of doing this for a video node? The user can directly
> check the status on the cdns-csi2rx subdev for CSI errors.
>
> As far as I understand, the video node corresponds to a particular stream, but
> the cdns-csi2rx source pad is shared for all video nodes, so it will report
> the total errors seen for all video nodes in multi-camera scenarios.
>
> This approach will also give you v4l2 control handler status from a few
> sensors (like OV5640) that implement the ioctl using
> v4l2_ctrl_subdev_log_status(), which is probably just noise for the case where
> a user wants to check for stream errors.
I understand that this change does not add any value and may introduce
unnecessary noise. Given that the user can directly check the status on the
cdns-csi2rx subdevice for stream errors, I will remove this change in v2.
Thanks and Regards,
Yemike Abhilash Chandra
>
>> Signed-off-by: Yemike Abhilash Chandra <y-abhilashchandra@...com>
>> ---
>> drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c | 10 ++++++++++
>> 1 file changed, 10 insertions(+)
>>
>> diff --git a/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c b/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
>> index 6412a00be8ea..946704458fee 100644
>> --- a/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
>> +++ b/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
>> @@ -377,6 +377,15 @@ static int ti_csi2rx_enum_framesizes(struct file *file, void *fh,
>> return 0;
>> }
>>
>> +static int ti_csi2rx_log_status(struct file *file, void *fh)
>> +{
>> + struct ti_csi2rx_dev *csi = video_drvdata(file);
>> +
>> + v4l2_device_call_all(&csi->v4l2_dev, 0, core, log_status);
>> +
>> + return 0;
>> +}
>> +
>> static const struct v4l2_ioctl_ops csi_ioctl_ops = {
>> .vidioc_querycap = ti_csi2rx_querycap,
>> .vidioc_enum_fmt_vid_cap = ti_csi2rx_enum_fmt_vid_cap,
>> @@ -393,6 +402,7 @@ static const struct v4l2_ioctl_ops csi_ioctl_ops = {
>> .vidioc_expbuf = vb2_ioctl_expbuf,
>> .vidioc_streamon = vb2_ioctl_streamon,
>> .vidioc_streamoff = vb2_ioctl_streamoff,
>> + .vidioc_log_status = ti_csi2rx_log_status,
>> };
>>
>> static const struct v4l2_file_operations csi_fops = {
>> --
>> 2.34.1
>>
>
> Thanks,
> Jai
Powered by blists - more mailing lists