diff options
author | Grant Likely <grant.likely@secretlab.ca> | 2011-03-12 01:25:53 -0700 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2011-03-12 01:25:53 -0700 |
commit | 9c3c8afccb6a163fd2be739f511e863eab668702 (patch) | |
tree | e587a5377ada98fed8cfa6c8ee63125361f2818a /lib/swiotlb.c | |
parent | 290293eda2c6dd368476d71433bdef07c39a6829 (diff) | |
parent | a5abba989deceb731047425812d268daf7536575 (diff) |
Merge commit 'v2.6.38-rc8' into spi/next
Conflicts:
drivers/spi/pxa2xx_spi_pci.c
Diffstat (limited to 'lib/swiotlb.c')
-rw-r--r-- | lib/swiotlb.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/swiotlb.c b/lib/swiotlb.c index c47bbe11b80..93ca08b8a45 100644 --- a/lib/swiotlb.c +++ b/lib/swiotlb.c @@ -686,8 +686,10 @@ dma_addr_t swiotlb_map_page(struct device *dev, struct page *page, /* * Ensure that the address returned is DMA'ble */ - if (!dma_capable(dev, dev_addr, size)) - panic("map_single: bounce buffer is not DMA'ble"); + if (!dma_capable(dev, dev_addr, size)) { + swiotlb_tbl_unmap_single(dev, map, size, dir); + dev_addr = swiotlb_virt_to_bus(dev, io_tlb_overflow_buffer); + } return dev_addr; } |