Revert "media: subdev: disallow ioctl for saa6588/davinci"
This reverts commit db317a3722
as it
breaks the ABI and is not needed for Android devices at this point in
time.
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I060fe0a18cc6232f82fa4d3dd0426262a71aaccf
This commit is contained in:
@@ -380,7 +380,7 @@ static void saa6588_configure(struct saa6588 *s)
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
static long saa6588_command(struct v4l2_subdev *sd, unsigned int cmd, void *arg)
|
||||
static long saa6588_ioctl(struct v4l2_subdev *sd, unsigned int cmd, void *arg)
|
||||
{
|
||||
struct saa6588 *s = to_saa6588(sd);
|
||||
struct saa6588_command *a = arg;
|
||||
@@ -433,7 +433,7 @@ static int saa6588_s_tuner(struct v4l2_subdev *sd, const struct v4l2_tuner *vt)
|
||||
/* ----------------------------------------------------------------------- */
|
||||
|
||||
static const struct v4l2_subdev_core_ops saa6588_core_ops = {
|
||||
.command = saa6588_command,
|
||||
.ioctl = saa6588_ioctl,
|
||||
};
|
||||
|
||||
static const struct v4l2_subdev_tuner_ops saa6588_tuner_ops = {
|
||||
|
@@ -3187,7 +3187,7 @@ static int radio_release(struct file *file)
|
||||
|
||||
btv->radio_user--;
|
||||
|
||||
bttv_call_all(btv, core, command, SAA6588_CMD_CLOSE, &cmd);
|
||||
bttv_call_all(btv, core, ioctl, SAA6588_CMD_CLOSE, &cmd);
|
||||
|
||||
if (btv->radio_user == 0)
|
||||
btv->has_radio_tuner = 0;
|
||||
@@ -3268,7 +3268,7 @@ static ssize_t radio_read(struct file *file, char __user *data,
|
||||
cmd.result = -ENODEV;
|
||||
radio_enable(btv);
|
||||
|
||||
bttv_call_all(btv, core, command, SAA6588_CMD_READ, &cmd);
|
||||
bttv_call_all(btv, core, ioctl, SAA6588_CMD_READ, &cmd);
|
||||
|
||||
return cmd.result;
|
||||
}
|
||||
@@ -3289,7 +3289,7 @@ static __poll_t radio_poll(struct file *file, poll_table *wait)
|
||||
cmd.instance = file;
|
||||
cmd.event_list = wait;
|
||||
cmd.poll_mask = res;
|
||||
bttv_call_all(btv, core, command, SAA6588_CMD_POLL, &cmd);
|
||||
bttv_call_all(btv, core, ioctl, SAA6588_CMD_POLL, &cmd);
|
||||
|
||||
return cmd.poll_mask;
|
||||
}
|
||||
|
@@ -1178,7 +1178,7 @@ static int video_release(struct file *file)
|
||||
|
||||
saa_call_all(dev, tuner, standby);
|
||||
if (vdev->vfl_type == VFL_TYPE_RADIO)
|
||||
saa_call_all(dev, core, command, SAA6588_CMD_CLOSE, &cmd);
|
||||
saa_call_all(dev, core, ioctl, SAA6588_CMD_CLOSE, &cmd);
|
||||
mutex_unlock(&dev->lock);
|
||||
|
||||
return 0;
|
||||
@@ -1197,7 +1197,7 @@ static ssize_t radio_read(struct file *file, char __user *data,
|
||||
cmd.result = -ENODEV;
|
||||
|
||||
mutex_lock(&dev->lock);
|
||||
saa_call_all(dev, core, command, SAA6588_CMD_READ, &cmd);
|
||||
saa_call_all(dev, core, ioctl, SAA6588_CMD_READ, &cmd);
|
||||
mutex_unlock(&dev->lock);
|
||||
|
||||
return cmd.result;
|
||||
@@ -1213,7 +1213,7 @@ static __poll_t radio_poll(struct file *file, poll_table *wait)
|
||||
cmd.event_list = wait;
|
||||
cmd.poll_mask = 0;
|
||||
mutex_lock(&dev->lock);
|
||||
saa_call_all(dev, core, command, SAA6588_CMD_POLL, &cmd);
|
||||
saa_call_all(dev, core, ioctl, SAA6588_CMD_POLL, &cmd);
|
||||
mutex_unlock(&dev->lock);
|
||||
|
||||
return rc | cmd.poll_mask;
|
||||
|
@@ -47,7 +47,7 @@ static int venc_is_second_field(struct vpbe_display *disp_dev)
|
||||
|
||||
ret = v4l2_subdev_call(vpbe_dev->venc,
|
||||
core,
|
||||
command,
|
||||
ioctl,
|
||||
VENC_GET_FLD,
|
||||
&val);
|
||||
if (ret < 0) {
|
||||
|
@@ -521,7 +521,9 @@ static int venc_s_routing(struct v4l2_subdev *sd, u32 input, u32 output,
|
||||
return ret;
|
||||
}
|
||||
|
||||
static long venc_command(struct v4l2_subdev *sd, unsigned int cmd, void *arg)
|
||||
static long venc_ioctl(struct v4l2_subdev *sd,
|
||||
unsigned int cmd,
|
||||
void *arg)
|
||||
{
|
||||
u32 val;
|
||||
|
||||
@@ -540,7 +542,7 @@ static long venc_command(struct v4l2_subdev *sd, unsigned int cmd, void *arg)
|
||||
}
|
||||
|
||||
static const struct v4l2_subdev_core_ops venc_core_ops = {
|
||||
.command = venc_command,
|
||||
.ioctl = venc_ioctl,
|
||||
};
|
||||
|
||||
static const struct v4l2_subdev_video_ops venc_video_ops = {
|
||||
|
@@ -162,9 +162,6 @@ struct v4l2_subdev_io_pin_config {
|
||||
* @s_gpio: set GPIO pins. Very simple right now, might need to be extended with
|
||||
* a direction argument if needed.
|
||||
*
|
||||
* @command: called by in-kernel drivers in order to call functions internal
|
||||
* to subdev drivers driver that have a separate callback.
|
||||
*
|
||||
* @ioctl: called at the end of ioctl() syscall handler at the V4L2 core.
|
||||
* used to provide support for private ioctls used on the driver.
|
||||
*
|
||||
@@ -196,7 +193,6 @@ struct v4l2_subdev_core_ops {
|
||||
int (*load_fw)(struct v4l2_subdev *sd);
|
||||
int (*reset)(struct v4l2_subdev *sd, u32 val);
|
||||
int (*s_gpio)(struct v4l2_subdev *sd, u32 val);
|
||||
long (*command)(struct v4l2_subdev *sd, unsigned int cmd, void *arg);
|
||||
long (*ioctl)(struct v4l2_subdev *sd, unsigned int cmd, void *arg);
|
||||
#ifdef CONFIG_COMPAT
|
||||
long (*compat_ioctl32)(struct v4l2_subdev *sd, unsigned int cmd,
|
||||
|
Reference in New Issue
Block a user