qemu/include/hw/vfio/vfio-calxeda-xgmac.h
<<
>>
Prefs
   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
  19#define TYPE_VFIO_CALXEDA_XGMAC "vfio-calxeda-xgmac"
  20
  21/**
  22 * This device exposes:
  23 * - a single MMIO region corresponding to its register space
  24 * - 3 IRQS (main and 2 power related IRQs)
  25 */
  26typedef struct VFIOCalxedaXgmacDevice {
  27    VFIOPlatformDevice vdev;
  28} VFIOCalxedaXgmacDevice;
  29
  30typedef struct VFIOCalxedaXgmacDeviceClass {
  31    /*< private >*/
  32    VFIOPlatformDeviceClass parent_class;
  33    /*< public >*/
  34    DeviceRealize parent_realize;
  35} VFIOCalxedaXgmacDeviceClass;
  36
  37#define VFIO_CALXEDA_XGMAC_DEVICE(obj) \
  38     OBJECT_CHECK(VFIOCalxedaXgmacDevice, (obj), TYPE_VFIO_CALXEDA_XGMAC)
  39#define VFIO_CALXEDA_XGMAC_DEVICE_CLASS(klass) \
  40     OBJECT_CLASS_CHECK(VFIOCalxedaXgmacDeviceClass, (klass), \
  41                        TYPE_VFIO_CALXEDA_XGMAC)
  42#define VFIO_CALXEDA_XGMAC_DEVICE_GET_CLASS(obj) \
  43     OBJECT_GET_CLASS(VFIOCalxedaXgmacDeviceClass, (obj), \
  44                      TYPE_VFIO_CALXEDA_XGMAC)
  45
  46#endif
  47