/* 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;
 
                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
                                 */
                                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;
                        }