| 1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
| 2 | |
| 3 | /* |
| 4 | * This header file is meant to be used as input to the `bindgen` application |
| 5 | * in order to generate C FFI compatible Rust bindings. |
| 6 | */ |
| 7 | |
| 8 | /* |
| 9 | * We block include/qemu/typedefs.h from bindgen, add here symbols |
| 10 | * that are needed as opaque types by other functions. |
| 11 | */ |
| 12 | typedef struct Clock Clock; |
| 13 | typedef struct DeviceState DeviceState; |
| 14 | typedef struct IRQState *qemu_irq; |
| 15 | typedef void (*qemu_irq_handler)(void *opaque, int n, int level); |
| 16 | |
| 17 | /* Once bindings exist, these could move to a different *-sys crate. */ |
| 18 | typedef struct BlockBackend BlockBackend; |
| 19 | typedef struct Monitor Monitor; |
| 20 | typedef struct NetClientState NetClientState; |
| 21 | |
| 22 | #include "qemu/osdep.h" |
| 23 | |
| 24 | #include "hw/core/clock.h" |
| 25 | #include "hw/core/irq.h" |
| 26 | #include "hw/core/qdev-clock.h" |
| 27 | #include "hw/core/qdev.h" |
| 28 | #include "hw/core/qdev-properties-system.h" |
| 29 | #include "hw/core/qdev-properties.h" |
| 30 | #include "hw/core/resettable.h" |