From bb39b8d99aae1f7eb13a97bd874838da91080de6 Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Fri, 28 Feb 2014 20:30:08 +0000 Subject: brcm2708: update against latest rpi-3.10.y branch Update our copies of the brcm2708 patches to the latest rpi-3.10-y rebased against linux-3.10.y stable (3.10.32). This should hopefully make it easier for us in the future to leverage the raspberry/rpi-* branches. Signed-off-by: Florian Fainelli SVN-Revision: 39770 --- .../patches-3.10/0134-V4L2-Fix-ISO-controls.patch | 50 ++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 target/linux/brcm2708/patches-3.10/0134-V4L2-Fix-ISO-controls.patch (limited to 'target/linux/brcm2708/patches-3.10/0134-V4L2-Fix-ISO-controls.patch') diff --git a/target/linux/brcm2708/patches-3.10/0134-V4L2-Fix-ISO-controls.patch b/target/linux/brcm2708/patches-3.10/0134-V4L2-Fix-ISO-controls.patch new file mode 100644 index 0000000000..75883df91f --- /dev/null +++ b/target/linux/brcm2708/patches-3.10/0134-V4L2-Fix-ISO-controls.patch @@ -0,0 +1,50 @@ +From d9dc4b7760b20885d5bd1d17fd6dce818f1141e0 Mon Sep 17 00:00:00 2001 +From: Dave Stevenson +Date: Mon, 9 Dec 2013 15:30:48 +0000 +Subject: [PATCH 134/174] V4L2: Fix ISO controls. + +Driver was passing the index to the GPU, and not the desired +ISO value. + +Signed-off-by: Dave Stevenson +--- + drivers/media/platform/bcm2835/controls.c | 21 ++++++++++++++++++++- + 1 file changed, 20 insertions(+), 1 deletion(-) + +--- a/drivers/media/platform/bcm2835/controls.c ++++ b/drivers/media/platform/bcm2835/controls.c +@@ -178,6 +178,25 @@ static int ctrl_set_value(struct bm2835_ + &u32_value, sizeof(u32_value)); + } + ++static int ctrl_set_value_menu(struct bm2835_mmal_dev *dev, ++ struct v4l2_ctrl *ctrl, ++ const struct bm2835_mmal_v4l2_ctrl *mmal_ctrl) ++{ ++ u32 u32_value; ++ struct vchiq_mmal_port *control; ++ ++ if (ctrl->val > mmal_ctrl->max || ctrl->val < mmal_ctrl->min) ++ return 1; ++ ++ control = &dev->component[MMAL_COMPONENT_CAMERA]->control; ++ ++ u32_value = mmal_ctrl->imenu[ctrl->val]; ++ ++ return vchiq_mmal_port_parameter_set(dev->instance, control, ++ mmal_ctrl->mmal_id, ++ &u32_value, sizeof(u32_value)); ++} ++ + static int ctrl_set_value_ev(struct bm2835_mmal_dev *dev, + struct v4l2_ctrl *ctrl, + const struct bm2835_mmal_v4l2_ctrl *mmal_ctrl) +@@ -601,7 +620,7 @@ static const struct bm2835_mmal_v4l2_ctr + { + V4L2_CID_ISO_SENSITIVITY, MMAL_CONTROL_TYPE_INT_MENU, + 0, ARRAY_SIZE(iso_qmenu) - 1, 0, 1, iso_qmenu, +- MMAL_PARAMETER_ISO, &ctrl_set_value ++ MMAL_PARAMETER_ISO, &ctrl_set_value_menu + }, + { + V4L2_CID_IMAGE_STABILIZATION, MMAL_CONTROL_TYPE_STD, -- cgit v1.2.3