xref: /openbmc/qemu/include/hw/hyperv/vmbus-bridge.h (revision df0f3d13)
1 /*
2  * QEMU Hyper-V VMBus root bridge
3  *
4  * Copyright (c) 2017-2018 Virtuozzo International GmbH.
5  *
6  * This work is licensed under the terms of the GNU GPL, version 2 or later.
7  * See the COPYING file in the top-level directory.
8  */
9 
10 #ifndef HW_HYPERV_VMBUS_BRIDGE_H
11 #define HW_HYPERV_VMBUS_BRIDGE_H
12 
13 #include "hw/sysbus.h"
14 
15 #define TYPE_VMBUS_BRIDGE "vmbus-bridge"
16 
17 typedef struct VMBus VMBus;
18 
19 typedef struct VMBusBridge {
20     SysBusDevice parent_obj;
21 
22     uint8_t irq0;
23     uint8_t irq1;
24 
25     VMBus *bus;
26 } VMBusBridge;
27 
28 #define VMBUS_BRIDGE(obj) OBJECT_CHECK(VMBusBridge, (obj), TYPE_VMBUS_BRIDGE)
29 
30 static inline VMBusBridge *vmbus_bridge_find(void)
31 {
32     return VMBUS_BRIDGE(object_resolve_path_type("", TYPE_VMBUS_BRIDGE, NULL));
33 }
34 
35 #endif
36