Right now, if request_irq or anthing after it fails than we free the
firmware for the second time what migh end bad :)
Signed-off-by: Sebastian Siewior <redacted>
---
drivers/video/metronomefb.c | 9 ++++-----
1 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/drivers/video/metronomefb.c b/drivers/video/metronomefb.c
index e9a89fd..110985f 100644
--- a/drivers/video/metronomefb.c
+++ b/drivers/video/metronomefb.c
@@ -861,12 +861,13 @@ static int __devinit metronomefb_probe(struct platform_device *dev)
retval = load_waveform((u8 *) fw_entry->data, fw_entry->size,
par->metromem_wfm, 3, 31, &par->frame_count);
+
+ release_firmware(fw_entry);
+
if (retval < 0) {
printk(KERN_ERR "metronomefb: couldn't process waveform\n");
- goto err_ld_wfm;
+ goto err_dma_free;
}
- release_firmware(fw_entry);
-
retval = request_irq(IRQ_GPIO(RDY_GPIO_PIN), metronome_handle_irq,
IRQF_DISABLED, "Metronome", info);
if (retval) {@@ -914,8 +915,6 @@ err_fb_rel:
framebuffer_release(info);
err_free_irq:
free_irq(IRQ_GPIO(RDY_GPIO_PIN), info);
-err_ld_wfm:
- release_firmware(fw_entry);
err_dma_free:
dma_free_writecombine(&dev->dev, par->metromemsize, par->metromem,
par->metromem_dma);
--
1.5.4.4
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone