git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Revert to Fedora kernel-2.6.17-1.2187_FC5 patched with vs2.0.2.1; there are too many...
[linux-2.6.git]
/
drivers
/
media
/
common
/
saa7146_core.c
diff --git
a/drivers/media/common/saa7146_core.c
b/drivers/media/common/saa7146_core.c
index
50e8b86
..
8cdd4d2
100644
(file)
--- a/
drivers/media/common/saa7146_core.c
+++ b/
drivers/media/common/saa7146_core.c
@@
-21,7
+21,7
@@
#include <media/saa7146.h>
LIST_HEAD(saa7146_devices);
#include <media/saa7146.h>
LIST_HEAD(saa7146_devices);
-DE
CLAR
E_MUTEX(saa7146_devices_lock);
+DE
FIN
E_MUTEX(saa7146_devices_lock);
static int saa7146_num;
static int saa7146_num;
@@
-62,13
+62,15
@@
void saa7146_setgpio(struct saa7146_dev *dev, int port, u32 data)
int saa7146_wait_for_debi_done(struct saa7146_dev *dev, int nobusyloop)
{
unsigned long start;
int saa7146_wait_for_debi_done(struct saa7146_dev *dev, int nobusyloop)
{
unsigned long start;
+ int err;
/* wait for registers to be programmed */
start = jiffies;
while (1) {
/* wait for registers to be programmed */
start = jiffies;
while (1) {
- if (saa7146_read(dev, MC2) & 2)
- break;
- if (time_after(jiffies, start + HZ/20)) {
+ err = time_after(jiffies, start + HZ/20);
+ if (saa7146_read(dev, MC2) & 2)
+ break;
+ if (err) {
DEB_S(("timed out while waiting for registers getting programmed\n"));
return -ETIMEDOUT;
}
DEB_S(("timed out while waiting for registers getting programmed\n"));
return -ETIMEDOUT;
}
@@
-79,10
+81,11
@@
int saa7146_wait_for_debi_done(struct saa7146_dev *dev, int nobusyloop)
/* wait for transfer to complete */
start = jiffies;
while (1) {
/* wait for transfer to complete */
start = jiffies;
while (1) {
+ err = time_after(jiffies, start + HZ/4);
if (!(saa7146_read(dev, PSR) & SPCI_DEBI_S))
break;
saa7146_read(dev, MC2);
if (!(saa7146_read(dev, PSR) & SPCI_DEBI_S))
break;
saa7146_read(dev, MC2);
- if (
time_after(jiffies, start + HZ/4)
) {
+ if (
err
) {
DEB_S(("timed out while waiting for transfer completion\n"));
return -ETIMEDOUT;
}
DEB_S(("timed out while waiting for transfer completion\n"));
return -ETIMEDOUT;
}
@@
-106,16
+109,14
@@
static struct scatterlist* vmalloc_to_sg(unsigned char *virt, int nr_pages)
struct page *pg;
int i;
struct page *pg;
int i;
- sglist = k
malloc(sizeof(struct scatterlist)*nr_pages
, GFP_KERNEL);
+ sglist = k
calloc(nr_pages, sizeof(struct scatterlist)
, GFP_KERNEL);
if (NULL == sglist)
return NULL;
if (NULL == sglist)
return NULL;
- memset(sglist,0,sizeof(struct scatterlist)*nr_pages);
for (i = 0; i < nr_pages; i++, virt += PAGE_SIZE) {
pg = vmalloc_to_page(virt);
if (NULL == pg)
goto err;
for (i = 0; i < nr_pages; i++, virt += PAGE_SIZE) {
pg = vmalloc_to_page(virt);
if (NULL == pg)
goto err;
- if (PageHighMem(pg))
- BUG();
+ BUG_ON(PageHighMem(pg));
sglist[i].page = pg;
sglist[i].length = PAGE_SIZE;
}
sglist[i].page = pg;
sglist[i].length = PAGE_SIZE;
}
@@
-165,16
+166,14
@@
void saa7146_pgtable_free(struct pci_dev *pci, struct saa7146_pgtable *pt)
return;
pci_free_consistent(pci, pt->size, pt->cpu, pt->dma);
pt->cpu = NULL;
return;
pci_free_consistent(pci, pt->size, pt->cpu, pt->dma);
pt->cpu = NULL;
- if (NULL != pt->slist) {
- kfree(pt->slist);
- pt->slist = NULL;
- }
+ kfree(pt->slist);
+ pt->slist = NULL;
}
int saa7146_pgtable_alloc(struct pci_dev *pci, struct saa7146_pgtable *pt)
{
}
int saa7146_pgtable_alloc(struct pci_dev *pci, struct saa7146_pgtable *pt)
{
-
u32 *cpu;
-
dma_addr_t dma_addr;
+ u32 *cpu;
+ dma_addr_t dma_addr;
cpu = pci_alloc_consistent(pci, PAGE_SIZE, &dma_addr);
if (NULL == cpu) {
cpu = pci_alloc_consistent(pci, PAGE_SIZE, &dma_addr);
if (NULL == cpu) {
@@
-305,15
+304,13
@@
static int saa7146_init_one(struct pci_dev *pci, const struct pci_device_id *ent
struct saa7146_dev *dev;
int err = -ENOMEM;
struct saa7146_dev *dev;
int err = -ENOMEM;
- dev = kmalloc(sizeof(struct saa7146_dev), GFP_KERNEL);
+ /* clear out mem for sure */
+ dev = kzalloc(sizeof(struct saa7146_dev), GFP_KERNEL);
if (!dev) {
ERR(("out of memory.\n"));
goto out;
}
if (!dev) {
ERR(("out of memory.\n"));
goto out;
}
- /* clear out mem for sure */
- memset(dev, 0x0, sizeof(struct saa7146_dev));
-
DEB_EE(("pci:%p\n",pci));
err = pci_enable_device(pci);
DEB_EE(("pci:%p\n",pci));
err = pci_enable_device(pci);
@@
-404,11
+401,11
@@
static int saa7146_init_one(struct pci_dev *pci, const struct pci_device_id *ent
pci_set_drvdata(pci, dev);
pci_set_drvdata(pci, dev);
-
init_MUTEX
(&dev->lock);
+
mutex_init
(&dev->lock);
spin_lock_init(&dev->int_slock);
spin_lock_init(&dev->slock);
spin_lock_init(&dev->int_slock);
spin_lock_init(&dev->slock);
-
init_MUTEX
(&dev->i2c_lock);
+
mutex_init
(&dev->i2c_lock);
dev->module = THIS_MODULE;
init_waitqueue_head(&dev->i2c_wq);
dev->module = THIS_MODULE;
init_waitqueue_head(&dev->i2c_wq);
@@
-512,7
+509,7
@@
int saa7146_register_extension(struct saa7146_extension* ext)
ext->driver.remove = saa7146_remove_one;
printk("saa7146: register extension '%s'.\n",ext->name);
ext->driver.remove = saa7146_remove_one;
printk("saa7146: register extension '%s'.\n",ext->name);
- return pci_
module_init
(&ext->driver);
+ return pci_
register_driver
(&ext->driver);
}
int saa7146_unregister_extension(struct saa7146_extension* ext)
}
int saa7146_unregister_extension(struct saa7146_extension* ext)