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