diff options
author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2009-06-14 18:38:50 -0400 |
---|---|---|
committer | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2009-06-16 16:48:09 -0400 |
commit | 29ad14cddd6246d17ff22f496363dfd6b3de8964 (patch) | |
tree | a7477110ea9c76e553e244af42a2e54ad3e5addb /drivers/firewire/core-iso.c | |
parent | 1337f8535ac1f41915d9e8aa03d5a3edf2f7c0a5 (diff) |
firewire: core: fix DMA unmapping in iso buffer removal
dmap_unmap_page() shall use the same direction as dma_map_page().
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/firewire/core-iso.c')
-rw-r--r-- | drivers/firewire/core-iso.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/firewire/core-iso.c b/drivers/firewire/core-iso.c index 448ddd7d887b..166f19c6d38d 100644 --- a/drivers/firewire/core-iso.c +++ b/drivers/firewire/core-iso.c | |||
@@ -71,7 +71,7 @@ int fw_iso_buffer_init(struct fw_iso_buffer *buffer, struct fw_card *card, | |||
71 | for (j = 0; j < i; j++) { | 71 | for (j = 0; j < i; j++) { |
72 | address = page_private(buffer->pages[j]); | 72 | address = page_private(buffer->pages[j]); |
73 | dma_unmap_page(card->device, address, | 73 | dma_unmap_page(card->device, address, |
74 | PAGE_SIZE, DMA_TO_DEVICE); | 74 | PAGE_SIZE, direction); |
75 | __free_page(buffer->pages[j]); | 75 | __free_page(buffer->pages[j]); |
76 | } | 76 | } |
77 | kfree(buffer->pages); | 77 | kfree(buffer->pages); |
@@ -108,7 +108,7 @@ void fw_iso_buffer_destroy(struct fw_iso_buffer *buffer, | |||
108 | for (i = 0; i < buffer->page_count; i++) { | 108 | for (i = 0; i < buffer->page_count; i++) { |
109 | address = page_private(buffer->pages[i]); | 109 | address = page_private(buffer->pages[i]); |
110 | dma_unmap_page(card->device, address, | 110 | dma_unmap_page(card->device, address, |
111 | PAGE_SIZE, DMA_TO_DEVICE); | 111 | PAGE_SIZE, buffer->direction); |
112 | __free_page(buffer->pages[i]); | 112 | __free_page(buffer->pages[i]); |
113 | } | 113 | } |
114 | 114 | ||