diff options
author | Steven Toth <stoth@hauppauge.com> | 2008-01-25 01:29:46 (GMT) |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2008-01-25 21:05:14 (GMT) |
commit | 5ea60531c1c6164788ea7d6efecdf575adc543ff (patch) | |
tree | f958ddc46216a5d3011c16779b876e111c2d86eb /drivers | |
parent | 2fb8840663cf0e476549104a2c09caa0fb3b4bc9 (diff) | |
download | linux-5ea60531c1c6164788ea7d6efecdf575adc543ff.tar.xz |
V4L/DVB (7063): xc5000: Fix OOPS caused by missing firmware
xc5000: Fix OOPS caused by missing firmware.
Signed-off-by: Chaogui Zhang <czhang1974@gmail.com>
Acked-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/media/dvb/frontends/xc5000.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/media/dvb/frontends/xc5000.c b/drivers/media/dvb/frontends/xc5000.c index a13027e..f642ca2 100644 --- a/drivers/media/dvb/frontends/xc5000.c +++ b/drivers/media/dvb/frontends/xc5000.c @@ -558,6 +558,7 @@ static int xc5000_fwupload(struct dvb_frontend* fe) if (ret) { printk(KERN_ERR "xc5000: Upload failed. (file not found?)\n"); ret = XC_RESULT_RESET_FAILURE; + goto out; } else { printk(KERN_INFO "xc5000: firmware read %Zu bytes.\n", fw->size); @@ -572,6 +573,7 @@ static int xc5000_fwupload(struct dvb_frontend* fe) ret = xc_load_i2c_sequence(fe, fw->data ); } +out: release_firmware(fw); return ret; } |