V4L/DVB (13775): [Mantis] Remove unnecessary job queues
[deliverable/linux.git] / drivers / media / dvb / mantis / mantis_hif.c
index 2f1a6cb943db28c2e271c21ffc55fcfe0491f0f7..621dce3eb5d6d30554811cfb2ff0a89f210daf0e 100644 (file)
@@ -75,10 +75,6 @@ int mantis_hif_read_mem(struct mantis_ca *ca, u32 addr)
        udelay(20);
 
        mmwrite(hif_addr, MANTIS_GPIF_ADDR);
-       if (mantis_hif_data_available(ca) != 0) {
-               dprintk(verbose, MANTIS_ERROR, 1, "Adapter(%d) Slot(0): GPIF Smart Buffer burst read failed", mantis->num);
-               return -EREMOTEIO;
-       }
        if (mantis_hif_sbuf_opdone_wait(ca) != 0) {
                dprintk(verbose, MANTIS_ERROR, 1, "Adapter(%d) Slot(0): GPIF Smart Buffer operation failed", mantis->num);
                return -EREMOTEIO;
@@ -101,17 +97,13 @@ int mantis_hif_write_mem(struct mantis_ca *ca, u32 addr, u8 data)
        hif_addr |= addr;
 
        mmwrite(slot->slave_cfg, MANTIS_GPIF_CFGSLA); /* Slot0 alone for now */
-
        mmwrite(hif_addr | MANTIS_HIF_STATUS, MANTIS_GPIF_ADDR);
        mmwrite(data, MANTIS_GPIF_DOUT);
-       ca->hif_job_queue = MANTIS_HIF_MEMWR;
 
        if (mantis_hif_sbuf_opdone_wait(ca) != 0) {
-               ca->hif_job_queue &= ~MANTIS_HIF_MEMWR;
                dprintk(verbose, MANTIS_ERROR, 1, "Adapter(%d) Slot(0): HIF Smart Buffer operation failed", mantis->num);
                return -EREMOTEIO;
        }
-       ca->hif_job_queue &= ~MANTIS_HIF_MEMWR;
        dprintk(verbose, MANTIS_DEBUG, 1, "Mem Write: (0x%02x to 0x%02x)", data, addr);
 
        return 0;
@@ -129,17 +121,12 @@ int mantis_hif_read_iom(struct mantis_ca *ca, u32 addr)
        hif_addr |=  addr;
 
        mmwrite(hif_addr | MANTIS_HIF_STATUS, MANTIS_GPIF_ADDR);
-       ca->hif_job_queue = MANTIS_HIF_IOMRD;
 
        if (mantis_hif_sbuf_opdone_wait(ca) != 0) {
-               ca->hif_job_queue &= ~MANTIS_HIF_IOMRD;
                dprintk(verbose, MANTIS_ERROR, 1, "Adapter(%d) Slot(0): HIF Smart Buffer operation failed", mantis->num);
                return -EREMOTEIO;
        }
-       ca->hif_job_queue &= ~MANTIS_HIF_IOMRD;
        data = mmread(MANTIS_GPIF_DIN);
-       hif_addr |= MANTIS_GPIF_PCMCIAREG;
-       mmwrite(hif_addr, MANTIS_GPIF_ADDR);
        dprintk(verbose, MANTIS_DEBUG, 1, "I/O Read: 0x%02x", data);
        udelay(50);
 
@@ -160,15 +147,10 @@ int mantis_hif_write_iom(struct mantis_ca *ca, u32 addr, u8 data)
        mmwrite(hif_addr | MANTIS_HIF_STATUS, MANTIS_GPIF_ADDR);
        mmwrite(data, MANTIS_GPIF_DOUT);
 
-       ca->hif_job_queue = MANTIS_HIF_IOMWR;
        if (mantis_hif_sbuf_opdone_wait(ca) != 0) {
-               ca->hif_job_queue &= ~MANTIS_HIF_IOMWR;
                dprintk(verbose, MANTIS_ERROR, 1, "Adapter(%d) Slot(0): HIF Smart Buffer operation failed", mantis->num);
                return -EREMOTEIO;
        }
-       ca->hif_job_queue &= ~MANTIS_HIF_IOMWR;
-       hif_addr |= MANTIS_GPIF_PCMCIAREG;
-       mmwrite(hif_addr, MANTIS_GPIF_ADDR);
        dprintk(verbose, MANTIS_DEBUG, 1, "I/O Write: (0x%02x to 0x%02x)", data, addr);
        udelay(50);
 
@@ -186,9 +168,14 @@ int mantis_hif_init(struct mantis_ca *ca)
        init_waitqueue_head(&ca->hif_data_wq);
        init_waitqueue_head(&ca->hif_opdone_wq);
 
-       irqcfg  = mmread(MANTIS_GPIF_IRQCFG);
-       irqcfg |= MANTIS_MASK_BRRDY;
-       irqcfg |= MANTIS_MASK_WRACK;
+       irqcfg = mmread(MANTIS_GPIF_IRQCFG);
+       irqcfg = MANTIS_MASK_BRRDY      |
+                MANTIS_MASK_WRACK      |
+                MANTIS_MASK_EXTIRQ     |
+                MANTIS_MASK_WSTO       |
+                MANTIS_MASK_OTHERR     |
+                MANTIS_MASK_OVFLW;
+
        mmwrite(irqcfg, MANTIS_GPIF_IRQCFG);
 
        return 0;
This page took 0.035881 seconds and 5 git commands to generate.