2021-02-18 19:01:10

by Andrey Konovalov

[permalink] [raw]
Subject: [PATCH v2.1 1/3] v4l: common: v4l2_get_link_freq: add printing a warning

Print a warning if V4L2_CID_LINK_FREQ control is not implemented.

Signed-off-by: Andrey Konovalov <[email protected]>
Reviewed-by: Jacopo Mondi <[email protected]>
---
drivers/media/v4l2-core/v4l2-common.c | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/drivers/media/v4l2-core/v4l2-common.c b/drivers/media/v4l2-core/v4l2-common.c
index 133d20e40f82..04af03285a20 100644
--- a/drivers/media/v4l2-core/v4l2-common.c
+++ b/drivers/media/v4l2-core/v4l2-common.c
@@ -469,6 +469,11 @@ s64 v4l2_get_link_freq(struct v4l2_ctrl_handler *handler, unsigned int mul,
return -ENOENT;

freq = div_u64(v4l2_ctrl_g_ctrl_int64(ctrl) * mul, div);
+
+ pr_warn("%s: Link frequency estimated using pixel rate: result might be inaccurate\n",
+ __func__);
+ pr_warn("%s: Consider implementing support for V4L2_CID_LINK_FREQ in the transmitter driver\n",
+ __func__);
}

return freq > 0 ? freq : -EINVAL;
--
2.17.1


2021-02-21 18:59:00

by Laurent Pinchart

[permalink] [raw]
Subject: Re: [PATCH v2.1 1/3] v4l: common: v4l2_get_link_freq: add printing a warning

Hi Andrey,

Thank you for the patch.

On Thu, Feb 18, 2021 at 08:16:40PM +0300, Andrey Konovalov wrote:
> Print a warning if V4L2_CID_LINK_FREQ control is not implemented.
>
> Signed-off-by: Andrey Konovalov <[email protected]>
> Reviewed-by: Jacopo Mondi <[email protected]>

Reviewed-by: Laurent Pinchart <[email protected]>

> ---
> drivers/media/v4l2-core/v4l2-common.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/drivers/media/v4l2-core/v4l2-common.c b/drivers/media/v4l2-core/v4l2-common.c
> index 133d20e40f82..04af03285a20 100644
> --- a/drivers/media/v4l2-core/v4l2-common.c
> +++ b/drivers/media/v4l2-core/v4l2-common.c
> @@ -469,6 +469,11 @@ s64 v4l2_get_link_freq(struct v4l2_ctrl_handler *handler, unsigned int mul,
> return -ENOENT;
>
> freq = div_u64(v4l2_ctrl_g_ctrl_int64(ctrl) * mul, div);
> +
> + pr_warn("%s: Link frequency estimated using pixel rate: result might be inaccurate\n",
> + __func__);
> + pr_warn("%s: Consider implementing support for V4L2_CID_LINK_FREQ in the transmitter driver\n",
> + __func__);

It would still be nice if v4l2_ctrl_handler was extended with a struct
device pointer to use dev_warn() here, and allow replacing "the
transmitter driver" with the driver name.

> }
>
> return freq > 0 ? freq : -EINVAL;

--
Regards,

Laurent Pinchart