hwif->sg_dma_direction = DMA_TO_DEVICE;
i = dma_map_sg(hwif->dev, sg, hwif->sg_nents, hwif->sg_dma_direction);
- if (i) {
+ if (i == 0)
+ ide_map_sg(drive, rq);
+ else {
hwif->orig_sg_nents = hwif->sg_nents;
hwif->sg_nents = i;
}
return i;
}
-EXPORT_SYMBOL_GPL(ide_build_sglist);
/**
* ide_destroy_dmatable - clean up DMA mapping