diff --git a/arch/blackfin/include/asm/dma.h b/arch/blackfin/include/asm/dma.h index 045bd1ce72bf14facbd566a45233a829ecb50e36..c327135ff9dd22ad47c1362d56136f959f59ec70 100644 --- a/arch/blackfin/include/asm/dma.h +++ b/arch/blackfin/include/asm/dma.h @@ -118,7 +118,6 @@ struct dma_channel { struct dmasg *sg; /* large mode descriptor */ unsigned int ctrl_num; /* controller number */ unsigned int irq; - irq_handler_t irq_callback; void *data; unsigned int dma_enable_flag; unsigned int loopback_flag; diff --git a/arch/blackfin/kernel/bfin_dma_5xx.c b/arch/blackfin/kernel/bfin_dma_5xx.c index b6cf643f5935692a6499639c31e00bc8e0d166dd..bdebab41419fa2c3789b3cb77a60c600b6fb9d9d 100644 --- a/arch/blackfin/kernel/bfin_dma_5xx.c +++ b/arch/blackfin/kernel/bfin_dma_5xx.c @@ -140,7 +140,7 @@ int request_dma(unsigned int channel, const char *device_id) #endif dma_ch[channel].device_id = device_id; - dma_ch[channel].irq_callback = NULL; + dma_ch[channel].irq = 0; /* This is to be enabled by putting a restriction - * you have to request DMA, before doing any operations on @@ -169,7 +169,6 @@ int set_dma_callback(unsigned int channel, irq_handler_t callback, void *data) "Request irq in DMA engine failed.\n"); return -EPERM; } - dma_ch[channel].irq_callback = callback; } return 0; } @@ -185,7 +184,7 @@ void free_dma(unsigned int channel) disable_dma(channel); clear_dma_buffer(channel); - if (dma_ch[channel].irq_callback != NULL) + if (dma_ch[channel].irq) free_irq(dma_ch[channel].irq, dma_ch[channel].data); /* Clear the DMA Variable in the Channel */