1 /* 2 * ioapic.c IOAPIC emulation logic 3 * 4 * Copyright (c) 2011 Jan Kiszka, Siemens AG 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or (at your option) any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, see <http://www.gnu.org/licenses/>. 18 */ 19 20 #ifndef HW_INTC_IOAPIC_H 21 #define HW_INTC_IOAPIC_H 22 23 #define IOAPIC_NUM_PINS 24 24 #define IO_APIC_DEFAULT_ADDRESS 0xfec00000 25 #define IO_APIC_SECONDARY_ADDRESS (IO_APIC_DEFAULT_ADDRESS + 0x10000) 26 #define IO_APIC_SECONDARY_IRQBASE 24 /* primary 0 -> 23, secondary 24 -> 47 */ 27 28 #define TYPE_KVM_IOAPIC "kvm-ioapic" 29 #define TYPE_IOAPIC "ioapic" 30 31 void ioapic_eoi_broadcast(int vector); 32 33 #endif /* HW_INTC_IOAPIC_H */ 34