Blackfin: reject NULL callback in set_dma_callback()

It makes no sense to call this function with a NULL callback.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
Mike Frysinger 2009-11-24 18:36:36 +00:00
parent f69b2d7e97
commit e34132f40b
1 changed files with 10 additions and 11 deletions

View File

@ -138,21 +138,20 @@ EXPORT_SYMBOL(request_dma);
int set_dma_callback(unsigned int channel, irq_handler_t callback, void *data)
{
BUG_ON(channel >= MAX_DMA_CHANNELS ||
int ret;
unsigned int irq;
BUG_ON(channel >= MAX_DMA_CHANNELS || !callback ||
!atomic_read(&dma_ch[channel].chan_status));
if (callback != NULL) {
int ret;
unsigned int irq = channel2irq(channel);
irq = channel2irq(channel);
ret = request_irq(irq, callback, 0, dma_ch[channel].device_id, data);
if (ret)
return ret;
ret = request_irq(irq, callback, IRQF_DISABLED,
dma_ch[channel].device_id, data);
if (ret)
return ret;
dma_ch[channel].irq = irq;
dma_ch[channel].data = data;
dma_ch[channel].irq = irq;
dma_ch[channel].data = data;
}
return 0;
}
EXPORT_SYMBOL(set_dma_callback);