diff options
| author | Christoph Hellwig <hch@lst.de> | 2024-10-23 08:36:36 +0300 |
|---|---|---|
| committer | Arnd Bergmann <arnd@arndb.de> | 2024-10-29 00:44:28 +0300 |
| commit | c5c3238d9b8cee58cd4b08bbbe9347a94a566390 (patch) | |
| tree | 3385a96ef2934aae9eb1c034bee9c3855727734a /arch/powerpc/include/asm | |
| parent | 6f043e75744596968b6547c4bd43e4d30bbb6d6e (diff) | |
| download | linux-c5c3238d9b8cee58cd4b08bbbe9347a94a566390.tar.xz | |
asm-generic: provide generic page_to_phys and phys_to_page implementations
page_to_phys is duplicated by all architectures, and from some strange
reason placed in <asm/io.h> where it doesn't fit at all.
phys_to_page is only provided by a few architectures despite having a lot
of open coded users.
Provide generic versions in <asm-generic/memory_model.h> to make these
helpers more easily usable.
Note with this patch powerpc loses the CONFIG_DEBUG_VIRTUAL pfn_valid
check. It will be added back in a generic version later.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/powerpc/include/asm')
| -rw-r--r-- | arch/powerpc/include/asm/io.h | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/arch/powerpc/include/asm/io.h b/arch/powerpc/include/asm/io.h index 52e1b1d15ff6..fd92ac450169 100644 --- a/arch/powerpc/include/asm/io.h +++ b/arch/powerpc/include/asm/io.h @@ -970,18 +970,6 @@ static inline void * phys_to_virt(unsigned long address) #define phys_to_virt phys_to_virt /* - * Change "struct page" to physical address. - */ -static inline phys_addr_t page_to_phys(struct page *page) -{ - unsigned long pfn = page_to_pfn(page); - - WARN_ON(IS_ENABLED(CONFIG_DEBUG_VIRTUAL) && !pfn_valid(pfn)); - - return PFN_PHYS(pfn); -} - -/* * 32 bits still uses virt_to_bus() for its implementation of DMA * mappings se we have to keep it defined here. We also have some old * drivers (shame shame shame) that use bus_to_virt() and haven't been |
