10280b571SJan Kiszka /* 20280b571SJan Kiszka * ioapic.c IOAPIC emulation logic 30280b571SJan Kiszka * 40280b571SJan Kiszka * Copyright (c) 2011 Jan Kiszka, Siemens AG 50280b571SJan Kiszka * 60280b571SJan Kiszka * This library is free software; you can redistribute it and/or 70280b571SJan Kiszka * modify it under the terms of the GNU Lesser General Public 80280b571SJan Kiszka * License as published by the Free Software Foundation; either 961f3c91aSChetan Pant * version 2.1 of the License, or (at your option) any later version. 100280b571SJan Kiszka * 110280b571SJan Kiszka * This library is distributed in the hope that it will be useful, 120280b571SJan Kiszka * but WITHOUT ANY WARRANTY; without even the implied warranty of 130280b571SJan Kiszka * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 140280b571SJan Kiszka * Lesser General Public License for more details. 150280b571SJan Kiszka * 160280b571SJan Kiszka * You should have received a copy of the GNU Lesser General Public 170280b571SJan Kiszka * License along with this library; if not, see <http://www.gnu.org/licenses/>. 180280b571SJan Kiszka */ 190280b571SJan Kiszka 20*7f54640bSBernhard Beschow #ifndef HW_INTC_IOAPIC_H 21*7f54640bSBernhard Beschow #define HW_INTC_IOAPIC_H 22b881fbe9SJan Kiszka 23b881fbe9SJan Kiszka #define IOAPIC_NUM_PINS 24 24f5338ee3SMichael S. Tsirkin #define IO_APIC_DEFAULT_ADDRESS 0xfec00000 2594c5a606SGerd Hoffmann #define IO_APIC_SECONDARY_ADDRESS (IO_APIC_DEFAULT_ADDRESS + 0x10000) 2694c5a606SGerd Hoffmann #define IO_APIC_SECONDARY_IRQBASE 24 /* primary 0 -> 23, secondary 24 -> 47 */ 27b881fbe9SJan Kiszka 2834bec7a8SLi Qiang #define TYPE_KVM_IOAPIC "kvm-ioapic" 2934bec7a8SLi Qiang #define TYPE_IOAPIC "ioapic" 3034bec7a8SLi Qiang 310280b571SJan Kiszka void ioapic_eoi_broadcast(int vector); 32b881fbe9SJan Kiszka 33*7f54640bSBernhard Beschow #endif /* HW_INTC_IOAPIC_H */ 34