diff options
Diffstat (limited to 'drivers/infiniband/hw/ocrdma/ocrdma.h')
| -rw-r--r-- | drivers/infiniband/hw/ocrdma/ocrdma.h | 26 | 
1 files changed, 24 insertions, 2 deletions
diff --git a/drivers/infiniband/hw/ocrdma/ocrdma.h b/drivers/infiniband/hw/ocrdma/ocrdma.h index 19011dbb930f..b43456ae124b 100644 --- a/drivers/infiniband/hw/ocrdma/ocrdma.h +++ b/drivers/infiniband/hw/ocrdma/ocrdma.h @@ -40,7 +40,7 @@  #include <be_roce.h>  #include "ocrdma_sli.h" -#define OCRDMA_ROCE_DRV_VERSION "10.2.145.0u" +#define OCRDMA_ROCE_DRV_VERSION "10.2.287.0u"  #define OCRDMA_ROCE_DRV_DESC "Emulex OneConnect RoCE Driver"  #define OCRDMA_NODE_DESC "Emulex OneConnect RoCE HCA" @@ -137,6 +137,7 @@ struct mqe_ctx {  	u16 cqe_status;  	u16 ext_status;  	bool cmd_done; +	bool fw_error_state;  };  struct ocrdma_hw_mr { @@ -235,7 +236,10 @@ struct ocrdma_dev {  	struct list_head entry;  	struct rcu_head rcu;  	int id; -	u64 stag_arr[OCRDMA_MAX_STAG]; +	u64 *stag_arr; +	u8 sl; /* service level */ +	bool pfc_state; +	atomic_t update_sl;  	u16 pvid;  	u32 asic_id; @@ -518,4 +522,22 @@ static inline u8 ocrdma_get_asic_type(struct ocrdma_dev *dev)  				OCRDMA_SLI_ASIC_GEN_NUM_SHIFT;  } +static inline u8 ocrdma_get_pfc_prio(u8 *pfc, u8 prio) +{ +	return *(pfc + prio); +} + +static inline u8 ocrdma_get_app_prio(u8 *app_prio, u8 prio) +{ +	return *(app_prio + prio); +} + +static inline u8 ocrdma_is_enabled_and_synced(u32 state) +{	/* May also be used to interpret TC-state, QCN-state +	 * Appl-state and Logical-link-state in future. +	 */ +	return (state & OCRDMA_STATE_FLAG_ENABLED) && +		(state & OCRDMA_STATE_FLAG_SYNC); +} +  #endif  | 
