diff options
author | Johannes Stezenbach <devnull@localhost> | 2004-02-20 13:02:06 +0000 |
---|---|---|
committer | Johannes Stezenbach <devnull@localhost> | 2004-02-20 13:02:06 +0000 |
commit | 0f9d4e1d924309be3ab7ce64c88cedefcc61c222 (patch) | |
tree | 6c64c812b2c63278394c1aca68412c6cbb7f2086 /linux/drivers/media/dvb/ttpci/av7110_hw.c | |
parent | 3550d7d56a79a922dc4c1c5c74cf41929c8ceb88 (diff) | |
download | mediapointer-dvb-s2-0f9d4e1d924309be3ab7ce64c88cedefcc61c222.tar.gz mediapointer-dvb-s2-0f9d4e1d924309be3ab7ce64c88cedefcc61c222.tar.bz2 |
check result of saa7146_wait_for_debi_done() in av7110_bootarm()
Diffstat (limited to 'linux/drivers/media/dvb/ttpci/av7110_hw.c')
-rw-r--r-- | linux/drivers/media/dvb/ttpci/av7110_hw.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/linux/drivers/media/dvb/ttpci/av7110_hw.c b/linux/drivers/media/dvb/ttpci/av7110_hw.c index 52bda9aeb..e1a6e76b7 100644 --- a/linux/drivers/media/dvb/ttpci/av7110_hw.c +++ b/linux/drivers/media/dvb/ttpci/av7110_hw.c @@ -249,7 +249,11 @@ int av7110_bootarm(struct av7110 *av7110) mwdebi(av7110, DEBISWAB, DPRAM_BASE, bootcode, sizeof(bootcode)); iwdebi(av7110, DEBINOSWAP, BOOT_STATE, BOOTSTATE_BUFFER_FULL, 2); - saa7146_wait_for_debi_done(av7110->dev); + if (saa7146_wait_for_debi_done(av7110->dev)) { + printk(KERN_ERR "dvb: av7110_bootarm(): " + "saa7146_wait_for_debi_done() timed out\n"); + return -1; + } saa7146_setgpio(dev, RESET_LINE, SAA7146_GPIO_OUTHI); //FIXME: necessary? set_current_state(TASK_INTERRUPTIBLE); @@ -265,7 +269,11 @@ int av7110_bootarm(struct av7110 *av7110) DEB_D(("av7110_bootarm: load dpram code\n")); mwdebi(av7110, DEBISWAB, DPRAM_BASE, av7110->bin_dpram, av7110->size_dpram); - saa7146_wait_for_debi_done(av7110->dev); + if (saa7146_wait_for_debi_done(av7110->dev)) { + printk(KERN_ERR "dvb: av7110_bootarm(): " + "saa7146_wait_for_debi_done() timed out after loading DRAM\n"); + return -1; + } saa7146_setgpio(dev, RESET_LINE, SAA7146_GPIO_OUTHI); //FIXME: necessary? mdelay(800); |