• Santosh Shilimkar's avatar
    ARM: 7795/1: mm: dma-mapping: Add dma_max_pfn(dev) helper function · 00c8f162
    Santosh Shilimkar authored
    Most of the kernel assumes that PFN0 is the start of the physical
    memory (RAM). This assumptions is not true on most of the ARM SOCs
    and hence and if one try to update the ARM port to follow the assumptions,
    we end of breaking the dma bounce limit for few block layer drivers.
    One such example is trying to unify the meaning of max*_pfn on ARM
    as the bootmem layer expects, breaks few block layer driver dma
    bounce limit.
    
    To fix this problem, we introduce dma_max_pfn(dev) generic helper with
    a possibility of override from the architecture code. The helper converts
    a DMA bitmask of bits to a block PFN number. In all the generic cases,
    it is just  "dev->dma_mask >> PAGE_SHIFT" and hence default behavior
    is maintained as is.
    
    Subsequent patches will make use of the helper. No functional change.
    
    Cc: Jens Axboe <axboe@kernel.dk>
    Signed-off-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
    Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
    00c8f162
dma-mapping.h 7.82 KB