diff options
Diffstat (limited to 'arch/sparc/kernel/ioport.c')
-rw-r--r-- | arch/sparc/kernel/ioport.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/sparc/kernel/ioport.c b/arch/sparc/kernel/ioport.c index 87ea0d03d975..39ff1e0c5183 100644 --- a/arch/sparc/kernel/ioport.c +++ b/arch/sparc/kernel/ioport.c | |||
@@ -337,8 +337,11 @@ void sbus_free_consistent(struct device *dev, long n, void *p, u32 ba) | |||
337 | * CPU view of this memory may be inconsistent with | 337 | * CPU view of this memory may be inconsistent with |
338 | * a device view and explicit flushing is necessary. | 338 | * a device view and explicit flushing is necessary. |
339 | */ | 339 | */ |
340 | dma_addr_t sbus_map_single(struct device *dev, void *va, size_t len, int direction) | 340 | dma_addr_t sbus_map_page(struct device *dev, struct page *page, |
341 | unsigned long offset, size_t len, int direction) | ||
341 | { | 342 | { |
343 | void *va = page_address(page) + offset; | ||
344 | |||
342 | /* XXX why are some lengths signed, others unsigned? */ | 345 | /* XXX why are some lengths signed, others unsigned? */ |
343 | if (len <= 0) { | 346 | if (len <= 0) { |
344 | return 0; | 347 | return 0; |
@@ -350,7 +353,7 @@ dma_addr_t sbus_map_single(struct device *dev, void *va, size_t len, int directi | |||
350 | return mmu_get_scsi_one(dev, va, len); | 353 | return mmu_get_scsi_one(dev, va, len); |
351 | } | 354 | } |
352 | 355 | ||
353 | void sbus_unmap_single(struct device *dev, dma_addr_t ba, size_t n, int direction) | 356 | void sbus_unmap_page(struct device *dev, dma_addr_t ba, size_t n, int direction) |
354 | { | 357 | { |
355 | mmu_release_scsi_one(dev, ba, n); | 358 | mmu_release_scsi_one(dev, ba, n); |
356 | } | 359 | } |