58 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef __UM_IO_H
 | 
						|
#define __UM_IO_H
 | 
						|
 | 
						|
#include "asm/page.h"
 | 
						|
 | 
						|
#define IO_SPACE_LIMIT 0xdeadbeef /* Sure hope nothing uses this */
 | 
						|
 | 
						|
static inline int inb(unsigned long i) { return(0); }
 | 
						|
static inline void outb(char c, unsigned long i) { }
 | 
						|
 | 
						|
/*
 | 
						|
 * Change virtual addresses to physical addresses and vv.
 | 
						|
 * These are pretty trivial
 | 
						|
 */
 | 
						|
static inline unsigned long virt_to_phys(volatile void * address)
 | 
						|
{
 | 
						|
	return __pa((void *) address);
 | 
						|
}
 | 
						|
 | 
						|
static inline void * phys_to_virt(unsigned long address)
 | 
						|
{
 | 
						|
	return __va(address);
 | 
						|
}
 | 
						|
 | 
						|
/*
 | 
						|
 * Convert a physical pointer to a virtual kernel pointer for /dev/mem
 | 
						|
 * access
 | 
						|
 */
 | 
						|
#define xlate_dev_mem_ptr(p)	__va(p)
 | 
						|
 | 
						|
/*
 | 
						|
 * Convert a virtual cached pointer to an uncached pointer
 | 
						|
 */
 | 
						|
#define xlate_dev_kmem_ptr(p)	p
 | 
						|
 | 
						|
static inline void writeb(unsigned char b, volatile void __iomem *addr)
 | 
						|
{
 | 
						|
	*(volatile unsigned char __force *) addr = b;
 | 
						|
}
 | 
						|
static inline void writew(unsigned short b, volatile void __iomem *addr)
 | 
						|
{
 | 
						|
	*(volatile unsigned short __force *) addr = b;
 | 
						|
}
 | 
						|
static inline void writel(unsigned int b, volatile void __iomem *addr)
 | 
						|
{
 | 
						|
	*(volatile unsigned int __force *) addr = b;
 | 
						|
}
 | 
						|
static inline void writeq(unsigned int b, volatile void __iomem *addr)
 | 
						|
{
 | 
						|
	*(volatile unsigned long long __force *) addr = b;
 | 
						|
}
 | 
						|
#define __raw_writeb writeb
 | 
						|
#define __raw_writew writew
 | 
						|
#define __raw_writel writel
 | 
						|
#define __raw_writeq writeq
 | 
						|
 | 
						|
#endif
 |