summaryrefslogtreecommitdiff
path: root/linux/drivers/media/common
diff options
context:
space:
mode:
authorMichael Hunold <devnull@localhost>2003-02-27 14:37:07 +0000
committerMichael Hunold <devnull@localhost>2003-02-27 14:37:07 +0000
commiteedc7fd38fcda5ad3f241225580db5189faae05a (patch)
tree33a6d3de2d7123dfcdea9388bbb2ac1919079bbf /linux/drivers/media/common
parentb8852a2112a64e58ed0a6a0b513e55eeceeb75ca (diff)
downloadmediapointer-dvb-s2-eedc7fd38fcda5ad3f241225580db5189faae05a.tar.gz
mediapointer-dvb-s2-eedc7fd38fcda5ad3f241225580db5189faae05a.tar.bz2
- fix some bugs that appeared in system with both analog and digital
based saa7146 cards - change the initialization order to allow static builds of the mxb driver
Diffstat (limited to 'linux/drivers/media/common')
-rw-r--r--linux/drivers/media/common/saa7146_core.c13
-rw-r--r--linux/drivers/media/common/saa7146_fops.c4
2 files changed, 9 insertions, 8 deletions
diff --git a/linux/drivers/media/common/saa7146_core.c b/linux/drivers/media/common/saa7146_core.c
index 7e8f9c87c..aa01dd78f 100644
--- a/linux/drivers/media/common/saa7146_core.c
+++ b/linux/drivers/media/common/saa7146_core.c
@@ -28,9 +28,9 @@ struct list_head saa7146_devices;
struct semaphore saa7146_devices_lock;
static int initialized = 0;
-static int saa7146_num = 0;
+int saa7146_num = 0;
-unsigned int saa7146_debug = 0;
+unsigned int saa7146_debug = 247;
MODULE_PARM(saa7146_debug,"i");
MODULE_PARM_DESC(saa7146_debug, "debug level (default: 0)");
@@ -311,10 +311,6 @@ int __devinit saa7146_init_one(struct pci_dev *pci, const struct pci_device_id *
init_MUTEX(&dev->i2c_lock);
- INIT_LIST_HEAD(&dev->item);
- list_add_tail(&dev->item,&saa7146_devices);
- saa7146_num++;
-
dev->module = THIS_MODULE;
init_waitqueue_head(&dev->i2c_wq);
@@ -331,6 +327,11 @@ int __devinit saa7146_init_one(struct pci_dev *pci, const struct pci_device_id *
err = -ENODEV;
goto attach_error;
}
+
+ INIT_LIST_HEAD(&dev->item);
+ list_add_tail(&dev->item,&saa7146_devices);
+ saa7146_num++;
+
err = 0;
goto out;
attach_error:
diff --git a/linux/drivers/media/common/saa7146_fops.c b/linux/drivers/media/common/saa7146_fops.c
index 217b85f14..9048bc339 100644
--- a/linux/drivers/media/common/saa7146_fops.c
+++ b/linux/drivers/media/common/saa7146_fops.c
@@ -193,14 +193,14 @@ int fops_open(struct inode *inode, struct file *file)
dev = h;
}
}
- DEB_D(("using: %p\n",dev));
-
if (NULL == dev) {
DEB_S(("no such video device.\n"));
result = -ENODEV;
goto out;
}
+ DEB_D(("using: %p\n",dev));
+
/* check if an extension is registered */
if( NULL == dev->ext ) {
DEB_S(("no extension registered for this device.\n"));