summaryrefslogtreecommitdiffstats
path: root/sys/dev/cxgb/common
Commit message (Collapse)AuthorAgeFilesLines
* Eliminate ext_intr_task. The "slow" interrupt handler is alreadynp2010-07-092-3/+2
| | | | | | | running on the adapter's task queue. Just do what the task does instead of enqueueing it. MFC after: 3 days
* Multiple fixes related to queue set sizing and resources:np2010-03-312-2/+3
| | | | | | | | | | | | | | | | - Only the tunnelq (TXQ_ETH) requires a buf_ring, an ifq, and the watchdog/timer callouts. Do not allocate these for the other tx queues. - Use 16k jumbo clusters only on offload capable cards by default. - Do not allocate a full tx ring for the offload queue if the card is not offload capable. - Slightly better freelist size calculation. - Fix nmbjumbo4 typo, remove unneeded global variables. MFC after: 3 days
* Improved PHY EDC settings.np2010-03-311-371/+422
| | | | MFC after: 3 days
* Better TwinAx transceiver detection.np2010-03-091-1/+13
| | | | | | | Originally submitted by: <Bruno dot Bittner at isilon dot com> (This is a rewritten, corrected version of that patch) MFC after: 1 week
* There is no need to test __FreeBSD_version for features that havenp2010-02-243-55/+0
| | | | | | | | | | | been around for a long time now (7.1-ish or even earlier); assume they are present. These includes MSI, TSO, LRO, VLAN, INTR_FILTERS, FIRMWARE, etc. Also, eliminate some dead code and clean up in other places as part of this quick once-over. MFC after: 1 week
* Extra parantheses to keep certain compilers happy.np2010-01-091-1/+1
| | | | Submitted by: trasz@
* T3 firmware 7.8.0 for cxgb(4)np2009-12-011-1/+1
| | | | | Obtained from: Chelsio MFC after: 3 days
* The 10GBASE-T card should use an IPG of 1. Also enable the checknp2009-11-132-3/+1
| | | | for low power startup on this card.
* Make sure *some* edc is setup even for an unknown transceiver (assumenp2009-11-131-2/+2
| | | | it is optical).
* cxgb(4) updates, including:np2009-10-059-223/+1851
| | | | | | | | | | - support for the new Gen-2, BT, and LP-CR cards. - T3 firmware 7.7.0 - shared "common code" updates. Approved by: gnn (mentor) Obtained from: Chelsio MFC after: 1 month
* Greatly simplify cxgb by removing almost all of the custom mbuf management logickmacy2009-06-191-6/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - remove mbuf iovec - useful, but adds too much complexity when isolated to the driver - remove driver private caching - insufficient benefit over UMA to justify the added complexity and maintenance overhead - remove separate logic for managing multiple transmit queues, with the new drbr routines the control flow can be made to much more closely resemble legacy drivers - remove dedicated service threads, with per-cpu callouts one can get the same benefit much more simply by registering a callout 1 tick in the future if there are still buffered packets - remove embedded mbuf usage - Jeffr's changes will (I hope) soon be integrated greatly reducing the overhead of using kernel APIs for reference counting clusters - add hysteresis to descriptor coalescing logic - add coalesce threshold sysctls to allow users to decide at run-time between optimizing for forwarding / UDP or optimizing for TCP - add once per second watchdog to effectively close the very rare races occurring from coalescing - incorporate Navdeep's changes to the initialization path required to convert port and adapter locks back to ordinary mutexes (silencing BPF LOR complaints) - enable prefetches in get_packet and tx cleaning Reviewed by: navdeep@ MFC after: 2 weeks
* Integrate three changes from Chelsio.gnn2009-05-213-79/+129
| | | | | | | | | | 1) Add a sysctl that will say what type of PHYs exist on the card. 2) Fix a bug that occurs when an AEL 2005 PHY resets without a transciever in the card. 3) Unify the PHY link detection code. Obtained from: Navdeep Parhar MFC after: 10 days
* Update the Chelsio driver to the latest bits from Chelsiognn2009-03-105-233/+792
| | | | | | | | | | | | Firmware upgraded to 7.1.0 (from 5.0.0). T3C EEPROM and SRAM added; Code to update eeprom/sram fixed. fl_empty and rx_fifo_ovfl counters can be observed via sysctl. Two new cxgbtool commands to get uP logic analyzer info and uP IOQs Synced up with Chelsio's "common code" (as of 03/03/09) Submitted by: Navdeep Parhar at Chelsio Reviewed by: gnn MFC after: 2 weeks
* Check in the actual module recognition code for the Chelsiognn2008-12-181-32/+102
| | | | | | driver. Obtained from: Chelsio Inc.
* Bug fix to support N310 version of Chelsio cards (board ID 1088).gnn2008-12-061-0/+6
| | | | | Obtained from: Chelsio Inc. MFC after: 3 days
* Fix a bug with the ael1006 PHY. The bug shows up as persistent but incompletegnn2008-12-041-0/+10
| | | | | | | | packet loss, of between 10-30%. The fix is to put the PHY into and take it out of local loopback mode when resetting the interface. Obtained from: Chelsio Inc. MFC after: 3 days
* Bug fix from Chelsio which addresses the issue of the device resettinggnn2008-12-021-25/+2
| | | | | | | | | when it sees only received packets. In some cases where a device only recieves data it mistakenly thinks that its transmitting side is broken and resets the device. Obtained from: Chelsio Inc. MFC after: 3 days
* Several small additions to the Chelsio 10G driver.gnn2008-11-213-2/+19
| | | | | | | | | | | | | 1) Fix a bug in dealing with the Alerus 1006 PHY which prevented the device from ever coming back up once it had been set to down. 2) Add a kernel tunable (hw.cxgb.snd_queue_len) which makes it possible to give the device more than IFQ_MAXLEN entries in its send queue. The default remains 50. 3) Add code to place the card'd identification and serial number into its description (%desc) so that users can tell which card they have installed.
* Update firmware version checkkmacy2008-11-122-3/+9
| | | | | | | make ddp a tunable Obtained from: Chelsio Inc. MFC after: 3 days
* Update cxgb include paths to not require prefixing with dev/cxgbkmacy2008-09-239-41/+0
| | | | Submitted by: Chelsio Inc.
* White space cleanups to bring closer to RELENG_7kmacy2008-09-161-1/+1
|
* Vendor fix for PHY problem.kmacy2008-08-115-89/+759
| | | | | Obtained from: Chelsio Inc. MFC after: 3 days
* new vendor PHY supportkmacy2008-07-181-0/+225
|
* import vendor fixes to cxgbkmacy2008-07-188-138/+603
|
* - Integrate 1.133 vendor driver changeskmacy2008-03-183-7/+7
| | | | | | - update some copyrights - add improved support for delayed ack - fix issue with fec
* - update firmware to 5.0kmacy2008-02-2313-644/+1881
| | | | | | | | | | | | | | | | | - add support for T3C - add DDP support (zero-copy receive) - fix TOE transmit of large requests - fix shutdown so that sockets don't remain in CLOSING state indefinitely - register listeners when an interface is brought up after tom is loaded - fix setting of multicast filter - enable link at device attach - exit tick handler if shutdown is in progress - add helper for logging TCB - add sysctls for dumping transmit queues - note that TOE wxill not be MFC'd until after 7.0 has been finalized MFC after: 3 days
* - make 9k clusters the default unless a tunable is setkmacy2008-01-101-0/+1
| | | | | | | | | | | | - return the error from cxgb_tx_common so that when an error is hit we dont spin forever in the taskq thread - remove unused rxsd_ref - simplify header_offset calculation for embedded mbuf headers - fix memory leak by making sure that mbuf header initialization took place - disable printf's for stalled queue, don't do offload/ctrl queue restart when tunnel queue is restarted - add more diagnostic information about the txq state - add facility to dump the actual contents of the hardware queue using sysctl
* Make TCP offload work on HEAD (modulo negative interaction between sbcompresskmacy2007-12-171-0/+12
| | | | | | | | | and t3_push_frames). - Import latest changes to cxgb_main.c and cxgb_sge.c from toestack p4 branch - make driver local copy of tcp_subr.c and tcp_usrreq.c and override tcp_usrreqs so TOE can also functions on versions with unmodified TCP - add cxgb back to the build
* Fix last-minute typo in last commit caused by pre-commit scriptskmacy2007-09-091-1/+1
| | | | Approved by: re(blanket)
* - fix qset to port binding as a proper fix for the problems encountered on ↵kmacy2007-09-096-63/+175
| | | | | | | | | | | | the 4-port - fix the use after free seen when sending packets small enough to fit as an immediate and bpf peers are present - update to firmware rev 4.7 along with various small vendor fixes Supported by: Chelsio Approved by: re (blanket) MFC after: 3 days
* Fixes for 4 port and small packet optimizationkmacy2007-08-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | - remove cpl->iff panic - we can't know the port number from the rspq on the 4-port - pick the ifnet based on the interface in the CPL header - switch to using qset 0 for egress on the 4-port for now - may change when we start using RSS - move ether_ifdetach to before the port lock gets deinitialized to avoid hang in the case where there are BPF peers (cxgb_ioctl is called indirectly when BPF peers are present) - don't call t3_mac_reset if multiport is set, this was causing tx errors by misconfiguring the MAC on the 4-port - change V_TXPKT_INTF to use txpkt_intf as the interfaces are not contiguous - free the mbuf immediately in the case where the payload is small enough to be copied into the rspq - only update the coalesce timer if for a queue if packets were taken off of it - add in missed 20ms DELAY in initializaton vsc8211 - prompt MFC as this only applies to the 4-port which is currently completely broken - OK'd by kensmith Supported by: Chelsio Approved by: re (blanket) MFC after: 0 days
* forward port signedness fixes from RELENG_6kmacy2007-08-171-1/+1
| | | | | | fix compile error for case where MSI_SUPPORTED not defined Approved by: re (blanket)
* - integrate most recent changes from vendor branch and upgrade to firmware ↵kmacy2007-07-177-135/+234
| | | | | | | | | | | | revision 4.5.5 - add filter support - further improvements for T304 - recover gracefully from spurious immediate packets Approved by: re(blanket) Supported by: Chelsio MFC after: 3 days
* - import new common code for the T304kmacy2007-06-136-108/+744
| | | | | | | | | | | | | | | | | | | | | | | - update to firmware version 4.1.0 - switch over to standard method for initializing cdevs (contributed by scottl@) - break out timer_reclaim_task to be per-port - move msix teardown into separate function - fix bus_setup_intr for msi-x for the multi-port case so that msi-x resources are not corrupted on unload - handle 10/100/1000 base-T media and auto negotiation - bind qset to cpu even for singleq case - white space cleanups - remove recursive PORT_LOCK - move mtu setting to separate function - stop and re-init port when changing mtu - replace all direct references to m_data with calls to mtod - handle attach failure better by not trying to de-initialize taskqueues when they have not been allocated - no longer default to jumbo frames Sponsored by: Chelsio MFC after: 3 days
* When building cxgb as a module make include paths relative to the driver's root.kmacy2007-05-2813-77/+51
| | | | | | This will make it possible to build the module out of tree against an older src tree. MFC after: 3 days
* add missed headerkmacy2007-05-251-0/+148
|
* (MFp4)kmacy2007-05-257-42/+325
| | | | | | | | | | - upgrade to reflect state of 1.0.0.86 - move from firmware rev 3.2 to 4.0.0 - import driver bits for offload functionality - remove binary distribution clause from top level files as it runs counter to the intent of purely supporting the hardware MFC after: 3 days
* Synchronize with version 1.0.071 of Chelsio's common codekmacy2007-03-205-37/+290
| | | | | | | | | (with the notable exception of improvements for using multiple TX queues) This adds support for the T3B2 ASIC rev Obtained from: Chelsio MFC after: 3 days
* First of several commits for driver support for the Chelsio T3B 10 Gigabitkmacy2007-03-1413-0/+16180
Ethernet adapter. Reviewed by: scottl, sam For those interested in the preliminary performance work see below. Plots of mxge vs. cxgb running netpipe: blocksize vs. bandwidth: http://www.fsmware.com/chelsio.random/bsvsbw.gif blocksize vs. RTT: First of several commits for driver support for the Chelsio T3B 10 Gigabit Ethernet adapter. Reviewed by: scottl, sam For those interested in the preliminary performance work see below. Plots of mxge vs. cxgb running netpipe: blocksize vs. bandwidth: http://www.fsmware.com/chelsio.random/bsvsbw.gif blocksize vs. RTT: http://www.fsmware.com/chelsio.random/bsvstime.gif blocksize vs. RTT for block sizes <= 10kb: http://www.fsmware.com/chelsio.random/bsvstime_10kb.gif http://www.fsmware.com/chelsio.random/bsvstime_10kb3.gif
OpenPOWER on IntegriCloud