aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/gspca/mars.c
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2012-05-09 10:19:00 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-05-14 08:42:34 -0400
commita8a478601ac1d8877e23cb832fe4b44042ce6f20 (patch)
treec2a0074e12c85ba852f340bbf83ec5fbd0ec348c /drivers/media/video/gspca/mars.c
parent98684298f9ed89554cdaa4afe2554fca8276d1e9 (diff)
[media] gscpa: Move ctrl_handler to gspca_dev
We intend to eventually port all sub-drivers to the control-framework. At which point it will make more sense to have the ctrl_handler in gspca_dev then to have it in the subdrivers. Lets move it there now, to avoid a lot of work to move it later. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/gspca/mars.c')
-rw-r--r--drivers/media/video/gspca/mars.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/drivers/media/video/gspca/mars.c b/drivers/media/video/gspca/mars.c
index 2950347b8265..ec7b21ee79fb 100644
--- a/drivers/media/video/gspca/mars.c
+++ b/drivers/media/video/gspca/mars.c
@@ -34,7 +34,6 @@ MODULE_LICENSE("GPL");
34struct sd { 34struct sd {
35 struct gspca_dev gspca_dev; /* !! must be the first item */ 35 struct gspca_dev gspca_dev; /* !! must be the first item */
36 36
37 struct v4l2_ctrl_handler ctrl_handler;
38 struct v4l2_ctrl *brightness; 37 struct v4l2_ctrl *brightness;
39 struct v4l2_ctrl *saturation; 38 struct v4l2_ctrl *saturation;
40 struct v4l2_ctrl *sharpness; 39 struct v4l2_ctrl *sharpness;
@@ -161,8 +160,9 @@ static void setilluminators(struct gspca_dev *gspca_dev, bool top, bool bottom)
161 160
162static int mars_s_ctrl(struct v4l2_ctrl *ctrl) 161static int mars_s_ctrl(struct v4l2_ctrl *ctrl)
163{ 162{
164 struct sd *sd = container_of(ctrl->handler, struct sd, ctrl_handler); 163 struct gspca_dev *gspca_dev =
165 struct gspca_dev *gspca_dev = &sd->gspca_dev; 164 container_of(ctrl->handler, struct gspca_dev, ctrl_handler);
165 struct sd *sd = (struct sd *)gspca_dev;
166 166
167 gspca_dev->usb_err = 0; 167 gspca_dev->usb_err = 0;
168 168
@@ -179,20 +179,20 @@ static int mars_s_ctrl(struct v4l2_ctrl *ctrl)
179 179
180 switch (ctrl->id) { 180 switch (ctrl->id) {
181 case V4L2_CID_BRIGHTNESS: 181 case V4L2_CID_BRIGHTNESS:
182 setbrightness(&sd->gspca_dev, ctrl->val); 182 setbrightness(gspca_dev, ctrl->val);
183 break; 183 break;
184 case V4L2_CID_SATURATION: 184 case V4L2_CID_SATURATION:
185 setcolors(&sd->gspca_dev, ctrl->val); 185 setcolors(gspca_dev, ctrl->val);
186 break; 186 break;
187 case V4L2_CID_GAMMA: 187 case V4L2_CID_GAMMA:
188 setgamma(&sd->gspca_dev, ctrl->val); 188 setgamma(gspca_dev, ctrl->val);
189 break; 189 break;
190 case V4L2_CID_ILLUMINATORS_1: 190 case V4L2_CID_ILLUMINATORS_1:
191 setilluminators(&sd->gspca_dev, sd->illum_top->val, 191 setilluminators(gspca_dev, sd->illum_top->val,
192 sd->illum_bottom->val); 192 sd->illum_bottom->val);
193 break; 193 break;
194 case V4L2_CID_SHARPNESS: 194 case V4L2_CID_SHARPNESS:
195 setsharpness(&sd->gspca_dev, ctrl->val); 195 setsharpness(gspca_dev, ctrl->val);
196 break; 196 break;
197 case V4L2_CID_JPEG_COMPRESSION_QUALITY: 197 case V4L2_CID_JPEG_COMPRESSION_QUALITY:
198 jpeg_set_qual(sd->jpeg_hdr, ctrl->val); 198 jpeg_set_qual(sd->jpeg_hdr, ctrl->val);
@@ -211,7 +211,7 @@ static const struct v4l2_ctrl_ops mars_ctrl_ops = {
211static int sd_init_controls(struct gspca_dev *gspca_dev) 211static int sd_init_controls(struct gspca_dev *gspca_dev)
212{ 212{
213 struct sd *sd = (struct sd *) gspca_dev; 213 struct sd *sd = (struct sd *) gspca_dev;
214 struct v4l2_ctrl_handler *hdl = &sd->ctrl_handler; 214 struct v4l2_ctrl_handler *hdl = &gspca_dev->ctrl_handler;
215 215
216 gspca_dev->vdev.ctrl_handler = hdl; 216 gspca_dev->vdev.ctrl_handler = hdl;
217 v4l2_ctrl_handler_init(hdl, 7); 217 v4l2_ctrl_handler_init(hdl, 7);