From: Arnd Bergmann Date: Thu, 5 Jun 2014 21:29:49 +0000 (+0200) Subject: NCR53c406a: don't call free_dma() by default X-Git-Tag: firefly_0821_release~176^2~3376^2~62 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=6919a3663a8f12d1c7677fc31e6a57dbd4423a95;p=firefly-linux-kernel-4.4.55.git NCR53c406a: don't call free_dma() by default The NCR53c406a scsi driver normally does not use DMA, unless the USE_PIO macro is disabled by modifying the source code. The call to free_dma() for some reason uses #ifdef USE_DMA, which does not do the right thing, since USE_DMA is defined as a boolean that is either 0 or 1, but always present. One case where it gets in the way is randconfig builds on ARM, which depending on the configuration does not provide a free_dma() function, causing this build error: drivers/scsi/NCR53c406a.c: In function 'NCR53c406a_release': drivers/scsi/NCR53c406a.c:600:3: error: implicit declaration of function 'free_dma' [-Werror=implicit-function-declaration] free_dma(shost->dma_channel); ^ This changes the code to use #if USE_DMA, to match the rest of the file, which seems to be what the author intended. Signed-off-by: Arnd Bergmann Reviewed-by: Finn Thain Signed-off-by: Christoph Hellwig --- diff --git a/drivers/scsi/NCR53c406a.c b/drivers/scsi/NCR53c406a.c index 10c3374d759f..42c7161474f7 100644 --- a/drivers/scsi/NCR53c406a.c +++ b/drivers/scsi/NCR53c406a.c @@ -595,7 +595,7 @@ static int NCR53c406a_release(struct Scsi_Host *shost) { if (shost->irq) free_irq(shost->irq, NULL); -#ifdef USE_DMA +#if USE_DMA if (shost->dma_channel != 0xff) free_dma(shost->dma_channel); #endif