git: 20cbc6676b87 - stable/13 - cxgbe(4): Update firmwares to 1.25.6.0.

From: Navdeep Parhar <np_at_FreeBSD.org>
Date: Wed, 20 Oct 2021 17:39:33 UTC
The branch stable/13 has been updated by np:

URL: https://cgit.FreeBSD.org/src/commit/?id=20cbc6676b87a00813b73676d9bcb390a41ce479

commit 20cbc6676b87a00813b73676d9bcb390a41ce479
Author:     Navdeep Parhar <np@FreeBSD.org>
AuthorDate: 2021-05-25 20:47:06 +0000
Commit:     Navdeep Parhar <np@FreeBSD.org>
CommitDate: 2021-10-20 17:30:56 +0000

    cxgbe(4): Update firmwares to 1.25.6.0.
    
    Changes since 1.25.0.0 are listed here.  This list comes from the
    Release Notes for the "Chelsio Unified Wire v3.14.0.3 for Linux"
    release dated 2021-05-21.
    
    Fixes
    -----
    
    BASE:
    - Fixed Back to back T6 100G-CR4 link coming up with NO FEC sometimes.
    - [T5] Try to bring up link in 1G speed if link doesn't come up on 10G.
    - Fixed a bug to not allow BaseR fec in 100G speed.
    - Fixed linkup issues on BT adapter in 1G and 100M speed.
    - Fixed an issue to allow driver to send VI_ENABLE multiple times (once
      with rx disable and then later rx enable).
    - Fixed rate limiting not working on class number 16 to 30.
    - Fixed backward compatibility issue in port type interpretation with vpd
      version 0x80.
    
    ETH:
    - Fixed a case when firmware failed to deliver NIC WR completion to host.
    - No rate limit support for WR ETH_TX_PKTS2 due to performance reasons.
    
    OFLD
    - Fixed a connection hang in SO adapters when tp_plen_max (set by driver)
      is more than the window size.
    - Added fw_filter_vnic_mode to firmware API file (t4fw_interface.h)
    - Use correct rx channel in coprocessor crypto completion (CPL_FW6_PLD). This
      was causing out of order completion to host.
    
    FOiSCSI
    - Fixed a crash due to unaligned access of ipv6 address.
    - Fixed a crash during lun reset.
    
    Enhancements
    ------------
    
    ETH:
    - Rate limiting support added for encapsulated (vxlan, nvgre, geneve) NIC TCP
      packets.
    
    OFLD:
    - More than 128 SGLs supported in FW_RI_FR_NSMR_WR. Now, more than 16GB
      (upto 64GB) of PBLs can be written with single FW_RI_FR_NSMR_WR.
    
    Obtained from:  Chelsio Communications
    Sponsored by:   Chelsio Communications
    
    (cherry picked from commit e0fa04e257c1af4c793a70a124ba41e592570c14)
---
 sys/conf/files                            |   6 +++---
 sys/dev/cxgbe/firmware/t4fw-1.25.0.40.bin | Bin 569856 -> 0 bytes
 sys/dev/cxgbe/firmware/t4fw-1.25.6.0.bin  | Bin 0 -> 570368 bytes
 sys/dev/cxgbe/firmware/t4fw_interface.h   |  23 +++++++++++++----------
 sys/dev/cxgbe/firmware/t5fw-1.25.0.40.bin | Bin 673792 -> 0 bytes
 sys/dev/cxgbe/firmware/t5fw-1.25.6.0.bin  | Bin 0 -> 675840 bytes
 sys/dev/cxgbe/firmware/t6fw-1.25.0.40.bin | Bin 731648 -> 0 bytes
 sys/dev/cxgbe/firmware/t6fw-1.25.6.0.bin  | Bin 0 -> 730112 bytes
 sys/modules/cxgbe/t4_firmware/Makefile    |   2 +-
 sys/modules/cxgbe/t5_firmware/Makefile    |   2 +-
 sys/modules/cxgbe/t6_firmware/Makefile    |   2 +-
 11 files changed, 19 insertions(+), 16 deletions(-)

diff --git a/sys/conf/files b/sys/conf/files
index 40bba75d4fbc..30f1a0940a8e 100644
--- a/sys/conf/files
+++ b/sys/conf/files
@@ -1523,7 +1523,7 @@ t4fw.fwo		optional cxgbe					\
 	no-implicit-rule						\
 	clean		"t4fw.fwo"
 t4fw.fw			optional cxgbe					\
-	dependency	"$S/dev/cxgbe/firmware/t4fw-1.25.0.40.bin"	\
+	dependency	"$S/dev/cxgbe/firmware/t4fw-1.25.6.0.bin"	\
 	compile-with	"${CP} ${.ALLSRC} ${.TARGET}"			\
 	no-obj no-implicit-rule						\
 	clean		"t4fw.fw"
@@ -1557,7 +1557,7 @@ t5fw.fwo		optional cxgbe					\
 	no-implicit-rule						\
 	clean		"t5fw.fwo"
 t5fw.fw			optional cxgbe					\
-	dependency	"$S/dev/cxgbe/firmware/t5fw-1.25.0.40.bin"	\
+	dependency	"$S/dev/cxgbe/firmware/t5fw-1.25.6.0.bin"	\
 	compile-with	"${CP} ${.ALLSRC} ${.TARGET}"			\
 	no-obj no-implicit-rule						\
 	clean		"t5fw.fw"
@@ -1591,7 +1591,7 @@ t6fw.fwo		optional cxgbe					\
 	no-implicit-rule						\
 	clean		"t6fw.fwo"
 t6fw.fw			optional cxgbe					\
-	dependency	"$S/dev/cxgbe/firmware/t6fw-1.25.0.40.bin"	\
+	dependency	"$S/dev/cxgbe/firmware/t6fw-1.25.6.0.bin"	\
 	compile-with	"${CP} ${.ALLSRC} ${.TARGET}"			\
 	no-obj no-implicit-rule						\
 	clean		"t6fw.fw"
diff --git a/sys/dev/cxgbe/firmware/t4fw-1.25.0.40.bin b/sys/dev/cxgbe/firmware/t4fw-1.25.0.40.bin
deleted file mode 100644
index 075478fdf040..000000000000
Binary files a/sys/dev/cxgbe/firmware/t4fw-1.25.0.40.bin and /dev/null differ
diff --git a/sys/dev/cxgbe/firmware/t4fw-1.25.6.0.bin b/sys/dev/cxgbe/firmware/t4fw-1.25.6.0.bin
new file mode 100644
index 000000000000..45e805198f59
Binary files /dev/null and b/sys/dev/cxgbe/firmware/t4fw-1.25.6.0.bin differ
diff --git a/sys/dev/cxgbe/firmware/t4fw_interface.h b/sys/dev/cxgbe/firmware/t4fw_interface.h
index 30a2e1760052..0f877cb5a045 100644
--- a/sys/dev/cxgbe/firmware/t4fw_interface.h
+++ b/sys/dev/cxgbe/firmware/t4fw_interface.h
@@ -4839,7 +4839,9 @@ enum fw_params_param_dev {
 	FW_PARAMS_PARAM_DEV_TCB_CACHE_FLUSH = 0x2D,
 	FW_PARAMS_PARAM_DEV_FILTER = 0x2E,
 	FW_PARAMS_PARAM_DEV_CLIP2_CMD = 0x2F,
+	FW_PARAMS_PARAM_DEV_DEV_512SGL_MR = 0x30,
 	FW_PARAMS_PARAM_DEV_KTLS_HW = 0x31,
+	FW_PARAMS_PARAM_DEV_VI_ENABLE_INGRESS_AFTER_LINKUP = 0x32,
 };
 
 /*
@@ -4874,11 +4876,12 @@ enum fw_params_param_dev_diag {
 enum fw_params_param_dev_filter{
 	FW_PARAM_DEV_FILTER_VNIC_MODE	= 0x00,
 	FW_PARAM_DEV_FILTER_MODE_MASK	= 0x01,
+};
 
-	/* VNIC modes */
-	FW_VNIC_MODE_PF_VF	= 0,
-	FW_VNIC_MODE_OUTER_VLAN	= 1,
-	FW_VNIC_MODE_ENCAP_EN	= 2,
+enum fw_filter_vnic_mode {
+	FW_VNIC_MODE_PF_VF = 0,
+	FW_VNIC_MODE_OUTER_VLAN = 1,
+	FW_VNIC_MODE_ENCAP_EN = 2,
 };
 
 enum fw_params_param_dev_ktls_hw {
@@ -9989,18 +9992,18 @@ enum fw_hdr_chip {
 enum {
 	T4FW_VERSION_MAJOR	= 1,
 	T4FW_VERSION_MINOR	= 25,
-	T4FW_VERSION_MICRO	= 0,
-	T4FW_VERSION_BUILD	= 40,
+	T4FW_VERSION_MICRO	= 6,
+	T4FW_VERSION_BUILD	= 0,
 
 	T5FW_VERSION_MAJOR	= 1,
 	T5FW_VERSION_MINOR	= 25,
-	T5FW_VERSION_MICRO	= 0,
-	T5FW_VERSION_BUILD	= 40,
+	T5FW_VERSION_MICRO	= 6,
+	T5FW_VERSION_BUILD	= 0,
 
 	T6FW_VERSION_MAJOR	= 1,
 	T6FW_VERSION_MINOR	= 25,
-	T6FW_VERSION_MICRO	= 0,
-	T6FW_VERSION_BUILD	= 40,
+	T6FW_VERSION_MICRO	= 6,
+	T6FW_VERSION_BUILD	= 0,
 };
 
 enum {
diff --git a/sys/dev/cxgbe/firmware/t5fw-1.25.0.40.bin b/sys/dev/cxgbe/firmware/t5fw-1.25.0.40.bin
deleted file mode 100644
index 1d115d65a1ba..000000000000
Binary files a/sys/dev/cxgbe/firmware/t5fw-1.25.0.40.bin and /dev/null differ
diff --git a/sys/dev/cxgbe/firmware/t5fw-1.25.6.0.bin b/sys/dev/cxgbe/firmware/t5fw-1.25.6.0.bin
new file mode 100644
index 000000000000..6c2d1374c87a
Binary files /dev/null and b/sys/dev/cxgbe/firmware/t5fw-1.25.6.0.bin differ
diff --git a/sys/dev/cxgbe/firmware/t6fw-1.25.0.40.bin b/sys/dev/cxgbe/firmware/t6fw-1.25.0.40.bin
deleted file mode 100644
index acddb1cf8bfd..000000000000
Binary files a/sys/dev/cxgbe/firmware/t6fw-1.25.0.40.bin and /dev/null differ
diff --git a/sys/dev/cxgbe/firmware/t6fw-1.25.6.0.bin b/sys/dev/cxgbe/firmware/t6fw-1.25.6.0.bin
new file mode 100644
index 000000000000..1cf05565ffff
Binary files /dev/null and b/sys/dev/cxgbe/firmware/t6fw-1.25.6.0.bin differ
diff --git a/sys/modules/cxgbe/t4_firmware/Makefile b/sys/modules/cxgbe/t4_firmware/Makefile
index f5bc4830771b..48ac2766a560 100644
--- a/sys/modules/cxgbe/t4_firmware/Makefile
+++ b/sys/modules/cxgbe/t4_firmware/Makefile
@@ -17,7 +17,7 @@ FIRMWS+=	${F}:${F:C/.txt//}:1.0.0.0
 .endif
 .endfor
 
-T4FW_VER=	1.25.0.40
+T4FW_VER=	1.25.6.0
 FIRMWS+=	t4fw-${T4FW_VER}.bin:t4fw:${T4FW_VER}
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/cxgbe/t5_firmware/Makefile b/sys/modules/cxgbe/t5_firmware/Makefile
index 89106cb4a497..3b54df8b222b 100644
--- a/sys/modules/cxgbe/t5_firmware/Makefile
+++ b/sys/modules/cxgbe/t5_firmware/Makefile
@@ -17,7 +17,7 @@ FIRMWS+=	${F}:${F:C/.txt//}:1.0.0.0
 .endif
 .endfor
 
-T5FW_VER=	1.25.0.40
+T5FW_VER=	1.25.6.0
 FIRMWS+=	t5fw-${T5FW_VER}.bin:t5fw:${T5FW_VER}
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/cxgbe/t6_firmware/Makefile b/sys/modules/cxgbe/t6_firmware/Makefile
index 071db2bab2dc..e7b39839b5e4 100644
--- a/sys/modules/cxgbe/t6_firmware/Makefile
+++ b/sys/modules/cxgbe/t6_firmware/Makefile
@@ -17,7 +17,7 @@ FIRMWS+=	${F}:${F:C/.txt//}:1.0.0.0
 .endif
 .endfor
 
-T6FW_VER=	1.25.0.40
+T6FW_VER=	1.25.6.0
 FIRMWS+=	t6fw-${T6FW_VER}.bin:t6fw:${T6FW_VER}
 
 .include <bsd.kmod.mk>