1852c27e2SPaolo Bonzini #ifndef HW_I8259_H 2852c27e2SPaolo Bonzini #define HW_I8259_H 3852c27e2SPaolo Bonzini 4852c27e2SPaolo Bonzini /* i8259.c */ 5852c27e2SPaolo Bonzini 6*a42706dbSPaolo Bonzini typedef struct PICCommonState PICCommonState; 7*a42706dbSPaolo Bonzini 82aaf0ec7SBernhard Beschow extern PICCommonState *isa_pic; 978827d5fSPhilippe Mathieu-Daudé 1078827d5fSPhilippe Mathieu-Daudé /* 1178827d5fSPhilippe Mathieu-Daudé * i8259_init() 1278827d5fSPhilippe Mathieu-Daudé * 1378827d5fSPhilippe Mathieu-Daudé * Create a i8259 device on an ISA @bus, 1478827d5fSPhilippe Mathieu-Daudé * connect its output to @parent_irq_in, 1578827d5fSPhilippe Mathieu-Daudé * return an (allocated) array of 16 input IRQs. 1678827d5fSPhilippe Mathieu-Daudé */ 1778827d5fSPhilippe Mathieu-Daudé qemu_irq *i8259_init(ISABus *bus, qemu_irq parent_irq_in); 18852c27e2SPaolo Bonzini qemu_irq *kvm_i8259_init(ISABus *bus); 192aaf0ec7SBernhard Beschow int pic_get_output(PICCommonState *s); 202aaf0ec7SBernhard Beschow int pic_read_irq(PICCommonState *s); 21852c27e2SPaolo Bonzini 22852c27e2SPaolo Bonzini #endif 23