arm64: Increase the swiotlb buffer size 64MB
authorCatalin Marinas <catalin.marinas@arm.com>
Thu, 5 Feb 2015 18:01:53 +0000 (18:01 +0000)
committerCatalin Marinas <catalin.marinas@arm.com>
Fri, 27 Feb 2015 18:05:55 +0000 (18:05 +0000)
commita1e50a82256ed2f1312e70c52a84323e2e378f49
treed1a3059412f8323c6644f2fceb7649cba84a093c
parentf6242cac10427c546271050b31c891a078e490cd
arm64: Increase the swiotlb buffer size 64MB

With commit 3690951fc6d4 (arm64: Use swiotlb late initialisation), the
swiotlb buffer size is limited to MAX_ORDER_NR_PAGES. However, there are
platforms with 32-bit only devices that require bounce buffering via
swiotlb. This patch changes the swiotlb initialisation to an early 64MB
memblock allocation. In order to get the swiotlb buffer correctly
allocated (via memblock_virt_alloc_low_nopanic), this patch also defines
ARCH_LOW_ADDRESS_LIMIT to the maximum physical address capable of 32-bit
DMA.

Reported-by: Kefeng Wang <wangkefeng.wang@huawei.com>
Tested-by: Kefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/include/asm/processor.h
arch/arm64/mm/dma-mapping.c
arch/arm64/mm/init.c