diff options
author | Holger Waechtler <devnull@localhost> | 2003-04-24 19:31:18 +0000 |
---|---|---|
committer | Holger Waechtler <devnull@localhost> | 2003-04-24 19:31:18 +0000 |
commit | f7e91da79a7d08e9aa8d555b7a6e96ca6548b93e (patch) | |
tree | 0daca38b7ee9d8835ff997186f7920bb3bed463f /linux/drivers/media/dvb/ttpci/av7110.c | |
parent | 0316c3b1a4b6d8fe0f90621eebac1934e8a0c5c6 (diff) | |
download | mediapointer-dvb-s2-f7e91da79a7d08e9aa8d555b7a6e96ca6548b93e.tar.gz mediapointer-dvb-s2-f7e91da79a7d08e9aa8d555b7a6e96ca6548b93e.tar.bz2 |
assume ADAC_TI in case of failed audio module initialisation and keep debi lock
in debiirq (oops case).
patch contributed by Artur Skawina <as@telkab.pl>
Diffstat (limited to 'linux/drivers/media/dvb/ttpci/av7110.c')
-rw-r--r-- | linux/drivers/media/dvb/ttpci/av7110.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/linux/drivers/media/dvb/ttpci/av7110.c b/linux/drivers/media/dvb/ttpci/av7110.c index aff284b9c..afc9879b3 100644 --- a/linux/drivers/media/dvb/ttpci/av7110.c +++ b/linux/drivers/media/dvb/ttpci/av7110.c @@ -713,8 +713,10 @@ void debiirq (unsigned long data) if (type==-1) { printk("DEBI irq oops @ %ld, psr:0x%08x, ssr:0x%08x\n",jiffies,saa7146_read(av7110->dev,PSR),saa7146_read(av7110->dev,SSR)); + spin_lock(&av7110->debilock); ARM_ClearMailBox(av7110); ARM_ClearIrq(av7110); + spin_unlock(&av7110->debilock); return; } av7110->debitype=-1; @@ -4311,7 +4313,7 @@ int av7110_attach (struct saa7146_dev* dev, struct saa7146_pci_extension_data *p msp_writereg(av7110, 0x12, 0x0007, 0x7f00); // SCART 1 volume msp_writereg(av7110, 0x12, 0x000d, 0x4800); // prescale SCART } else - av7110->adac_type = DVB_ADAC_NONE; + av7110->adac_type = DVB_ADAC_TI; // switch DVB SCART on |