Merge remote-tracking branch 'remotes/vivier/tags/trivial-branch-for-6.2-pull-request...
[qemu.git] / include / hw / vfio / vfio-calxeda-xgmac.h
1 /*
2 * VFIO calxeda xgmac device
3 *
4 * Copyright Linaro Limited, 2014
5 *
6 * Authors:
7 * Eric Auger <eric.auger@linaro.org>
8 *
9 * This work is licensed under the terms of the GNU GPL, version 2. See
10 * the COPYING file in the top-level directory.
11 *
12 */
13
14 #ifndef HW_VFIO_VFIO_CALXEDA_XGMAC_H
15 #define HW_VFIO_VFIO_CALXEDA_XGMAC_H
16
17 #include "hw/vfio/vfio-platform.h"
18 #include "qom/object.h"
19
20 #define TYPE_VFIO_CALXEDA_XGMAC "vfio-calxeda-xgmac"
21
22 /**
23 * This device exposes:
24 * - a single MMIO region corresponding to its register space
25 * - 3 IRQS (main and 2 power related IRQs)
26 */
27 struct VFIOCalxedaXgmacDevice {
28 VFIOPlatformDevice vdev;
29 };
30 typedef struct VFIOCalxedaXgmacDevice VFIOCalxedaXgmacDevice;
31
32 struct VFIOCalxedaXgmacDeviceClass {
33 /*< private >*/
34 VFIOPlatformDeviceClass parent_class;
35 /*< public >*/
36 DeviceRealize parent_realize;
37 };
38 typedef struct VFIOCalxedaXgmacDeviceClass VFIOCalxedaXgmacDeviceClass;
39
40 DECLARE_OBJ_CHECKERS(VFIOCalxedaXgmacDevice, VFIOCalxedaXgmacDeviceClass,
41 VFIO_CALXEDA_XGMAC_DEVICE, TYPE_VFIO_CALXEDA_XGMAC)
42
43 #endif