[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Mon, 3 Mar 2008 18:56:24 +0000
From: Ben Hutchings <bhutchings@...arflare.com>
To: netdev@...r.kernel.org
Subject: [PATCH] New driver "sfc" for Solarstorm SFC4000 controller (try #7)
This is a resubmission of a new driver for Solarflare network controllers.
The driver supports several types of PHY (10Gbase-T, XFP, CX4) on six
different 10G and 1G boards. It is accompanied by an MTD driver that
allows access to the flash/EEPROM.
NICs based on this controller are now available from SMC as part numbers
SMC10GPCIe-XFP and SMC10GPCIe-10BT.
The previous thread was:
http://marc.info/?l=linux-netdev&m=120162616808659&w=2
Some explanation of the driver structure was posted in:
http://marc.info/?l=linux-netdev&m=119999015817920&w=2
Since the last patch we have made some bug fixes and minor improvements:
- Fix MAC stats during TX drain
- Fix skb leak on self-test failure
- Add workaround for RX flush timeout
- Recover from more TX errors
- Allow more time for recovery of TXC43128 PHY between resets
- Fix signed-ness mismatches
- Improve robustness of efx_{start,stop}_{all,port}()
- Correct some netif_tx_lock/unlock calls to _bh variants
- Make probe fail if the NIC becomes disabled
- Fix efx_dl_search_device_info() macro
- Validate MAC address in efx_set_mac_address()
- Test for failure of efx_init_debugfs_netdev()
- Fix potential loss of promiscuous flag
- Improve comments on locking requirements
- Remove some redundant initialisation code
- Remove unused alaska_blink() function
- Add byte-order annotations and fix byte-order bugs
- Use C99 __func__, not gcc's __FUNCTION__
- Eliminate suspend lock as redundant with rtnl_lock
- Move Falcon hardware parameters from efx_nic into the nic_data field
- Make RX refill workqueue global as it should be per-CPU not per-NIC
- Use net_device::stats instead of efx_nic::stats
- Correct some comments
- Define a PCI_EXP_DEVCTL_PAYLOAD_LBN constant instead of using ffs()
since ffs() is not evaluated at compile-time
- Make use of PCI_DEVICE() macro for efx_pci_table initialisation
- Remove unnecessary indirection between efx_pci_table and
struct efx_nic_type
- Change MSI-X setup to allocate an MSI-X interrupt per package, not
per core, by default
- Rename *_max to *_lim in struct efx_dl_falcon_resources for clarity
- Fix error handling in efx_change_mtu()
- Do not reconfigure XGXS block after resetting XAUI block
- Simplify multicast hash setting
- Fix array size calculation in efx_multicast_hash
We believe this is ready to be merged now and would appreciate a
thorough review.
The patch (against netdev-2.6) is at:
https://support.solarflare.com/netdev/7/netdev-2.6-sfc-2.2.0106.patch
The new files may also be downloaded as a tarball:
https://support.solarflare.com/netdev/7/netdev-2.6-sfc-2.2.0106.tar.gz
And for verification there is:
https://support.solarflare.com/netdev/7/MD5SUMS
Ben.
--
Ben Hutchings, Senior Software Engineer, Solarflare Communications
Not speaking for my employer; that's the marketing department's job.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists