MFC r285527 and r286338. This takes the firmware from 1.11.27.0 to 1.14.4.0.
r286338: cxgbe(4): Update T5 and T4 firmwares bundled with the driver to 1.14.4.0. The changes in the firmwares since 1.11.27.0 are listed here (straight copy-paste from the "Release Notes.txt" accompanying the Chelsio Unified Wire 2.11.1.0 release on the website). 22.1. T5 Firmware +++++++++++++++++++++++++++++++++ Version : 1.14.4.0 Date : 08/05/2015 ================================================================================ FIXES ----- BASE: - Fixes a potential data path hang by properly programming PMTX congestion threshold settings. - Fixes a potential initialization error when accessing a configuration file stored on the flash. - Fixes a regression where SGE resources can be miss-sized if iWARP is disabled. ETH: - Fixes a timing issue that would prevent CR4 links from coming up with some switches. FOFCoE: - Defers fcoe linkdown mailbox command handling till LOGO is sent. - Updates vlan prio for all outstanding IOs during dcbx update. ENHANCEMENTS ------------ BASE: - Adds support for PAUSE OFF watchdog. - Reports devlog access information in PCIE_FW_PF register 7. ETH: - Enhances segmentation offload to include VxLAN and Geneve. - Adds PTP support. - Adds new interface to allow the driver to query the VI rss table base addresses. - Allows the driver to program the SGE ingrext contxt CongDrop field. OFLD: - Adds new interface for the driver to specify offloaded connections TCP snd and rcv scale factors. iSCSI: - Adds support for iscsi segmentatation offload (ISO). - Adds support for iscsi t10-dif offload. FOiSCSI: - Sets FORCE_BIT for cut through processing for FOiSCSI. FOFCoE: - Adds support for FCoE BB6. - Improves WRITE performance. ================================================================================ ================================================================================ Version : 1.13.32.0 Date : 03/25/2015 ================================================================================ FIXES ----- BASE: - Fixes FW_CAPS_CONFIG_CMD return value on error (was positive instead of negative) - Fixes FW_PARAMS_PARAM_DEV_FLOWC_BUFFIFO_SZ indication (was wrong on certain adapter configurations) - Fixes config file based PL_TIMEOUT register programming ETH: - Fixes a potential EO UDP SEG header corruption - Fixes an issue where 1000Base-X was not enabled correctly when using QSA modules OFLD: - Fixes timeout issue with half-open connections - Fixes FW_FLOWC_WR processing when state is set to finwait1 FOFCoE: - Fixes fcoe xchg leaks in linkdown/peer down path - Fixes cleanup in FCoE linkdown and fixed buf timer flowid abuse - Fixes fw crash by clearing fcf flowc during bye FOiSCSI: - Don't create a new tcp socket if ERL0 attempt has timed out. ENHANCEMENTS ------------ BASE: - Adds support for VFs on PFs 4 to 7 - Adds support for QPs/CQs on any physical and virtual function ETH: - Stops sending LACP frames on loopback interface - Adds an AUTOEQU indication to CPL_SGE_EGR_UPDATE - Adds support for CR4 links (BEAN/AEC on 40G TwinAx cables) OFLD: - Improves default settings of LAN and CLUSTER TCP timer settings - Sends Negative Advice CPLs to software FOISCSI: - Adds IPv6 support for foiscsi. Keeps backward compatibility with old foiscsi drivers which doesn't support ipv6. FOFCoE: - Added fcoe debug support in flowc dump ================================================================================ ================================================================================ Version : 1.12.25.0 Date : 10/22/2014 ================================================================================ FIXES ----- BASE: - Improves precision of the Weight Round Robing Traffic Management Algorithm - Fixes an issue where the link would intermittently fail to come up - Fixes an issue where adapters with an external PHY couldn't run at 100Mbps - Fixes an issue where active optical cables were not recognized - Fixes link advertising issues on T520-BT (speed and pause frames) that would cause the link to negotiate unexpected settings - Forces link restart when auto-negotiation is disabled - Fix an issue where pause frames wouldn't be fully disabled even if requested ETH: - Fixes NVGRE Segmentation Offload network header generation. DCBX: - Fixes an issue where some settings were not being sent to the switch correctly - Fixes an issue where back-to-back DCBX port updates could get overwritten by FW - Fixes a firmware crash on DCBX APP information request before link up FOiSCSI: - Fixes abort task leak in tmf response handling - Fixes TCP RST handling while in iSCSI ERL0 - Fixes a firmware crash on BYE without INIT ENHANCEMENTS ------------- BASE: - Adds link partner settings reporting when available - Adds QSA support (in conjunction with QSA VPD) - Adds T520-BT LED support - Reports NOTSUPPORTED for modules with an unhandled identifier DCBX: - Adds version reporting (indicating which version FW is trying to negotiate) - Adds IEEE support - Reports LLDP time outs FOiSCSI: - Add support for multiple iSCSI DDP client - Sends DHCP renew request when lease expires ================================================================================ 22.2. T4 Firmware +++++++++++++++++ Version : 1.14.4.0 Date : 08/05/2015 ================================================================================ FIXES ----- BASE: - Fixes a potential initialization error when accessing a configuration file stored on the flash. - Initialize PCIE_DBG_INDIR_REQ.Enable to 0, as hardware failed to do so and register dumps could result in errors. ETH: - Fixes an issue that sometimes prevented the link from coming up in CR adapters. ENHANCEMENTS ------------ BASE: - Adds support for PAUSE OFF watchdog. - Reports devlog access information in PCIE_FW_PF register 7. ETH: - Adds new interface to allow the driver to query the VI rss table base addresses. OFLD: - Adds new interface for the driver to specify offloaded connections TCP snd and rcv scale factors. ================================================================================ ================================================================================ Version : 1.13.32.0 Date : 03/25/2015 ================================================================================ FIXES ----- BASE: - Fixes FW_CAPS_CONFIG_CMD return value on error (was positive instead of negative) - Fixes FW_PARAMS_PARAM_DEV_FLOWC_BUFFIFO_SZ indication (was wrong on certain adapter configurations) - Fixes config file based PL_TIMEOUT register programming ETH: - Fixes a potential EO UDP SEG header corruption OFLD: - Fixes timeout issue with half-open connections - Fixes FW_FLOWC_WR processing when state is set to finwait1 FOiSCSI: - Don't create a new tcp socket if ERL0 attempt has timed out. ENHANCEMENTS ------------ ETH: - Stops sending LACP frames on loopback interface - Adds an AUTOEQU indication to CPL_SGE_EGR_UPDATE OFLD: - Improves default settings of LAN and CLUSTER TCP timer settings - Sends Negative Advice CPLs to software ================================================================================ ================================================================================ Version : 1.12.25.0 Date : 10/22/2014 ================================================================================ FIXES ----- BASE: - Improves precision of the Weight Round Robing Traffic Management Algorithm - Forces link restart when auto-negotiation is disabled - Fix an issue where pause frames wouldn't be fully disabled even if requested DCBX: - Fixes an issue where some settings were not being sent to the switch correctly - Fixes an issue where back-to-back DCBX port updates could get overwritten by FW - Fixes a firmware crash on DCBX APP information request before link up FOiSCSI: - Fixes abort task leak in tmf response handling - Fixes TCP RST handling while in iSCSI ERL0 - Fixes a firmware crash on BYE without INIT ENHANCEMENTS ------------ BASE: - Adds link partner settings reporting when available - Firmware now reports NOTSUPPORTED for modules with an unhandled identifier DCBX: - Adds version reporting (indicating which version FW is trying to negotiate) - Adds IEEE support - Reports LLDP time outs FOiSCSI: - Adds support for multiple iSCSI DDP clients - Sends DHCP renew request when lease expires ================================================================================ Obtained from: Chelsio Communications Sponsored by: Chelsio Communications
This commit is contained in:
parent
c731ecde39
commit
8886f3c63b
@ -1179,7 +1179,7 @@ t4fw.fwo optional cxgbe \
|
||||
no-implicit-rule \
|
||||
clean "t4fw.fwo"
|
||||
t4fw.fw optional cxgbe \
|
||||
dependency "$S/dev/cxgbe/firmware/t4fw-1.11.27.0.bin.uu" \
|
||||
dependency "$S/dev/cxgbe/firmware/t4fw-1.14.4.0.bin.uu" \
|
||||
compile-with "${NORMAL_FW}" \
|
||||
no-obj no-implicit-rule \
|
||||
clean "t4fw.fw"
|
||||
@ -1203,7 +1203,7 @@ t5fw.fwo optional cxgbe \
|
||||
no-implicit-rule \
|
||||
clean "t5fw.fwo"
|
||||
t5fw.fw optional cxgbe \
|
||||
dependency "$S/dev/cxgbe/firmware/t5fw-1.11.27.0.bin.uu" \
|
||||
dependency "$S/dev/cxgbe/firmware/t5fw-1.14.4.0.bin.uu" \
|
||||
compile-with "${NORMAL_FW}" \
|
||||
no-obj no-implicit-rule \
|
||||
clean "t5fw.fw"
|
||||
|
File diff suppressed because it is too large
Load Diff
9495
sys/dev/cxgbe/firmware/t4fw-1.14.4.0.bin.uu
Normal file
9495
sys/dev/cxgbe/firmware/t4fw-1.14.4.0.bin.uu
Normal file
File diff suppressed because it is too large
Load Diff
@ -112,7 +112,7 @@
|
||||
# enable TP_OUT_CONFIG.IPIDSPLITMODE
|
||||
reg[0x7d04] = 0x00010000/0x00010000
|
||||
|
||||
reg[0x7dc0] = 0x62f8849 # TP_SHIFT_CNT
|
||||
reg[0x7dc0] = 0x0e2f8849 # TP_SHIFT_CNT
|
||||
|
||||
# TP_VLAN_PRI_MAP to select filter tuples
|
||||
# filter tuples : fragmentation, mpshittype, macmatch, ethertype,
|
||||
@ -125,7 +125,7 @@
|
||||
|
||||
# Percentage of dynamic memory (in either the EDRAM or external MEM)
|
||||
# to use for TP RX payload
|
||||
tp_pmrx = 34, 512
|
||||
tp_pmrx = 34
|
||||
|
||||
# TP RX payload page size
|
||||
tp_pmrx_pagesize = 64K
|
||||
@ -135,7 +135,7 @@
|
||||
|
||||
# Percentage of dynamic memory (in either the EDRAM or external MEM)
|
||||
# to use for TP TX payload
|
||||
tp_pmtx = 32, 512
|
||||
tp_pmtx = 32
|
||||
|
||||
# TP TX payload page size
|
||||
tp_pmtx_pagesize = 64K
|
||||
@ -146,6 +146,9 @@
|
||||
# TP OFLD MTUs
|
||||
tp_mtus = 88, 256, 512, 576, 808, 1024, 1280, 1488, 1500, 2002, 2048, 4096, 4352, 8192, 9000, 9600
|
||||
|
||||
# ULPRX iSCSI Page Sizes
|
||||
reg[0x19168] = 0x04020100 # 64K, 16K, 8K and 4K
|
||||
|
||||
# Some "definitions" to make the rest of this a bit more readable. We support
|
||||
# 4 ports, 3 functions (NIC, FCoE and iSCSI), scaling up to 8 "CPU Queue Sets"
|
||||
# per function per port ...
|
||||
@ -392,7 +395,7 @@
|
||||
pmask = all # access to all four ports ...
|
||||
nserver = 16
|
||||
nhash = 2048
|
||||
tp_l2t = 1024
|
||||
tp_l2t = 1020
|
||||
protocol = iscsi_initiator_fofld
|
||||
tp_ddp_iscsi = 2
|
||||
iscsi_ntask = 2048
|
||||
@ -413,6 +416,7 @@
|
||||
cmask = all # access to all channels
|
||||
pmask = all # access to all four ports ...
|
||||
nhash = 2048
|
||||
tp_l2t = 4
|
||||
protocol = fcoe_initiator
|
||||
tp_ddp = 1
|
||||
fcoe_nfcf = 16
|
||||
@ -543,8 +547,8 @@
|
||||
dcb_app_tlv[2] = 3260, socketnum, 5
|
||||
|
||||
[fini]
|
||||
version = 0x14250012
|
||||
checksum = 0x22f592a9
|
||||
version = 0x1425001c
|
||||
checksum = 0x63a652b3
|
||||
|
||||
# Total resources used by above allocations:
|
||||
# Virtual Interfaces: 104
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
10447
sys/dev/cxgbe/firmware/t5fw-1.14.4.0.bin.uu
Normal file
10447
sys/dev/cxgbe/firmware/t5fw-1.14.4.0.bin.uu
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,49 +1,34 @@
|
||||
# Chelsio T5 Factory Default configuration file.
|
||||
#
|
||||
# Copyright (C) 2010-2014 Chelsio Communications. All rights reserved.
|
||||
# Copyright (C) 2010-2015 Chelsio Communications. All rights reserved.
|
||||
#
|
||||
# DO NOT MODIFY THIS FILE UNDER ANY CIRCUMSTANCES. MODIFICATION OF
|
||||
# THIS FILE WILL RESULT IN A NON-FUNCTIONAL T4 ADAPTER AND MAY RESULT
|
||||
# IN PHYSICAL DAMAGE TO T4 ADAPTERS.
|
||||
# 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
|
||||
# TO ADAPTERS.
|
||||
|
||||
# This file provides the default, power-on configuration for 4-port T4-based
|
||||
|
||||
# This file provides the default, power-on configuration for 4-port T5-based
|
||||
# adapters shipped from the factory. These defaults are designed to address
|
||||
# the needs of the vast majority of T4 customers. The basic idea is to have
|
||||
# a default configuration which allows a customer to plug a T4 adapter in and
|
||||
# have it work regardless of OS, driver or application except in the most
|
||||
# unusual and/or demanding customer applications.
|
||||
# the needs of the vast majority of Terminator customers. The basic idea is to
|
||||
# have a default configuration which allows a customer to plug a Terminator
|
||||
# adapter in and have it work regardless of OS, driver or application except in
|
||||
# the most unusual and/or demanding customer applications.
|
||||
#
|
||||
# Many of the T4 resources which are described by this configuration are
|
||||
# finite. This requires balancing the configuration/operation needs of
|
||||
# Many of the Terminator resources which are described by this configuration
|
||||
# are finite. This requires balancing the configuration/operation needs of
|
||||
# device drivers across OSes and a large number of customer application.
|
||||
#
|
||||
# Some of the more important resources to allocate and their constaints are:
|
||||
# 1. Virtual Interfaces: 128.
|
||||
# 2. Ingress Queues with Free Lists: 1024. PCI-E SR-IOV Virtual Functions
|
||||
# must use a power of 2 Ingress Queues.
|
||||
# 3. Egress Queues: 128K. PCI-E SR-IOV Virtual Functions must use a
|
||||
# power of 2 Egress Queues.
|
||||
# 4. MSI-X Vectors: 1088. A complication here is that the PCI-E SR-IOV
|
||||
# Virtual Functions based off of a Physical Function all get the
|
||||
# same umber of MSI-X Vectors as the base Physical Function.
|
||||
# Additionally, regardless of whether Virtual Functions are enabled or
|
||||
# not, their MSI-X "needs" are counted by the PCI-E implementation.
|
||||
# And finally, all Physical Funcations capable of supporting Virtual
|
||||
# Functions (PF0-3) must have the same number of configured TotalVFs in
|
||||
# their SR-IOV Capabilities.
|
||||
# 1. Virtual Interfaces: 256.
|
||||
# 2. Ingress Queues with Free Lists: 1024.
|
||||
# 3. Egress Queues: 128K.
|
||||
# 4. MSI-X Vectors: 1088.
|
||||
# 5. Multi-Port Support (MPS) TCAM: 336 entries to support MAC destination
|
||||
# address matching on Ingress Packets.
|
||||
#
|
||||
# Some of the important OS/Driver resource needs are:
|
||||
# 6. Some OS Drivers will manage all resources through a single Physical
|
||||
# Function (currently PF0 but it could be any Physical Function). Thus,
|
||||
# this "Unified PF" will need to have enough resources allocated to it
|
||||
# to allow for this. And because of the MSI-X resource allocation
|
||||
# constraints mentioned above, this probably means we'll either have to
|
||||
# severely limit the TotalVFs if we continue to use PF0 as the Unified PF
|
||||
# or we'll need to move the Unified PF into the PF4-7 range since those
|
||||
# Physical Functions don't have any Virtual Functions associated with
|
||||
# them.
|
||||
# Function (currently PF4 but it could be any Physical Function).
|
||||
# 7. Some OS Drivers will manage different ports and functions (NIC,
|
||||
# storage, etc.) on different Physical Functions. For example, NIC
|
||||
# functions for ports 0-3 on PF0-3, FCoE on PF4, iSCSI on PF5, etc.
|
||||
@ -64,12 +49,10 @@
|
||||
# for a total of 96 Ingress Queues and MSI-X Vectors on the Unified PF.
|
||||
# (Plus a few for Firmware Event Queues, etc.)
|
||||
#
|
||||
# 9. Some customers will want to use T4's PCI-E SR-IOV Capability to allow
|
||||
# Virtual Machines to directly access T4 functionality via SR-IOV
|
||||
# Virtual Functions and "PCI Device Passthrough" -- this is especially
|
||||
# true for the NIC application functionality. (Note that there is
|
||||
# currently no ability to use the TOE, FCoE, iSCSI, etc. via Virtual
|
||||
# Functions so this is in fact solely limited to NIC.)
|
||||
# 9. Some customers will want to use PCI-E SR-IOV Capability to allow Virtual
|
||||
# Machines to directly access T6 functionality via SR-IOV Virtual Functions
|
||||
# and "PCI Device Passthrough" -- this is especially true for the NIC
|
||||
# application functionality.
|
||||
#
|
||||
|
||||
|
||||
@ -80,7 +63,7 @@
|
||||
rss_glb_config_options = tnlmapen,hashtoeplitz,tnlalllkp
|
||||
|
||||
# PL_TIMEOUT register
|
||||
pl_timeout_value = 200 # the timeout value in units of us
|
||||
pl_timeout_value = 10000 # the timeout value in units of us
|
||||
|
||||
# The following Scatter Gather Engine (SGE) settings assume a 4KB Host
|
||||
# Page Size and a 64B L1 Cache Line Size. It programs the
|
||||
@ -138,7 +121,7 @@
|
||||
# enable TP_OUT_CONFIG.IPIDSPLITMODE
|
||||
reg[0x7d04] = 0x00010000/0x00010000
|
||||
|
||||
reg[0x7dc0] = 0x062f8849 # TP_SHIFT_CNT
|
||||
reg[0x7dc0] = 0x0e2f8849 # TP_SHIFT_CNT
|
||||
|
||||
# TP_VLAN_PRI_MAP to select filter tuples and enable ServerSram
|
||||
# filter control: compact, fcoemask
|
||||
@ -146,14 +129,14 @@
|
||||
# filter tuples : fragmentation, mpshittype, macmatch, ethertype,
|
||||
# protocol, tos, vlan, vnic_id, port, fcoe
|
||||
# valid filterModes are described the Terminator 5 Data Book
|
||||
filterMode = srvrsram, fragmentation, mpshittype, protocol, vlan, port, fcoe
|
||||
filterMode = fcoemask, srvrsram, fragmentation, mpshittype, protocol, vlan, port, fcoe
|
||||
|
||||
# filter tuples enforced in LE active region (equal to or subset of filterMode)
|
||||
filterMask = protocol, fcoe
|
||||
|
||||
# Percentage of dynamic memory (in either the EDRAM or external MEM)
|
||||
# to use for TP RX payload
|
||||
tp_pmrx = 30, 512
|
||||
tp_pmrx = 30
|
||||
|
||||
# TP RX payload page size
|
||||
tp_pmrx_pagesize = 64K
|
||||
@ -163,7 +146,7 @@
|
||||
|
||||
# Percentage of dynamic memory (in either the EDRAM or external MEM)
|
||||
# to use for TP TX payload
|
||||
tp_pmtx = 50, 512
|
||||
tp_pmtx = 50
|
||||
|
||||
# TP TX payload page size
|
||||
tp_pmtx_pagesize = 64K
|
||||
@ -183,6 +166,9 @@
|
||||
# TP_PARA_REG0
|
||||
reg[0x7d60] = 0x06000000/0x07000000 # set InitCWND to 6
|
||||
|
||||
# ULPRX iSCSI Page Sizes
|
||||
reg[0x19168] = 0x04020100 # 64K, 16K, 8K and 4K
|
||||
|
||||
# LE_DB_CONFIG
|
||||
reg[0x19c04] = 0x00400000/0x00400000 # LE Server SRAM Enable
|
||||
|
||||
@ -218,7 +204,7 @@
|
||||
# NEQ_NIC = 64 # NIC Egress Queues (FL, ETHCTRL/TX)
|
||||
# NMPSTCAM_NIC = 16 # NIC MPS TCAM Entries (NPORTS*4)
|
||||
# NMSIX_NIC = 32 # NIC MSI-X Interrupt Vectors (FLIQ)
|
||||
#
|
||||
#
|
||||
# NVI_OFLD = 0 # Offload uses NIC function to access ports
|
||||
# NFLIQ_OFLD = 16 # Offload Ingress Queues with Free Lists
|
||||
# NETHCTRL_OFLD = 0 # Offload Ethernet Control/TX Queues
|
||||
@ -322,20 +308,21 @@
|
||||
# PF2_INT = 8 # NCPUS
|
||||
# PF3_INT = 8 # NCPUS
|
||||
# PF0_3_INT = 32 # PF0_INT + PF1_INT + PF2_INT + PF3_INT
|
||||
#
|
||||
#
|
||||
# PF4_INT = 128 # NMSIX_UNIFIED
|
||||
# PF5_INT = 32 # NMSIX_STORAGE
|
||||
# PF6_INT = 32 # NMSIX_STORAGE
|
||||
# PF7_INT = 0 # Nothing Assigned
|
||||
# PF4_7_INT = 192 # PF4_INT + PF5_INT + PF6_INT + PF7_INT
|
||||
#
|
||||
#
|
||||
# PF0_7_INT = 224 # PF0_3_INT + PF4_7_INT
|
||||
#
|
||||
#
|
||||
# With the above we can get 17 VFs/PF0-3 (limited by 336 MPS TCAM entries)
|
||||
# but we'll lower that to 16 to make our total 64 and a nice power of 2 ...
|
||||
#
|
||||
# NVF = 16
|
||||
|
||||
|
||||
# For those OSes which manage different ports on different PFs, we need
|
||||
# only enough resources to support a single port's NIC application functions
|
||||
# on PF0-3. The below assumes that we're only doing NIC with NCPUS "Queue
|
||||
@ -354,6 +341,7 @@
|
||||
cmask = all # access to all channels
|
||||
pmask = 0x1 # access to only one port
|
||||
|
||||
|
||||
[function "1"]
|
||||
nvf = 16 # NVF on this function
|
||||
wx_caps = all # write/execute permissions for all commands
|
||||
@ -366,6 +354,7 @@
|
||||
cmask = all # access to all channels
|
||||
pmask = 0x2 # access to only one port
|
||||
|
||||
|
||||
[function "2"]
|
||||
nvf = 16 # NVF on this function
|
||||
wx_caps = all # write/execute permissions for all commands
|
||||
@ -378,6 +367,7 @@
|
||||
cmask = all # access to all channels
|
||||
pmask = 0x4 # access to only one port
|
||||
|
||||
|
||||
[function "3"]
|
||||
nvf = 16 # NVF on this function
|
||||
wx_caps = all # write/execute permissions for all commands
|
||||
@ -390,6 +380,7 @@
|
||||
cmask = all # access to all channels
|
||||
pmask = 0x8 # access to only one port
|
||||
|
||||
|
||||
# Some OS Drivers manage all application functions for all ports via PF4.
|
||||
# Thus we need to provide a large number of resources here. For Egress
|
||||
# Queues we need to account for both TX Queues as well as Free List Queues
|
||||
@ -403,6 +394,7 @@
|
||||
niqflint = 170 # NFLIQ_UNIFIED + NLFIQ_WD
|
||||
nethctrl = 100 # NETHCTRL_UNIFIED + NETHCTRL_WD
|
||||
neq = 256 # NEQ_UNIFIED + NEQ_WD
|
||||
nqpcq = 12288
|
||||
nexactf = 40 # NMPSTCAM_UNIFIED
|
||||
cmask = all # access to all channels
|
||||
pmask = all # access to all four ports ...
|
||||
@ -412,7 +404,7 @@
|
||||
nfilter = 496 # number of filter region entries
|
||||
nserver = 496 # number of server region entries
|
||||
nhash = 12288 # number of hash region entries
|
||||
protocol = nic_vm, ofld, rddp, rdmac, iscsi_initiator_pdu, iscsi_target_pdu
|
||||
protocol = nic_vm, ofld, rddp, rdmac, iscsi_initiator_pdu, iscsi_target_pdu, iscsi_t10dif
|
||||
tp_l2t = 3072
|
||||
tp_ddp = 2
|
||||
tp_ddp_iscsi = 2
|
||||
@ -420,6 +412,7 @@
|
||||
tp_pbl = 5
|
||||
tp_rq = 7
|
||||
|
||||
|
||||
# We have FCoE and iSCSI storage functions on PF5 and PF6 each of which may
|
||||
# need to have Virtual Interfaces on each of the four ports with up to NCPUS
|
||||
# "Queue Sets" each.
|
||||
@ -431,7 +424,7 @@
|
||||
niqflint = 34 # NPORTS*NCPUS + NMSIX_EXTRA
|
||||
nethctrl = 32 # NPORTS*NCPUS
|
||||
neq = 64 # NPORTS*NCPUS * 2 (FL, ETHCTRL/TX)
|
||||
nexactf = 4 # NPORTS
|
||||
nexactf = 16 # (NPORTS *(no of snmc grp + 1 hw mac) + 1 anmc grp)) rounded to 16.
|
||||
cmask = all # access to all channels
|
||||
pmask = all # access to all four ports ...
|
||||
nserver = 16
|
||||
@ -444,6 +437,7 @@
|
||||
iscsi_nconn_per_session = 1
|
||||
iscsi_ninitiator_instance = 64
|
||||
|
||||
|
||||
[function "6"]
|
||||
wx_caps = all # write/execute permissions for all commands
|
||||
r_caps = all # read permissions for all commands
|
||||
@ -463,6 +457,8 @@
|
||||
fcoe_nfcf = 16
|
||||
fcoe_nvnp = 32
|
||||
fcoe_nssn = 1024
|
||||
fcoe_nfcb = 256
|
||||
|
||||
|
||||
# The following function, 1023, is not an actual PCIE function but is used to
|
||||
# configure and reserve firmware internal resources that come from the global
|
||||
@ -477,6 +473,7 @@
|
||||
nexactf = 8 # NPORTS + DCBX +
|
||||
nfilter = 16 # number of filter region entries
|
||||
|
||||
|
||||
# For Virtual functions, we only allow NIC functionality and we only allow
|
||||
# access to one port (1 << PF). Note that because of limitations in the
|
||||
# Scatter Gather Engine (SGE) hardware which checks writes to VF KDOORBELL
|
||||
@ -494,6 +491,7 @@
|
||||
cmask = all # access to all channels
|
||||
pmask = 0x1 # access to only one port ...
|
||||
|
||||
|
||||
[function "1/*"] # NVF
|
||||
wx_caps = 0x82 # DMAQ | VF
|
||||
r_caps = 0x86 # DMAQ | VF | PORT
|
||||
@ -505,6 +503,7 @@
|
||||
cmask = all # access to all channels
|
||||
pmask = 0x2 # access to only one port ...
|
||||
|
||||
|
||||
[function "2/*"] # NVF
|
||||
wx_caps = 0x82 # DMAQ | VF
|
||||
r_caps = 0x86 # DMAQ | VF | PORT
|
||||
@ -516,6 +515,7 @@
|
||||
cmask = all # access to all channels
|
||||
pmask = 0x4 # access to only one port ...
|
||||
|
||||
|
||||
[function "3/*"] # NVF
|
||||
wx_caps = 0x82 # DMAQ | VF
|
||||
r_caps = 0x86 # DMAQ | VF | PORT
|
||||
@ -527,6 +527,7 @@
|
||||
cmask = all # access to all channels
|
||||
pmask = 0x8 # access to only one port ...
|
||||
|
||||
|
||||
# MPS features a 196608 bytes ingress buffer that is used for ingress buffering
|
||||
# for packets from the wire as well as the loopback path of the L2 switch. The
|
||||
# folling params control how the buffer memory is distributed and the L2 flow
|
||||
@ -552,6 +553,7 @@
|
||||
dcb_app_tlv[1] = 0x8914, ethertype, 3
|
||||
dcb_app_tlv[2] = 3260, socketnum, 5
|
||||
|
||||
|
||||
[port "1"]
|
||||
dcb = ppp, dcbx
|
||||
bg_mem = 25
|
||||
@ -563,6 +565,7 @@
|
||||
dcb_app_tlv[1] = 0x8914, ethertype, 3
|
||||
dcb_app_tlv[2] = 3260, socketnum, 5
|
||||
|
||||
|
||||
[port "2"]
|
||||
dcb = ppp, dcbx
|
||||
bg_mem = 25
|
||||
@ -574,6 +577,7 @@
|
||||
dcb_app_tlv[1] = 0x8914, ethertype, 3
|
||||
dcb_app_tlv[2] = 3260, socketnum, 5
|
||||
|
||||
|
||||
[port "3"]
|
||||
dcb = ppp, dcbx
|
||||
bg_mem = 25
|
||||
@ -585,9 +589,10 @@
|
||||
dcb_app_tlv[1] = 0x8914, ethertype, 3
|
||||
dcb_app_tlv[2] = 3260, socketnum, 5
|
||||
|
||||
|
||||
[fini]
|
||||
version = 0x14250016
|
||||
checksum = 0xafaf8723
|
||||
version = 0x1425001c
|
||||
checksum = 0xb1c3ae38
|
||||
|
||||
# Total resources used by above allocations:
|
||||
# Virtual Interfaces: 104
|
||||
|
@ -6276,9 +6276,9 @@ sysctl_mps_tcam(SYSCTL_HANDLER_ARGS)
|
||||
F_FW_CMD_REQUEST | F_FW_CMD_READ |
|
||||
V_FW_LDST_CMD_ADDRSPACE(FW_LDST_ADDRSPC_MPS));
|
||||
ldst_cmd.cycles_to_len16 = htobe32(FW_LEN16(ldst_cmd));
|
||||
ldst_cmd.u.mps.fid_ctl =
|
||||
ldst_cmd.u.mps.rplc.fid_idx =
|
||||
htobe16(V_FW_LDST_CMD_FID(FW_LDST_MPS_RPLC) |
|
||||
V_FW_LDST_CMD_CTL(i));
|
||||
V_FW_LDST_CMD_IDX(i));
|
||||
|
||||
rc = begin_synchronized_op(sc, NULL, SLEEP_OK | INTR_OK,
|
||||
"t4mps");
|
||||
@ -6294,10 +6294,10 @@ sysctl_mps_tcam(SYSCTL_HANDLER_ARGS)
|
||||
rc = 0;
|
||||
} else {
|
||||
sbuf_printf(sb, " %08x %08x %08x %08x",
|
||||
be32toh(ldst_cmd.u.mps.rplc127_96),
|
||||
be32toh(ldst_cmd.u.mps.rplc95_64),
|
||||
be32toh(ldst_cmd.u.mps.rplc63_32),
|
||||
be32toh(ldst_cmd.u.mps.rplc31_0));
|
||||
be32toh(ldst_cmd.u.mps.rplc.rplc127_96),
|
||||
be32toh(ldst_cmd.u.mps.rplc.rplc95_64),
|
||||
be32toh(ldst_cmd.u.mps.rplc.rplc63_32),
|
||||
be32toh(ldst_cmd.u.mps.rplc.rplc31_0));
|
||||
}
|
||||
} else
|
||||
sbuf_printf(sb, "%36s", "");
|
||||
|
@ -501,25 +501,23 @@ write_tx_wr(void *dst, struct toepcb *toep, unsigned int immdlen,
|
||||
|
||||
/* for iscsi, the mode & submode setting is per-packet */
|
||||
if (toep->ulp_mode == ULP_MODE_ISCSI)
|
||||
wr_ulp_mode = V_FW_OFLD_TX_DATA_WR_ULPMODE(ulp_mode >> 4) |
|
||||
V_FW_OFLD_TX_DATA_WR_ULPSUBMODE(ulp_mode & 3);
|
||||
wr_ulp_mode = V_TX_ULP_MODE(ulp_mode >> 4) |
|
||||
V_TX_ULP_SUBMODE(ulp_mode & 3);
|
||||
else
|
||||
wr_ulp_mode = V_FW_OFLD_TX_DATA_WR_ULPMODE(toep->ulp_mode);
|
||||
wr_ulp_mode = V_TX_ULP_MODE(toep->ulp_mode);
|
||||
|
||||
txwr->lsodisable_to_proxy =
|
||||
htobe32(wr_ulp_mode |
|
||||
V_FW_OFLD_TX_DATA_WR_URGENT(0) | /* XXX */
|
||||
V_FW_OFLD_TX_DATA_WR_SHOVE(shove));
|
||||
txwr->lsodisable_to_flags = htobe32(wr_ulp_mode | V_TX_URG(0) | /*XXX*/
|
||||
V_TX_SHOVE(shove));
|
||||
txwr->plen = htobe32(plen);
|
||||
|
||||
if (txalign > 0) {
|
||||
struct tcpcb *tp = intotcpcb(toep->inp);
|
||||
|
||||
if (plen < 2 * tp->t_maxseg || is_10G_port(toep->port))
|
||||
txwr->lsodisable_to_proxy |=
|
||||
txwr->lsodisable_to_flags |=
|
||||
htobe32(F_FW_OFLD_TX_DATA_WR_LSODISABLE);
|
||||
else
|
||||
txwr->lsodisable_to_proxy |=
|
||||
txwr->lsodisable_to_flags |=
|
||||
htobe32(F_FW_OFLD_TX_DATA_WR_ALIGNPLD |
|
||||
(tp->t_flags & TF_NODELAY ? 0 :
|
||||
F_FW_OFLD_TX_DATA_WR_ALIGNPLDSHOVE));
|
||||
|
@ -17,7 +17,7 @@ FIRMWS+= ${F}:${F:C/.txt//}:1.0.0.0
|
||||
.endif
|
||||
.endfor
|
||||
|
||||
T4FW_VER= 1.11.27.0
|
||||
T4FW_VER= 1.14.4.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.11.27.0
|
||||
T5FW_VER= 1.14.4.0
|
||||
FIRMWS+= t5fw.fw:t5fw:${T5FW_VER}
|
||||
CLEANFILES+= t5fw.fw
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user