16#define ICW1_SINGLE 0x02
17#define ICW1_INTERVAL4 0x04
18#define ICW1_LEVEL 0x08
23#define ICW4_BUF_SLAVE 0x08
24#define ICW4_BUF_MASTER 0x0C
27#define QEMU_ISA_DEBUG_EXIT_PORT 0x501
31 asm volatile(
"outb %0, %1" : :
"a"(val),
"Nd"(port) :
"memory");
37 asm volatile(
"inb %1, %0" :
"=a"(ret) :
"Nd"(port) :
"memory");
43 asm volatile(
"outw %0, %1" : :
"a"(val),
"Nd"(port) :
"memory");
49 asm volatile(
"inw %1, %0" :
"=a"(ret) :
"Nd"(port) :
"memory");
56 asm volatile(
"inl %1, %0" :
"=a"(ret) :
"Nd"(port) :
"memory");
62 asm volatile(
"outl %0, %1" : :
"a"(val),
"Nd"(port) :
"memory");
static uint8_t port_inb(uint16_t port)
static void port_outl(uint16_t port, uint32_t val)
static void port_wait(void)
static uint16_t port_inw(uint16_t port)
static void port_outb(uint16_t port, uint8_t val)
static void port_outw(uint16_t port, uint16_t val)
static uint32_t port_inl(uint16_t port)