6 #define enable_intr() asm volatile("sti")
7 #define disable_intr() asm volatile("cli")
8 #define halt_cpu() asm volatile("hlt")
10 static inline uint8_t inb(uint16_t port)
20 static inline uint16_t inw(uint16_t port)
30 static inline uint32_t inl(uint16_t port)
40 #define outb(src, port) \
43 :: "a" ((uint8_t)(src)), "dN" ((uint16_t)(port)))
45 #define outw(src, port) \
48 :: "a" ((uint16_t)(src)), "dN" ((uint16_t)(port)))
50 #define outl(src, port) \
53 :: "a" ((uint32_t)(src)), "dN" ((uint16_t)(port)))
55 #define iodelay() outb(0, 0x80)
58 #endif /* ASMOPS_H_ */