1*f17e5a37SMatt Evans /* 2*f17e5a37SMatt Evans * PAPR Virtualized Interrupt System, aka ICS/ICP aka xics 3*f17e5a37SMatt Evans * 4*f17e5a37SMatt Evans * Copyright 2011 Matt Evans <matt@ozlabs.org>, IBM Corporation. 5*f17e5a37SMatt Evans * 6*f17e5a37SMatt Evans * This program is free software; you can redistribute it and/or modify it 7*f17e5a37SMatt Evans * under the terms of the GNU General Public License version 2 as published 8*f17e5a37SMatt Evans * by the Free Software Foundation. 9*f17e5a37SMatt Evans */ 10*f17e5a37SMatt Evans 11*f17e5a37SMatt Evans #ifndef XICS_H 12*f17e5a37SMatt Evans #define XICS_H 13*f17e5a37SMatt Evans 14*f17e5a37SMatt Evans #define XICS_IPI 0x2 15*f17e5a37SMatt Evans 16*f17e5a37SMatt Evans struct kvm_cpu; 17*f17e5a37SMatt Evans struct icp_state; 18*f17e5a37SMatt Evans 19*f17e5a37SMatt Evans struct icp_state *xics_system_init(unsigned int nr_irqs, unsigned int nr_cpus); 20*f17e5a37SMatt Evans void xics_cpu_register(struct kvm_cpu *vcpu); 21*f17e5a37SMatt Evans int xics_alloc_irqnum(void); 22*f17e5a37SMatt Evans 23*f17e5a37SMatt Evans #endif 24