Introduce virt_to_phys()
virt_to_phys() returns the physical address given a virtual. In most cases this will be just the input value as the vast majority of systems run in a 1:1 mode. However in systems that are not running this way it should report the physical address or ~0 if no mapping exists for the given virtual address. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
This commit is contained in:
parent
45845301af
commit
65e43a1063
@ -57,6 +57,11 @@ static inline void unmap_physmem(void *vaddr, unsigned long flags)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
/*
|
||||
* Generic virtual read/write. Note that we don't support half-word
|
||||
* read/writes. We define __arch_*[bl] here, and leave __arch_*w
|
||||
|
@ -125,4 +125,9 @@ static inline void unmap_physmem(void *vaddr, unsigned long len)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
#endif /* __ASM_AVR32_IO_H */
|
||||
|
@ -64,6 +64,11 @@ static inline void unmap_physmem(void *vaddr, unsigned long flags)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
/*
|
||||
* These are for ISA/PCI shared memory _only_ and should never be used
|
||||
* on any other type of memory, including Zorro memory. They are meant to
|
||||
|
@ -229,4 +229,9 @@ static inline void unmap_physmem(void *vaddr, unsigned long flags)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -251,4 +251,9 @@ static inline void unmap_physmem(void *vaddr, unsigned long flags)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
#endif /* __ASM_M68K_IO_H__ */
|
||||
|
@ -155,4 +155,9 @@ static inline void unmap_physmem(void *vaddr, unsigned long flags)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
#endif /* __MICROBLAZE_IO_H__ */
|
||||
|
@ -118,7 +118,7 @@ static inline void set_io_port_base(unsigned long base)
|
||||
* Change virtual addresses to physical addresses and vv.
|
||||
* These are trivial on the 1:1 Linux/MIPS mapping
|
||||
*/
|
||||
extern inline unsigned long virt_to_phys(volatile void * address)
|
||||
extern inline phys_addr_t virt_to_phys(void * address)
|
||||
{
|
||||
return CPHYSADDR(address);
|
||||
}
|
||||
|
@ -133,4 +133,9 @@ static inline void unmap_physmem(void *vaddr, unsigned long flags)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
#endif /* __ASM_NIOS_IO_H_ */
|
||||
|
@ -53,6 +53,11 @@ static inline void unmap_physmem(void *vaddr, unsigned long flags)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
extern unsigned char inb (unsigned char *port);
|
||||
extern unsigned short inw (unsigned short *port);
|
||||
extern unsigned inl (unsigned port);
|
||||
|
@ -298,4 +298,9 @@ static inline void unmap_physmem(void *vaddr, unsigned long flags)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -261,5 +261,10 @@ static inline void unmap_physmem(void *vaddr, unsigned long flags)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* __ASM_SH_IO_H */
|
||||
|
@ -90,4 +90,9 @@ static inline void unmap_physmem(void *vaddr, unsigned long flags)
|
||||
|
||||
}
|
||||
|
||||
static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
{
|
||||
return (phys_addr_t)(vaddr);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user