34 lines
		
	
	
		
			991 B
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			991 B
		
	
	
	
		
			C
		
	
	
	
| #ifndef OPENPIC_H
 | |
| #define OPENPIC_H
 | |
| 
 | |
| #include "qemu-common.h"
 | |
| #include "hw/qdev-core.h"
 | |
| #include "qom/cpu.h"
 | |
| 
 | |
| #define TYPE_OPENPIC "openpic"
 | |
| 
 | |
| /* OpenPIC have 5 outputs per CPU connected and one IRQ out single output */
 | |
| enum {
 | |
|     OPENPIC_OUTPUT_INT = 0, /* IRQ                       */
 | |
|     OPENPIC_OUTPUT_CINT,    /* critical IRQ              */
 | |
|     OPENPIC_OUTPUT_MCK,     /* Machine check event       */
 | |
|     OPENPIC_OUTPUT_DEBUG,   /* Inconditional debug event */
 | |
|     OPENPIC_OUTPUT_RESET,   /* Core reset event          */
 | |
|     OPENPIC_OUTPUT_NB,
 | |
| };
 | |
| 
 | |
| #define OPENPIC_MODEL_RAVEN       0
 | |
| #define OPENPIC_MODEL_FSL_MPIC_20 1
 | |
| #define OPENPIC_MODEL_FSL_MPIC_42 2
 | |
| 
 | |
| #define OPENPIC_MAX_SRC     256
 | |
| #define OPENPIC_MAX_TMR     4
 | |
| #define OPENPIC_MAX_IPI     4
 | |
| #define OPENPIC_MAX_IRQ     (OPENPIC_MAX_SRC + OPENPIC_MAX_IPI + \
 | |
|                              OPENPIC_MAX_TMR)
 | |
| 
 | |
| #define TYPE_KVM_OPENPIC "kvm-openpic"
 | |
| int kvm_openpic_connect_vcpu(DeviceState *d, CPUState *cs);
 | |
| 
 | |
| #endif /* OPENPIC_H */
 |