Merge tag 'pull-loongarch-20241016' of https://gitlab.com/gaosong/qemu into staging
[qemu/armbru.git] / include / hw / vfio / vfio-amd-xgbe.h
bloba894546c02d140d2b689f09ace733c4d43019371
1 /*
2 * VFIO AMD XGBE device
4 * Copyright Linaro Limited, 2015
6 * Authors:
7 * Eric Auger <eric.auger@linaro.org>
9 * This work is licensed under the terms of the GNU GPL, version 2. See
10 * the COPYING file in the top-level directory.
14 #ifndef HW_VFIO_VFIO_AMD_XGBE_H
15 #define HW_VFIO_VFIO_AMD_XGBE_H
17 #include "hw/vfio/vfio-platform.h"
18 #include "qom/object.h"
20 #define TYPE_VFIO_AMD_XGBE "vfio-amd-xgbe"
22 /**
23 * This device exposes:
24 * - 5 MMIO regions: MAC, PCS, SerDes Rx/Tx regs,
25 SerDes Integration Registers 1/2 & 2/2
26 * - 2 level sensitive IRQs and optional DMA channel IRQs
28 struct VFIOAmdXgbeDevice {
29 VFIOPlatformDevice vdev;
32 typedef struct VFIOAmdXgbeDevice VFIOAmdXgbeDevice;
34 struct VFIOAmdXgbeDeviceClass {
35 /*< private >*/
36 VFIOPlatformDeviceClass parent_class;
37 /*< public >*/
38 DeviceRealize parent_realize;
41 typedef struct VFIOAmdXgbeDeviceClass VFIOAmdXgbeDeviceClass;
43 DECLARE_OBJ_CHECKERS(VFIOAmdXgbeDevice, VFIOAmdXgbeDeviceClass,
44 VFIO_AMD_XGBE_DEVICE, TYPE_VFIO_AMD_XGBE)
46 #endif