diff --git a/[refs] b/[refs] index 55166e9bf397..db35b62a29b9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d9dd5f7168d6a61491996fc02e4deb9d96308178 +refs/heads/master: 3062b1571a1d3520c4d3160ebbfca8002b1d6963 diff --git a/trunk/drivers/media/dvb/mantis/mantis_dvb.c b/trunk/drivers/media/dvb/mantis/mantis_dvb.c index 3325b59ce19c..ade444963c84 100644 --- a/trunk/drivers/media/dvb/mantis/mantis_dvb.c +++ b/trunk/drivers/media/dvb/mantis/mantis_dvb.c @@ -313,6 +313,7 @@ int __devinit mantis_frontend_init(struct mantis_pci *mantis) int __devexit mantis_dvb_exit(struct mantis_pci *mantis) { + mantis_ca_exit(mantis); tasklet_kill(&mantis->tasklet); dvb_net_release(&mantis->dvbnet); mantis->demux.dmx.remove_frontend(&mantis->demux.dmx, &mantis->fe_mem); diff --git a/trunk/drivers/media/dvb/mantis/mantis_evm.c b/trunk/drivers/media/dvb/mantis/mantis_evm.c index d81068d08345..c35ddd868f89 100644 --- a/trunk/drivers/media/dvb/mantis/mantis_evm.c +++ b/trunk/drivers/media/dvb/mantis/mantis_evm.c @@ -27,9 +27,12 @@ void mantis_hifevm_tasklet(unsigned long data) struct mantis_ca *ca = (struct mantis_ca *) data; struct mantis_pci *mantis = ca->ca_priv; - u32 gpif_stat; + u32 gpif_stat, gpif_mask; gpif_stat = mmread(MANTIS_GPIF_STATUS); + gpif_mask = mmread(MANTIS_GPIF_IRQCFG); + if (!((gpif_stat & 0xff) & (gpif_mask & 0xff))) + return; if (gpif_stat & MANTIS_GPIF_DETSTAT) { if (gpif_stat & MANTIS_CARD_PLUGIN) {