APIC: Difference between revisions

[unchecked revision][unchecked revision]
Content deleted Content added
IO-APIC version 0x20 has 3 registers.
The Window Register has bits 8 thru 31 reserved, so ensure that 1's are never written to them
Line 76:
 
The IO APIC uses two registers for most of its operation - an address register at IOAPICBASE+0 and a data register at
IOAPICBASE+0x10. All accesses must be done on dword boundaries. The address register uses the bottom 8 bits for register select. Here is some example code that illustrates this:
 
<source lang="c">
Line 82:
{
volatile dword * ioapic = (volatile dword*)ioapicaddr;
ioapic[0] = (reg & 0xff);
return ioapic[4];
}
Line 89:
{
volatile dword * ioapic = (volatile dword*)ioapicaddr;
ioapic[0] = (reg & 0xff);
ioapic[4] = value;
}