mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-14 12:49:08 +00:00
m68knommu: fix definitions of __pa() and __va()
Fix compilation breakage of all m68knommu targets: CC arch/m68knommu/kernel/asm-offsets.s In file included from include/linux/sched.h:77, from arch/m68knommu/kernel/asm-offsets.c:12: include/linux/percpu.h: In function 'per_cpu_ptr_to_phys': include/linux/percpu.h:161: error: implicit declaration of function 'virt_to_phy This is broken in linux-2.6.33-rc3. Change the definitions of __pa() and __va() to not use virt_to_phys() and phys_to_virt(). Trivial 1:1 conversion required for the non-MMU case. A side effect if this is that the m68knommu can now use asm/virtconvert.h for the definition of virt_to_phys() and phys_to_virt(). Also cleaned up the definition of page_to_phys() when moving into virtconvert.h. Signed-off-by: Greg Ungerer <gerg@uclinux.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
066000dd85
commit
682137f7e6
@ -3,6 +3,7 @@
|
||||
|
||||
#ifdef __KERNEL__
|
||||
|
||||
#include <asm/virtconvert.h>
|
||||
|
||||
/*
|
||||
* These are for ISA/PCI shared memory _only_ and should never be used
|
||||
@ -165,19 +166,6 @@ static inline void *ioremap_fullcache(unsigned long physaddr, unsigned long size
|
||||
|
||||
extern void iounmap(void *addr);
|
||||
|
||||
/* Pages to physical address... */
|
||||
#define page_to_phys(page) ((page - mem_map) << PAGE_SHIFT)
|
||||
#define page_to_bus(page) ((page - mem_map) << PAGE_SHIFT)
|
||||
|
||||
/*
|
||||
* Macros used for converting between virtual and physical mappings.
|
||||
*/
|
||||
#define phys_to_virt(vaddr) ((void *) (vaddr))
|
||||
#define virt_to_phys(vaddr) ((unsigned long) (vaddr))
|
||||
|
||||
#define virt_to_bus virt_to_phys
|
||||
#define bus_to_virt phys_to_virt
|
||||
|
||||
/*
|
||||
* Convert a physical pointer to a virtual kernel pointer for /dev/mem
|
||||
* access
|
||||
|
@ -56,8 +56,8 @@ extern unsigned long memory_end;
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
#define __pa(vaddr) virt_to_phys((void *)(vaddr))
|
||||
#define __va(paddr) phys_to_virt((unsigned long)(paddr))
|
||||
#define __pa(vaddr) ((unsigned long)(vaddr))
|
||||
#define __va(paddr) ((void *)(paddr))
|
||||
|
||||
#define virt_to_pfn(kaddr) (__pa(kaddr) >> PAGE_SHIFT)
|
||||
#define pfn_to_virt(pfn) __va((pfn) << PAGE_SHIFT)
|
||||
|
@ -26,6 +26,7 @@ static inline void *phys_to_virt(unsigned long address)
|
||||
}
|
||||
|
||||
/* Permanent address of a page. */
|
||||
#ifdef CONFIG_MMU
|
||||
#ifdef CONFIG_SINGLE_MEMORY_CHUNK
|
||||
#define page_to_phys(page) \
|
||||
__pa(PAGE_OFFSET + (((page) - pg_data_map[0].node_mem_map) << PAGE_SHIFT))
|
||||
@ -37,6 +38,9 @@ static inline void *phys_to_virt(unsigned long address)
|
||||
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,
|
||||
|
Loading…
Reference in New Issue
Block a user