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>
This commit is contained in:
Родитель
7171511eae
Коммит
817f72d680
|
@ -26,16 +26,12 @@ static inline void *phys_to_virt(unsigned long address)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Permanent address of a page. */
|
/* Permanent address of a page. */
|
||||||
#ifdef CONFIG_MMU
|
#if defined(CONFIG_MMU) && defined(CONFIG_SINGLE_MEMORY_CHUNK)
|
||||||
#ifdef CONFIG_SINGLE_MEMORY_CHUNK
|
|
||||||
#define page_to_phys(page) \
|
#define page_to_phys(page) \
|
||||||
__pa(PAGE_OFFSET + (((page) - pg_data_map[0].node_mem_map) << PAGE_SHIFT))
|
__pa(PAGE_OFFSET + (((page) - pg_data_map[0].node_mem_map) << PAGE_SHIFT))
|
||||||
#else
|
#else
|
||||||
#define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT)
|
#define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT)
|
||||||
#endif
|
#endif
|
||||||
#else
|
|
||||||
#define page_to_phys(page) (((page) - mem_map) << PAGE_SHIFT)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* IO bus memory addresses are 1:1 with the physical address,
|
* IO bus memory addresses are 1:1 with the physical address,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче