You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.9 KiB
Diff
59 lines
1.9 KiB
Diff
From 8c420772ef0f15ebbc3f13ebcc340d34bbdfad71 Mon Sep 17 00:00:00 2001
|
|
From: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
|
Date: Thu, 24 Jan 2019 16:20:38 +0000
|
|
Subject: [PATCH] staging: bcm2835-camera: Correct ctrl
|
|
min/max/step/def to 64bit
|
|
|
|
The V4L2 control API was expanded to take 64 bit values in commit
|
|
0ba2aeb6dab (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>
|
|
---
|
|
.../vc04_services/bcm2835-camera/controls.c | 14 +++++++-------
|
|
1 file changed, 7 insertions(+), 7 deletions(-)
|
|
|
|
--- a/drivers/staging/vc04_services/bcm2835-camera/controls.c
|
|
+++ b/drivers/staging/vc04_services/bcm2835-camera/controls.c
|
|
@@ -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;
|
|
@@ -1244,7 +1244,7 @@ int bm2835_mmal_init_controls(struct bm2
|
|
|
|
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
|
|
@@ -1254,11 +1254,11 @@ int bm2835_mmal_init_controls(struct bm2
|
|
*/
|
|
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;
|
|
}
|