arm: implement the new page table range API
Add set_ptes(), update_mmu_cache_range(), flush_dcache_folio() and flush_icache_pages(). Change the PG_dcache_clear flag from being per-page to per-folio which makes __dma_page_dev_to_cpu() a bit more exciting. Also add flush_cache_pages(), even though this isn't used by generic code (yet?) [m.szyprowski@samsung.com: fix potential endless loop in __dma_page_dev_to_cpu()] Link: https://lkml.kernel.org/r/20230809172737.3574190-1-m.szyprowski@samsung.com [willy@infradead.org: fix folio conversion in __dma_page_dev_to_cpu()] Link: https://lkml.kernel.org/r/20230823191852.1556561-1-willy@infradead.org Link: https://lkml.kernel.org/r/20230802151406.3735276-10-willy@infradead.org Signed-off-by:Matthew Wilcox (Oracle) <willy@infradead.org> Signed-off-by:
Marek Szyprowski <m.szyprowski@samsung.com> Acked-by:
Mike Rapoport (IBM) <rppt@kernel.org> Reviewed-by:
Russell King (Oracle) <rmk+kernel@armlinux.org.uk> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org>
Showing
- arch/arm/include/asm/cacheflush.h 15 additions, 9 deletionsarch/arm/include/asm/cacheflush.h
- arch/arm/include/asm/pgtable.h 3 additions, 2 deletionsarch/arm/include/asm/pgtable.h
- arch/arm/include/asm/tlbflush.h 9 additions, 5 deletionsarch/arm/include/asm/tlbflush.h
- arch/arm/mm/copypage-v4mc.c 3 additions, 2 deletionsarch/arm/mm/copypage-v4mc.c
- arch/arm/mm/copypage-v6.c 3 additions, 2 deletionsarch/arm/mm/copypage-v6.c
- arch/arm/mm/copypage-xscale.c 3 additions, 2 deletionsarch/arm/mm/copypage-xscale.c
- arch/arm/mm/dma-mapping.c 15 additions, 13 deletionsarch/arm/mm/dma-mapping.c
- arch/arm/mm/fault-armv.c 8 additions, 8 deletionsarch/arm/mm/fault-armv.c
- arch/arm/mm/flush.c 60 additions, 39 deletionsarch/arm/mm/flush.c
- arch/arm/mm/mm.h 1 addition, 1 deletionarch/arm/mm/mm.h
- arch/arm/mm/mmu.c 10 additions, 4 deletionsarch/arm/mm/mmu.c
- arch/arm/mm/nommu.c 6 additions, 0 deletionsarch/arm/mm/nommu.c
Please register or sign in to comment