IB/core: Add core header changes needed for OPA
This patch adds the value of the CNP opcode to the existing list of enumerated opcodes in ib_pack.h Add common OPA header definitions for driver build: - opa_port_info.h - opa_smi.h - hfi1_user.h Additionally, ib_mad.h, has additional definitions that are common to ib_drivers including: - trap support - cca support The qib driver has the duplication removed in favor those in ib_mad.h Reviewed-by: Mike Marciniszyn <mike.marciniszyn@intel.com> Reviewed-by: John, Jubin <jubin.john@intel.com> Signed-off-by: Ira Weiny <ira.weiny@intel.com> Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:

committed by
Doug Ledford

orang tua
072bf1f7e4
melakukan
d4ab347005
@@ -36,148 +36,17 @@
|
||||
|
||||
#include <rdma/ib_pma.h>
|
||||
|
||||
#define IB_SMP_UNSUP_VERSION cpu_to_be16(0x0004)
|
||||
#define IB_SMP_UNSUP_METHOD cpu_to_be16(0x0008)
|
||||
#define IB_SMP_UNSUP_METH_ATTR cpu_to_be16(0x000C)
|
||||
#define IB_SMP_INVALID_FIELD cpu_to_be16(0x001C)
|
||||
#define IB_SMP_UNSUP_VERSION \
|
||||
cpu_to_be16(IB_MGMT_MAD_STATUS_BAD_VERSION)
|
||||
|
||||
struct ib_node_info {
|
||||
u8 base_version;
|
||||
u8 class_version;
|
||||
u8 node_type;
|
||||
u8 num_ports;
|
||||
__be64 sys_guid;
|
||||
__be64 node_guid;
|
||||
__be64 port_guid;
|
||||
__be16 partition_cap;
|
||||
__be16 device_id;
|
||||
__be32 revision;
|
||||
u8 local_port_num;
|
||||
u8 vendor_id[3];
|
||||
} __packed;
|
||||
#define IB_SMP_UNSUP_METHOD \
|
||||
cpu_to_be16(IB_MGMT_MAD_STATUS_UNSUPPORTED_METHOD)
|
||||
|
||||
struct ib_mad_notice_attr {
|
||||
u8 generic_type;
|
||||
u8 prod_type_msb;
|
||||
__be16 prod_type_lsb;
|
||||
__be16 trap_num;
|
||||
__be16 issuer_lid;
|
||||
__be16 toggle_count;
|
||||
#define IB_SMP_UNSUP_METH_ATTR \
|
||||
cpu_to_be16(IB_MGMT_MAD_STATUS_UNSUPPORTED_METHOD_ATTRIB)
|
||||
|
||||
union {
|
||||
struct {
|
||||
u8 details[54];
|
||||
} raw_data;
|
||||
|
||||
struct {
|
||||
__be16 reserved;
|
||||
__be16 lid; /* where violation happened */
|
||||
u8 port_num; /* where violation happened */
|
||||
} __packed ntc_129_131;
|
||||
|
||||
struct {
|
||||
__be16 reserved;
|
||||
__be16 lid; /* LID where change occurred */
|
||||
u8 reserved2;
|
||||
u8 local_changes; /* low bit - local changes */
|
||||
__be32 new_cap_mask; /* new capability mask */
|
||||
u8 reserved3;
|
||||
u8 change_flags; /* low 3 bits only */
|
||||
} __packed ntc_144;
|
||||
|
||||
struct {
|
||||
__be16 reserved;
|
||||
__be16 lid; /* lid where sys guid changed */
|
||||
__be16 reserved2;
|
||||
__be64 new_sys_guid;
|
||||
} __packed ntc_145;
|
||||
|
||||
struct {
|
||||
__be16 reserved;
|
||||
__be16 lid;
|
||||
__be16 dr_slid;
|
||||
u8 method;
|
||||
u8 reserved2;
|
||||
__be16 attr_id;
|
||||
__be32 attr_mod;
|
||||
__be64 mkey;
|
||||
u8 reserved3;
|
||||
u8 dr_trunc_hop;
|
||||
u8 dr_rtn_path[30];
|
||||
} __packed ntc_256;
|
||||
|
||||
struct {
|
||||
__be16 reserved;
|
||||
__be16 lid1;
|
||||
__be16 lid2;
|
||||
__be32 key;
|
||||
__be32 sl_qp1; /* SL: high 4 bits */
|
||||
__be32 qp2; /* high 8 bits reserved */
|
||||
union ib_gid gid1;
|
||||
union ib_gid gid2;
|
||||
} __packed ntc_257_258;
|
||||
|
||||
} details;
|
||||
};
|
||||
|
||||
/*
|
||||
* Generic trap/notice types
|
||||
*/
|
||||
#define IB_NOTICE_TYPE_FATAL 0x80
|
||||
#define IB_NOTICE_TYPE_URGENT 0x81
|
||||
#define IB_NOTICE_TYPE_SECURITY 0x82
|
||||
#define IB_NOTICE_TYPE_SM 0x83
|
||||
#define IB_NOTICE_TYPE_INFO 0x84
|
||||
|
||||
/*
|
||||
* Generic trap/notice producers
|
||||
*/
|
||||
#define IB_NOTICE_PROD_CA cpu_to_be16(1)
|
||||
#define IB_NOTICE_PROD_SWITCH cpu_to_be16(2)
|
||||
#define IB_NOTICE_PROD_ROUTER cpu_to_be16(3)
|
||||
#define IB_NOTICE_PROD_CLASS_MGR cpu_to_be16(4)
|
||||
|
||||
/*
|
||||
* Generic trap/notice numbers
|
||||
*/
|
||||
#define IB_NOTICE_TRAP_LLI_THRESH cpu_to_be16(129)
|
||||
#define IB_NOTICE_TRAP_EBO_THRESH cpu_to_be16(130)
|
||||
#define IB_NOTICE_TRAP_FLOW_UPDATE cpu_to_be16(131)
|
||||
#define IB_NOTICE_TRAP_CAP_MASK_CHG cpu_to_be16(144)
|
||||
#define IB_NOTICE_TRAP_SYS_GUID_CHG cpu_to_be16(145)
|
||||
#define IB_NOTICE_TRAP_BAD_MKEY cpu_to_be16(256)
|
||||
#define IB_NOTICE_TRAP_BAD_PKEY cpu_to_be16(257)
|
||||
#define IB_NOTICE_TRAP_BAD_QKEY cpu_to_be16(258)
|
||||
|
||||
/*
|
||||
* Repress trap/notice flags
|
||||
*/
|
||||
#define IB_NOTICE_REPRESS_LLI_THRESH (1 << 0)
|
||||
#define IB_NOTICE_REPRESS_EBO_THRESH (1 << 1)
|
||||
#define IB_NOTICE_REPRESS_FLOW_UPDATE (1 << 2)
|
||||
#define IB_NOTICE_REPRESS_CAP_MASK_CHG (1 << 3)
|
||||
#define IB_NOTICE_REPRESS_SYS_GUID_CHG (1 << 4)
|
||||
#define IB_NOTICE_REPRESS_BAD_MKEY (1 << 5)
|
||||
#define IB_NOTICE_REPRESS_BAD_PKEY (1 << 6)
|
||||
#define IB_NOTICE_REPRESS_BAD_QKEY (1 << 7)
|
||||
|
||||
/*
|
||||
* Generic trap/notice other local changes flags (trap 144).
|
||||
*/
|
||||
#define IB_NOTICE_TRAP_LSE_CHG 0x04 /* Link Speed Enable changed */
|
||||
#define IB_NOTICE_TRAP_LWE_CHG 0x02 /* Link Width Enable changed */
|
||||
#define IB_NOTICE_TRAP_NODE_DESC_CHG 0x01
|
||||
|
||||
/*
|
||||
* Generic trap/notice M_Key volation flags in dr_trunc_hop (trap 256).
|
||||
*/
|
||||
#define IB_NOTICE_TRAP_DR_NOTICE 0x80
|
||||
#define IB_NOTICE_TRAP_DR_TRUNC 0x40
|
||||
|
||||
struct ib_vl_weight_elem {
|
||||
u8 vl; /* Only low 4 bits, upper 4 bits reserved */
|
||||
u8 weight;
|
||||
};
|
||||
#define IB_SMP_INVALID_FIELD \
|
||||
cpu_to_be16(IB_MGMT_MAD_STATUS_INVALID_ATTRIB_VALUE)
|
||||
|
||||
#define IB_VLARB_LOWPRI_0_31 1
|
||||
#define IB_VLARB_LOWPRI_32_63 2
|
||||
|
Reference in New Issue
Block a user