aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/pci-nommu.c
diff options
context:
space:
mode:
authorJoerg Roedel <joerg.roedel@amd.com>2008-08-19 10:32:43 -0400
committerIngo Molnar <mingo@elte.hu>2008-08-22 02:34:49 -0400
commita3a76532e0caa093c279806d8fe8608232538af0 (patch)
treef5a2cb605a5d3ce8a68d8c9e9f4924830139ce3b /arch/x86/kernel/pci-nommu.c
parentc5e835f9641e9fcb95d1afb24906821e98b2c6a8 (diff)
x86: add free_coherent dma_ops callback to NOMMU driver
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/pci-nommu.c')
-rw-r--r--arch/x86/kernel/pci-nommu.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/x86/kernel/pci-nommu.c b/arch/x86/kernel/pci-nommu.c
index b8ce83c98211..73853d3fdcac 100644
--- a/arch/x86/kernel/pci-nommu.c
+++ b/arch/x86/kernel/pci-nommu.c
@@ -126,8 +126,15 @@ again:
126 return NULL; 126 return NULL;
127} 127}
128 128
129static void nommu_free_coherent(struct device *dev, size_t size, void *vaddr,
130 dma_addr_t dma_addr)
131{
132 free_pages((unsigned long)vaddr, get_order(size));
133}
134
129struct dma_mapping_ops nommu_dma_ops = { 135struct dma_mapping_ops nommu_dma_ops = {
130 .alloc_coherent = nommu_alloc_coherent, 136 .alloc_coherent = nommu_alloc_coherent,
137 .free_coherent = nommu_free_coherent,
131 .map_single = nommu_map_single, 138 .map_single = nommu_map_single,
132 .map_sg = nommu_map_sg, 139 .map_sg = nommu_map_sg,
133 .is_phys = 1, 140 .is_phys = 1,