xref: /qemu/include/hw/ppc/openpic.h (revision 72ac97cd)
1 #if !defined(__OPENPIC_H__)
2 #define __OPENPIC_H__
3 
4 #include "qemu-common.h"
5 #include "hw/qdev.h"
6 
7 #define TYPE_OPENPIC "openpic"
8 
9 /* OpenPIC have 5 outputs per CPU connected and one IRQ out single output */
10 enum {
11     OPENPIC_OUTPUT_INT = 0, /* IRQ                       */
12     OPENPIC_OUTPUT_CINT,    /* critical IRQ              */
13     OPENPIC_OUTPUT_MCK,     /* Machine check event       */
14     OPENPIC_OUTPUT_DEBUG,   /* Inconditional debug event */
15     OPENPIC_OUTPUT_RESET,   /* Core reset event          */
16     OPENPIC_OUTPUT_NB,
17 };
18 
19 #define OPENPIC_MODEL_RAVEN       0
20 #define OPENPIC_MODEL_FSL_MPIC_20 1
21 #define OPENPIC_MODEL_FSL_MPIC_42 2
22 
23 #define OPENPIC_MAX_SRC     256
24 #define OPENPIC_MAX_TMR     4
25 #define OPENPIC_MAX_IPI     4
26 #define OPENPIC_MAX_IRQ     (OPENPIC_MAX_SRC + OPENPIC_MAX_IPI + \
27                              OPENPIC_MAX_TMR)
28 
29 #define TYPE_KVM_OPENPIC "kvm-openpic"
30 int kvm_openpic_connect_vcpu(DeviceState *d, CPUState *cs);
31 
32 #endif /* __OPENPIC_H__ */
33