[ARM] Remove '__address' from scatterlist and convert to DMA API
The old __address element in struct scatterlist remained from older kernels because the ARM DMA emulation code made use of it. Move this field into struct dma_struct, and convert DMA emulation code to setup a SG entry as required. Also, convert DMA emulation code to use the new DMA API rather than the PCI DMA API. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
committed by
Russell King
parent
333c9624b7
commit
7cdad48297
@@ -123,7 +123,6 @@ void set_dma_sg (dmach_t channel, struct scatterlist *sg, int nr_sg)
|
||||
|
||||
dma->sg = sg;
|
||||
dma->sgcount = nr_sg;
|
||||
dma->using_sg = 1;
|
||||
dma->invalid = 1;
|
||||
}
|
||||
|
||||
@@ -139,10 +138,8 @@ void __set_dma_addr (dmach_t channel, void *addr)
|
||||
printk(KERN_ERR "dma%d: altering DMA address while "
|
||||
"DMA active\n", channel);
|
||||
|
||||
dma->sg = &dma->buf;
|
||||
dma->sgcount = 1;
|
||||
dma->buf.__address = addr;
|
||||
dma->using_sg = 0;
|
||||
dma->sg = NULL;
|
||||
dma->addr = addr;
|
||||
dma->invalid = 1;
|
||||
}
|
||||
|
||||
@@ -158,10 +155,8 @@ void set_dma_count (dmach_t channel, unsigned long count)
|
||||
printk(KERN_ERR "dma%d: altering DMA count while "
|
||||
"DMA active\n", channel);
|
||||
|
||||
dma->sg = &dma->buf;
|
||||
dma->sgcount = 1;
|
||||
dma->buf.length = count;
|
||||
dma->using_sg = 0;
|
||||
dma->sg = NULL;
|
||||
dma->count = count;
|
||||
dma->invalid = 1;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user