1 /* Declarations for use by hardware emulation. */ 2 #ifndef QEMU_HW_H 3 #define QEMU_HW_H 4 5 #include "qemu-common.h" 6 #include "hw/irq.h" 7 #include "migration/qemu-file.h" 8 #include "migration/vmstate.h" 9 10 #ifdef NEED_CPU_H 11 #include "cpu.h" 12 #endif 13 14 15 #ifdef CONFIG_ANDROID 16 void qemu_put_string(QEMUFile *f, const char* str); 17 char* qemu_get_string(QEMUFile *f); 18 #endif 19 20 #ifdef NEED_CPU_H 21 #if TARGET_LONG_BITS == 64 22 #define qemu_put_betl qemu_put_be64 23 #define qemu_get_betl qemu_get_be64 24 #define qemu_put_betls qemu_put_be64s 25 #define qemu_get_betls qemu_get_be64s 26 #define qemu_put_sbetl qemu_put_sbe64 27 #define qemu_get_sbetl qemu_get_sbe64 28 #define qemu_put_sbetls qemu_put_sbe64s 29 #define qemu_get_sbetls qemu_get_sbe64s 30 #else 31 #define qemu_put_betl qemu_put_be32 32 #define qemu_get_betl qemu_get_be32 33 #define qemu_put_betls qemu_put_be32s 34 #define qemu_get_betls qemu_get_be32s 35 #define qemu_put_sbetl qemu_put_sbe32 36 #define qemu_get_sbetl qemu_get_sbe32 37 #define qemu_put_sbetls qemu_put_sbe32s 38 #define qemu_get_sbetls qemu_get_sbe32s 39 #endif 40 #endif 41 42 typedef void QEMUResetHandler(void *opaque); 43 44 void qemu_register_reset(QEMUResetHandler *func, int order, void *opaque); 45 46 /* handler to set the boot_device for a specific type of QEMUMachine */ 47 /* return 0 if success */ 48 typedef int QEMUBootSetHandler(void *opaque, const char *boot_device); 49 void qemu_register_boot_set(QEMUBootSetHandler *func, void *opaque); 50 51 #endif 52