0001
0002
0003
0004
0005
0006 #ifndef _VNIC_RESOURCE_H_
0007 #define _VNIC_RESOURCE_H_
0008
0009 #define VNIC_RES_MAGIC 0x766E6963L
0010 #define VNIC_RES_VERSION 0x00000000L
0011
0012
0013 enum vnic_res_type {
0014 RES_TYPE_EOL,
0015 RES_TYPE_WQ,
0016 RES_TYPE_RQ,
0017 RES_TYPE_CQ,
0018 RES_TYPE_RSVD1,
0019 RES_TYPE_NIC_CFG,
0020 RES_TYPE_RSVD2,
0021 RES_TYPE_RSVD3,
0022 RES_TYPE_RSVD4,
0023 RES_TYPE_RSVD5,
0024 RES_TYPE_INTR_CTRL,
0025 RES_TYPE_INTR_TABLE,
0026 RES_TYPE_INTR_PBA,
0027 RES_TYPE_INTR_PBA_LEGACY,
0028 RES_TYPE_RSVD6,
0029 RES_TYPE_RSVD7,
0030 RES_TYPE_DEVCMD,
0031 RES_TYPE_PASS_THRU_PAGE,
0032 RES_TYPE_SUBVNIC,
0033 RES_TYPE_MQ_WQ,
0034 RES_TYPE_MQ_RQ,
0035 RES_TYPE_MQ_CQ,
0036 RES_TYPE_DEPRECATED1,
0037 RES_TYPE_DEPRECATED2,
0038 RES_TYPE_DEVCMD2,
0039
0040 RES_TYPE_MAX,
0041 };
0042
0043 struct vnic_resource_header {
0044 u32 magic;
0045 u32 version;
0046 };
0047
0048 struct vnic_resource {
0049 u8 type;
0050 u8 bar;
0051 u8 pad[2];
0052 u32 bar_offset;
0053 u32 count;
0054 };
0055
0056 #endif