diff options
author | Steven King <sfking@fdwdc.com> | 2014-06-11 20:01:10 -0700 |
---|---|---|
committer | Greg Ungerer <gerg@uclinux.org> | 2014-06-20 15:11:20 +1000 |
commit | 817f72d680828bb848099adf69fd35c14ff2e182 (patch) | |
tree | 5fb8fb3d15a11caaa28f499a31ba06869e577057 /arch/m68k/include/asm/virtconvert.h | |
parent | 7171511eaec5bf23fb06078f59784a3a0626b38f (diff) |
m68knommu: Correct page_to_phys when PAGE_OFFSET is non-zero.
The definition of page_to_phys for nommu produces an incorrect value when
PAGE_OFFSET is non-zero. The nommu version of page_to_pfn works correctly
for non-zero PAGE_OFFSET, so use that instead.
Signed-off-by: Steven King <sfking@fdwdc.com>
Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Diffstat (limited to 'arch/m68k/include/asm/virtconvert.h')
-rw-r--r-- | arch/m68k/include/asm/virtconvert.h | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/arch/m68k/include/asm/virtconvert.h b/arch/m68k/include/asm/virtconvert.h index f35229b8651..b8a82fb1cef 100644 --- a/arch/m68k/include/asm/virtconvert.h +++ b/arch/m68k/include/asm/virtconvert.h @@ -26,16 +26,12 @@ static inline void *phys_to_virt(unsigned long address) } /* Permanent address of a page. */ -#ifdef CONFIG_MMU -#ifdef CONFIG_SINGLE_MEMORY_CHUNK +#if defined(CONFIG_MMU) && defined(CONFIG_SINGLE_MEMORY_CHUNK) #define page_to_phys(page) \ __pa(PAGE_OFFSET + (((page) - pg_data_map[0].node_mem_map) << PAGE_SHIFT)) #else #define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT) #endif -#else -#define page_to_phys(page) (((page) - mem_map) << PAGE_SHIFT) -#endif /* * IO bus memory addresses are 1:1 with the physical address, |