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;
}
|