6 static inline uint8_t inb(uint16_t p
)
9 asm volatile ("inb %1,%0":"=a" (v
):"Nd"(p
));
13 static inline uint16_t inw(uint16_t p
)
16 asm volatile ("inw %1,%0":"=a" (v
):"Nd"(p
));
20 static inline uint32_t inl(uint16_t p
)
23 asm volatile ("inl %1,%0":"=a" (v
):"Nd"(p
));
27 static inline void outb(uint8_t v
, uint16_t p
)
29 asm volatile ("outb %0,%1"::"a" (v
), "Nd"(p
));
32 static inline void outw(uint16_t v
, uint16_t p
)
34 asm volatile ("outw %0,%1"::"a" (v
), "Nd"(p
));
37 static inline void outl(uint32_t v
, uint16_t p
)
39 asm volatile ("outl %0,%1"::"a" (v
), "Nd"(p
));
42 #endif /* _SYS_IO_H */