OSDN Git Service

V4L/DVB (12927): SAA7164: Remove volatiles for PCI writes (coding style violation)
authorSteven Toth <stoth@kernellabs.com>
Sun, 10 May 2009 17:08:27 +0000 (14:08 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sat, 19 Sep 2009 03:14:51 +0000 (00:14 -0300)
Signed-off-by: Steven Toth <stoth@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/saa7164/saa7164-bus.c
drivers/media/video/saa7164/saa7164-core.c
drivers/media/video/saa7164/saa7164.h

index 8d813f5..83a0464 100644 (file)
@@ -257,7 +257,7 @@ int saa7164_bus_set(struct saa7164_dev *dev, tmComResInfo_t* msg, void *buf)
 
        dprintk(DBGLVL_BUS, "%s() new_swp = %x\n", __func__, new_swp);
 
-       /* TODO: Convert all of the volatiles and direct PCI writes into
+       /* TODO: Convert all of the direct PCI writes into
         * saa7164_writel/b calls for consistency.
         */
 
index bf4ca4f..968ecd4 100644 (file)
@@ -126,12 +126,13 @@ static irqreturn_t saa7164_irq(int irq, void *dev_id)
        /* Check that the hardware is accessable. If the status bytes are
         * 0xFF then the device is not accessable, the the IRQ belongs
         * to another driver.
+        * 4 x u32 interrupt registers.
         */
        for (i = 0; i < INT_SIZE/4; i++) {
 
                /* TODO: Convert into saa7164_readl() */
                /* Read the 4 hardware interrupt registers */
-               intstat[i] = *(dev->InterruptStatus + i);
+               intstat[i] = saa7164_readl(dev->int_status + (i * 4));
 
                if (intstat[i] != 0xffffffff)
                        hwacc = 1;
@@ -184,9 +185,8 @@ static irqreturn_t saa7164_irq(int irq, void *dev_id)
                                }
                        }
 
-                       /* TODO: Convert into saa7164_writel() */
                        /* Ack it */
-                       *(dev->InterruptAck + i) = intstat[i];
+                       saa7164_writel(dev->int_ack + (i * 4), intstat[i]);
 
                }
        }
@@ -487,9 +487,9 @@ static int saa7164_dev_setup(struct saa7164_dev *dev)
        printk(KERN_INFO "CORE %s: dev->bmmio2 = 0x%p\n", dev->name,
                dev->bmmio2);
 
-       /* TODO: Magic defines used in the windows driver, define these */
-       dev->InterruptStatus = (u32 *)(dev->bmmio + 0x183000 + 0xf80);
-       dev->InterruptAck = (u32 *)(dev->bmmio + 0x183000 + 0xf90);
+       /* Inerrupt and ack register locations offset of bmmio */
+       dev->int_status = 0x183000 + 0xf80;
+       dev->int_ack = 0x183000 + 0xf90;
 
        printk(KERN_INFO
                "CORE %s: subsystem: %04x:%04x, board: %s [card=%d,%s]\n",
index 338804f..2d4d47b 100644 (file)
@@ -274,9 +274,9 @@ struct saa7164_dev {
 
        tmComResBusInfo_t               bus;
 
-       /* TODO: Urgh, remove volatiles */
-       volatile u32                    *InterruptStatus;
-       volatile u32                    *InterruptAck;
+       /* Interrupt status and ack registers */
+       u32 int_status;
+       u32 int_ack;
 
        struct cmd                      cmds[SAA_CMD_MAX_MSG_UNITS];
        struct mutex                    lock;