staging: bcm2835-camera: Correct ctrl min/max/step/def to 64bit

The V4L2 control API was expanded to take 64 bit values in commit
0ba2aeb6da (Apr 16 2014), but as this driver wasn't in the mainline
kernel at that point this was overlooked.

Update to use 64 bit values. This also fixes a couple of warnings
in 64 bit builds.

Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Acked-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Dave Stevenson 2019-06-29 21:31:43 +02:00 committed by Greg Kroah-Hartman
parent 37b0bbab54
commit 78f2e83dad

View File

@ -78,10 +78,10 @@ struct bm2835_mmal_v4l2_ctrl {
/* control minimum value or
* mask for MMAL_CONTROL_TYPE_STD_MENU
*/
s32 min;
s32 max; /* maximum value of control */
s32 def; /* default value of control */
s32 step; /* step size of the control */
s64 min;
s64 max; /* maximum value of control */
s64 def; /* default value of control */
u64 step; /* step size of the control */
const s64 *imenu; /* integer menu array */
u32 mmal_id; /* mmal parameter id */
bm2835_mmal_v4l2_ctrl_cb *setter;
@ -1250,7 +1250,7 @@ int bm2835_mmal_init_controls(struct bm2835_mmal_dev *dev,
case MMAL_CONTROL_TYPE_STD_MENU:
{
int mask = ctrl->min;
u64 mask = ctrl->min;
if (ctrl->id == V4L2_CID_SCENE_MODE) {
/* Special handling to work out the mask
@ -1260,11 +1260,11 @@ int bm2835_mmal_init_controls(struct bm2835_mmal_dev *dev,
*/
int i;
mask = 1 << V4L2_SCENE_MODE_NONE;
mask = BIT(V4L2_SCENE_MODE_NONE);
for (i = 0;
i < ARRAY_SIZE(scene_configs);
i++) {
mask |= 1 << scene_configs[i].v4l2_scene;
mask |= BIT(scene_configs[i].v4l2_scene);
}
mask = ~mask;
}