Commit 3d1a51db authored by Thierry Reding's avatar Thierry Reding Committed by Mauro Carvalho Chehab

[media] tm6000: Miscellaneous cleanups

This commit fixes a number of coding style issues as well as some issues
reported by checkpatch and sparse.
Signed-off-by: default avatarThierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent fd34cb08
...@@ -397,7 +397,7 @@ static struct snd_pcm_ops snd_tm6000_pcm_ops = { ...@@ -397,7 +397,7 @@ static struct snd_pcm_ops snd_tm6000_pcm_ops = {
/* /*
* Alsa Constructor - Component probe * Alsa Constructor - Component probe
*/ */
int tm6000_audio_init(struct tm6000_core *dev) static int tm6000_audio_init(struct tm6000_core *dev)
{ {
struct snd_card *card; struct snd_card *card;
struct snd_tm6000_card *chip; struct snd_tm6000_card *chip;
...@@ -490,7 +490,7 @@ static int tm6000_audio_fini(struct tm6000_core *dev) ...@@ -490,7 +490,7 @@ static int tm6000_audio_fini(struct tm6000_core *dev)
return 0; return 0;
} }
struct tm6000_ops audio_ops = { static struct tm6000_ops audio_ops = {
.type = TM6000_AUDIO, .type = TM6000_AUDIO,
.name = "TM6000 Audio Extension", .name = "TM6000 Audio Extension",
.init = tm6000_audio_init, .init = tm6000_audio_init,
......
...@@ -87,7 +87,7 @@ struct tm6000_board { ...@@ -87,7 +87,7 @@ struct tm6000_board {
char *ir_codes; char *ir_codes;
}; };
struct tm6000_board tm6000_boards[] = { static struct tm6000_board tm6000_boards[] = {
[TM6000_BOARD_UNKNOWN] = { [TM6000_BOARD_UNKNOWN] = {
.name = "Unknown tm6000 video grabber", .name = "Unknown tm6000 video grabber",
.caps = { .caps = {
...@@ -394,7 +394,7 @@ struct tm6000_board tm6000_boards[] = { ...@@ -394,7 +394,7 @@ struct tm6000_board tm6000_boards[] = {
.has_zl10353 = 1, .has_zl10353 = 1,
.has_eeprom = 1, .has_eeprom = 1,
.has_remote = 1, .has_remote = 1,
.has_radio = 1. .has_radio = 1,
}, },
.gpio = { .gpio = {
.tuner_reset = TM6010_GPIO_0, .tuner_reset = TM6010_GPIO_0,
...@@ -611,7 +611,7 @@ struct tm6000_board tm6000_boards[] = { ...@@ -611,7 +611,7 @@ struct tm6000_board tm6000_boards[] = {
}; };
/* table of devices that work with this driver */ /* table of devices that work with this driver */
struct usb_device_id tm6000_id_table[] = { static struct usb_device_id tm6000_id_table[] = {
{ USB_DEVICE(0x6000, 0x0001), .driver_info = TM5600_BOARD_GENERIC }, { USB_DEVICE(0x6000, 0x0001), .driver_info = TM5600_BOARD_GENERIC },
{ USB_DEVICE(0x6000, 0x0002), .driver_info = TM6010_BOARD_GENERIC }, { USB_DEVICE(0x6000, 0x0002), .driver_info = TM6010_BOARD_GENERIC },
{ USB_DEVICE(0x06e1, 0xf332), .driver_info = TM6000_BOARD_ADSTECH_DUAL_TV }, { USB_DEVICE(0x06e1, 0xf332), .driver_info = TM6000_BOARD_ADSTECH_DUAL_TV },
...@@ -632,7 +632,7 @@ struct usb_device_id tm6000_id_table[] = { ...@@ -632,7 +632,7 @@ struct usb_device_id tm6000_id_table[] = {
{ USB_DEVICE(0x13d3, 0x3264), .driver_info = TM6010_BOARD_TWINHAN_TU501 }, { USB_DEVICE(0x13d3, 0x3264), .driver_info = TM6010_BOARD_TWINHAN_TU501 },
{ USB_DEVICE(0x6000, 0xdec2), .driver_info = TM6010_BOARD_BEHOLD_WANDER_LITE }, { USB_DEVICE(0x6000, 0xdec2), .driver_info = TM6010_BOARD_BEHOLD_WANDER_LITE },
{ USB_DEVICE(0x6000, 0xdec3), .driver_info = TM6010_BOARD_BEHOLD_VOYAGER_LITE }, { USB_DEVICE(0x6000, 0xdec3), .driver_info = TM6010_BOARD_BEHOLD_VOYAGER_LITE },
{ }, { }
}; };
/* Control power led for show some activity */ /* Control power led for show some activity */
...@@ -787,8 +787,6 @@ EXPORT_SYMBOL_GPL(tm6000_tuner_callback); ...@@ -787,8 +787,6 @@ EXPORT_SYMBOL_GPL(tm6000_tuner_callback);
int tm6000_cards_setup(struct tm6000_core *dev) int tm6000_cards_setup(struct tm6000_core *dev)
{ {
int i, rc;
/* /*
* Board-specific initialization sequence. Handles all GPIO * Board-specific initialization sequence. Handles all GPIO
* initialization sequences that are board-specific. * initialization sequences that are board-specific.
...@@ -860,6 +858,9 @@ int tm6000_cards_setup(struct tm6000_core *dev) ...@@ -860,6 +858,9 @@ int tm6000_cards_setup(struct tm6000_core *dev)
*/ */
if (dev->gpio.tuner_reset) { if (dev->gpio.tuner_reset) {
int rc;
int i;
for (i = 0; i < 2; i++) { for (i = 0; i < 2; i++) {
rc = tm6000_set_reg(dev, REQ_03_SET_GET_MCU_PIN, rc = tm6000_set_reg(dev, REQ_03_SET_GET_MCU_PIN,
dev->gpio.tuner_reset, 0x00); dev->gpio.tuner_reset, 0x00);
...@@ -1168,7 +1169,7 @@ static int tm6000_usb_probe(struct usb_interface *interface, ...@@ -1168,7 +1169,7 @@ static int tm6000_usb_probe(struct usb_interface *interface,
snprintf(dev->name, 29, "tm6000 #%d", nr); snprintf(dev->name, 29, "tm6000 #%d", nr);
dev->model = id->driver_info; dev->model = id->driver_info;
if ((card[nr] >= 0) && (card[nr] < ARRAY_SIZE(tm6000_boards))) if (card[nr] < ARRAY_SIZE(tm6000_boards))
dev->model = card[nr]; dev->model = card[nr];
dev->udev = usbdev; dev->udev = usbdev;
...@@ -1189,8 +1190,6 @@ static int tm6000_usb_probe(struct usb_interface *interface, ...@@ -1189,8 +1190,6 @@ static int tm6000_usb_probe(struct usb_interface *interface,
speed = "unknown"; speed = "unknown";
} }
/* Get endpoints */ /* Get endpoints */
for (i = 0; i < interface->num_altsetting; i++) { for (i = 0; i < interface->num_altsetting; i++) {
int ep; int ep;
...@@ -1274,7 +1273,6 @@ static int tm6000_usb_probe(struct usb_interface *interface, ...@@ -1274,7 +1273,6 @@ static int tm6000_usb_probe(struct usb_interface *interface,
printk(KERN_INFO "tm6000: Found %s\n", tm6000_boards[dev->model].name); printk(KERN_INFO "tm6000: Found %s\n", tm6000_boards[dev->model].name);
rc = tm6000_init_dev(dev); rc = tm6000_init_dev(dev);
if (rc < 0) if (rc < 0)
goto err; goto err;
......
...@@ -42,7 +42,6 @@ int tm6000_read_write_usb(struct tm6000_core *dev, u8 req_type, u8 req, ...@@ -42,7 +42,6 @@ int tm6000_read_write_usb(struct tm6000_core *dev, u8 req_type, u8 req,
if (len) if (len)
data = kzalloc(len, GFP_KERNEL); data = kzalloc(len, GFP_KERNEL);
if (req_type & USB_DIR_IN) if (req_type & USB_DIR_IN)
pipe = usb_rcvctrlpipe(dev->udev, 0); pipe = usb_rcvctrlpipe(dev->udev, 0);
else { else {
...@@ -62,7 +61,7 @@ int tm6000_read_write_usb(struct tm6000_core *dev, u8 req_type, u8 req, ...@@ -62,7 +61,7 @@ int tm6000_read_write_usb(struct tm6000_core *dev, u8 req_type, u8 req,
printk(">>> "); printk(">>> ");
for (i = 0; i < len; i++) for (i = 0; i < len; i++)
printk(" %02x", buf[i]); printk(" %02x", buf[i]);
printk("\n"); printk("\n");
} }
} }
...@@ -308,7 +307,7 @@ int tm6000_init_analog_mode(struct tm6000_core *dev) ...@@ -308,7 +307,7 @@ int tm6000_init_analog_mode(struct tm6000_core *dev)
* FIXME: This is a hack! xc3028 "sleeps" when no channel is detected * FIXME: This is a hack! xc3028 "sleeps" when no channel is detected
* for more than a few seconds. Not sure why, as this behavior does * for more than a few seconds. Not sure why, as this behavior does
* not happen on other devices with xc3028. So, I suspect that it * not happen on other devices with xc3028. So, I suspect that it
* is yet another bug at tm6000. After start sleeping, decoding * is yet another bug at tm6000. After start sleeping, decoding
* doesn't start automatically. Instead, it requires some * doesn't start automatically. Instead, it requires some
* I2C commands to wake it up. As we want to have image at the * I2C commands to wake it up. As we want to have image at the
* beginning, we needed to add this hack. The better would be to * beginning, we needed to add this hack. The better would be to
...@@ -390,7 +389,7 @@ struct reg_init { ...@@ -390,7 +389,7 @@ struct reg_init {
}; };
/* The meaning of those initializations are unknown */ /* The meaning of those initializations are unknown */
struct reg_init tm6000_init_tab[] = { static struct reg_init tm6000_init_tab[] = {
/* REG VALUE */ /* REG VALUE */
{ TM6000_REQ07_RDF_PWDOWN_ACLK, 0x1f }, { TM6000_REQ07_RDF_PWDOWN_ACLK, 0x1f },
{ TM6010_REQ07_RFF_SOFT_RESET, 0x08 }, { TM6010_REQ07_RFF_SOFT_RESET, 0x08 },
...@@ -458,7 +457,7 @@ struct reg_init tm6000_init_tab[] = { ...@@ -458,7 +457,7 @@ struct reg_init tm6000_init_tab[] = {
{ TM6010_REQ05_R18_IMASK7, 0x00 }, { TM6010_REQ05_R18_IMASK7, 0x00 },
}; };
struct reg_init tm6010_init_tab[] = { static struct reg_init tm6010_init_tab[] = {
{ TM6010_REQ07_RC0_ACTIVE_VIDEO_SOURCE, 0x00 }, { TM6010_REQ07_RC0_ACTIVE_VIDEO_SOURCE, 0x00 },
{ TM6010_REQ07_RC4_HSTART0, 0xa0 }, { TM6010_REQ07_RC4_HSTART0, 0xa0 },
{ TM6010_REQ07_RC6_HEND0, 0x40 }, { TM6010_REQ07_RC6_HEND0, 0x40 },
...@@ -687,7 +686,7 @@ int tm6000_set_audio_rinput(struct tm6000_core *dev) ...@@ -687,7 +686,7 @@ int tm6000_set_audio_rinput(struct tm6000_core *dev)
return 0; return 0;
} }
void tm6010_set_mute_sif(struct tm6000_core *dev, u8 mute) static void tm6010_set_mute_sif(struct tm6000_core *dev, u8 mute)
{ {
u8 mute_reg = 0; u8 mute_reg = 0;
...@@ -697,7 +696,7 @@ void tm6010_set_mute_sif(struct tm6000_core *dev, u8 mute) ...@@ -697,7 +696,7 @@ void tm6010_set_mute_sif(struct tm6000_core *dev, u8 mute)
tm6000_set_reg_mask(dev, TM6010_REQ08_R0A_A_I2S_MOD, mute_reg, 0x08); tm6000_set_reg_mask(dev, TM6010_REQ08_R0A_A_I2S_MOD, mute_reg, 0x08);
} }
void tm6010_set_mute_adc(struct tm6000_core *dev, u8 mute) static void tm6010_set_mute_adc(struct tm6000_core *dev, u8 mute)
{ {
u8 mute_reg = 0; u8 mute_reg = 0;
...@@ -749,7 +748,7 @@ int tm6000_tvaudio_set_mute(struct tm6000_core *dev, u8 mute) ...@@ -749,7 +748,7 @@ int tm6000_tvaudio_set_mute(struct tm6000_core *dev, u8 mute)
return 0; return 0;
} }
void tm6010_set_volume_sif(struct tm6000_core *dev, int vol) static void tm6010_set_volume_sif(struct tm6000_core *dev, int vol)
{ {
u8 vol_reg; u8 vol_reg;
...@@ -762,7 +761,7 @@ void tm6010_set_volume_sif(struct tm6000_core *dev, int vol) ...@@ -762,7 +761,7 @@ void tm6010_set_volume_sif(struct tm6000_core *dev, int vol)
tm6000_set_reg(dev, TM6010_REQ08_R08_A_RIGHT_VOL, vol_reg); tm6000_set_reg(dev, TM6010_REQ08_R08_A_RIGHT_VOL, vol_reg);
} }
void tm6010_set_volume_adc(struct tm6000_core *dev, int vol) static void tm6010_set_volume_adc(struct tm6000_core *dev, int vol)
{ {
u8 vol_reg; u8 vol_reg;
......
...@@ -105,7 +105,7 @@ static void tm6000_urb_received(struct urb *urb) ...@@ -105,7 +105,7 @@ static void tm6000_urb_received(struct urb *urb)
} }
} }
int tm6000_start_stream(struct tm6000_core *dev) static int tm6000_start_stream(struct tm6000_core *dev)
{ {
int ret; int ret;
unsigned int pipe, size; unsigned int pipe, size;
...@@ -166,7 +166,7 @@ int tm6000_start_stream(struct tm6000_core *dev) ...@@ -166,7 +166,7 @@ int tm6000_start_stream(struct tm6000_core *dev)
return 0; return 0;
} }
void tm6000_stop_stream(struct tm6000_core *dev) static void tm6000_stop_stream(struct tm6000_core *dev)
{ {
struct tm6000_dvb *dvb = dev->dvb; struct tm6000_dvb *dvb = dev->dvb;
...@@ -180,7 +180,7 @@ void tm6000_stop_stream(struct tm6000_core *dev) ...@@ -180,7 +180,7 @@ void tm6000_stop_stream(struct tm6000_core *dev)
} }
} }
int tm6000_start_feed(struct dvb_demux_feed *feed) static int tm6000_start_feed(struct dvb_demux_feed *feed)
{ {
struct dvb_demux *demux = feed->demux; struct dvb_demux *demux = feed->demux;
struct tm6000_core *dev = demux->priv; struct tm6000_core *dev = demux->priv;
...@@ -199,7 +199,7 @@ int tm6000_start_feed(struct dvb_demux_feed *feed) ...@@ -199,7 +199,7 @@ int tm6000_start_feed(struct dvb_demux_feed *feed)
return 0; return 0;
} }
int tm6000_stop_feed(struct dvb_demux_feed *feed) static int tm6000_stop_feed(struct dvb_demux_feed *feed)
{ {
struct dvb_demux *demux = feed->demux; struct dvb_demux *demux = feed->demux;
struct tm6000_core *dev = demux->priv; struct tm6000_core *dev = demux->priv;
...@@ -222,7 +222,7 @@ int tm6000_stop_feed(struct dvb_demux_feed *feed) ...@@ -222,7 +222,7 @@ int tm6000_stop_feed(struct dvb_demux_feed *feed)
return 0; return 0;
} }
int tm6000_dvb_attach_frontend(struct tm6000_core *dev) static int tm6000_dvb_attach_frontend(struct tm6000_core *dev)
{ {
struct tm6000_dvb *dvb = dev->dvb; struct tm6000_dvb *dvb = dev->dvb;
...@@ -247,7 +247,7 @@ int tm6000_dvb_attach_frontend(struct tm6000_core *dev) ...@@ -247,7 +247,7 @@ int tm6000_dvb_attach_frontend(struct tm6000_core *dev)
DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr); DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
int register_dvb(struct tm6000_core *dev) static int register_dvb(struct tm6000_core *dev)
{ {
int ret = -1; int ret = -1;
struct tm6000_dvb *dvb = dev->dvb; struct tm6000_dvb *dvb = dev->dvb;
...@@ -359,7 +359,7 @@ int register_dvb(struct tm6000_core *dev) ...@@ -359,7 +359,7 @@ int register_dvb(struct tm6000_core *dev)
return ret; return ret;
} }
void unregister_dvb(struct tm6000_core *dev) static void unregister_dvb(struct tm6000_core *dev)
{ {
struct tm6000_dvb *dvb = dev->dvb; struct tm6000_dvb *dvb = dev->dvb;
......
...@@ -284,7 +284,7 @@ static void tm6000_ir_stop(struct rc_dev *rc) ...@@ -284,7 +284,7 @@ static void tm6000_ir_stop(struct rc_dev *rc)
cancel_delayed_work_sync(&ir->work); cancel_delayed_work_sync(&ir->work);
} }
int tm6000_ir_change_protocol(struct rc_dev *rc, u64 rc_type) static int tm6000_ir_change_protocol(struct rc_dev *rc, u64 rc_type)
{ {
struct tm6000_IR *ir = rc->priv; struct tm6000_IR *ir = rc->priv;
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
#include "tm6000.h" #include "tm6000.h"
#include "tm6000-regs.h" #include "tm6000-regs.h"
static unsigned int tm6010_a_mode = 0; static unsigned int tm6010_a_mode;
module_param(tm6010_a_mode, int, 0644); module_param(tm6010_a_mode, int, 0644);
MODULE_PARM_DESC(tm6010_a_mode, "set tm6010 sif audio mode"); MODULE_PARM_DESC(tm6010_a_mode, "set tm6010 sif audio mode");
...@@ -674,6 +674,5 @@ int tm6000_set_standard(struct tm6000_core *dev) ...@@ -674,6 +674,5 @@ int tm6000_set_standard(struct tm6000_core *dev)
msleep(40); msleep(40);
return 0; return 0;
} }
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
* along with this program; if not, write to the Free Software * along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/ */
#include <linux/module.h> #include <linux/module.h>
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/errno.h> #include <linux/errno.h>
...@@ -202,17 +203,6 @@ static inline void buffer_filled(struct tm6000_core *dev, ...@@ -202,17 +203,6 @@ static inline void buffer_filled(struct tm6000_core *dev,
wake_up(&buf->vb.done); wake_up(&buf->vb.done);
} }
const char *tm6000_msg_type[] = {
"unknown(0)", /* 0 */
"video", /* 1 */
"audio", /* 2 */
"vbi", /* 3 */
"pts", /* 4 */
"err", /* 5 */
"unknown(6)", /* 6 */
"unknown(7)", /* 7 */
};
/* /*
* Identify the tm5600/6000 buffer header type and properly handles * Identify the tm5600/6000 buffer header type and properly handles
*/ */
...@@ -286,17 +276,18 @@ static int copy_streams(u8 *data, unsigned long len, ...@@ -286,17 +276,18 @@ static int copy_streams(u8 *data, unsigned long len,
if (size > TM6000_URB_MSG_LEN) if (size > TM6000_URB_MSG_LEN)
size = TM6000_URB_MSG_LEN; size = TM6000_URB_MSG_LEN;
pktsize = TM6000_URB_MSG_LEN; pktsize = TM6000_URB_MSG_LEN;
/* calculate position in buffer /*
* and change the buffer * calculate position in buffer and change the buffer
*/ */
switch (cmd) { switch (cmd) {
case TM6000_URB_MSG_VIDEO: case TM6000_URB_MSG_VIDEO:
if (!dev->radio) { if (!dev->radio) {
if ((dev->isoc_ctl.vfield != field) && if ((dev->isoc_ctl.vfield != field) &&
(field == 1)) { (field == 1)) {
/* Announces that a new buffer /*
* were filled * Announces that a new buffer
*/ * were filled
*/
buffer_filled(dev, dma_q, vbuf); buffer_filled(dev, dma_q, vbuf);
dprintk(dev, V4L2_DEBUG_ISOC, dprintk(dev, V4L2_DEBUG_ISOC,
"new buffer filled\n"); "new buffer filled\n");
...@@ -321,7 +312,7 @@ static int copy_streams(u8 *data, unsigned long len, ...@@ -321,7 +312,7 @@ static int copy_streams(u8 *data, unsigned long len,
break; break;
case TM6000_URB_MSG_AUDIO: case TM6000_URB_MSG_AUDIO:
case TM6000_URB_MSG_PTS: case TM6000_URB_MSG_PTS:
size = pktsize; /* Size is always 180 bytes */ size = pktsize; /* Size is always 180 bytes */
break; break;
} }
} else { } else {
...@@ -363,7 +354,8 @@ static int copy_streams(u8 *data, unsigned long len, ...@@ -363,7 +354,8 @@ static int copy_streams(u8 *data, unsigned long len,
} }
} }
if (ptr + pktsize > endp) { if (ptr + pktsize > endp) {
/* End of URB packet, but cmd processing is not /*
* End of URB packet, but cmd processing is not
* complete. Preserve the state for a next packet * complete. Preserve the state for a next packet
*/ */
dev->isoc_ctl.pos = pos + cpysize; dev->isoc_ctl.pos = pos + cpysize;
...@@ -1035,8 +1027,8 @@ static int vidioc_dqbuf(struct file *file, void *priv, struct v4l2_buffer *p) ...@@ -1035,8 +1027,8 @@ static int vidioc_dqbuf(struct file *file, void *priv, struct v4l2_buffer *p)
static int vidioc_streamon(struct file *file, void *priv, enum v4l2_buf_type i) static int vidioc_streamon(struct file *file, void *priv, enum v4l2_buf_type i)
{ {
struct tm6000_fh *fh = priv; struct tm6000_fh *fh = priv;
struct tm6000_core *dev = fh->dev; struct tm6000_core *dev = fh->dev;
if (fh->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) if (fh->type != V4L2_BUF_TYPE_VIDEO_CAPTURE)
return -EINVAL; return -EINVAL;
...@@ -1050,11 +1042,12 @@ static int vidioc_streamon(struct file *file, void *priv, enum v4l2_buf_type i) ...@@ -1050,11 +1042,12 @@ static int vidioc_streamon(struct file *file, void *priv, enum v4l2_buf_type i)
static int vidioc_streamoff(struct file *file, void *priv, enum v4l2_buf_type i) static int vidioc_streamoff(struct file *file, void *priv, enum v4l2_buf_type i)
{ {
struct tm6000_fh *fh = priv; struct tm6000_fh *fh = priv;
struct tm6000_core *dev = fh->dev; struct tm6000_core *dev = fh->dev;
if (fh->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) if (fh->type != V4L2_BUF_TYPE_VIDEO_CAPTURE)
return -EINVAL; return -EINVAL;
if (i != fh->type) if (i != fh->type)
return -EINVAL; return -EINVAL;
...@@ -1067,7 +1060,7 @@ static int vidioc_streamoff(struct file *file, void *priv, enum v4l2_buf_type i) ...@@ -1067,7 +1060,7 @@ static int vidioc_streamoff(struct file *file, void *priv, enum v4l2_buf_type i)
static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id *norm) static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id *norm)
{ {
int rc = 0; int rc = 0;
struct tm6000_fh *fh = priv; struct tm6000_fh *fh = priv;
struct tm6000_core *dev = fh->dev; struct tm6000_core *dev = fh->dev;
dev->norm = *norm; dev->norm = *norm;
...@@ -1464,9 +1457,6 @@ static int tm6000_open(struct file *file) ...@@ -1464,9 +1457,6 @@ static int tm6000_open(struct file *file)
int i, rc; int i, rc;
int radio = 0; int radio = 0;
printk(KERN_INFO "tm6000: open called (dev=%s)\n",
video_device_node_name(vdev));
dprintk(dev, V4L2_DEBUG_OPEN, "tm6000: open called (dev=%s)\n", dprintk(dev, V4L2_DEBUG_OPEN, "tm6000: open called (dev=%s)\n",
video_device_node_name(vdev)); video_device_node_name(vdev));
...@@ -1507,12 +1497,13 @@ static int tm6000_open(struct file *file) ...@@ -1507,12 +1497,13 @@ static int tm6000_open(struct file *file)
tm6000_get_std_res(dev); tm6000_get_std_res(dev);
fh->width = dev->width; fh->width = dev->width;
fh->height = dev->height; fh->height = dev->height;
dprintk(dev, V4L2_DEBUG_OPEN, "Open: fh=0x%08lx, dev=0x%08lx, " dprintk(dev, V4L2_DEBUG_OPEN, "Open: fh=0x%08lx, dev=0x%08lx, "
"dev->vidq=0x%08lx\n", "dev->vidq=0x%08lx\n",
(unsigned long)fh, (unsigned long)dev, (unsigned long)&dev->vidq); (unsigned long)fh, (unsigned long)dev,
(unsigned long)&dev->vidq);
dprintk(dev, V4L2_DEBUG_OPEN, "Open: list_empty " dprintk(dev, V4L2_DEBUG_OPEN, "Open: list_empty "
"queued=%d\n", list_empty(&dev->vidq.queued)); "queued=%d\n", list_empty(&dev->vidq.queued));
dprintk(dev, V4L2_DEBUG_OPEN, "Open: list_empty " dprintk(dev, V4L2_DEBUG_OPEN, "Open: list_empty "
...@@ -1583,8 +1574,7 @@ tm6000_poll(struct file *file, struct poll_table_struct *wait) ...@@ -1583,8 +1574,7 @@ tm6000_poll(struct file *file, struct poll_table_struct *wait)
buf = list_entry(fh->vb_vidq.stream.next, struct tm6000_buffer, vb.stream); buf = list_entry(fh->vb_vidq.stream.next, struct tm6000_buffer, vb.stream);
} else { } else {
/* read() capture */ /* read() capture */
return videobuf_poll_stream(file, &fh->vb_vidq, return videobuf_poll_stream(file, &fh->vb_vidq, wait);
wait);
} }
poll_wait(file, &buf->vb.done, wait); poll_wait(file, &buf->vb.done, wait);
if (buf->vb.state == VIDEOBUF_DONE || if (buf->vb.state == VIDEOBUF_DONE ||
...@@ -1617,22 +1607,19 @@ static int tm6000_release(struct file *file) ...@@ -1617,22 +1607,19 @@ static int tm6000_release(struct file *file)
static int tm6000_mmap(struct file *file, struct vm_area_struct * vma) static int tm6000_mmap(struct file *file, struct vm_area_struct * vma)
{ {
struct tm6000_fh *fh = file->private_data; struct tm6000_fh *fh = file->private_data;
int ret;
ret = videobuf_mmap_mapper(&fh->vb_vidq, vma);
return ret; return videobuf_mmap_mapper(&fh->vb_vidq, vma);
} }
static struct v4l2_file_operations tm6000_fops = { static struct v4l2_file_operations tm6000_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = tm6000_open, .open = tm6000_open,
.release = tm6000_release, .release = tm6000_release,
.unlocked_ioctl = video_ioctl2, /* V4L2 ioctl handler */ .unlocked_ioctl = video_ioctl2, /* V4L2 ioctl handler */
.read = tm6000_read, .read = tm6000_read,
.poll = tm6000_poll, .poll = tm6000_poll,
.mmap = tm6000_mmap, .mmap = tm6000_mmap,
}; };
static const struct v4l2_ioctl_ops video_ioctl_ops = { static const struct v4l2_ioctl_ops video_ioctl_ops = {
...@@ -1693,7 +1680,7 @@ static const struct v4l2_ioctl_ops radio_ioctl_ops = { ...@@ -1693,7 +1680,7 @@ static const struct v4l2_ioctl_ops radio_ioctl_ops = {
.vidioc_s_frequency = vidioc_s_frequency, .vidioc_s_frequency = vidioc_s_frequency,
}; };
struct video_device tm6000_radio_template = { static struct video_device tm6000_radio_template = {
.name = "tm6000", .name = "tm6000",
.fops = &radio_fops, .fops = &radio_fops,
.ioctl_ops = &radio_ioctl_ops, .ioctl_ops = &radio_ioctl_ops,
......
...@@ -20,9 +20,6 @@ ...@@ -20,9 +20,6 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/ */
/* Use the tm6000-hack, instead of the proper initialization code i*/
/* #define HACK 1 */
#include <linux/videodev2.h> #include <linux/videodev2.h>
#include <media/v4l2-common.h> #include <media/v4l2-common.h>
#include <media/videobuf-vmalloc.h> #include <media/videobuf-vmalloc.h>
...@@ -30,7 +27,7 @@ ...@@ -30,7 +27,7 @@
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/mutex.h> #include <linux/mutex.h>
#include <media/v4l2-device.h> #include <media/v4l2-device.h>
#include <linux/version.h>
#include <linux/dvb/frontend.h> #include <linux/dvb/frontend.h>
#include "dvb_demux.h" #include "dvb_demux.h"
#include "dvb_frontend.h" #include "dvb_frontend.h"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment