V4L/DVB (8906): v4l-dvb: fix assorted sparse warnings
Fix sparse warnings. None are serious, but cutting down on these helps find future serious sparse warnings/errors. Redid the av7710.c patch based on a suggestion by Oliver Endriss. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
2bb87c24d7
commit
d45b9b8ab4
39 changed files with 108 additions and 111 deletions
|
@ -25,7 +25,7 @@
|
|||
*/
|
||||
#include "af9005.h"
|
||||
/* debug */
|
||||
int dvb_usb_af9005_remote_debug;
|
||||
static int dvb_usb_af9005_remote_debug;
|
||||
module_param_named(debug, dvb_usb_af9005_remote_debug, int, 0644);
|
||||
MODULE_PARM_DESC(debug,
|
||||
"enable (1) or disable (0) debug messages."
|
||||
|
|
|
@ -14,7 +14,7 @@ typedef struct {
|
|||
u8 val;
|
||||
} RegDesc;
|
||||
|
||||
RegDesc script[] = {
|
||||
static RegDesc script[] = {
|
||||
{0xa180, 0x0, 0x8, 0xa},
|
||||
{0xa181, 0x0, 0x8, 0xd7},
|
||||
{0xa182, 0x0, 0x8, 0xa3},
|
||||
|
|
|
@ -35,17 +35,17 @@ module_param_named(led, dvb_usb_af9005_led, bool, 0644);
|
|||
MODULE_PARM_DESC(led, "enable led (default: 1).");
|
||||
|
||||
/* eeprom dump */
|
||||
int dvb_usb_af9005_dump_eeprom = 0;
|
||||
static int dvb_usb_af9005_dump_eeprom;
|
||||
module_param_named(dump_eeprom, dvb_usb_af9005_dump_eeprom, int, 0);
|
||||
MODULE_PARM_DESC(dump_eeprom, "dump contents of the eeprom.");
|
||||
|
||||
DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
|
||||
|
||||
/* remote control decoder */
|
||||
int (*rc_decode) (struct dvb_usb_device * d, u8 * data, int len, u32 * event,
|
||||
int *state);
|
||||
void *rc_keys;
|
||||
int *rc_keys_size;
|
||||
static int (*rc_decode) (struct dvb_usb_device *d, u8 *data, int len,
|
||||
u32 *event, int *state);
|
||||
static void *rc_keys;
|
||||
static int *rc_keys_size;
|
||||
|
||||
u8 regmask[8] = { 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7f, 0xff };
|
||||
|
||||
|
@ -54,8 +54,8 @@ struct af9005_device_state {
|
|||
int led_state;
|
||||
};
|
||||
|
||||
int af9005_usb_generic_rw(struct dvb_usb_device *d, u8 * wbuf, u16 wlen,
|
||||
u8 * rbuf, u16 rlen, int delay_ms)
|
||||
static int af9005_usb_generic_rw(struct dvb_usb_device *d, u8 *wbuf, u16 wlen,
|
||||
u8 *rbuf, u16 rlen, int delay_ms)
|
||||
{
|
||||
int actlen, ret = -ENOMEM;
|
||||
|
||||
|
@ -98,12 +98,7 @@ int af9005_usb_generic_rw(struct dvb_usb_device *d, u8 * wbuf, u16 wlen,
|
|||
return ret;
|
||||
}
|
||||
|
||||
int af9005_usb_generic_write(struct dvb_usb_device *d, u8 * buf, u16 len)
|
||||
{
|
||||
return af9005_usb_generic_rw(d, buf, len, NULL, 0, 0);
|
||||
}
|
||||
|
||||
int af9005_generic_read_write(struct dvb_usb_device *d, u16 reg,
|
||||
static int af9005_generic_read_write(struct dvb_usb_device *d, u16 reg,
|
||||
int readwrite, int type, u8 * values, int len)
|
||||
{
|
||||
struct af9005_device_state *st = d->priv;
|
||||
|
@ -765,7 +760,7 @@ static int af9005_boot_packet(struct usb_device *udev, int type, u8 * reply)
|
|||
return 0;
|
||||
}
|
||||
|
||||
int af9005_download_firmware(struct usb_device *udev, const struct firmware *fw)
|
||||
static int af9005_download_firmware(struct usb_device *udev, const struct firmware *fw)
|
||||
{
|
||||
int i, packets, ret, act_len;
|
||||
|
||||
|
|
|
@ -33,12 +33,17 @@ struct cx24110_config
|
|||
u8 demod_address;
|
||||
};
|
||||
|
||||
static inline int cx24110_pll_write(struct dvb_frontend *fe, u32 val) {
|
||||
int r = 0;
|
||||
u8 buf[] = {(u8) (val>>24), (u8) (val>>16), (u8) (val>>8)};
|
||||
static inline int cx24110_pll_write(struct dvb_frontend *fe, u32 val)
|
||||
{
|
||||
u8 buf[] = {
|
||||
(u8)((val >> 24) & 0xff),
|
||||
(u8)((val >> 16) & 0xff),
|
||||
(u8)((val >> 8) & 0xff)
|
||||
};
|
||||
|
||||
if (fe->ops.write)
|
||||
r = fe->ops.write(fe, buf, 3);
|
||||
return r;
|
||||
return fe->ops.write(fe, buf, 3);
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if defined(CONFIG_DVB_CX24110) || (defined(CONFIG_DVB_CX24110_MODULE) && defined(MODULE))
|
||||
|
|
|
@ -1284,7 +1284,8 @@ struct i2c_adapter * dib7000m_get_i2c_master(struct dvb_frontend *demod, enum di
|
|||
}
|
||||
EXPORT_SYMBOL(dib7000m_get_i2c_master);
|
||||
|
||||
int dib7000m_i2c_enumeration(struct i2c_adapter *i2c, int no_of_demods, u8 default_addr, struct dib7000m_config cfg[])
|
||||
static int dib7000m_i2c_enumeration(struct i2c_adapter *i2c, int no_of_demods,
|
||||
u8 default_addr, struct dib7000m_config cfg[])
|
||||
{
|
||||
struct dib7000m_state st = { .i2c_adap = i2c };
|
||||
int k = 0;
|
||||
|
|
|
@ -132,7 +132,7 @@ struct dvb_frontend* dvb_dummy_fe_ofdm_attach(void)
|
|||
|
||||
static struct dvb_frontend_ops dvb_dummy_fe_qpsk_ops;
|
||||
|
||||
struct dvb_frontend* dvb_dummy_fe_qpsk_attach()
|
||||
struct dvb_frontend *dvb_dummy_fe_qpsk_attach(void)
|
||||
{
|
||||
struct dvb_dummy_fe_state* state = NULL;
|
||||
|
||||
|
@ -152,7 +152,7 @@ struct dvb_frontend* dvb_dummy_fe_qpsk_attach()
|
|||
|
||||
static struct dvb_frontend_ops dvb_dummy_fe_qam_ops;
|
||||
|
||||
struct dvb_frontend* dvb_dummy_fe_qam_attach()
|
||||
struct dvb_frontend *dvb_dummy_fe_qam_attach(void)
|
||||
{
|
||||
struct dvb_dummy_fe_state* state = NULL;
|
||||
|
||||
|
|
|
@ -337,7 +337,8 @@ static int sp887x_setup_frontend_parameters (struct dvb_frontend* fe,
|
|||
struct dvb_frontend_parameters *p)
|
||||
{
|
||||
struct sp887x_state* state = fe->demodulator_priv;
|
||||
int actual_freq, err;
|
||||
unsigned actual_freq;
|
||||
int err;
|
||||
u16 val, reg0xc05;
|
||||
|
||||
if (p->u.ofdm.bandwidth != BANDWIDTH_8_MHZ &&
|
||||
|
|
|
@ -381,9 +381,9 @@ static inline void start_debi_dma(struct av7110 *av7110, int dir,
|
|||
irdebi(av7110, DEBISWAB, addr, 0, len);
|
||||
}
|
||||
|
||||
static void debiirq(unsigned long data)
|
||||
static void debiirq(unsigned long cookie)
|
||||
{
|
||||
struct av7110 *av7110 = (struct av7110 *) data;
|
||||
struct av7110 *av7110 = (struct av7110 *)cookie;
|
||||
int type = av7110->debitype;
|
||||
int handle = (type >> 8) & 0x1f;
|
||||
unsigned int xfer = 0;
|
||||
|
@ -492,9 +492,9 @@ static void debiirq(unsigned long data)
|
|||
}
|
||||
|
||||
/* irq from av7110 firmware writing the mailbox register in the DPRAM */
|
||||
static void gpioirq(unsigned long data)
|
||||
static void gpioirq(unsigned long cookie)
|
||||
{
|
||||
struct av7110 *av7110 = (struct av7110 *) data;
|
||||
struct av7110 *av7110 = (struct av7110 *)cookie;
|
||||
u32 rxbuf, txbuf;
|
||||
int len;
|
||||
|
||||
|
@ -1260,9 +1260,9 @@ static int budget_stop_feed(struct dvb_demux_feed *feed)
|
|||
return status;
|
||||
}
|
||||
|
||||
static void vpeirq(unsigned long data)
|
||||
static void vpeirq(unsigned long cookie)
|
||||
{
|
||||
struct av7110 *budget = (struct av7110 *) data;
|
||||
struct av7110 *budget = (struct av7110 *)cookie;
|
||||
u8 *mem = (u8 *) (budget->grabbing);
|
||||
u32 olddma = budget->ttbp;
|
||||
u32 newdma = saa7146_read(budget->dev, PCI_VDP3);
|
||||
|
|
|
@ -1537,7 +1537,7 @@ static int config_sensor_500(struct camera_data *cam,
|
|||
*
|
||||
* This sets all user changeable properties to the values in cam->params.
|
||||
*****************************************************************************/
|
||||
int set_all_properties(struct camera_data *cam)
|
||||
static int set_all_properties(struct camera_data *cam)
|
||||
{
|
||||
/**
|
||||
* Don't set target_kb here, it will be set later.
|
||||
|
@ -1588,7 +1588,7 @@ void cpia2_save_camera_state(struct camera_data *cam)
|
|||
* get_color_params
|
||||
*
|
||||
*****************************************************************************/
|
||||
void get_color_params(struct camera_data *cam)
|
||||
static void get_color_params(struct camera_data *cam)
|
||||
{
|
||||
cpia2_do_command(cam, CPIA2_CMD_GET_VP_BRIGHTNESS, TRANSFER_READ, 0);
|
||||
cpia2_do_command(cam, CPIA2_CMD_GET_VP_SATURATION, TRANSFER_READ, 0);
|
||||
|
@ -1881,7 +1881,7 @@ void cpia2_set_saturation(struct camera_data *cam, unsigned char value)
|
|||
* wake_system
|
||||
*
|
||||
*****************************************************************************/
|
||||
void wake_system(struct camera_data *cam)
|
||||
static void wake_system(struct camera_data *cam)
|
||||
{
|
||||
cpia2_do_command(cam, CPIA2_CMD_SET_WAKEUP, TRANSFER_WRITE, 0);
|
||||
}
|
||||
|
@ -1892,7 +1892,7 @@ void wake_system(struct camera_data *cam)
|
|||
*
|
||||
* Valid for STV500 sensor only
|
||||
*****************************************************************************/
|
||||
void set_lowlight_boost(struct camera_data *cam)
|
||||
static void set_lowlight_boost(struct camera_data *cam)
|
||||
{
|
||||
struct cpia2_command cmd;
|
||||
|
||||
|
@ -2169,7 +2169,7 @@ void cpia2_dbg_dump_registers(struct camera_data *cam)
|
|||
*
|
||||
* Sets all values to the defaults
|
||||
*****************************************************************************/
|
||||
void reset_camera_struct(struct camera_data *cam)
|
||||
static void reset_camera_struct(struct camera_data *cam)
|
||||
{
|
||||
/***
|
||||
* The following parameter values are the defaults from the register map.
|
||||
|
|
|
@ -478,7 +478,7 @@ int cpia2_usb_change_streaming_alternate(struct camera_data *cam,
|
|||
* set_alternate
|
||||
*
|
||||
*****************************************************************************/
|
||||
int set_alternate(struct camera_data *cam, unsigned int alt)
|
||||
static int set_alternate(struct camera_data *cam, unsigned int alt)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
|
|
|
@ -632,7 +632,7 @@ int mc417_memory_read(struct cx23885_dev *dev, u32 address, u32 *value)
|
|||
/* ------------------------------------------------------------------ */
|
||||
|
||||
/* MPEG encoder API */
|
||||
char *cmd_to_str(int cmd)
|
||||
static char *cmd_to_str(int cmd)
|
||||
{
|
||||
switch (cmd) {
|
||||
case CX2341X_ENC_PING_FW:
|
||||
|
|
|
@ -85,18 +85,8 @@ static int cx23885_start_vbi_dma(struct cx23885_dev *dev,
|
|||
return 0;
|
||||
}
|
||||
|
||||
int cx23885_stop_vbi_dma(struct cx23885_dev *dev)
|
||||
{
|
||||
/* stop dma */
|
||||
cx_clear(VID_A_DMA_CTL, 0x00000022);
|
||||
|
||||
/* disable irqs */
|
||||
cx_clear(PCI_INT_MSK, 0x000001);
|
||||
cx_clear(VID_A_INT_MSK, 0x00000022);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int cx23885_restart_vbi_queue(struct cx23885_dev *dev,
|
||||
static int cx23885_restart_vbi_queue(struct cx23885_dev *dev,
|
||||
struct cx23885_dmaqueue *q)
|
||||
{
|
||||
struct cx23885_buffer *buf;
|
||||
|
|
|
@ -244,7 +244,7 @@ static struct cx23885_ctrl cx23885_ctls[] = {
|
|||
};
|
||||
static const int CX23885_CTLS = ARRAY_SIZE(cx23885_ctls);
|
||||
|
||||
const u32 cx23885_user_ctrls[] = {
|
||||
static const u32 cx23885_user_ctrls[] = {
|
||||
V4L2_CID_USER_CLASS,
|
||||
V4L2_CID_BRIGHTNESS,
|
||||
V4L2_CID_CONTRAST,
|
||||
|
@ -254,14 +254,13 @@ const u32 cx23885_user_ctrls[] = {
|
|||
V4L2_CID_AUDIO_MUTE,
|
||||
0
|
||||
};
|
||||
EXPORT_SYMBOL(cx23885_user_ctrls);
|
||||
|
||||
static const u32 *ctrl_classes[] = {
|
||||
cx23885_user_ctrls,
|
||||
NULL
|
||||
};
|
||||
|
||||
void cx23885_video_wakeup(struct cx23885_dev *dev,
|
||||
static void cx23885_video_wakeup(struct cx23885_dev *dev,
|
||||
struct cx23885_dmaqueue *q, u32 count)
|
||||
{
|
||||
struct cx23885_buffer *buf;
|
||||
|
@ -296,7 +295,7 @@ void cx23885_video_wakeup(struct cx23885_dev *dev,
|
|||
__func__, bc);
|
||||
}
|
||||
|
||||
int cx23885_set_tvnorm(struct cx23885_dev *dev, v4l2_std_id norm)
|
||||
static int cx23885_set_tvnorm(struct cx23885_dev *dev, v4l2_std_id norm)
|
||||
{
|
||||
dprintk(1, "%s(norm = 0x%08x) name: [%s]\n",
|
||||
__func__,
|
||||
|
@ -314,7 +313,7 @@ int cx23885_set_tvnorm(struct cx23885_dev *dev, v4l2_std_id norm)
|
|||
return 0;
|
||||
}
|
||||
|
||||
struct video_device *cx23885_vdev_init(struct cx23885_dev *dev,
|
||||
static struct video_device *cx23885_vdev_init(struct cx23885_dev *dev,
|
||||
struct pci_dev *pci,
|
||||
struct video_device *template,
|
||||
char *type)
|
||||
|
@ -334,7 +333,7 @@ struct video_device *cx23885_vdev_init(struct cx23885_dev *dev,
|
|||
return vfd;
|
||||
}
|
||||
|
||||
int cx23885_ctrl_query(struct v4l2_queryctrl *qctrl)
|
||||
static int cx23885_ctrl_query(struct v4l2_queryctrl *qctrl)
|
||||
{
|
||||
int i;
|
||||
|
||||
|
@ -351,7 +350,6 @@ int cx23885_ctrl_query(struct v4l2_queryctrl *qctrl)
|
|||
*qctrl = cx23885_ctls[i].v;
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(cx23885_ctrl_query);
|
||||
|
||||
/* ------------------------------------------------------------------- */
|
||||
/* resource management */
|
||||
|
@ -402,7 +400,7 @@ static void res_free(struct cx23885_dev *dev, struct cx23885_fh *fh,
|
|||
mutex_unlock(&dev->lock);
|
||||
}
|
||||
|
||||
int cx23885_video_mux(struct cx23885_dev *dev, unsigned int input)
|
||||
static int cx23885_video_mux(struct cx23885_dev *dev, unsigned int input)
|
||||
{
|
||||
struct v4l2_routing route;
|
||||
memset(&route, 0, sizeof(route));
|
||||
|
@ -422,10 +420,9 @@ int cx23885_video_mux(struct cx23885_dev *dev, unsigned int input)
|
|||
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(cx23885_video_mux);
|
||||
|
||||
/* ------------------------------------------------------------------ */
|
||||
int cx23885_set_scale(struct cx23885_dev *dev, unsigned int width,
|
||||
static int cx23885_set_scale(struct cx23885_dev *dev, unsigned int width,
|
||||
unsigned int height, enum v4l2_field field)
|
||||
{
|
||||
dprintk(1, "%s()\n", __func__);
|
||||
|
@ -890,21 +887,19 @@ static int video_mmap(struct file *file, struct vm_area_struct *vma)
|
|||
/* ------------------------------------------------------------------ */
|
||||
/* VIDEO CTRL IOCTLS */
|
||||
|
||||
int cx23885_get_control(struct cx23885_dev *dev, struct v4l2_control *ctl)
|
||||
static int cx23885_get_control(struct cx23885_dev *dev, struct v4l2_control *ctl)
|
||||
{
|
||||
dprintk(1, "%s() calling cx25840(VIDIOC_G_CTRL)\n", __func__);
|
||||
cx23885_call_i2c_clients(&dev->i2c_bus[2], VIDIOC_G_CTRL, ctl);
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(cx23885_get_control);
|
||||
|
||||
int cx23885_set_control(struct cx23885_dev *dev, struct v4l2_control *ctl)
|
||||
static int cx23885_set_control(struct cx23885_dev *dev, struct v4l2_control *ctl)
|
||||
{
|
||||
dprintk(1, "%s() calling cx25840(VIDIOC_S_CTRL)"
|
||||
" (disabled - no action)\n", __func__);
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(cx23885_set_control);
|
||||
|
||||
static void init_controls(struct cx23885_dev *dev)
|
||||
{
|
||||
|
@ -1152,7 +1147,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id *tvnorms)
|
|||
return 0;
|
||||
}
|
||||
|
||||
int cx23885_enum_input(struct cx23885_dev *dev, struct v4l2_input *i)
|
||||
static int cx23885_enum_input(struct cx23885_dev *dev, struct v4l2_input *i)
|
||||
{
|
||||
static const char *iname[] = {
|
||||
[CX23885_VMUX_COMPOSITE1] = "Composite1",
|
||||
|
@ -1185,7 +1180,6 @@ int cx23885_enum_input(struct cx23885_dev *dev, struct v4l2_input *i)
|
|||
i->std = CX23885_NORMS;
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(cx23885_enum_input);
|
||||
|
||||
static int vidioc_enum_input(struct file *file, void *priv,
|
||||
struct v4l2_input *i)
|
||||
|
@ -1294,7 +1288,7 @@ static int vidioc_g_frequency(struct file *file, void *priv,
|
|||
return 0;
|
||||
}
|
||||
|
||||
int cx23885_set_freq(struct cx23885_dev *dev, struct v4l2_frequency *f)
|
||||
static int cx23885_set_freq(struct cx23885_dev *dev, struct v4l2_frequency *f)
|
||||
{
|
||||
if (unlikely(UNSET == dev->tuner_type))
|
||||
return -EINVAL;
|
||||
|
@ -1313,7 +1307,6 @@ int cx23885_set_freq(struct cx23885_dev *dev, struct v4l2_frequency *f)
|
|||
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(cx23885_set_freq);
|
||||
|
||||
static int vidioc_s_frequency(struct file *file, void *priv,
|
||||
struct v4l2_frequency *f)
|
||||
|
|
|
@ -274,7 +274,7 @@ static int attach_xc3028(u8 addr, struct em28xx *dev)
|
|||
|
||||
/* ------------------------------------------------------------------ */
|
||||
|
||||
int register_dvb(struct em28xx_dvb *dvb,
|
||||
static int register_dvb(struct em28xx_dvb *dvb,
|
||||
struct module *module,
|
||||
struct em28xx *dev,
|
||||
struct device *device)
|
||||
|
|
|
@ -143,10 +143,11 @@ static int em2800_i2c_check_for_device(struct em28xx *dev, unsigned char addr)
|
|||
}
|
||||
for (write_timeout = EM2800_I2C_WRITE_TIMEOUT; write_timeout > 0;
|
||||
write_timeout -= 5) {
|
||||
unsigned msg = dev->em28xx_read_reg(dev, 0x5);
|
||||
if (msg == 0x94)
|
||||
unsigned reg = dev->em28xx_read_reg(dev, 0x5);
|
||||
|
||||
if (reg == 0x94)
|
||||
return -ENODEV;
|
||||
else if (msg == 0x84)
|
||||
else if (reg == 0x84)
|
||||
return 0;
|
||||
msleep(5);
|
||||
}
|
||||
|
|
|
@ -411,8 +411,8 @@ struct em28xx {
|
|||
/* frame properties */
|
||||
int width; /* current frame width */
|
||||
int height; /* current frame height */
|
||||
int hscale; /* horizontal scale factor (see datasheet) */
|
||||
int vscale; /* vertical scale factor (see datasheet) */
|
||||
unsigned hscale; /* horizontal scale factor (see datasheet) */
|
||||
unsigned vscale; /* vertical scale factor (see datasheet) */
|
||||
int interlaced; /* 1=interlace fileds, 0=just top fileds */
|
||||
unsigned int video_bytesread; /* Number of bytes read */
|
||||
|
||||
|
|
|
@ -490,7 +490,7 @@ static const __u8 tas5130_sensor_init[][8] = {
|
|||
{0x30, 0x11, 0x02, 0x20, 0x70, 0x00, 0x00, 0x10},
|
||||
};
|
||||
|
||||
struct sensor_data sensor_data[] = {
|
||||
static struct sensor_data sensor_data[] = {
|
||||
SENS(initHv7131, NULL, hv7131_sensor_init, NULL, NULL, 0, NO_EXPO|NO_FREQ, 0),
|
||||
SENS(initOv6650, NULL, ov6650_sensor_init, NULL, NULL, F_GAIN|F_SIF, 0, 0x60),
|
||||
SENS(initOv7630, initOv7630_3, ov7630_sensor_init, NULL, ov7630_sensor_init_3,
|
||||
|
|
|
@ -80,7 +80,6 @@ static struct ctrl sd_ctrls[] = {
|
|||
.step = 1,
|
||||
#define FREQ_DEF 1
|
||||
.default_value = FREQ_DEF,
|
||||
.default_value = 1,
|
||||
},
|
||||
.set = sd_setfreq,
|
||||
.get = sd_getfreq,
|
||||
|
|
|
@ -49,12 +49,6 @@ MODULE_LICENSE("GPL");
|
|||
#define GENERIC_REG_ID_LOW 0x1D /* manufacturer ID LSB */
|
||||
#define GENERIC_REG_COM_I 0x29 /* misc ID bits */
|
||||
|
||||
extern struct ovcamchip_ops ov6x20_ops;
|
||||
extern struct ovcamchip_ops ov6x30_ops;
|
||||
extern struct ovcamchip_ops ov7x10_ops;
|
||||
extern struct ovcamchip_ops ov7x20_ops;
|
||||
extern struct ovcamchip_ops ov76be_ops;
|
||||
|
||||
static char *chip_names[NUM_CC_TYPES] = {
|
||||
[CC_UNKNOWN] = "Unknown chip",
|
||||
[CC_OV76BE] = "OV76BE",
|
||||
|
|
|
@ -53,6 +53,12 @@ struct ovcamchip {
|
|||
int initialized; /* OVCAMCHIP_CMD_INITIALIZE was successful */
|
||||
};
|
||||
|
||||
extern struct ovcamchip_ops ov6x20_ops;
|
||||
extern struct ovcamchip_ops ov6x30_ops;
|
||||
extern struct ovcamchip_ops ov7x10_ops;
|
||||
extern struct ovcamchip_ops ov7x20_ops;
|
||||
extern struct ovcamchip_ops ov76be_ops;
|
||||
|
||||
/* --------------------------------- */
|
||||
/* I2C I/O */
|
||||
/* --------------------------------- */
|
||||
|
|
|
@ -827,7 +827,7 @@ static unsigned int pvr2_i2c_client_describe(struct pvr2_i2c_client *cp,
|
|||
if ((detail & PVR2_I2C_DETAIL_CTLMASK) && cp->ctl_mask) {
|
||||
unsigned int idx;
|
||||
unsigned long msk,sm;
|
||||
int spcfl;
|
||||
|
||||
bcnt = scnprintf(buf,maxlen," [");
|
||||
ccnt += bcnt; buf += bcnt; maxlen -= bcnt;
|
||||
sm = 0;
|
||||
|
|
|
@ -491,7 +491,7 @@ static void planar422p_to_yuv_packed(const unsigned char *in,
|
|||
return;
|
||||
}
|
||||
|
||||
void s2255_reset_dsppower(struct s2255_dev *dev)
|
||||
static void s2255_reset_dsppower(struct s2255_dev *dev)
|
||||
{
|
||||
s2255_vendor_req(dev, 0x40, 0x0b0b, 0x0b0b, NULL, 0, 1);
|
||||
msleep(10);
|
||||
|
|
|
@ -116,6 +116,26 @@ MODULE_PARM_DESC(debug,
|
|||
"\n");
|
||||
#endif
|
||||
|
||||
/*
|
||||
Add the probe entries to this table. Be sure to add the entry in the right
|
||||
place, since, on failure, the next probing routine is called according to
|
||||
the order of the list below, from top to bottom.
|
||||
*/
|
||||
static int (*sn9c102_sensor_table[])(struct sn9c102_device *) = {
|
||||
&sn9c102_probe_hv7131d, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_hv7131r, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_mi0343, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_mi0360, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_mt9v111, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_pas106b, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_pas202bcb, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_ov7630, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_ov7660, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_tas5110c1b, /* detection based on USB pid/vid */
|
||||
&sn9c102_probe_tas5110d, /* detection based on USB pid/vid */
|
||||
&sn9c102_probe_tas5130d1b, /* detection based on USB pid/vid */
|
||||
};
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
static u32
|
||||
|
|
|
@ -140,24 +140,4 @@ extern int sn9c102_probe_tas5110c1b(struct sn9c102_device* cam);
|
|||
extern int sn9c102_probe_tas5110d(struct sn9c102_device* cam);
|
||||
extern int sn9c102_probe_tas5130d1b(struct sn9c102_device* cam);
|
||||
|
||||
/*
|
||||
Add the above entries to this table. Be sure to add the entry in the right
|
||||
place, since, on failure, the next probing routine is called according to
|
||||
the order of the list below, from top to bottom.
|
||||
*/
|
||||
static int (*sn9c102_sensor_table[])(struct sn9c102_device*) = {
|
||||
&sn9c102_probe_hv7131d, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_hv7131r, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_mi0343, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_mi0360, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_mt9v111, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_pas106b, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_pas202bcb, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_ov7630, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_ov7660, /* strong detection based on SENSOR ids */
|
||||
&sn9c102_probe_tas5110c1b, /* detection based on USB pid/vid */
|
||||
&sn9c102_probe_tas5110d, /* detection based on USB pid/vid */
|
||||
&sn9c102_probe_tas5130d1b, /* detection based on USB pid/vid */
|
||||
};
|
||||
|
||||
#endif /* _SN9C102_DEVTABLE_H_ */
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
***************************************************************************/
|
||||
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int hv7131d_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
***************************************************************************/
|
||||
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int hv7131r_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
***************************************************************************/
|
||||
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int mi0343_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
***************************************************************************/
|
||||
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int mi0360_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
***************************************************************************/
|
||||
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int mt9v111_init(struct sn9c102_device *cam)
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
***************************************************************************/
|
||||
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int ov7630_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
***************************************************************************/
|
||||
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int ov7660_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
|
||||
#include <linux/delay.h>
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int pas106b_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
|
||||
#include <linux/delay.h>
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int pas202bcb_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
***************************************************************************/
|
||||
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int tas5110c1b_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
***************************************************************************/
|
||||
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int tas5110d_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
***************************************************************************/
|
||||
|
||||
#include "sn9c102_sensor.h"
|
||||
#include "sn9c102_devtable.h"
|
||||
|
||||
|
||||
static int tas5130d1b_init(struct sn9c102_device* cam)
|
||||
|
|
|
@ -58,8 +58,6 @@
|
|||
ZR36057_ISR_GIRQ1 | \
|
||||
ZR36057_ISR_JPEGRepIRQ )
|
||||
|
||||
extern const struct zoran_format zoran_formats[];
|
||||
|
||||
static int lml33dpath; /* default = 0
|
||||
* 1 will use digital path in capture
|
||||
* mode instead of analog. It can be
|
||||
|
|
|
@ -78,6 +78,14 @@ extern void zoran_set_pci_master(struct zoran *zr,
|
|||
extern void zoran_init_hardware(struct zoran *zr);
|
||||
extern void zr36057_restart(struct zoran *zr);
|
||||
|
||||
extern const struct zoran_format zoran_formats[];
|
||||
|
||||
extern int v4l_nbufs;
|
||||
extern int v4l_bufsize;
|
||||
extern int jpg_nbufs;
|
||||
extern int jpg_bufsize;
|
||||
extern int pass_through;
|
||||
|
||||
/* i2c */
|
||||
extern int decoder_command(struct zoran *zr,
|
||||
int cmd,
|
||||
|
|
|
@ -194,12 +194,6 @@ const struct zoran_format zoran_formats[] = {
|
|||
// RJ: Test only - want to test BUZ_USE_HIMEM even when CONFIG_BIGPHYS_AREA is defined
|
||||
|
||||
|
||||
extern int v4l_nbufs;
|
||||
extern int v4l_bufsize;
|
||||
extern int jpg_nbufs;
|
||||
extern int jpg_bufsize;
|
||||
extern int pass_through;
|
||||
|
||||
static int lock_norm; /* 0 = default 1 = Don't change TV standard (norm) */
|
||||
module_param(lock_norm, int, 0644);
|
||||
MODULE_PARM_DESC(lock_norm, "Prevent norm changes (1 = ignore, >1 = fail)");
|
||||
|
|
Loading…
Reference in a new issue