diff options
author | Hans Verkuil <hverkuil@xs4all.nl> | 2009-04-02 11:26:22 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-04-06 21:44:27 -0300 |
commit | 5325b4272a53b43f55b82cc369c310c2fcacdca1 (patch) | |
tree | f2a1491de3d05901152e0e271c0cb5ce381884c2 /drivers/media/video/vpx3220.c | |
parent | c0ff29150d37615ac703802ab3edc775fd402491 (diff) | |
download | lwn-5325b4272a53b43f55b82cc369c310c2fcacdca1.tar.gz lwn-5325b4272a53b43f55b82cc369c310c2fcacdca1.zip |
V4L/DVB (11380): v4l2-subdev: change s_routing prototype
It is no longer needed to use a struct pointer as argument, since v4l2_subdev
doesn't require that ioctl-like approach anymore. Instead just pass the input,
output and config (new!) arguments directly.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/vpx3220.c')
-rw-r--r-- | drivers/media/video/vpx3220.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/drivers/media/video/vpx3220.c b/drivers/media/video/vpx3220.c index 59a8bb046c35..97e0ce28ff18 100644 --- a/drivers/media/video/vpx3220.c +++ b/drivers/media/video/vpx3220.c @@ -376,33 +376,34 @@ static int vpx3220_s_std(struct v4l2_subdev *sd, v4l2_std_id std) return 0; } -static int vpx3220_s_routing(struct v4l2_subdev *sd, const struct v4l2_routing *route) +static int vpx3220_s_routing(struct v4l2_subdev *sd, + u32 input, u32 output, u32 config) { int data; - /* RJ: route->input = 0: ST8 (PCTV) input - route->input = 1: COMPOSITE input - route->input = 2: SVHS input */ + /* RJ: input = 0: ST8 (PCTV) input + input = 1: COMPOSITE input + input = 2: SVHS input */ - const int input[3][2] = { + const int input_vals[3][2] = { {0x0c, 0}, {0x0d, 0}, {0x0e, 1} }; - if (route->input < 0 || route->input > 2) + if (input < 0 || input > 2) return -EINVAL; - v4l2_dbg(1, debug, sd, "input switched to %s\n", inputs[route->input]); + v4l2_dbg(1, debug, sd, "input switched to %s\n", inputs[input]); - vpx3220_write(sd, 0x33, input[route->input][0]); + vpx3220_write(sd, 0x33, input_vals[input][0]); data = vpx3220_fp_read(sd, 0xf2) & ~(0x0020); if (data < 0) return data; /* 0x0010 is required to latch the setting */ vpx3220_fp_write(sd, 0xf2, - data | (input[route->input][1] << 5) | 0x0010); + data | (input_vals[input][1] << 5) | 0x0010); udelay(10); return 0; |