diff options
author | Johannes Stezenbach <devnull@localhost> | 2004-02-10 17:33:01 +0000 |
---|---|---|
committer | Johannes Stezenbach <devnull@localhost> | 2004-02-10 17:33:01 +0000 |
commit | 02bd082116e4aa5d890757253ca5fa70386323e0 (patch) | |
tree | cf6fff5f8881344ae85ae198a81e506da63071c3 /linux/drivers/media/dvb/ttpci/av7110_hw.c | |
parent | 21059300be791fe4d0c13b6ef5fdd534e7f6b44e (diff) | |
download | mediapointer-dvb-s2-02bd082116e4aa5d890757253ca5fa70386323e0.tar.gz mediapointer-dvb-s2-02bd082116e4aa5d890757253ca5fa70386323e0.tar.bz2 |
bail out early if booting the ARM failed
Diffstat (limited to 'linux/drivers/media/dvb/ttpci/av7110_hw.c')
-rw-r--r-- | linux/drivers/media/dvb/ttpci/av7110_hw.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/linux/drivers/media/dvb/ttpci/av7110_hw.c b/linux/drivers/media/dvb/ttpci/av7110_hw.c index bd8eca1f7..52bda9aeb 100644 --- a/linux/drivers/media/dvb/ttpci/av7110_hw.c +++ b/linux/drivers/media/dvb/ttpci/av7110_hw.c @@ -515,14 +515,18 @@ int av7110_fw_query(struct av7110 *av7110, u16 tag, u16* buf, s16 length) ****************************************************************************/ /* get version of the firmware ROM, RTSL, video ucode and ARM application */ -void av7110_firmversion(struct av7110 *av7110) +int av7110_firmversion(struct av7110 *av7110) { u16 buf[20]; u16 tag = ((COMTYPE_REQUEST << 8) + ReqVersion); DEB_EE(("av7110: %p\n", av7110)); - av7110_fw_query(av7110, tag, buf, 16); + if (av7110_fw_query(av7110, tag, buf, 16)) { + printk("DVB: AV7110-%d: ERROR: Failed to boot firmware\n", + av7110->dvb_adapter->num); + return -EIO; + } av7110->arm_fw = (buf[0] << 16) + buf[1]; av7110->arm_rtsl = (buf[2] << 16) + buf[3]; @@ -542,7 +546,7 @@ void av7110_firmversion(struct av7110 *av7110) printk("DVB: AV711%d(%d) - no firmware support for CI link layer interface\n", av7110->avtype, av7110->dvb_adapter->num); - return; + return 0; } |