xref: /qemu/include/hw/hw.h (revision 741da0d38b40b143724de320f4ed599402eece07)
187ecb68bSpbrook /* Declarations for use by hardware emulation.  */
287ecb68bSpbrook #ifndef QEMU_HW_H
387ecb68bSpbrook #define QEMU_HW_H
487ecb68bSpbrook 
51ad2134fSPaul Brook 
6*741da0d3SPaolo Bonzini #ifdef CONFIG_USER_ONLY
7*741da0d3SPaolo Bonzini #error Cannot include hw/hw.h from user emulation
81ad2134fSPaul Brook #endif
91ad2134fSPaul Brook 
10*741da0d3SPaolo Bonzini #include "exec/cpu-common.h"
11022c62cbSPaolo Bonzini #include "exec/ioport.h"
1283c9f4caSPaolo Bonzini #include "hw/irq.h"
13737e150eSPaolo Bonzini #include "block/aio.h"
14caf71f86SPaolo Bonzini #include "migration/vmstate.h"
151de7afc9SPaolo Bonzini #include "qemu/log.h"
160137fdc0SMarkus Armbruster #include "qemu/module.h"
17b6c4f71fSblueswir1 
1887ecb68bSpbrook typedef void QEMUResetHandler(void *opaque);
1987ecb68bSpbrook 
20a08d4367SJan Kiszka void qemu_register_reset(QEMUResetHandler *func, void *opaque);
21dda9b29fSJan Kiszka void qemu_unregister_reset(QEMUResetHandler *func, void *opaque);
2287ecb68bSpbrook 
230137fdc0SMarkus Armbruster void QEMU_NORETURN hw_error(const char *fmt, ...) GCC_FMT_ATTR(1, 2);
240137fdc0SMarkus Armbruster 
2587ecb68bSpbrook #endif
26