319390 |
01-Jun-2017 |
ngie |
MFC r314579,r314785:
r314579 (by np):
Add cxgbetool(8) to the base system.
Move cxgbetool from tools/tools to usr.sbin. Compile and install it on platforms where cxgbe(4) is built by default. Knobs (WITH_CXGBETOOL and WITHOUT_CXGBETOOL) have been added so that the user can override the default setting.
r314785:
Fix some trivial manlint warnings
Sentences should begin on new lines, per manlint.
Bump .Dd for the change |
314579 |
03-Mar-2017 |
np |
Add cxgbetool(8) to the base system.
Move cxgbetool from tools/tools to usr.sbin. Compile and install it on platforms where cxgbe(4) is built by default. Knobs (WITH_CXGBETOOL and WITHOUT_CXGBETOOL) have been added so that the user can override the default setting.
Reviewed by: ngie@, gnn@, bdrewery@ MFC after: 1 month Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D9854
|
306823 |
07-Oct-2016 |
np |
cxgbetool: Add a loadcfg subcommand to allow a user to upload a firmware configuration file to the card.
|
306138 |
21-Sep-2016 |
np |
Fix typo.
|
306137 |
21-Sep-2016 |
np |
cxgbetool: Add T6 support to the SGE context decoder.
Obtained from: Chelsio Communications Sponsored by: Chelsio Communications
|
301516 |
06-Jun-2016 |
np |
cxgbetool: Allow max-rate > 10Gbps for rate-limited traffic.
Sponsored by: Chelsio Communications
|
296481 |
08-Mar-2016 |
np |
cxgbe(4): Overhaul the shared code that deals with the chip's TP block, which is responsible for filtering and RSS.
Add the ability to use filters that match on PF/VF (aka "VNIC id") while here. This is mutually exclusive with filtering on outer VLAN tag with Q-in-Q.
Sponsored by: Chelsio Communications
|
296471 |
07-Mar-2016 |
np |
cxgbe(4): Updated register dumps.
- Get the list of registers to read during a regdump from the shared code instead of the OS specific code. This follows a similar move internally. The shared code includes the list for T6.
- Update cxgbetool to be able to decode T5 VF, T6, and T6 VF register dumps (and catch up with some updates to T4 and T5 register decode).
Obtained from: Chelsio Communications Sponsored by: Chelsio Communications
|
296236 |
29-Feb-2016 |
np |
Fix some whitespace nits in cxgbetool.c. No functional change.
|
287297 |
29-Aug-2015 |
rodrigc |
- Replace N(a)/N(i)/N(T)/LEN(a)/ARRAY_SIZE(a) with nitems() - Add missing <err.h> for err() and <sys/sysctl.h> for sysctlbyname() - NULL -> 0 for 5th parameter of sysctlbyname()
Submitted by: Andriy Voskoboinyk <s3erios@gmail com> Differential Revision: https://reviews.freebsd.org/D3442
|
284984 |
30-Jun-2015 |
np |
cxgbetool: fix code that decodes T5 SGE contexts. Some of the fields that changed between T4 and T5 were not displayed correctly.
Obtained from: Chelsio MFC after: 3 days Differential Revision:
|
276607 |
03-Jan-2015 |
np |
Fix all nits reported by mandoc -Tlint.
MFC after: 1 month
|
276598 |
03-Jan-2015 |
np |
Add a manual page for cxgbetool. It is incomplete but definitely better than nothing.
MFC after: 1 month
|
273360 |
21-Oct-2014 |
np |
cxgbetool: Catch up with r185979. One of MAP_ANON, MAP_PRIVATE, MAP_SHARED, or MAP_STACK must be specified.
This fixes the "loadfw" subcommand.
MFC after: 1 week
|
269106 |
26-Jul-2014 |
np |
Add a 'raw' parameter to the 'modinfo' subcommand. This is handy when trying to figure out why a QSFP+/SFP+ connector or cable wasn't identified correctly by cxgbe(4). Its output looks like this:
# cxgbetool t5nex0 modinfo 0 raw 00: 03 04 21 00 00 00 00 00 ..!. .... 08: 04 00 00 00 67 00 00 00 .... g... 10: 00 00 05 00 41 6d 70 68 .... Amph 18: 65 6e 6f 6c 20 20 20 20 enol 20: 20 20 20 20 00 41 50 48 .APH 28: 35 37 31 35 34 30 30 30 5715 4000 30: 33 20 20 20 20 20 20 20 3 38: 4b 20 20 20 01 00 00 fa K .... 40: 00 00 00 00 41 50 46 31 .... APF1 48: 30 30 34 30 30 33 30 30 0040 0300 50: 30 33 20 20 31 30 30 31 03 1001 58: 33 30 20 20 00 00 00 97 30 ....
MFC after: 3 days
|
264400 |
13-Apr-2014 |
imp |
NO_MAN= has been deprecated in favor of MAN= for some time, go ahead and finish the job. ncurses is now the only Makefile in the tree that uses it since it wasn't a simple mechanical change, and will be addressed in a future commit.
|
261534 |
06-Feb-2014 |
np |
cxgbetool: Display the congestion channel map in hex.
MFC after: 1 week
|
259048 |
06-Dec-2013 |
np |
Two new cxgbetool subcommands to set up scheduler classes and to bind them to NIC queues.
Obtained from: Chelsio
|
258698 |
27-Nov-2013 |
np |
cxgbetool: "modinfo" command to display SFP+ module information.
trantor:~# cxgbetool t5nex0 modinfo 1 ID: SFP Vendor FINISAR CORP. SN AJ10JQR PN FTLX8571D3BCL Rev A Temp: +35C Vcc 3.225600V TX Bias 2.176000uA TX Power 0.588800mW RX Power 0.486400mW
Submitted by: gnn
|
253870 |
01-Aug-2013 |
np |
Teach cxgbetool to display T5 congestion manager context.
|
253691 |
26-Jul-2013 |
np |
Add support for packet-sniffing tracers to cxgbe(4). This works with all T4 and T5 based cards and is useful for analyzing TSO, LRO, TOE, and for general purpose monitoring without tapping any cxgbe or cxl ifnet directly.
Tracers on the T4/T5 chips provide access to Ethernet frames exactly as they were received from or transmitted on the wire. On transmit, a tracer will capture a frame after TSO segmentation, hw VLAN tag insertion, hw L3 & L4 checksum insertion, etc. It will also capture frames generated by the TCP offload engine (TOE traffic is normally invisible to the kernel). On receive, a tracer will capture a frame before hw VLAN extraction, runt filtering, other badness filtering, before the steering/drop/L2-rewrite filters or the TOE have had a go at it, and of course before sw LRO in the driver.
There are 4 tracers on a chip. A tracer can trace only in one direction (tx or rx). For now cxgbetool will set up tracers to capture the first 128B of every transmitted or received frame on a given port. This is a small subset of what the hardware can do. A pseudo ifnet with the same name as the nexus driver (t4nex0 or t5nex0) will be created for tracing. The data delivered to this ifnet is an additional copy made inside the chip. Normal delivery to cxgbe<n> or cxl<n> will be made as usual.
/* watch cxl0, which is the first port hanging off t5nex0. */ # cxgbetool t5nex0 tracer 0 tx0 (watch what cxl0 is transmitting) # cxgbetool t5nex0 tracer 1 rx0 (watch what cxl0 is receiving) # cxgbetool t5nex0 tracer list # tcpdump -i t5nex0 <== all that cxl0 sees and puts on the wire
If you were doing TSO, a tcpdump on cxl0 may have shown you ~64K "frames" with no L3/L4 checksum but this will show you the frames that were actually transmitted.
/* all done */ # cxgbetool t5nex0 tracer 0 disable # cxgbetool t5nex0 tracer 1 disable # cxgbetool t5nex0 tracer list # ifconfig t5nex0 destroy
|
252470 |
01-Jul-2013 |
np |
Count the number of hits for a filter by default.
MFC after: 3 days
|
249368 |
11-Apr-2013 |
np |
Set and display the IP fragment bit correctly when dealing with the filter mode.
MFC after: 3 days.
|
248925 |
30-Mar-2013 |
np |
cxgbe(4): Add support for Chelsio's Terminator 5 (aka T5) ASIC. This includes support for the NIC and TOE features of the 40G, 10G, and 1G/100M cards based on the T5.
The ASIC is mostly backward compatible with the Terminator 4 so cxgbe(4) has been updated instead of writing a brand new driver. T5 cards will show up as cxl (short for cxlgb) ports attached to the t5nex bus driver.
Sponsored by: Chelsio
|
247854 |
05-Mar-2013 |
np |
Fix compile warning by including ctype.h for isdigit().
MFC after: 1 day
|
245520 |
17-Jan-2013 |
np |
Allow "ivlan" (inner VLAN) to be used as an alias for "vlan" when specifying match criteria. "vlan" continues to be valid here, and it continues to be valid when deleting, rewriting, inserting, or stacking an 802.1q tag to a matching packet.
MFC after: 3 days
|
241416 |
10-Oct-2012 |
np |
Add a "clearstats" subcommand to cxgbetool that lets you clear the MAC statistics for any port.
For example: # cxgbetool t4nex0 clearstats 0
Submitted by: gnn@ MFC after: 3 days
|
241401 |
10-Oct-2012 |
np |
Add an "i2c" subcommand to cxgbetool. You can use this to read information from the transceivers connected to the ports of a cxgbe(4) based card.
# cxgbetool t4nex0 i2c <port_id> <dev_addr> <addr> [<count>]
For example: # cxgbetool t4nex0 i2c 0 0xa0 3 0x10 [16]
(As per SFF-8472 the SFP+ module is at 0xa0 and bit 4 in the value at address 3 indicates it's a 10Gbase-SR module, which it is.)
|
228594 |
16-Dec-2011 |
np |
Catch up with new driver ioctls in cxgbe.
MFC after: 1 month
|
228561 |
16-Dec-2011 |
np |
Many updates to cxgbe(4)
- Device configuration via plain text config file. Also able to operate when not attached to the chip as the master driver.
- Generic "work request" queue that serves as the base for both ctrl and ofld tx queues.
- Generic interrupt handler routine that can process any event on any kind of ingress queue (via a dispatch table).
- A couple of new driver ioctls. cxgbetool can now install a firmware to the card ("loadfw" command) and can read the card's memory ("memdump" and "tcb" commands).
- Lots of assorted information within dev.t4nex.X.misc.* This is primarily for debugging and won't show up in sysctl -a.
- Code to manage the L2 tables on the chip.
- Updates to cxgbe(4) man page to go with the tunables that have changed.
- Updates to the shared code in common/
- Updates to the driver-firmware interface (now at fw 1.4.16.0)
MFC after: 1 month
|
222974 |
11-Jun-2011 |
np |
Add "context" subcommand to fetch and display SGE context.
|
222900 |
09-Jun-2011 |
np |
cxgbetool: a tool for the cxgbe(4) driver.
|