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 44