All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hans Verkuil <hverkuil-cisco@xs4all.nl>
To: Jacopo Mondi <jacopo@jmondi.org>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>,
	Sakari Ailus <sakari.ailus@linux.intel.com>,
	"open list:MEDIA INPUT INFRASTRUCTURE (V4L/DVB)" 
	<linux-media@vger.kernel.org>,
	open list <linux-kernel@vger.kernel.org>
Subject: Re: [RFC 3/5] media: v4l2-ctrls: Add support for V4L2_CID_LOCATION
Date: Thu, 15 Aug 2019 15:41:53 +0200	[thread overview]
Message-ID: <f16bc961-1410-a38b-9973-eddb7293b4b2@xs4all.nl> (raw)
In-Reply-To: <20190815130245.usat55oqffe4abvi@uno.localdomain>

On 8/15/19 3:02 PM, Jacopo Mondi wrote:
> Hi Laurent,
> 
> On Thu, Aug 15, 2019 at 01:53:53AM +0300, Laurent Pinchart wrote:
>> Hi Jacopo,
>>
>> Thank you for the patch.
>>
>> On Wed, Aug 14, 2019 at 10:28:13PM +0200, Jacopo Mondi wrote:
>>> Add support for the newly defined V4L2_CID_LOCATION read-only control
>>> used to report the camera device mounting position.
>>>
>>> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
>>> ---
>>>  drivers/media/v4l2-core/v4l2-ctrls.c | 7 +++++++
>>>  include/uapi/linux/v4l2-controls.h   | 4 ++++
>>>  2 files changed, 11 insertions(+)
>>>
>>> diff --git a/drivers/media/v4l2-core/v4l2-ctrls.c b/drivers/media/v4l2-core/v4l2-ctrls.c
>>> index 7d3a33258748..8ab0857df59a 100644
>>> --- a/drivers/media/v4l2-core/v4l2-ctrls.c
>>> +++ b/drivers/media/v4l2-core/v4l2-ctrls.c
>>> @@ -943,6 +943,7 @@ const char *v4l2_ctrl_get_name(u32 id)
>>>  	case V4L2_CID_AUTO_FOCUS_RANGE:		return "Auto Focus, Range";
>>>  	case V4L2_CID_PAN_SPEED:		return "Pan, Speed";
>>>  	case V4L2_CID_TILT_SPEED:		return "Tilt, Speed";
>>> +	case V4L2_CID_LOCATION:			return "Location";
>>
>> Depending on what we decide to name the control (see review of 2/5), you
>> should adjust the description accordingly.
>>
>>>
>>>  	/* FM Radio Modulator controls */
>>>  	/* Keep the order of the 'case's the same as in v4l2-controls.h! */
>>> @@ -1300,6 +1301,12 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type,
>>>  		break;
>>>  	case V4L2_CID_MPEG_VIDEO_FWHT_PARAMS:
>>>  		*type = V4L2_CTRL_TYPE_FWHT_PARAMS;
>>> +	case V4L2_CID_LOCATION:
>>> +		*type = V4L2_CTRL_TYPE_INTEGER;
>>> +		*flags |= V4L2_CTRL_FLAG_READ_ONLY;
>>> +		*min = V4L2_LOCATION_FRONT;
>>> +		*max = V4L2_LOCATION_BACK;
>>
>> I don't think the control should have a min and a max different than the
>> current value, as it's a fully static control. I'd drop those two lines
>> here, and drivers will have to set value = min = max = V4L2_LOCATION_xxx
>> when creating the control. That why you should be able to collapse this
>> with V4L2_CID_MIN_BUFFERS_FOR_OUTPUT.
>>
> 
> Ah, I thought min/max should report the actual control values limits.
> Anyway, if we move this to be an integer menu control with an helper
> to parse the DT property and register the control on behalf of
> drivers, this will change.
> 
>>> +		*step = 1;
>>>  		break;
>>>  	default:
>>>  		*type = V4L2_CTRL_TYPE_INTEGER;
>>> diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h
>>> index 37807f23231e..5c4c7b245921 100644
>>> --- a/include/uapi/linux/v4l2-controls.h
>>> +++ b/include/uapi/linux/v4l2-controls.h
>>> @@ -889,6 +889,10 @@ enum v4l2_auto_focus_range {
>>>  #define V4L2_CID_PAN_SPEED			(V4L2_CID_CAMERA_CLASS_BASE+32)
>>>  #define V4L2_CID_TILT_SPEED			(V4L2_CID_CAMERA_CLASS_BASE+33)
>>>
>>> +#define V4L2_CID_LOCATION			(V4L2_CID_CAMERA_CLASS_BASE+34)
>>> +#define V4L2_LOCATION_FRONT			(0 << 0)
>>> +#define V4L2_LOCATION_BACK			(1 << 0)
>>
>> Why not just 0 and 1 ?
> 
> Or why not BIT(). I saw that the (1 << x) style is the mostly used one in
> this header file when defining macros like this one so I went for
> consistency with the existing code.

Definitely not right. This is an enumeration, so just number from 0, 1, 2, ...

Nothing to do with bits/bitmasks.

Regards,

	Hans

> 
>>
>>> +
>>>  /* FM Modulator class control IDs */
>>>
>>>  #define V4L2_CID_FM_TX_CLASS_BASE		(V4L2_CTRL_CLASS_FM_TX | 0x900)
>>
>> --
>> Regards,
>>
>> Laurent Pinchart


  parent reply	other threads:[~2019-08-15 13:42 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-14 20:28 [RFC 0/5] media: v4l2-ctrls: Add camera 'location' support Jacopo Mondi
2019-08-14 20:28 ` [RFC 1/5] media: dt-bindings: Document 'location' property Jacopo Mondi
2019-08-14 20:28   ` Jacopo Mondi
2019-08-14 22:40   ` Laurent Pinchart
2019-08-14 22:40     ` Laurent Pinchart
2019-08-15  6:56   ` Sakari Ailus
2019-08-15  6:56     ` Sakari Ailus
2019-08-15 12:55     ` Laurent Pinchart
2019-08-15 12:55       ` Laurent Pinchart
2019-08-15 12:55     ` Jacopo Mondi
2019-08-15 12:55       ` Jacopo Mondi
2019-08-15 12:58       ` Laurent Pinchart
2019-08-15 12:58         ` Laurent Pinchart
2019-09-01 17:24     ` Pavel Machek
2019-09-01 17:24       ` Pavel Machek
2019-09-02  8:02       ` Laurent Pinchart
2019-09-02  8:02         ` Laurent Pinchart
2019-09-02  8:11         ` Pavel Machek
2019-09-02  8:11           ` Pavel Machek
2019-08-14 20:28 ` [RFC 2/5] media: v4l2-ctrl: Document V4L2_CID_LOCATION Jacopo Mondi
2019-08-14 22:43   ` Laurent Pinchart
2019-08-15 12:58     ` Jacopo Mondi
2019-08-15 14:10     ` Hans Verkuil
2019-08-15 14:14       ` Hans Verkuil
2019-08-15 14:34         ` Jacopo Mondi
2019-08-15 14:40           ` Hans Verkuil
2019-08-15 15:12             ` Sakari Ailus
2019-09-01 17:24             ` Pavel Machek
2019-09-02  8:00               ` Laurent Pinchart
2019-09-02  8:06                 ` Pavel Machek
2019-09-02  8:19                   ` Laurent Pinchart
2019-09-02  8:27                     ` Pavel Machek
2019-09-02  8:53                       ` Laurent Pinchart
2019-09-02  9:41               ` Jacopo Mondi
2019-08-15  7:00   ` Sakari Ailus
2019-08-15 12:59     ` Laurent Pinchart
2019-08-15 13:08       ` Sakari Ailus
2019-08-15 13:10         ` Laurent Pinchart
2019-08-15 13:15           ` Sakari Ailus
2019-08-15 13:19             ` Laurent Pinchart
2019-08-15 13:30   ` Hans Verkuil
2019-08-15 13:48     ` Laurent Pinchart
2019-08-15 14:02     ` Jacopo Mondi
2019-08-14 20:28 ` [RFC 3/5] media: v4l2-ctrls: Add support for V4L2_CID_LOCATION Jacopo Mondi
2019-08-14 22:53   ` Laurent Pinchart
2019-08-15 13:02     ` Jacopo Mondi
2019-08-15 13:03       ` Laurent Pinchart
2019-08-15 13:41       ` Hans Verkuil [this message]
2019-08-15 13:50         ` Jacopo Mondi
2019-08-15 14:12           ` Hans Verkuil
2019-08-15 13:23   ` Hans Verkuil
2019-08-15 13:50     ` Jacopo Mondi
2019-08-14 20:28 ` [RFC 4/5] media: i2c: ov5670: Report the camera location Jacopo Mondi
2019-08-14 23:03   ` Laurent Pinchart
2019-08-15  7:04   ` Sakari Ailus
2019-08-14 20:28 ` [RFC 5/5] media: i2c: ov13858: " Jacopo Mondi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f16bc961-1410-a38b-9973-eddb7293b4b2@xs4all.nl \
    --to=hverkuil-cisco@xs4all.nl \
    --cc=jacopo@jmondi.org \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=sakari.ailus@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.