|
|
@@ -443,9 +443,12 @@ struct mlx5_init_seg {
|
|
|
__be32 rsvd1[120];
|
|
|
__be32 initializing;
|
|
|
struct health_buffer health;
|
|
|
- __be32 rsvd2[884];
|
|
|
+ __be32 rsvd2[880];
|
|
|
+ __be32 internal_timer_h;
|
|
|
+ __be32 internal_timer_l;
|
|
|
+ __be32 rsrv3[2];
|
|
|
__be32 health_counter;
|
|
|
- __be32 rsvd3[1019];
|
|
|
+ __be32 rsvd4[1019];
|
|
|
__be64 ieee1588_clk;
|
|
|
__be32 ieee1588_clk_type;
|
|
|
__be32 clr_intx;
|
|
|
@@ -601,7 +604,8 @@ struct mlx5_cqe64 {
|
|
|
__be32 imm_inval_pkey;
|
|
|
u8 rsvd40[4];
|
|
|
__be32 byte_cnt;
|
|
|
- __be64 timestamp;
|
|
|
+ __be32 timestamp_h;
|
|
|
+ __be32 timestamp_l;
|
|
|
__be32 sop_drop_qpn;
|
|
|
__be16 wqe_counter;
|
|
|
u8 signature;
|
|
|
@@ -623,6 +627,16 @@ static inline int cqe_has_vlan(struct mlx5_cqe64 *cqe)
|
|
|
return !!(cqe->l4_hdr_type_etc & 0x1);
|
|
|
}
|
|
|
|
|
|
+static inline u64 get_cqe_ts(struct mlx5_cqe64 *cqe)
|
|
|
+{
|
|
|
+ u32 hi, lo;
|
|
|
+
|
|
|
+ hi = be32_to_cpu(cqe->timestamp_h);
|
|
|
+ lo = be32_to_cpu(cqe->timestamp_l);
|
|
|
+
|
|
|
+ return (u64)lo | ((u64)hi << 32);
|
|
|
+}
|
|
|
+
|
|
|
enum {
|
|
|
CQE_L4_HDR_TYPE_NONE = 0x0,
|
|
|
CQE_L4_HDR_TYPE_TCP_NO_ACK = 0x1,
|