|
@@ -114,11 +114,6 @@ setup_io_tlb_npages(char *str)
|
|
__setup("swiotlb=", setup_io_tlb_npages);
|
|
__setup("swiotlb=", setup_io_tlb_npages);
|
|
/* make io_tlb_overflow tunable too? */
|
|
/* make io_tlb_overflow tunable too? */
|
|
|
|
|
|
-void * __weak swiotlb_alloc(unsigned order, unsigned long nslabs)
|
|
|
|
-{
|
|
|
|
- return (void *)__get_free_pages(GFP_DMA | __GFP_NOWARN, order);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
dma_addr_t __weak swiotlb_phys_to_bus(struct device *hwdev, phys_addr_t paddr)
|
|
dma_addr_t __weak swiotlb_phys_to_bus(struct device *hwdev, phys_addr_t paddr)
|
|
{
|
|
{
|
|
return paddr;
|
|
return paddr;
|
|
@@ -240,7 +235,8 @@ swiotlb_late_init_with_default_size(size_t default_size)
|
|
bytes = io_tlb_nslabs << IO_TLB_SHIFT;
|
|
bytes = io_tlb_nslabs << IO_TLB_SHIFT;
|
|
|
|
|
|
while ((SLABS_PER_PAGE << order) > IO_TLB_MIN_SLABS) {
|
|
while ((SLABS_PER_PAGE << order) > IO_TLB_MIN_SLABS) {
|
|
- io_tlb_start = swiotlb_alloc(order, io_tlb_nslabs);
|
|
|
|
|
|
+ io_tlb_start = (void *)__get_free_pages(GFP_DMA | __GFP_NOWARN,
|
|
|
|
+ order);
|
|
if (io_tlb_start)
|
|
if (io_tlb_start)
|
|
break;
|
|
break;
|
|
order--;
|
|
order--;
|