diff --git a/drivers/staging/vc04_services/bcm2835-camera/bcm2835-camera.h b/drivers/staging/vc04_services/bcm2835-camera/bcm2835-camera.h index 75524adff0f57b..fdbcc35ece5b4f 100644 --- a/drivers/staging/vc04_services/bcm2835-camera/bcm2835-camera.h +++ b/drivers/staging/vc04_services/bcm2835-camera/bcm2835-camera.h @@ -13,7 +13,7 @@ * core driver device */ -#define V4L2_CTRL_COUNT 29 /* number of v4l controls */ +#define V4L2_CTRL_COUNT 32 /* number of v4l controls */ enum { COMP_CAMERA = 0, diff --git a/drivers/staging/vc04_services/bcm2835-camera/controls.c b/drivers/staging/vc04_services/bcm2835-camera/controls.c index f3480a5c517022..b1b02fbc473d93 100644 --- a/drivers/staging/vc04_services/bcm2835-camera/controls.c +++ b/drivers/staging/vc04_services/bcm2835-camera/controls.c @@ -1270,6 +1270,39 @@ static const struct bm2835_mmal_v4l2_ctrl v4l2_ctrls[V4L2_CTRL_COUNT] = { .mmal_id = MMAL_PARAMETER_INTRAPERIOD, .setter = ctrl_set_video_encode_param_output, }, + { + .id = V4L2_CID_MPEG_VIDEO_H264_MIN_QP, + .type = MMAL_CONTROL_TYPE_STD, + .min = 0, + .max = 51, + .def = 0, + .step = 1, + .imenu = NULL, + .mmal_id = MMAL_PARAMETER_VIDEO_ENCODE_MIN_QUANT, + .setter = ctrl_set_video_encode_param_output, + }, + { + .id = V4L2_CID_MPEG_VIDEO_H264_MAX_QP, + .type = MMAL_CONTROL_TYPE_STD, + .min = 0, + .max = 51, + .def = 0, + .step = 1, + .imenu = NULL, + .mmal_id = MMAL_PARAMETER_VIDEO_ENCODE_MAX_QUANT, + .setter = ctrl_set_video_encode_param_output, + }, + { + .id = V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME, + .type = MMAL_CONTROL_TYPE_STD, + .min = 0, + .max = 0, + .def = 0, + .step = 0, + .imenu = NULL, + .mmal_id = MMAL_PARAMETER_VIDEO_REQUEST_I_FRAME, + .setter = ctrl_set_video_encode_param_output, + }, }; int bm2835_mmal_set_all_camera_controls(struct bm2835_mmal_dev *dev)