V4L/DVB (13768): [Mantis] Enable WRACK
authorManu Abraham <abraham.manu@gmail.com>
Fri, 4 Dec 2009 08:25:18 +0000 (05:25 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sun, 17 Jan 2010 13:55:38 +0000 (11:55 -0200)
Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/mantis/mantis_evm.c
drivers/media/dvb/mantis/mantis_hif.c

index 214ae5e..000cf39 100644 (file)
@@ -27,11 +27,19 @@ static void mantis_hifevm_work(struct work_struct *work)
        struct mantis_ca *ca = container_of(work, struct mantis_ca, hif_evm_work);
        struct mantis_pci *mantis = ca->ca_priv;
 
-       u32 gpif_stat, gpif_mask;
+       u32 gpif_stat, gpif_mask, rst_mask, rst_stat;
+
+       rst_mask  = MANTIS_GPIF_WRACK  |
+                   MANTIS_GPIF_OTHERR |
+                   MANTIS_SBUF_WSTO   |
+                   MANTIS_GPIF_EXTIRQ;
 
        gpif_stat = mmread(MANTIS_GPIF_STATUS);
        gpif_mask = mmread(MANTIS_GPIF_IRQCFG);
 
+       rst_stat = gpif_stat & rst_mask;
+       mmwrite(rst_stat, MANTIS_GPIF_STATUS);
+
        if (gpif_stat & MANTIS_GPIF_DETSTAT) {
                if (gpif_stat & MANTIS_CARD_PLUGIN) {
                        dprintk(verbose, MANTIS_DEBUG, 1, "Event Mgr: Adapter(%d) Slot(0): CAM Plugin", mantis->num);
index c2cecc3..2f1a6cb 100644 (file)
@@ -188,6 +188,7 @@ int mantis_hif_init(struct mantis_ca *ca)
 
        irqcfg  = mmread(MANTIS_GPIF_IRQCFG);
        irqcfg |= MANTIS_MASK_BRRDY;
+       irqcfg |= MANTIS_MASK_WRACK;
        mmwrite(irqcfg, MANTIS_GPIF_IRQCFG);
 
        return 0;