class IoApic

Defined at line 48 of file ../../src/virtualization/bin/vmm/arch/x64/io_apic.h

Implements the IO APIC.

See _82093AA (I/O APIC) datasheet_ for high-level details about the APIC,

and _Intel I/O Controller Hub 10 (ICH10) Family Datasheet (October 2008),

Section 13.5_ for extensions to the original specification.

Public Members

static const uint64_t kPhysBase
static const uint8_t kNumInterrupts

Public Methods

void IoApic (Guest * guest)

Defined at line 23 of file ../../src/virtualization/bin/vmm/arch/x64/io_apic.cc

void IoApic (Guest * guest, InterruptCallback interrupt)

Defined at line 20 of file ../../src/virtualization/bin/vmm/arch/x64/io_apic.cc

zx_status_t Init ()

Defined at line 28 of file ../../src/virtualization/bin/vmm/arch/x64/io_apic.cc

zx_status_t Read (uint64_t addr, IoValue * value)

IoHandler interface.

Defined at line 54 of file ../../src/virtualization/bin/vmm/arch/x64/io_apic.cc

std::string_view Name ()

Defined at line 64 of file ../../src/virtualization/bin/vmm/arch/x64/io_apic.h

zx_status_t Write (uint64_t addr, const IoValue & value)

Defined at line 75 of file ../../src/virtualization/bin/vmm/arch/x64/io_apic.cc

zx_status_t Interrupt (uint32_t global_irq)

Signals the given global IRQ.

Defined at line 32 of file ../../src/virtualization/bin/vmm/arch/x64/io_apic.cc