From: Arnd Bergmann <arnd@xxxxxxxx> On architectures that don't support the ISA DMA API, this causes a build failure. The corresponding dma_alloc() call is already in an #ifdef, so use the same one for dma_free(). Note that nothing seems to set PC2_DMA, so parts of this driver are likely unused. ISA DMA usually does not work on PCI or PCMCIA devices, only on physical ISA slots. Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> --- drivers/staging/gpib/pc2/pc2_gpib.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/staging/gpib/pc2/pc2_gpib.c b/drivers/staging/gpib/pc2/pc2_gpib.c index cd70cedb4899..7b3b34f47341 100644 --- a/drivers/staging/gpib/pc2/pc2_gpib.c +++ b/drivers/staging/gpib/pc2/pc2_gpib.c @@ -462,8 +462,10 @@ void pc2_detach(gpib_board_t *board) if (pc2_priv) { nec_priv = &pc2_priv->nec7210_priv; +#ifdef PC2_DMA if (nec_priv->dma_channel) free_dma(nec_priv->dma_channel); +#endif gpib_free_pseudo_irq(board); if (pc2_priv->irq) free_irq(pc2_priv->irq, board); @@ -596,8 +598,10 @@ static void pc2a_common_detach(gpib_board_t *board, unsigned int num_registers) if (pc2_priv) { nec_priv = &pc2_priv->nec7210_priv; +#ifdef PC2_DMA if (nec_priv->dma_channel) free_dma(nec_priv->dma_channel); +#endif gpib_free_pseudo_irq(board); if (pc2_priv->irq) free_irq(pc2_priv->irq, board); -- 2.39.5