mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-22 11:17:19 +00:00
cxgbe(4): Update T4, T5 and T6 firmwares to 1.16.26.0. Changelog for
all public firmwares for all chips since the last release (1.15.37.0) follows (it's a straight copy-paste from the Release Notes for the 12/30/2016 Unified Wire release on Chelsio's website). T6 Firmware ++++++++++++ Version : 1.16.26.0 Date : 12/28/2016 Fixes ----- BASE: - Max number of egress and control queues adjusted to accomodate co-processor mode queues. - Fixed intermittent DDR3/4 ECC errors. - Fixed a traffic stall when ETS BW is configured as 0%. - Max number of ethctrl queue in VF set to 1. ETH: - Added a new config file option 'speed' under port section to set the port speed. Use only when auto negotiation is off. - FEC option removed from firmware config file. cxgbtool can be used to change the fec setting. - CPL_TX_TNL_LSO cpl handling added in ETH_TX_PKT_VM handler. This fixes large tunnel tcp packet support for VxLAN. Version : 1.16.22.0 Date : 12/05/2016 Fixes ----- BASE: - fw_port_type updated in fw API to match kernel.org definitions. - Saved power by disaling unused MAC lanes. - Configures correct power bin. - Enhanced DDR4 performance. - Enabled interrupts. - Fixed an issue where filter rule for 'unicast hash' is not working. ETH: - Disabled auto negotiation by default because most of 100G switches do not support AN as of today. - Fixed flow control not getting disabled problem. - Fixed an issue where port0 doesn't come up sometimes. - Fixed 10G link not coming up issue. - Fixed an issue with promiscuous mode when dcbx disabled. OFLD: - Fixed a connection stuck issue when abort is received during out of tx pages backpressure. ENHANCEMENTS ------------ BASE: - Added inline TLS mode support. Version : 1.16.12.0 Date : 11/11/2016 ENHANCEMENTS ------------ BASE: - Added T6 support. - Added T6 1G/10G/25G/40G/100G link speeds. - Added T6 co-processor mode crypto support. - Added facility to increase link AN+AEC timeout. OFLD: - Added support for all T5 offload protocols except FCoE. iSCSI: - iscsi completion moderation enabled. ======================================================================= T5 Firmware ++++++++++++ Version : 1.16.26.0 Date : 12/28/2016 FIXES ----- BASE: - Max number of ethctrl queue in VF set to 1. Version : 1.16.22.0 Date : 12/05/2016 FIXES ----- BASE: - Fixed an issue where filter rule for 'unicast hash' is not working. ETH: - Fixed an issue with promiscuous mode when dcbx disabled. ENHANCEMENTS ------------ ETH: - Added 40G-KR support. Version : 1.16.12.0 Date : 11/11/2016 FIXES ----- BASE: - Fixed multiple issues related with VFs FLR processing. - Fixed channel assignment based on number of ports in adapter. - Fixed a crash when VM having PF assigned as passthrough mode is rebooted. - Handled 2nd HELLO command from the same PF without seeing BYE from the same PF and if that is the only PF. - A warning is printed in firmware log if PCI-E cookie generation is enabled in serial initialization file. - Fixed multiple issues related with Filtering. - Enabled DSGL memory write for iscsi and rdma. - Added new FW_PARAMS_CMD[DEV] options to retrieve Serial Configuration and VPD version numbers. - Fixed an issue where LVDS output was not getting enabled using vpd. DCBX: - Fixed DCBX CEE Incorrect class to pririty mapping. - Fixed incorrect interpretation of DCBX IEEE PFC. ETH: - Adjusted the link related delay timings according to the QSFP spec. - Improved 40G link bringup time with few switches. OFLD: - Do not reserve qp/cq if rdma capability is not enabled. - Fixed an issue where approx 1600+ TOE connections were causing a firmware fatal error. FOiSCSI: - Fixed an issue where unloading foiscsi driver causes mailbox timeout. ENHANCEMENTS ------------ BASE: - Added 10G KR/KX support. - Added T540-BT adapter support. - Added 4 new rss key modes for PFs and VFs. OFLD: - Added new WR FW_RI_FR_NSMR_TPTE_WR to improve fast MR write performance in RDMA. Version : 1.16.5.0 Date : 10/26/2016 FIXES ----- BASE: - Fixed multiple issues where FLR from multiple VFs can cause firmware crash. - Fixed channel assignment based on number of ports in adapter. - Fixed the HELLO command master force api to handle the 2nd HELLO correctly without getting BYE from the PF driver. - Added facility to retrieve Serial configuration and VPD version. Two new FW_PARAMS_CMD[DEV] options added to retrieve these values. - Fixed multiple issues where FLR from multiple VFs are not completing. - Added new RSS hash secret key modes. - Fixed an issue where LVDS output was not getting enabled using vpd. DCBX: - Fixed an issue where iscsi tlv is sent incorrectly to host (DCBX CEE). - Fixed an issue where app priority values are not handled correctly in fw (DCBX IEEE). ETH: - Adjusts the link related delay timings according to the QSFP spec. - Changed 2.5G mac speed bit to 25G mac speed bit in fw API. - Improvement in 40G link bringup time with few switches. OFLD: - Do not reserve qp/cq if rdma capability is not enabled. - Fixed an issue where approx 1600+ TOE connections were causing a firmware fatal error. - Fixed DSGL memory write in T5. Now iwarp and iscsi can use DSGL to do memory write. - Fixed multiple issues in hash filter mode where incorrect protocol mask was getting used and affecting hash filter functionality. - New fastpath WR FW_RI_FR_NSMR_TPTE_WR (with fully populated TPTE) is added for small REG_MR operations. FOiSCSI: - Fixed an issue in foiscsi recovery path. - Fixed an issue where foiscsi (in VM in PCIE passthrough mode) didn't come up after VM FLR. ENHANCEMENTS ------------ ETH: - Implemented 1G/10G KR/KX ability. - Implemented T540-BT adapter support. ======================================================================= T4 Firmware +++++++++++ Version : 1.16.12.0 Date : 11/11/2016 FIXES ----- BASE: - Fixed an issue where reading temperature sesors using ldst command causes mailbox timeout. - Added new FW_PARAMS_CMD[DEV] options to retrieve Serial Configuration and VPD version numbers. ETH: - Fixed DCBX CEE Incorrect class to pririty mapping. FOiSCSI: - Fixed an issue where unloading foiscsi driver causes mailbox timeout. MFC after: 3 days Sponsored by: Chelsio Communications
This commit is contained in:
parent
2604eb9e17
commit
c88fa71928
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=311173
@ -1386,7 +1386,7 @@ t4fw.fwo optional cxgbe \
|
||||
no-implicit-rule \
|
||||
clean "t4fw.fwo"
|
||||
t4fw.fw optional cxgbe \
|
||||
dependency "$S/dev/cxgbe/firmware/t4fw-1.16.22.0.bin.uu" \
|
||||
dependency "$S/dev/cxgbe/firmware/t4fw-1.16.26.0.bin.uu" \
|
||||
compile-with "${NORMAL_FW}" \
|
||||
no-obj no-implicit-rule \
|
||||
clean "t4fw.fw"
|
||||
@ -1410,7 +1410,7 @@ t5fw.fwo optional cxgbe \
|
||||
no-implicit-rule \
|
||||
clean "t5fw.fwo"
|
||||
t5fw.fw optional cxgbe \
|
||||
dependency "$S/dev/cxgbe/firmware/t5fw-1.16.22.0.bin.uu" \
|
||||
dependency "$S/dev/cxgbe/firmware/t5fw-1.16.26.0.bin.uu" \
|
||||
compile-with "${NORMAL_FW}" \
|
||||
no-obj no-implicit-rule \
|
||||
clean "t5fw.fw"
|
||||
@ -1434,7 +1434,7 @@ t6fw.fwo optional cxgbe \
|
||||
no-implicit-rule \
|
||||
clean "t6fw.fwo"
|
||||
t6fw.fw optional cxgbe \
|
||||
dependency "$S/dev/cxgbe/firmware/t6fw-1.16.22.0.bin.uu" \
|
||||
dependency "$S/dev/cxgbe/firmware/t6fw-1.16.26.0.bin.uu" \
|
||||
compile-with "${NORMAL_FW}" \
|
||||
no-obj no-implicit-rule \
|
||||
clean "t6fw.fw"
|
||||
|
File diff suppressed because it is too large
Load Diff
9603
sys/dev/cxgbe/firmware/t4fw-1.16.26.0.bin.uu
Normal file
9603
sys/dev/cxgbe/firmware/t4fw-1.16.26.0.bin.uu
Normal file
File diff suppressed because it is too large
Load Diff
@ -3405,15 +3405,21 @@ struct fw_tlstx_data_wr {
|
||||
__be32 flowid_len16;
|
||||
__be32 plen;
|
||||
__be32 lsodisable_to_flags;
|
||||
__be32 ddraddr;
|
||||
__be32 r5;
|
||||
__be32 ctxloc_to_exp;
|
||||
__be16 mfs;
|
||||
__be16 adjustedplen_pkd;
|
||||
__be16 expinplenmax_pkd;
|
||||
__u8 pdusinplenmax_pkd;
|
||||
__u8 r9;
|
||||
__u8 r10;
|
||||
};
|
||||
|
||||
#define S_FW_TLSTX_DATA_WR_OPCODE 24
|
||||
#define M_FW_TLSTX_DATA_WR_OPCODE 0xff
|
||||
#define V_FW_TLSTX_DATA_WR_OPCODE(x) ((x) << S_FW_TLSTX_DATA_WR_OPCODE)
|
||||
#define G_FW_TLSTX_DATA_WR_OPCODE(x) \
|
||||
(((x) >> S_FW_TLSTX_DATA_WR_OPCODE) & M_FW_TLSTX_DATA_WR_OPCODE)
|
||||
|
||||
#define S_FW_TLSTX_DATA_WR_COMPL 21
|
||||
#define M_FW_TLSTX_DATA_WR_COMPL 0x1
|
||||
#define V_FW_TLSTX_DATA_WR_COMPL(x) ((x) << S_FW_TLSTX_DATA_WR_COMPL)
|
||||
@ -3503,26 +3509,26 @@ struct fw_tlstx_data_wr {
|
||||
#define S_FW_TLSTX_DATA_WR_ADJUSTEDPLEN 1
|
||||
#define M_FW_TLSTX_DATA_WR_ADJUSTEDPLEN 0x7fff
|
||||
#define V_FW_TLSTX_DATA_WR_ADJUSTEDPLEN(x) \
|
||||
((x) << S_FW_TLSTX_DATA_WR_ADJUSTEDPLEN)
|
||||
((x) << S_FW_TLSTX_DATA_WR_ADJUSTEDPLEN)
|
||||
#define G_FW_TLSTX_DATA_WR_ADJUSTEDPLEN(x) \
|
||||
(((x) >> S_FW_TLSTX_DATA_WR_ADJUSTEDPLEN) & \
|
||||
M_FW_TLSTX_DATA_WR_ADJUSTEDPLEN)
|
||||
(((x) >> S_FW_TLSTX_DATA_WR_ADJUSTEDPLEN) & \
|
||||
M_FW_TLSTX_DATA_WR_ADJUSTEDPLEN)
|
||||
|
||||
#define S_FW_TLSTX_DATA_WR_EXPINPLENMAX 4
|
||||
#define M_FW_TLSTX_DATA_WR_EXPINPLENMAX 0xfff
|
||||
#define V_FW_TLSTX_DATA_WR_EXPINPLENMAX(x) \
|
||||
((x) << S_FW_TLSTX_DATA_WR_EXPINPLENMAX)
|
||||
((x) << S_FW_TLSTX_DATA_WR_EXPINPLENMAX)
|
||||
#define G_FW_TLSTX_DATA_WR_EXPINPLENMAX(x) \
|
||||
(((x) >> S_FW_TLSTX_DATA_WR_EXPINPLENMAX) & \
|
||||
M_FW_TLSTX_DATA_WR_EXPINPLENMAX)
|
||||
(((x) >> S_FW_TLSTX_DATA_WR_EXPINPLENMAX) & \
|
||||
M_FW_TLSTX_DATA_WR_EXPINPLENMAX)
|
||||
|
||||
#define S_FW_TLSTX_DATA_WR_PDUSINPLENMAX 2
|
||||
#define M_FW_TLSTX_DATA_WR_PDUSINPLENMAX 0x3f
|
||||
#define V_FW_TLSTX_DATA_WR_PDUSINPLENMAX(x) \
|
||||
((x) << S_FW_TLSTX_DATA_WR_PDUSINPLENMAX)
|
||||
((x) << S_FW_TLSTX_DATA_WR_PDUSINPLENMAX)
|
||||
#define G_FW_TLSTX_DATA_WR_PDUSINPLENMAX(x) \
|
||||
(((x) >> S_FW_TLSTX_DATA_WR_PDUSINPLENMAX) & \
|
||||
M_FW_TLSTX_DATA_WR_PDUSINPLENMAX)
|
||||
(((x) >> S_FW_TLSTX_DATA_WR_PDUSINPLENMAX) & \
|
||||
M_FW_TLSTX_DATA_WR_PDUSINPLENMAX)
|
||||
|
||||
struct fw_tls_keyctx_tx_wr {
|
||||
__be32 op_to_compl;
|
||||
@ -3555,7 +3561,7 @@ struct fw_tls_keyctx_tx_wr {
|
||||
} keys;
|
||||
__u8 reneg_to_write_rx;
|
||||
__u8 protocol;
|
||||
__u8 r7[2];
|
||||
__be16 mfs;
|
||||
__be32 ftid;
|
||||
};
|
||||
|
||||
@ -9308,17 +9314,17 @@ enum fw_hdr_chip {
|
||||
enum {
|
||||
T4FW_VERSION_MAJOR = 0x01,
|
||||
T4FW_VERSION_MINOR = 0x10,
|
||||
T4FW_VERSION_MICRO = 0x16,
|
||||
T4FW_VERSION_MICRO = 0x1a,
|
||||
T4FW_VERSION_BUILD = 0x00,
|
||||
|
||||
T5FW_VERSION_MAJOR = 0x01,
|
||||
T5FW_VERSION_MINOR = 0x10,
|
||||
T5FW_VERSION_MICRO = 0x16,
|
||||
T5FW_VERSION_MICRO = 0x1a,
|
||||
T5FW_VERSION_BUILD = 0x00,
|
||||
|
||||
T6FW_VERSION_MAJOR = 0x01,
|
||||
T6FW_VERSION_MINOR = 0x10,
|
||||
T6FW_VERSION_MICRO = 0x16,
|
||||
T6FW_VERSION_MICRO = 0x1a,
|
||||
T6FW_VERSION_BUILD = 0x00,
|
||||
};
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
10681
sys/dev/cxgbe/firmware/t5fw-1.16.26.0.bin.uu
Normal file
10681
sys/dev/cxgbe/firmware/t5fw-1.16.26.0.bin.uu
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,6 @@
|
||||
# Chelsio T5 Factory Default configuration file.
|
||||
#
|
||||
# Copyright (C) 2010-2015 Chelsio Communications. All rights reserved.
|
||||
# Copyright (C) 2010-2016 Chelsio Communications. All rights reserved.
|
||||
#
|
||||
# DO NOT MODIFY THIS FILE UNDER ANY CIRCUMSTANCES. MODIFICATION OF THIS FILE
|
||||
# WILL RESULT IN A NON-FUNCTIONAL ADAPTER AND MAY RESULT IN PHYSICAL DAMAGE
|
||||
@ -91,7 +91,8 @@
|
||||
reg[0x105c] = 128 # SGE_FL_BUFFER_SIZE6
|
||||
reg[0x1060] = 8192 # SGE_FL_BUFFER_SIZE7
|
||||
reg[0x1064] = 16384 # SGE_FL_BUFFER_SIZE8
|
||||
reg[0x10a4] = 0xa000a000/0xf000f000 # SGE_DBFIFO_STATUS
|
||||
reg[0x10a4] = 0x00280000/0x3ffc0000 # SGE_DBFIFO_STATUS
|
||||
reg[0x1118] = 0x00002800/0x00003c00 # SGE_DBFIFO_STATUS2
|
||||
reg[0x10a8] = 0x402000/0x402000 # SGE_DOORBELL_CONTROL
|
||||
|
||||
# SGE_THROTTLE_CONTROL
|
||||
@ -600,8 +601,8 @@
|
||||
|
||||
|
||||
[fini]
|
||||
version = 0x1425001c
|
||||
checksum = 0xf9115d76
|
||||
version = 0x01000025
|
||||
checksum = 0x2e1a8474
|
||||
|
||||
# Total resources used by above allocations:
|
||||
# Virtual Interfaces: 104
|
||||
|
File diff suppressed because it is too large
Load Diff
9001
sys/dev/cxgbe/firmware/t6fw-1.16.26.0.bin.uu
Normal file
9001
sys/dev/cxgbe/firmware/t6fw-1.16.26.0.bin.uu
Normal file
File diff suppressed because it is too large
Load Diff
@ -24,7 +24,7 @@
|
||||
tsch_ticks = 100000, 10000, 1000, 10
|
||||
|
||||
filterMode = fragmentation, mpshittype, protocol, vlan, port, fcoe
|
||||
filterMask = protocol, fcoe
|
||||
filterMask = protocol
|
||||
|
||||
tp_pmrx = 36, 512
|
||||
tp_pmrx_pagesize = 64K
|
||||
@ -263,7 +263,6 @@
|
||||
dwm = 30
|
||||
#aec_retry_cnt = 4
|
||||
flags = an_dis
|
||||
fec = none
|
||||
|
||||
|
||||
[port "1"]
|
||||
@ -275,12 +274,11 @@
|
||||
dwm = 30
|
||||
#aec_retry_cnt = 4
|
||||
flags = an_dis
|
||||
fec = none
|
||||
|
||||
|
||||
[fini]
|
||||
version = 0x1
|
||||
checksum = 0xc3afb4e0
|
||||
checksum = 0xd4ef7f0
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
@ -91,8 +91,7 @@
|
||||
reg[0x105c] = 128 # SGE_FL_BUFFER_SIZE6
|
||||
reg[0x1060] = 8192 # SGE_FL_BUFFER_SIZE7
|
||||
reg[0x1064] = 16384 # SGE_FL_BUFFER_SIZE8
|
||||
reg[0x10a4] = 0xa000a000/0xf000f000 # SGE_DBFIFO_STATUS
|
||||
reg[0x10a8] = 0x402000/0x402000 # SGE_DOORBELL_CONTROL
|
||||
|
||||
sge_timer_value = 5, 10, 20, 50, 100, 200 # SGE_TIMER_VALUE* in usecs
|
||||
reg[0x10c4] = 0x20000000/0x20000000 # GK_CONTROL, enable 5th thread
|
||||
|
||||
@ -110,10 +109,10 @@
|
||||
# filter tuples : fragmentation, mpshittype, macmatch, ethertype,
|
||||
# protocol, tos, vlan, vnic_id, port, fcoe
|
||||
# valid filterModes are described the Terminator 5 Data Book
|
||||
filterMode = fcoemask, srvrsram, fragmentation, mpshittype, protocol, vlan, port, fcoe
|
||||
filterMode = srvrsram, fragmentation, mpshittype, protocol, vlan, port, fcoe
|
||||
|
||||
# filter tuples enforced in LE active region (equal to or subset of filterMode)
|
||||
filterMask = protocol, fcoe
|
||||
filterMask = protocol
|
||||
|
||||
# Percentage of dynamic memory (in either the EDRAM or external MEM)
|
||||
# to use for TP RX payload
|
||||
@ -395,6 +394,7 @@
|
||||
neq = 256 # NEQ_UNIFIED + NEQ_WD
|
||||
nqpcq = 12288
|
||||
nexactf = 40 # NMPSTCAM_UNIFIED
|
||||
nrawf = 2
|
||||
cmask = all # access to all channels
|
||||
pmask = all # access to all four ports ...
|
||||
nethofld = 1024 # number of user mode ethernet flow contexts
|
||||
@ -554,7 +554,6 @@
|
||||
dcb_app_tlv[2] = 3260, socketnum, 5
|
||||
#aec_retry_cnt = 4
|
||||
flags = an_dis
|
||||
fec = none # FEC type none/rs/firecode
|
||||
|
||||
|
||||
[port "1"]
|
||||
@ -569,12 +568,11 @@
|
||||
dcb_app_tlv[2] = 3260, socketnum, 5
|
||||
#aec_retry_cnt = 4
|
||||
flags = an_dis
|
||||
fec = none # FEC type none/rs/firecode
|
||||
|
||||
|
||||
[fini]
|
||||
version = 0x01000024
|
||||
checksum = 0x36cebfcb
|
||||
version = 0x01000025
|
||||
checksum = 0xb23e8983
|
||||
|
||||
# Total resources used by above allocations:
|
||||
# Virtual Interfaces: 104
|
||||
|
@ -17,7 +17,7 @@ FIRMWS+= ${F}:${F:C/.txt//}:1.0.0.0
|
||||
.endif
|
||||
.endfor
|
||||
|
||||
T4FW_VER= 1.16.22.0
|
||||
T4FW_VER= 1.16.26.0
|
||||
FIRMWS+= t4fw.fw:t4fw:${T4FW_VER}
|
||||
CLEANFILES+= t4fw.fw
|
||||
|
||||
|
@ -17,7 +17,7 @@ FIRMWS+= ${F}:${F:C/.txt//}:1.0.0.0
|
||||
.endif
|
||||
.endfor
|
||||
|
||||
T5FW_VER= 1.16.22.0
|
||||
T5FW_VER= 1.16.26.0
|
||||
FIRMWS+= t5fw.fw:t5fw:${T5FW_VER}
|
||||
CLEANFILES+= t5fw.fw
|
||||
|
||||
|
@ -17,7 +17,7 @@ FIRMWS+= ${F}:${F:C/.txt//}:1.0.0.0
|
||||
.endif
|
||||
.endfor
|
||||
|
||||
T6FW_VER= 1.16.22.0
|
||||
T6FW_VER= 1.16.26.0
|
||||
FIRMWS+= t6fw.fw:t6fw:${T6FW_VER}
|
||||
CLEANFILES+= t6fw.fw
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user