|
AquilaOS documentation
How it works, and its code
|
#include <stdint.h>Go to the source code of this file.
Data Structures | |
| struct | ioaddr |
| Where a device's registers are. More... | |
Macros | |
| #define | __inb(port) |
| #define | __inw(port) |
| #define | __inl(port) |
| #define | __insw(port, count, buf) |
| #define | __outsw(port, count, buf) |
| #define | __outb(port, value) |
| #define | __outw(port, value) |
| #define | __outl(port, value) |
| #define | __io_wait() |
| #define | __mmio_inb(addr) |
| #define | __mmio_inw(addr) |
| #define | __mmio_inl(addr) |
| #define | __mmio_inq(addr) |
| #define | __mmio_outb(addr, v) |
| #define | __mmio_outw(addr, v) |
| #define | __mmio_outl(addr, v) |
| #define | __mmio_outq(addr, v) |
| #define | IOADDR_PORT 1 |
| #define | IOADDR_MMIO8 2 |
| #define | IOADDR_MMIO16 3 |
| #define | IOADDR_MMIO32 4 |
Functions | |
| static char * | ioaddr_type_str (struct ioaddr *io) |
| static uint8_t | io_in8 (struct ioaddr *io, uintptr_t off) |
| static uint16_t | io_in16 (struct ioaddr *io, uintptr_t off) |
| static uint32_t | io_in32 (struct ioaddr *io, uintptr_t off) |
| static void | io_out8 (struct ioaddr *io, uintptr_t off, uint8_t val) |
| static void | io_out16 (struct ioaddr *io, uintptr_t off, uint16_t val) |
| static void | io_out32 (struct ioaddr *io, uintptr_t off, uint32_t val) |
| #define __inb | ( | port | ) |
| #define __inl | ( | port | ) |
| #define __insw | ( | port, | |
| count, | |||
| buf ) |
Definition at line 38 of file io.h.
Referenced by pio_read_sectors().
| #define __inw | ( | port | ) |
| #define __io_wait | ( | ) |
| #define __mmio_inb | ( | addr | ) |
| #define __mmio_inl | ( | addr | ) |
| #define __mmio_inq | ( | addr | ) |
| #define __mmio_inw | ( | addr | ) |
| #define __mmio_outb | ( | addr, | |
| v ) |
| #define __mmio_outl | ( | addr, | |
| v ) |
Definition at line 84 of file io.h.
Referenced by io_out32().
| #define __mmio_outq | ( | addr, | |
| v ) |
| #define __mmio_outw | ( | addr, | |
| v ) |
Definition at line 83 of file io.h.
Referenced by io_out16().
| #define __outb | ( | port, | |
| value ) |
| #define __outl | ( | port, | |
| value ) |
Definition at line 63 of file io.h.
Referenced by io_out32().
| #define __outsw | ( | port, | |
| count, | |||
| buf ) |
Definition at line 45 of file io.h.
Referenced by pio_write_sectors().
| #define __outw | ( | port, | |
| value ) |
Definition at line 58 of file io.h.
Referenced by io_out16().
| #define IOADDR_MMIO16 3 |
Definition at line 91 of file io.h.
Referenced by io_in16(), io_in32(), io_in8(), io_out16(), io_out32(), io_out8(), io_reg(), and ioaddr_type_str().
| #define IOADDR_MMIO32 4 |
Definition at line 92 of file io.h.
Referenced by io_in16(), io_in32(), io_in8(), io_out16(), io_out32(), io_out8(), io_reg(), and ioaddr_type_str().
| #define IOADDR_MMIO8 2 |
Definition at line 90 of file io.h.
Referenced by e1000_probe(), io_in16(), io_in32(), io_in8(), io_out16(), io_out32(), io_out8(), and ioaddr_type_str().
| #define IOADDR_PORT 1 |
Definition at line 89 of file io.h.
Referenced by ata_probe(), io_in16(), io_in32(), io_in8(), io_out16(), io_out32(), io_out8(), ioaddr_type_str(), pci_host_set(), platform_device_io(), pm1_read(), pm1_write(), x86_acpi_poweroff(), x86_pc_cmos_init(), x86_pc_pic_init(), and x86_pit_delay().
Definition at line 135 of file io.h.
References __inw, __mmio_inw, ioaddr::addr, io_in16(), IOADDR_MMIO16, IOADDR_MMIO32, IOADDR_MMIO8, IOADDR_PORT, and ioaddr::type.
Definition at line 151 of file io.h.
References __inl, __mmio_inl, ioaddr::addr, io_in32(), IOADDR_MMIO16, IOADDR_MMIO32, IOADDR_MMIO8, IOADDR_PORT, and ioaddr::type.
Definition at line 119 of file io.h.
References __inb, __mmio_inb, ioaddr::addr, io_in8(), IOADDR_MMIO16, IOADDR_MMIO32, IOADDR_MMIO8, IOADDR_PORT, and ioaddr::type.
Definition at line 181 of file io.h.
References __mmio_outw, __outw, ioaddr::addr, io_out16(), IOADDR_MMIO16, IOADDR_MMIO32, IOADDR_MMIO8, IOADDR_PORT, and ioaddr::type.
Definition at line 195 of file io.h.
References __mmio_outl, __outl, ioaddr::addr, io_out32(), IOADDR_MMIO16, IOADDR_MMIO32, IOADDR_MMIO8, IOADDR_PORT, and ioaddr::type.
Definition at line 167 of file io.h.
References __mmio_outb, __outb, ioaddr::addr, io_out8(), IOADDR_MMIO16, IOADDR_MMIO32, IOADDR_MMIO8, IOADDR_PORT, and ioaddr::type.
|
inlinestatic |
Definition at line 101 of file io.h.
References IOADDR_MMIO16, IOADDR_MMIO32, IOADDR_MMIO8, IOADDR_PORT, ioaddr_type_str(), NULL, and ioaddr::type.
Referenced by i8042_init(), ioaddr_type_str(), uart_8250_attach(), x86_cmos_setup(), x86_pic_setup(), and x86_pit_setup().