Merge gpxe-for-syslinux
[syslinux.git] / memdump / io.h
bloba592402f7eb93e88edd298e56e6ba4a6a6390dc7
1 #ifndef IO_H
2 #define IO_H
4 static inline void outb(unsigned char v, unsigned short p)
6 asm volatile("outb %1,%0" : : "d" (p), "a" (v));
9 static inline unsigned char inb(unsigned short p)
11 unsigned char v;
12 asm volatile("inb %1,%0" : "=a" (v) : "d" (p));
13 return v;
16 static inline void outw(unsigned short v, unsigned short p)
18 asm volatile("outw %1,%0" : : "d" (p), "a" (v));
21 static inline unsigned short inw(unsigned short p)
23 unsigned short v;
24 asm volatile("inw %1,%0" : "=a" (v) : "d" (p));
25 return v;
28 static inline void outl(unsigned int v, unsigned short p)
30 asm volatile("outl %1,%0" : : "d" (p), "a" (v));
33 static inline unsigned int inl(unsigned short p)
35 unsigned int v;
36 asm volatile("inl %1,%0" : "=a" (v) : "d" (p));
37 return v;
40 #endif