350412 |
29-Jul-2019 |
arybchik |
MFC r350371
sfxge(4): unify power of 2 alignment check macro
Substitute driver-defined IS_P2ALIGNED() with EFX_IS_P2ALIGNED() defined in libefx.
Add type argument and cast value and alignment to one specified type.
Reported by: Andrea Valsania <andrea.valsania at answervad.it> Sponsored by: Solarflare Communications, Inc. |
350411 |
29-Jul-2019 |
arybchik |
MFC r350370
sfxge(4): fix align to power of 2 when align has smaller type
Substitute driver-defined P2ALIGN() with EFX_P2ALIGN() defined in libefx.
Cast value and alignment to one specified type to guarantee result correctness.
Reported by: Andrea Valsania <andrea.valsania at answervad.it> Sponsored by: Solarflare Communications, Inc. |
350409 |
29-Jul-2019 |
arybchik |
MFC r350369
sfxge(4): fix power of 2 round up when align has smaller type
Substitute driver-defined P2ROUNDUP() h with EFX_P2ROUNDUP() defined in libefx.
Cast value and alignment to one specified type to guarantee result correctness.
Reported by: Andrea Valsania <andrea.valsania at answervad.it> Sponsored by: Solarflare Communications, Inc. |
342453 |
25-Dec-2018 |
arybchik |
MFC r341783
sfxge(4): report support for Tx checksum op descriptors
FreeBSD driver needs a patch to provide a means for packets which do not need checksum offload but have flow ID set to avoid hitting only the first Tx queue (which has been used for packets not needing checksum offload).
This should be possible on Huntington, Medford or Medford2 chips since these support toggling checksum offload on any given queue dynamically by means of pushing option descriptors.
The patch for FreeBSD driver will then need a means to figure out whether the feature can be used, and testing adapter family might not be a good solution.
This patch adds a feature bit specifically to indicate support for checksum option descriptors. The new feature bits may have more users in future, apart from the mentioned FreeBSD patch.
Submitted by: Ivan Malov <Ivan.Malov at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18388 |
342450 |
25-Dec-2018 |
arybchik |
MFC r341326
sfxge(4): ensure EvQ poll stops when abort is requested
If an event handler requested an abort, only the inner loop was guarenteed to be broken out of - the outer loop could continue if total == batch.
Fix this by poisoning batch to ensure it is different to total.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18287 |
342449 |
25-Dec-2018 |
arybchik |
MFC r341311
sfxge(4): make last byte of module information available
Adjust bounds so the interface supports reading the last available byte of data.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18273 |
342448 |
25-Dec-2018 |
arybchik |
MFC r341309
sfxge(4): fix MAC Tx stats for less or equal to 64 bytes
This statistic should include 64byte and smaller frames. Fix EF10 calculation to match Siena code.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18271 |
342447 |
25-Dec-2018 |
arybchik |
MFC r341302
sfxge(4): fix a typo in unicast filter insertion comment
Submitted by: Ivan Malov <ivan.malov at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18264 |
342446 |
25-Dec-2018 |
arybchik |
MFC r341301
sfxge(4): prevent access to the NIC config before probe
NIC config is initialized during NIC probe.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18263 |
342445 |
25-Dec-2018 |
arybchik |
MFC r341297
sfxge(4): fix out of bounds read when dereferencing sdup
Introduce and use macro to make sure that MCDI buffers allocated on stack are rounded up properly.
Submitted by: Gautam Dawar <gdawar at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18259 |
342444 |
25-Dec-2018 |
arybchik |
MFC r341295
sfxge(4): avoid usage of too big arrays on stack
Found by PreFAST static analysis.
Submitted by: Martin Harvey <mharvey at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18257 |
342443 |
25-Dec-2018 |
arybchik |
MFC r341290
sfxge(4): check size of memory to read sensors data to
Size of provided memory should be consistent with specified size.
Submitted by: Martin Harvey <mharvey at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18252 |
342442 |
25-Dec-2018 |
arybchik |
MFC r341215
sfxge(4): fix build because of no declaration
Functions declared in mcdi_mon.h are implemented in mcdi_mon.c. The build fails if compiler options require declaration before definition.
Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18246 |
342441 |
25-Dec-2018 |
arybchik |
MFC r341214
sfxge(4): fix SAL annotation for input buffers
Submitted by: Martin Harvey <mharvey at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18245 |
342440 |
25-Dec-2018 |
arybchik |
MFC r341213
sfxge(4): fix PreFAST warnings because of unused return
Submitted by: Martin Harvey <mharvey at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18244 |
342439 |
25-Dec-2018 |
arybchik |
MFC r341197
sfxge(4): fix comparison always true warning
Loopback type used as bit index has efx_loopback_type_t type which is enum. clang complains that it is always true when it is compared with qword (64 bit) bits number boundary.
Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18228 |
342438 |
25-Dec-2018 |
arybchik |
MFC r341038
sfxge(4): add method to make checksum option descriptors
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18160 |
342437 |
25-Dec-2018 |
arybchik |
MFC r340896
sfxge(4): remove Falcon-specific concurrency check
Falcon support has been withdrawn from libefx, however, there is still an obsolete Falcon-specific assertion that efx_mac_stats_upload() and efx_port_poll() aren't concurrent. To be consistent with an overall Falcon support revocation it's desirable to remove it.
Fix debug build invalid assertion failure.
Submitted by: Ivan Malov <ivan.malov at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D1813 |
342436 |
25-Dec-2018 |
arybchik |
MFC r340895
sfxge(4): move BIU test code into Siena-specific file
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18129 |
342435 |
25-Dec-2018 |
arybchik |
MFC r340894
sfxge(4): fix PreFAST static analysis warning (C6001)
Fix warning "C6001: Using uninitialized memory '*sensor_maskp'" which could occur when the npages argument to efx_mcdi_sensor_info() is less than or equal to zero.
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18128 |
342434 |
25-Dec-2018 |
arybchik |
MFC r340892
sfxge(4): remove obsolete check for pre-Siena hardware
The fail4 label was used twice, so it doesn't need removing.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18126 |
342433 |
25-Dec-2018 |
arybchik |
MFC r340891
sfxge(4): fix warnings from VS2015 C compiler (C4214)
Fix multiple level 4 warnings "C4214: nonstandard extension used: bit field types other than int"; no functional changes.
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18125 |
342432 |
25-Dec-2018 |
arybchik |
MFC r340890
sfxge(4): fix warnings from VS2015 C compiler (C4057)
Fix two level 4 warnings "C4057: 'function': 'const uint8_t *' differs in indirection to slightly different base types from 'caddr_t'"; no functional changes.
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18124 |
342431 |
25-Dec-2018 |
arybchik |
MFC r340889
sfxge(4): fix warnings from VS2015 C compiler (C4189)
Fix multiple level 4 warnings "C4189: 'xxx': local variable is initialized but not referenced"; no functional changes.
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18123 |
342430 |
25-Dec-2018 |
arybchik |
MFC r340888
sfxge(4): fix warnings from VS2015 C compiler (C4100)
Fix multiple level 4 warnings "C4100: 'xxx': unreferenced formal parameter" no functional changes.
The _NOTE(ARGUNUSED(xxx)) annotations are being exposed to the Visual Studio 2015 C compiler with the following:
#define _NOTE_ARGUNUSED(...) UNREFERENCED_PARAMETER((__VA_ARGS__)); #define _NOTE(_annotation) _NOTE_ ## _annotation
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18122 |
342429 |
25-Dec-2018 |
arybchik |
MFC r340887
sfxge(4): fix warnings from VS2015 C compiler (C4245)
Fix level 4 warning "C4245: 'initializing': conversion from 'int' to 'uint32_t', signed/unsigned mismatch" warning; no functional changes.
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18121 |
342428 |
25-Dec-2018 |
arybchik |
MFC r340886
sfxge(4): fix warnings from VS2015 C compiler (C4244)
Fix level 4 warning "C4244: '+=': conversion from 'unsigned int' to 'uint16_t', possible loss of data"; no functional changes.
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18120 |
342427 |
25-Dec-2018 |
arybchik |
MFC r340885
sfxge(4): fix warnings from VS2015 C compiler (C4310)
Fix level 4 warning "C4310: cast truncates constant value"; no functional changes.
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18119 |
342426 |
25-Dec-2018 |
arybchik |
MFC r340884
sfxge(4): fix probes in licensing support
EFSYS_PROBE1 takes one typed value (in addition to the probe name), whereas EFSYS_PROBE has just the probe name.
Which to use is determined by the probe name - "fail1" probes are expected to include the function result.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18118 |
342425 |
25-Dec-2018 |
arybchik |
MFC r340883
sfxge(4): fix diagnostics support build without Siena
The compilation failed because __efx_sram_pattern_fns was used in efx_nic.c, but defined in efx_sram.c which is only needed when supporting Siena.
To fix it move all the code using __efx_sram_pattern_fns into Siena-specific files (except for the definition in efx_sram.c itself, as that file only needs to be included in Siena-supporting builds anyway).
The functions to test registers and tables are unlikely to apply to any new hardware and so can be moved into Siena files. Since Huntington such tests have been implemented in firmware.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18117 |
342424 |
25-Dec-2018 |
arybchik |
MFC r340875
sfxge(4): fix build issue with PHY LED control enabled
Fixed build issue with the EFSYS_OPT_PHY_LED_CONTROL for Huntigton and Medford.
Submitted by: Vijay Srivastava <vijays at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18110 |
342423 |
25-Dec-2018 |
arybchik |
MFC r340833
sfxge(4): support inner checksum offload on transmit
Inner checksum offloads may be used only if firmware supports these tunnels.
Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18102 |
342422 |
25-Dec-2018 |
arybchik |
MFC r340831
sfxge(4): make MAC naming consistent with other modules
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18101 |
342421 |
25-Dec-2018 |
arybchik |
MFC r340826
sfxge(4): fix ignoring function return value
fix PreFAST issue, add missing annotation that function return value should not be ignored. Fix alignment.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18096 |
342420 |
25-Dec-2018 |
arybchik |
MFC r340822
sfxge(4): fix check in NVRAM validate
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18092 |
342419 |
25-Dec-2018 |
arybchik |
MFC r340814
sfxge(4): fix result code in MCDI NVRAM update finish
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18084 |
342418 |
25-Dec-2018 |
arybchik |
MFC r340806
sfxge(4): fix default RSS context check on Siena
Default RSS context check is carried out during filter insertion on Siena and it needs to be fixed
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18076 |
342417 |
25-Dec-2018 |
arybchik |
MFC r340805
sfxge(4): define a handle to denote default RSS context
Make the existing filter-specific define more general. This is the same as MC_CMD_RSS_CONTEXT_ALLOC_OUT_RSS_CONTEXT_ID_INVALID.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18075 |
342416 |
25-Dec-2018 |
arybchik |
MFC r340804
sfxge(4): insert filters for encapsulated packets
On Medford, with full-featured firmware running, encapsulated packets may not be delivered unless filters are inserted for them, as ordinary filters are not applied to encapsulated packets. So filters for encapsulated packets need to be inserted for each class of encapsulated packet. For simplicity, catch-all filters are always inserted. These may match more packets than the OS has asked for, but trying to insert more precise filters increases complexity for little gain.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18074 |
342415 |
25-Dec-2018 |
arybchik |
MFC r340803
sfxge(4): support filters for encapsulated packets
This supports filters which match all unicast or multicast inner frames in VXLAN, GENEVE, or NVGRE packets. (Additional fields to match on can be added easily.)
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18073 |
342414 |
25-Dec-2018 |
arybchik |
MFC r340802
sfxge(4): use proper MCDI command for encap filters
MC_CMD_FILTER_OP_IN_EXT is needed to set filters for encapsulated packets.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18072 |
342413 |
25-Dec-2018 |
arybchik |
MFC r340801
sfxge(4): provide information about supported tunnels
VXLAN/NVGRE (and Geneve) support is available on SFN8xxx with full-feature firmware variant running.
Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18071 |
342412 |
25-Dec-2018 |
arybchik |
MFC r340800
sfxge(4): let caller know that queue is already flushed
Tx/Rx queue may be already flushed due to Tx/Rx error on the queue or MC reboot. Caller needs to know that the queue is already flushed to avoid waiting for flush done event.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18070 |
342411 |
25-Dec-2018 |
arybchik |
MFC r340796
sfxge(4): fix failure path in EF10 Tx queue PIO enable
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18066 |
342410 |
25-Dec-2018 |
arybchik |
MFC r340800
sfxge(4): let caller know that queue is already flushed
Tx/Rx queue may be already flushed due to Tx/Rx error on the queue or MC reboot. Caller needs to know that the queue is already flushed to avoid waiting for flush done event.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18070 |
342409 |
25-Dec-2018 |
arybchik |
MFC r340798
sfxge(4): fix out of bounds read in VIs allocation
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18068 |
342408 |
25-Dec-2018 |
arybchik |
MFC r340797
sfxge(4): fix potential buffer overflow in Tx queue init
Improve error checking to avoid a caller overflowing the MCDI request buffer if the requested TXQ size was excessively large.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18067 |
342407 |
25-Dec-2018 |
arybchik |
MFC r340767
sfxge(4): limit max TXQ size on Medford to 2048
Queues with 4096 descriptors are not supported as the top bit is used for vfifo stuffing.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D8948 |
341331 |
30-Nov-2018 |
arybchik |
MFC r340765
sfxge(4): cleanup: move into right place
Due to incorrect merge the piece of code was put in incorrect place and diverge from libefx in other locations.
Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18024 |
331722 |
29-Mar-2018 |
eadler |
Revert r330897:
This was intended to be a non-functional change. It wasn't. The commit message was thus wrong. In addition it broke arm, and merged crypto related code.
Revert with prejudice.
This revert skips files touched in r316370 since that commit was since MFCed. This revert also skips files that require $FreeBSD$ property changes.
Thank you to those who helped me get out of this mess including but not limited to gonzo, kevans, rgrimes.
Requested by: gjb (re) |
330897 |
14-Mar-2018 |
eadler |
Partial merge of the SPDX changes
These changes are incomplete but are making it difficult to determine what other changes can/should be merged.
No objections from: pfg |
330446 |
05-Mar-2018 |
eadler |
MFC r327231,r327232:
kernel: Fix several typos and minor errors lib: Fix several typos and minor errors
- duplicate words - typos - references to old versions of FreeBSD |
312158 |
14-Jan-2017 |
arybchik |
MFC r311961
sfxge(4): do not ignore requested MAC stats update period
Firmware version which takes PERIOD_MS parameter into account is required.
Sponsored by: Solarflare Communications, Inc. |
311765 |
09-Jan-2017 |
arybchik |
MFC r311640
sfxge(4): allow DMA descs to cross 4k boundary on EF10
Siena has limitation on maximum byte count and 4k boundary crosssing (which is stricter than maximum byte count). EF10 has limitation on maximum byte count only.
Sponsored by: Solarflare Communications, Inc. |
311490 |
06-Jan-2017 |
arybchik |
MFC r310817
sfxge(4): remove obsolete Wake-On-LAN support
Wake-on-lan is not supported in production on any of our adapters, as they don't have the required AUX power connector. (It's possible that AUX power is supplied to some of our ALOM or mezz adapters, but if so then we've never implemented or tested WoL support.)
Sponsored by: Solarflare Communications, Inc. |
311489 |
06-Jan-2017 |
arybchik |
MFC r310815
sfxge(4): add functions to efx_bootcfg supporting whole partition access
Expose expcfg partition layout discovery and validating buffer copy routines. Needed for whole-partition expcfg operations.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311488 |
06-Jan-2017 |
arybchik |
MFC r310814
sfxge(4): make verified update result available from ef10_nvram_partn_unlock()
Manftest needs to know exactly what went wrong with the verified update so that failing boards can be correctly diagnosed.
Submitted by: Tom Millington <tmillington at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311486 |
06-Jan-2017 |
arybchik |
MFC r310813
sfxge(4): add per-command timeout reporting to the common code
In newer firmware that supports multithreaded MCDI processing, longer running commands may be run ina background thread. Add support for drivers to query the appropriate timeout for each MCDI request.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311485 |
06-Jan-2017 |
arybchik |
MFC r310816
sfxge(4): fix efx_filter_supported_filters API
The previous API had various problems, including the length of the caller provided buffer not being specified, no means being available to discover how big the buffer needs to be, and a lack of clarity of what the resulting list contains.
To fix it: - add the buffer length as a parameter - if the provided buffer is too short, fail with ENOSPC and return the required length - ensure that the list contents are valid and add comments describing it
It is safe to change this API as, unsuprisingly, it has no users.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311484 |
06-Jan-2017 |
arybchik |
MFC r310753
sfxge(4): split EFX_FILTER_MATCH_LOC_MAC_IG back into separate flags
The flag EFX_FILTER_MATCH_LOC_MAC_IG to represent filtering on the individual/group bit of the MAC address (with the two cases being distingusished by the MAC address in the filter specification) was introduced to mirror the Linux driver filtering code, but the implementations are different enough anyway that it isn't of much value.
Having separate flags for unknown unicast and multicast simplifies the code and allows the set of flags to match those used by MCDI.
It will also makes it easier to report whether these filters are supported.
In the MCDI definitions, the unknown multicast and unicast flags have the values 0x40000000 and 0x80000000 respectively, and so using the same values for simplicity requires 32 bits in the filter specification to store the flags. This means the structure is now a little bigger than 64 bytes, but filters are not often used on critical paths so this shouldn't have much impact - on Linux they are also bigger than they used to be.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311483 |
06-Jan-2017 |
arybchik |
MFC r310750
sfxge(4): add missing barrier in common code MCDI response handling
The semantics of the MCDI interfacve require reading the first dword of the header before any other data in the buffer. Add a barrier to the common code MCDI handler to enforce this.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311482 |
06-Jan-2017 |
arybchik |
MFC r310744
sfxge(4): fix efx_ev_qpoll for non-Siena builds
Both Siena and EF10 use the siena_ev_qpoll() implementation, but this function is not defined in builds without EFSYS_OPT_SIENA.
Remove siena_ev_qpoll and inline it into efx_ev_qpoll to allow it to be used in non-Siena builds.
Also remove outdated FIXME comment, as EF10 event batching/merging has been implemented long ago without needing to modify this code.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311481 |
06-Jan-2017 |
arybchik |
MFC r310765
sfxge(4): add support for firmware-verified NVRAM updates to the common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311032 |
01-Jan-2017 |
arybchik |
MFC r310819
sfxge(4): cleanup: add efsys_lock_state_t for type of state param in EFSYS_LOCK()
This allows the common code to use the correct type for the lock state local variable passed to EFSYS_LOCK() and EFSYS_UNLOCK().
On Windows, this allows warning supression pragmas to be removed.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311031 |
01-Jan-2017 |
arybchik |
MFC r310812
sfxge(4): support non-interrupting event queues creation
Poll-mode driver does not use interrupts and number of used event queues should not be limitted by the number of interrupts allocated for the NIC.
Sponsored by: Solarflare Communications, Inc. |
311030 |
01-Jan-2017 |
arybchik |
MFC r310811
sfxge(4): cleanup: remove now-unused function flags
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311027 |
01-Jan-2017 |
arybchik |
MFC r310764
sfxge(4): sync up tlv_layout.h (from firmwaresrc 82cd8a5715e9)
Submitted by: Matthew Slattery <mslattery at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311026 |
01-Jan-2017 |
arybchik |
MFC r310762
sfxge(4): regenerate MCDI headers from firmwaresrc .yml
Sponsored by: Solarflare Communications, Inc. |
311025 |
01-Jan-2017 |
arybchik |
MFC r310760
sfxge(4): fix typo in pseudo header accessor function names
Sponsored by: Solarflare Communications, Inc. |
311024 |
01-Jan-2017 |
arybchik |
MFC r310758
sfxge(4): delete hunt_phy.c
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311023 |
01-Jan-2017 |
arybchik |
MFC r310756
sfxge(4): do not use enum type when values are bitmask
ICC complains that enumerated type mixed with another type.
Found by DPDK upstream build sanity check.
Sponsored by: Solarflare Communications, Inc. |
311022 |
01-Jan-2017 |
arybchik |
MFC r310755
sfxge(4): do not use enum for filter flags
It is not 100% correct to assign non-enum values to enum type variables.
Found by ICC build (DPDK PMD upstreaming).
Sponsored by: Solarflare Communications, Inc. |
311021 |
01-Jan-2017 |
arybchik |
MFC r310754
sfxge(4): don't use Tx descriptor push with TSO option descriptors
It is not safe to push TSO option descriptors if pacer bypass is enabled, so to make sure that doesn't happen never push TSO option descriptors.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311020 |
01-Jan-2017 |
arybchik |
MFC r310752
sfxge(4): allow to have no NIC handle on Rx datapath in DPDK PMD
It is required to minimize RxQ context in the driver or avoid chaising for the NIC handle in adapter (global per-interface) structure.
Sponsored by: Solarflare Communications, Inc. |
311019 |
01-Jan-2017 |
arybchik |
MFC r310749
sfxge(4): use correct port number in sensor decoding
The port mask used for per-port sensors in mcdi_sensor_map assumes zero-based port numbering. The port mask used in the code is based on the one-based MCDI port number.
Fix this to lookup the correct per-port sensors, and to allow reporting of sensor events from higher port numbers.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311018 |
01-Jan-2017 |
arybchik |
MFC r310748
sfxge(4): cleanup: simplify disable scatter logic in ef10_rx_qcreate
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
311017 |
01-Jan-2017 |
arybchik |
MFC r310747
sfxge(4): provide a way to find out which MAC stats are supported
Sponsored by: Solarflare Communications, Inc. |
311016 |
01-Jan-2017 |
arybchik |
MFC r310746
sfxge(4): make the common code determine the number of PFs
Submitted by: Ivan Malov <Ivan.Malov at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. |
311015 |
01-Jan-2017 |
arybchik |
MFC r310745
sfxge(4): make the common code retrieve the number of FATSOv2 contexts
Submitted by: Ivan Malov <Ivan.Malov at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. |
310947 |
31-Dec-2016 |
arybchik |
MFC r310742
sfxge(4): fix common code for non-Siena builds
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
310946 |
31-Dec-2016 |
arybchik |
MFC r310741
sfxge(4): fix misuse of siena_build_filter in common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
310945 |
31-Dec-2016 |
arybchik |
MFC r310719
sfxge(4): cleanup: remove last use of deprecated function flags with privilege check
The function flags were changed to mirror the privileges, but the privileges are preferred.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
310944 |
31-Dec-2016 |
arybchik |
MFC r310717
sfxge(4): move BIST methods from hunt_phy.c to ef10_phy.c
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
310943 |
31-Dec-2016 |
arybchik |
MFC r310716
sfxge(4): add UEFI ROM support to the common code
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
310941 |
31-Dec-2016 |
arybchik |
MFC r310715
sfxge(4): fix GET_RXDP_CONFIG usage for multi-PF on Medford
On Medford, using MC_CMD_GET_RXDP_CONFIG to query the RX end padding setting is in the ADMIN group, and so fails for unprivileged functions. In that case, assume the largest size supported by Medford hardware (256bytes) to prevent overrun.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
310940 |
31-Dec-2016 |
arybchik |
MFC r310714
sfxge(4): support Medford bootcfg partition layout in common code
For Siena and Huntington, the per-port bootcfg (aka expcfg) is stored in a dedicated 4Kbyte partition for each port.
For Medford, the per-PF bootcfg is stored in a 2Kbyte sector within a single shared partition. Update the common code to support the new bootcfg layout.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
310939 |
31-Dec-2016 |
arybchik |
MFC r310713
sfxge(4): add possibility to control event queue performance profile
It is ignored on SFN5xxx/6xxx (aka Siena).
Sponsored by: Solarflare Communications, Inc. |
310938 |
31-Dec-2016 |
arybchik |
MFC r310709
sfxge(4): fix invalid type of eft_unicst_filter_count
Found by clang when boolean_t is defined as bool for DPDK PMD.
Sponsored by: Solarflare Communications, Inc. |
310937 |
31-Dec-2016 |
arybchik |
MFC r310708
sfxge(4): do not initialize enumerated type variable to another type
Fix build warning generated by ICC.
Sponsored by: Solarflare Communications, Inc. |
310936 |
31-Dec-2016 |
arybchik |
MFC r310704
sfxge(4): translate MC_CMD_ERR_ERANGE to host errno value
This is needed because MCDI command MC_CMD_REKEY can return MC_CMD_ERR_ERANGE.
Submitted by: Tom Millington <tmillington at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
310935 |
31-Dec-2016 |
arybchik |
MFC r310699
sfxge(4): rename hunt_bist_* methods to ef10_bist_*
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
310934 |
31-Dec-2016 |
arybchik |
MFC r310696
sfxge(4): cleanup: improve prefast annotations
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
310933 |
31-Dec-2016 |
arybchik |
MFC r310695
sfxge(4): fix defined-but-not-used warning if neither VPD nor NVRAM opt enabled
Sponsored by: Solarflare Communications, Inc. |
310932 |
31-Dec-2016 |
arybchik |
MFC r310694
sfxge(4): cleanup: add missing spaces
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310930 |
31-Dec-2016 |
arybchik |
MFC r310693
sfxge(4): cleanup: avoid unspecified unsigned
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310929 |
31-Dec-2016 |
arybchik |
MFC r310692
sfxge(4): enclose macro complex value in parenthesis
Found by DPDK checkpatches.sh
Sponsored by: Solarflare Communications, Inc. |
310928 |
31-Dec-2016 |
arybchik |
MFC r310691
sfxge(4): make strings array pointer itself immutable
Found by DPDK checkpatches.sh
Sponsored by: Solarflare Communications, Inc. |
310927 |
31-Dec-2016 |
arybchik |
MFC r310690
sfxge(4): cleanup: add const qualifier to const array pointer
Sponsored by: Solarflare Communications, Inc. |
310926 |
31-Dec-2016 |
arybchik |
MFC r310689
sfxge(4): cleanup: avoid spaces before TAB
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310924 |
31-Dec-2016 |
arybchik |
MFC r310688
sfxge(4): cleanup: avoid space just before TAB in efx_types.h
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310923 |
31-Dec-2016 |
arybchik |
MFC r310687
sfxge(4): cleanup: use TAB to indent
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310922 |
31-Dec-2016 |
arybchik |
MFC r310686
sfxge(4): cleanup: add missing space between type and pointer symbol
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310920 |
31-Dec-2016 |
arybchik |
MFC r310685
sfxge(4): cleanup: open brace should be on a type name line
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310919 |
31-Dec-2016 |
arybchik |
MFC r310681
sfxge(4): cleanup: remove unnecessary spaces
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310918 |
31-Dec-2016 |
arybchik |
MFC r310684
sfxge(4): cleanup: remove trailing whitespaces
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310917 |
31-Dec-2016 |
arybchik |
MFC r310683
sfxge(4): cleanup: pointer symbol should go together with struct member name
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310916 |
31-Dec-2016 |
arybchik |
MFC r310682
sfxge(4): cleanup: avoid C99 // comments
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310841 |
30-Dec-2016 |
arybchik |
MFC r310680
sfxge(4): cleanup: use spaces around binary arithmetic operations
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310838 |
30-Dec-2016 |
arybchik |
MFC r310679
sfxge(4): cleanup: fix wrong indent
Found by DPDK checkpatch.sh
Sponsored by: Solarflare Communications, Inc. |
310836 |
30-Dec-2016 |
arybchik |
MFC r310678
sfxge(4): cleanup: remove trailing whitespace
Sponsored by: Solarflare Communications, Inc. |
310833 |
30-Dec-2016 |
arybchik |
MFC r310677
sfxge(4): cleanup: fix typo in siena_mac_loopback_set() instrumentation
Sponsored by: Solarflare Communications, Inc. |
307370 |
15-Oct-2016 |
arybchik |
MFC r307038
sfxge(4): update external port mapping for Medford
Extend the mapping table for external port numbering to support port modes which output to the second external port only. Where supported, map from the current port mode rather than inferring from all the available modes. Updated comments for clarity.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
307367 |
15-Oct-2016 |
arybchik |
MFC r306944
sfxge(4): sync tlv_layout.h with firmwaresrc and update port-mode definition use
It fixes driver attach issue to a new firmware which reports a new port-modes.
Submitted by: Tom Millington <tmillington at solarflare.com> Sponsored by: Solarflare Communications, Inc. |
302408 |
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
301604 |
08-Jun-2016 |
arybchik |
sfxge(4): cleanup: add missing probes to ef10_nvram_segment_write_tlv
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
301495 |
06-Jun-2016 |
arybchik |
sfxge(4): update TX vFIFO ULL tag location to avoid merge conflict
Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
301427 |
05-Jun-2016 |
arybchik |
sfxge(4): allow firmware to auto-configure event queues on Medford
On Medford, licenses are required to enable RX and event cut through and to disable RX batching. To avoid the need for the driver to make decisions based on the licensing state, the MC_CMD_INIT_EVQ has been extended to allow us to leave the decision to the firmware. If the adapter is licensed for low-latency use, the firmware will choose the optimal settings for latency, otherwise it will use the best settings for throughput.
For Huntington we still need to choose the settings ourselves.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6717
|
301309 |
04-Jun-2016 |
arybchik |
sfxge(4): always be ready to receive batched events
When the low-latency firmware variant is running, it is reported as not being capable of batching RX events, but it can still do so if the FORCE_EV_MERGING flag is set on an RXQ. Therefore we need to handle batched RX events even if the capability isn't set.
If this bug is fixed in the firmware such that the capability is set even when running the low-latency firmware variant, it will almost always be reported so I don't think we lose much by removing the check.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6705
|
301308 |
04-Jun-2016 |
arybchik |
sfxge(4): add helper to compute timer quantum
This also adjusts the timer values used to match the Linux net driver implementation: a) non-zero time intervals should result in at least one quantum b) timer load/reload values are only zero biased for Falcon/Siena
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6704
|
301237 |
03-Jun-2016 |
arybchik |
sfxge(4): support EVQ timer workaround via MCDI
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/6675
|
301127 |
01-Jun-2016 |
arybchik |
sfxge(4): cleanup: remove unused variables in common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
301125 |
01-Jun-2016 |
arybchik |
sfxge(4): cleanup: add missing space after if keyword
Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
301122 |
01-Jun-2016 |
arybchik |
sfxge(4): set moderation in efx_ev_qcreate
This simplifies setting an initial interrupt moderation value, and avoids most calls to evx_ev_qmoderate from contexts where MCDI is not allowed (MCDI is need for an EVQ timer workaround in a later patch).
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6673
|
301061 |
31-May-2016 |
arybchik |
sfxge(4): regenerate MCDI headers from firmwaresrc .yml
Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300849 |
27-May-2016 |
arybchik |
sfxge(4): fix typo in monitor types strings in common code
Submitted by: Garrett D'Amore <garrett at damore.org> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300848 |
27-May-2016 |
arybchik |
sfxge(4): avoid necessity to add one more constant condition note
Use for forever loop instead of while.
Found by lint on illumos.
Submitted by: Garrett D'Amore <garrett at damore.org> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300847 |
27-May-2016 |
arybchik |
sfxge(4): cope with always true unsigned comparison with 0 to make lint happier
Found by lint on illumos.
Submitted by: Garrett D'Amore <garrett at damore.org> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300846 |
27-May-2016 |
arybchik |
sfxge(4): unsigned 1 should be shifted to produce bitmask
Found by lint on illumos.
Submitted by: Garrett D'Amore <garrett at damore.org> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300845 |
27-May-2016 |
arybchik |
sfxge(4): cope with lint for EFX_SET_OWORD_BIT() with const bit arg
Found by lint on illumos.
Submitted by: Garrett D'Amore <garrett at damore.org> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300844 |
27-May-2016 |
arybchik |
sfxge(4): remove set but not used variable
Found by lint on illumos.
Submitted by: Garrett D'Amore <garrett at damore.org> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300842 |
27-May-2016 |
arybchik |
sfxge(4): remove unreachable break after goto
Found by lint on illumos.
Submitted by: Garrett D'Amore <garrett at damore.org> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300841 |
27-May-2016 |
arybchik |
sfxge(4): add constant condition note to make lint happier
Found by lint on illumos.
Submitted by: Garrett D'Amore <garrett at damore.org> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300840 |
27-May-2016 |
arybchik |
sfxge(4): note unused variables to make lint happier
Found by lint on illumos.
Submitted by: Garrett D'Amore <garrett at damore.org> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300739 |
26-May-2016 |
arybchik |
sfxge(4): correct parenthesis location in if coundition
Found by lint on illumos.
Submitted by: Garrett D'Amore <garrett at damore.org> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300609 |
24-May-2016 |
arybchik |
sfxge(4): enable Medford support
Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6510
|
300607 |
24-May-2016 |
arybchik |
sfxge(4): cleanup: update copyright to 2016
Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6509
|
300606 |
24-May-2016 |
arybchik |
sfxge(4): provide option to disable not a local MAC address check
Option EFSYS_OPT_ALLOW_UNCONFIGURED_NIC disables check that the adapter MAC address is not a local address (beginning 02).
Submitted by: Laurence Evans <levans at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6508
|
300605 |
24-May-2016 |
arybchik |
sfxge(4): be ready to receive events immediately after event queues are created
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6507
|
300505 |
23-May-2016 |
arybchik |
sfxge(4): cleanup: remove unused EFX preempt macros
The EFSYS_PREEMPT_DISABLE() and EFSYS_PREEMPT_ENABLE() macros were used to ensure correct timing of I2C operations. The APIs for I2C operations have been removed, so these macros have no callers.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
300050 |
17-May-2016 |
eadler |
Don't repeat the the word 'the'
(one manual change to fix grammar)
Confirmed With: db Approved by: secteam (not really, but this is a comment typo fix)
|
300011 |
17-May-2016 |
arybchik |
sfxge(4): only raise an exception after MC assert or reboot in the common code
Fix efx_mcdi_request_poll so it only raises an exception if EIO is reported from a detected MC assert or reboot. This prevents an unnecessary exception being raised if an MCDI response error code is trandlated to EIO.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6392
|
300010 |
17-May-2016 |
arybchik |
sfxge(4): restore clearing of MCDI new epoch flag in common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6390
|
300009 |
17-May-2016 |
arybchik |
sfxge(4): fix Medford timer quantum calculation in common code
The event/timer block used sysclk in Huntington, but has been moved to the dpcpu clock domain for Medford. Fix the computed timer quantum to use the right clock.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6389
|
300008 |
17-May-2016 |
arybchik |
sfxge(4): query and use current MTU if setting the MTU fails
This allows the driver to fall back to the largest usable MTU if a user attempts to configure an unprivileged function with an MTU higher than that of the attached port.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6387
|
300007 |
17-May-2016 |
arybchik |
sfxge(4): store licensing state in efx_lic
Check licensing support at NIC startup to avoid multiple checks later. As state is stored, licensing initialisation is moved later in start procedure.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6385
|
299925 |
16-May-2016 |
arybchik |
sfxge(4): cleanup: quieten more common code MCDI handlers
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299924 |
16-May-2016 |
arybchik |
sfxge(4): cleanup: remove misnamed function declaration
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299923 |
16-May-2016 |
arybchik |
sfxge(4): cleanup: make MCDI license queries quieter in common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299920 |
16-May-2016 |
arybchik |
sfxge(4): cleanup: simplify ef10_ev_qcreate
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299919 |
16-May-2016 |
arybchik |
sfxge(4): translate MC_CMD_ERR_EEXIST to host errno value
This is needed because the new MCDI command nvram_private_append can return MC_CMD_ERR_EEXIST
Submitted by: Tom Millington <tmillington at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299918 |
16-May-2016 |
arybchik |
fxge(4): cleanup: run genfwdef to propogate prior changes to TLV headers
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299917 |
16-May-2016 |
arybchik |
sfxge(4): set TSOv2 feature flag on Medford
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299915 |
16-May-2016 |
arybchik |
sfxge(4): improve TX/RX queue error messages
Report the full error descriptor in a form that can be passed to firmwaresrc/dpcpu/scripts/evdecode
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299911 |
16-May-2016 |
arybchik |
sfxge(4): fix license validation check for V3 licenses
Length consistency checks were failing for ECC hashes.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299909 |
16-May-2016 |
arybchik |
sfxge(4): regenerate MCDI headers from firmwaresrc .yml
Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299907 |
16-May-2016 |
arybchik |
sfxge(4): increase maximum size of license keys
Increase buffer sizes for license keys to 160 bytes to accomodate ECDSA hashes.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299905 |
16-May-2016 |
arybchik |
sfxge(4): fix V1 licensing MCDI operations
Implementation of the MCDI commands for Siena boards was requesting the wrong operation.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6370
|
299904 |
16-May-2016 |
arybchik |
sfxge(4): improve PCIe link speed and width check
Perform a more accurate check of whether the PCIe bandwidth is sufficient for the current/supported port modes.
Give a different warning if there is sufficient bandwidth to achieve line rate, but the link is not fast enough for optimal latency.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6369
|
299903 |
16-May-2016 |
arybchik |
sfxge(4): cleanup: make TLV scans quieter
Find end of segments in a more direct way that avoids an error report at the terminator.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6367
|
299901 |
16-May-2016 |
arybchik |
sfxge(4): cleanup: make VPD lookups quieter
A lookup on a VPD entry which is missing reports several failure messages as it propagates through wrapper functions. Restructured the wrappers to treat this gracefully as an expected case.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6366
|
299899 |
16-May-2016 |
arybchik |
sfxge(4): cleanup: make licensing function quieter
Silent handling of failure to invoke functions that are not supported on older licensing versions.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6365
|
299898 |
16-May-2016 |
arybchik |
sfxge(4): restructure efx_lic to support V3 licensing
Create separate implementations of the efx_lic API for each revision of the licensing system. All processing of the V1/V2 license partition is moved to efx_lic, and an implementation of V3 licensing uses the existing TLV functions with extensions for writing new TLV entries.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6364
|
299734 |
14-May-2016 |
arybchik |
sfxge(4): remove unused EFX PHY symbols
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299733 |
14-May-2016 |
arybchik |
sfxge(4): remove obsolete EFX_MON types
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299732 |
14-May-2016 |
arybchik |
sfxge(4): remove unimplemented sensor reconfigure method
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299731 |
14-May-2016 |
arybchik |
sfxge(4): remove unimplemented sensor reset method
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299730 |
14-May-2016 |
arybchik |
sfxge(4): fix build with -Werror=pointer-sign
-Werror=pointer-sign is enabled in OmniOS GLD driver build.
Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299729 |
14-May-2016 |
arybchik |
sfxge(4): remove unimplemented MAC reset method
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299728 |
14-May-2016 |
arybchik |
sfxge(4): cleanup: remove unused define EFX_EVQ_FALCON_TIMER_QUANTUM_NS
Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299727 |
14-May-2016 |
arybchik |
sfxge(4): cleanup: remove unused variable flags
Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299724 |
14-May-2016 |
arybchik |
sfxge(4): remove unimplemented EFX PHY methods
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299723 |
14-May-2016 |
arybchik |
sfxge(4): import TLV layout from firmwaresrc
Submitted by: Laurence Evans <levans at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299722 |
14-May-2016 |
arybchik |
sfxge(4): remove obsolete EFSYS_OPT_PHY_PROPS option and APIs
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299721 |
14-May-2016 |
arybchik |
sfxge(4): remove PHY property method stubs
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299720 |
14-May-2016 |
arybchik |
sfxge(4): move ef10 definitions to ef10_impl.h
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299719 |
14-May-2016 |
arybchik |
sfxge(4): prepare for moving EF10 definitions to ef10_impl.h
Move legacy privilege masks near to their only user. Move Huntington definitions to the top of hunt_impl.h to prepare for moving the remaining EF10 definitions to ef10_impl.h.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6343
|
299718 |
14-May-2016 |
arybchik |
sfxge(4): rename falconsiena_filter types
Falcon support has been removed, so this code only supports Siena.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6342
|
299612 |
13-May-2016 |
arybchik |
sfxge(4): rename falconsiena_filter_*
Falcon support has been removed, so this code only supports Siena.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299611 |
13-May-2016 |
arybchik |
sfxge(4): rename falconsiena_tx_*
Falcon support has been removed, so this code only supports Siena.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299610 |
13-May-2016 |
arybchik |
sfxge(4): rename falconsiena_rx_*
Falcon support has been removed, so this code only supports Siena.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299609 |
13-May-2016 |
arybchik |
sfxge(4): rename falconsiena_mac_*
Falcon support has been removed, so this code only supports Siena.
Reviewed by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299608 |
13-May-2016 |
arybchik |
sfxge(4): rename falconsiena_intr_*
falcon support has been removed, so this code only supports Siena.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299607 |
13-May-2016 |
arybchik |
sfxge(4): rename falconsiena_ev_*
Falcon support has been removed, so this code only supports Siena.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299606 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_vpd_* to ef10_vpd.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299605 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_tx_* to ef10_tx.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299604 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_rx_* to ef10_rx.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299603 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_phy_* to ef10_phy.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299602 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_nvram_* to ef10_nvram.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299601 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_nic_* to ef10_nic.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299600 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_mcdi_* to ef10_mcdi.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299599 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_mac_* to ef10_mac.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299598 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_intr_* to ef10_intr.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299597 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_filter_* to ef10_filter.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299596 |
13-May-2016 |
arybchik |
sfxge(4): move ef10_ev_* to ef10_ev.c
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299595 |
13-May-2016 |
arybchik |
sfxge(4): comment on when we assume multicast chaining is available
It's the same on Medford as Huntington.
Multicast chaining is not always on, even with Medford, as it's not supported by low latency firmware.
Unlike the Linux driver, we don't need to support virtulization with firmware released before support for multicast chaining was added.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6319
|
299594 |
13-May-2016 |
arybchik |
sfxge(4): avoid duplicate delivery of packets when changing multicast mode with multicast chaining enabled
With multicast chaining, if e.g. a specific multicast filter is inserted and the multicast mis-match filter is then inserted, both may match a packet and cause it to be delivered.
Copy the behaviour of the Linux driver, which is to remove the old filters first, on the basis that customers are more likely to be able to handle drops than duplicates (see bug49178 comment 4).
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6331
|
299518 |
12-May-2016 |
arybchik |
sfxge(4): update multicast filter insertion algorithm
When the multicast filters we're allowed to insert are controlled by the hypervisor, it may be that we can insert some but not others. So we need to have fallbacks where we insert any filters we can without rolling back when one fails to insert.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6318
|
299517 |
12-May-2016 |
arybchik |
sfxge(4): cleanup: constify common code method tables
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6317
|
299411 |
11-May-2016 |
arybchik |
sfxge(4): update unicast filter insertion algorithm
As unicast filters are not chained, we should always try to insert the specific filter for our MAC address, and then try to insert the unicast mis-match filter if that fails or all unicast has been requested.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6295
|
299410 |
11-May-2016 |
arybchik |
sfxge(4): fix efx_filter_reconfigure parameter type
This caused signed/unsigned errors in some subsequent patches. The only value passed to this is a uint32_t.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6294
|
299407 |
11-May-2016 |
arybchik |
sfxge(4): make efx_sram_test Siena-only
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6293
|
299406 |
11-May-2016 |
arybchik |
sfxge(4): add new Emerald board sensors to common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6292
|
299405 |
11-May-2016 |
arybchik |
sfxge(4): simplify efx_mac_select
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6291
|
299404 |
11-May-2016 |
arybchik |
sfxge(4): remove Falcon specific EV_GLOBAL support
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6290
|
299403 |
11-May-2016 |
arybchik |
sfxge(4): remove Falcon-specific code paths from common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6289
|
299402 |
11-May-2016 |
arybchik |
sfxge(4): add TLV format buffer manipulation functions for V3 licensing
The licensing partition for V3 licensing will use the standard TLV format, so Medford licensing operations on the staging buffer are implemented using the TLV functions.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6288
|
299345 |
10-May-2016 |
arybchik |
sfxge(4): cleanup: fix typo
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299344 |
10-May-2016 |
arybchik |
sfxge(4): cleanup: remove unneeded include files
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299340 |
10-May-2016 |
arybchik |
sfxge(4): cleanup: remove unused efx_infer_family()
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299339 |
10-May-2016 |
arybchik |
sfxge(4): cleanup: remove obsolete common code module
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299338 |
10-May-2016 |
arybchik |
sfxge(4): cleanup: fix typos
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299337 |
10-May-2016 |
arybchik |
sfxge(4): cleanup efx_check.h comments and error messages
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299336 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_PHY_TXC43128
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299335 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_PHY_SFX7101
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299334 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_PHY_SFT9001
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299333 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_PHY_QT2025C
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299332 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_PHY_QT2022C2
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299331 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_PHY_NULL
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299330 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_NVRAM_SFX7101
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299328 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_NVRAM_SFT9001
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299327 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_FALCON_BOOTROM
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299326 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_MON_NULL
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299325 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_MON_MAX6647
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299324 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_MON_LM87
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299323 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_MAC_FALCON_XMAC
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299322 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_MAC_FALCON_GMAC
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299321 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_FALCON_NIC_CFG_OVERRIDE
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299320 |
10-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_FALCON
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299319 |
10-May-2016 |
arybchik |
sfxge(4): add TLV item manipulation functions to common code
Add creation, deletion and checksumming operations to the private copy of TLV functions in the common code. Functions added in preparation for V3 licensing support, as licensing keys are stored in the TLV format. Missing support for multiple segment partitions added. Annotations for Windows code analysis also updated.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6264
|
299318 |
10-May-2016 |
arybchik |
sfxge(4): restructure TLV buffer validation
Move TLV buffer validation into ef10-specific function and add accessor function which also converts the partition ID to the internal representation.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6263
|
299254 |
09-May-2016 |
arybchik |
sfxge(4): remove EFSYS_OPT_PCIE_TUNE
With the removal of Falcon support, this is now dead code.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299253 |
09-May-2016 |
arybchik |
sfxge(4): disable common code support for Falcon
This patch ensures that client code will fail to build with Falcon support. Following patches remove Falcon support code entirely.
sfxge(4) has never supported Falcon.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299252 |
09-May-2016 |
arybchik |
sfxge(4): cleanup: fix obsolete EFSYS_OPT_PHY_BIST option
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299251 |
09-May-2016 |
arybchik |
sfxge(4): Siena no longer supports EFSYS_OPT_PCIE_TUNE
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
299250 |
09-May-2016 |
arybchik |
sfxge(4): remove unused efx_nic_pcie_extended_sync()
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week
|
298955 |
03-May-2016 |
pfg |
sys/dev: minor spelling fixes.
Most affect comments, very few have user-visible effects.
|
295467 |
10-Feb-2016 |
arybchik |
sfxge: implement SIOCGI2C to read information from phy modules
The IOCTL is used by 'ifconfig -v' to show SFP+/QSFP+ information including inventory information and dianostics (temperature, light levels, voltage etc).
Reviewed by: gnn,melifaro Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D5240
|
294371 |
20-Jan-2016 |
arybchik |
sfxge: cleanup: support __out_bcount_part[_opt] PREfast annotations
New annotation coming into use in the common code. Support its use by adding null macro definitions for non-Windows platforms.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. X-MFC with: r293901
|
294310 |
19-Jan-2016 |
arybchik |
sfxge: improve error handling in ef10_ev_rx()
Ensure that checksum flags and L3/L4 fields are ignored if lower level errors are reported in the event.
Remove checks for CRC0_ERR (bad iSCSI header CRC) and CRC1_ERR (bad iSCSI payload or FCoE/FCoIP CRC) as they are not used by any existing code.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4975
|
294309 |
19-Jan-2016 |
arybchik |
sfxge: select whether to read current or backup partition in Medford A/B scheme
The dynamic config on Medford is stored using two partitions in flash, and at any time one is the 'current' partition, used to provide the active config, and the other 'backup' partition is used for writes. This means that there are two potential partitions that can be used to service reads, and which is required can depend on, for example, whether the read is to get the current contents or to verify a write.
When the partition write lock is held, the default behaviour is to read from the backup partition, which was wrong for most reads in the common code which require the current partition. This change allows the current partition to be read whilst the write lock is held. There is one read in Manftest which needs the backup partition.
ef10_nvram_partn_read_mode() is created to avoid changing ef10_nvram_partn_read() which shares a prototype with the equivalent Falcon and Siena methods.
MC_CMD_NVRAM_READ_IN_V2 adds an extra field, but firmware which doesn't support it just ignores it.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4974
|
294259 |
18-Jan-2016 |
arybchik |
sfxge: regenerate EF10 registers definition for Medford
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
294258 |
18-Jan-2016 |
arybchik |
sfxge: fix unused function warning
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
294257 |
18-Jan-2016 |
arybchik |
sfxge: regenerate siena_flash.h from FW sources
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
294256 |
18-Jan-2016 |
arybchik |
sfxge: cleanup: remove extra empty lines
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
294255 |
18-Jan-2016 |
arybchik |
sfxge: highlight that descriptor cache sizes are configured using TLV now
Submitted by: Tom Millington <tmillington at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
294254 |
18-Jan-2016 |
arybchik |
sfxge: support RFID-selectable segments of dynamic configuration
tlv_partition_header has field *preset* to support RFID-selectable segments of dynamic configuration
Submitted by: Mateusz Wrzesinski <mwrzesinski at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
294253 |
18-Jan-2016 |
arybchik |
sfxge: if supported by firmware, use enhanced SET_MAC command to only configure the MTU
This allows an MTU change to be requested on unpriviliged functions without also setting all the other parameters supported by MC_CMD_SET_MAC.
The enhanced SET_MAC command was introduced in v4_7 firmware.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4958
|
294252 |
18-Jan-2016 |
arybchik |
sfxge: convert nvram set_version method to use partition id
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
294251 |
18-Jan-2016 |
arybchik |
sfxge: convert nvram get_version method to use partition id
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
294250 |
18-Jan-2016 |
arybchik |
sfxge: convert nvram rw_finish method to use partition id
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
294249 |
18-Jan-2016 |
arybchik |
sfxge: convert nvram write method to use partition id
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4961
|
294201 |
17-Jan-2016 |
arybchik |
sfxge: convert nvram erase method to use partition id
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4957
|
294094 |
15-Jan-2016 |
arybchik |
sfxge: check the RX DMA end padding configuration on Medford
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4952
|
294093 |
15-Jan-2016 |
arybchik |
sfxge: convert nvram read method to use partition id
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4951
|
294092 |
15-Jan-2016 |
arybchik |
sfxge: rename Huntington MAC methods to EF10 and use for Medford
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4950
|
294091 |
15-Jan-2016 |
arybchik |
sfxge: rename common hunt PHY methods to ef10 and use for Medford
Leaving BIST methods for now as, though the Medford bootrom now has lots of BIST support, production firmware doesn't appear to have been updated yet.
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4949
|
294081 |
15-Jan-2016 |
arybchik |
sfxge: cleanup: simplify ef10_get_datapath_caps
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4938
|
294080 |
15-Jan-2016 |
arybchik |
sfxge: convert nvram rw_start method to use partition id
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4937
|
294079 |
15-Jan-2016 |
arybchik |
sfxge: Medford still needs fallback for no privilege mask
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4936
|
294078 |
15-Jan-2016 |
arybchik |
sfxge: medford stores a single global copy of VPD
Not per PF copies as on Huntington.
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4935
|
294076 |
15-Jan-2016 |
arybchik |
sfxge: rework MCDI request completion
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4933
|
294075 |
15-Jan-2016 |
arybchik |
sfxge: rename hunt_link_state_t to ef10_link_state_t
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4932
|
293902 |
14-Jan-2016 |
arybchik |
sfxge: cleanup: quieten efx_mcdi_read_resonse_header error reporting
The "mcdi_err_arg" probe still reports results of failed MCDI commands, unless the caller invoked efx_mcdi_execute_quiet().
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4919
|
293901 |
14-Jan-2016 |
arybchik |
sfxge: add accessors for license-related MCDI calls to common code
Add support for Huntington MCDI licensing interface to common code. Ported from Linux net driver IOCTL functions with restructuring for initial support for V3 licensing API.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4918
|
293900 |
14-Jan-2016 |
arybchik |
sfxge: add table entries for License NVRAM partition
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4917
|
293899 |
14-Jan-2016 |
arybchik |
sfxge: cleanup: adjust efx_mcdi_get_port_modes() comment for clarity
Fix an explanatory comment which did not explain very well.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4916
|
293895 |
14-Jan-2016 |
arybchik |
sfxge: fix common code VPD iterator and duplicate tag verification
Fix efx_vpd_hunk_next() which has -- since its inception -- failed to correctly iterate over the tags and keywords contained in the VPD data. Only the first tag or keyword would be returned and the next call with *contp == 1 would walk to the end of the data and finish.
This was spotted when fixing up errors spotted by Prefast code analysis (which neglected to set all of the out parameters in all successful cases)
Also fix efx_vpd_verify() on Siena and EF10 which (as a side effect of correctly iterating over all the tags and keywords) was failing as it detected that both the static VPD and dynamic VPD storage contained an RV keyword in the VPD-R tag. This is intentional as the static VPD and dynamic VPD are stored separately (firmware merges their contents and computes a new RV keyword checksum for the data readable from the VPD capability in PCIe configuration space).
Submitted by: Andrew Lee <alee at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4915
|
293892 |
14-Jan-2016 |
arybchik |
sfxge: use correct register definitions for setting interrupt moderation on Medford
The only value which has changed is the number of rows (ER_DZ_EVQ_TMR_REG_ROWS is 2048 vs 1024 for FR_BZ_TIMER_COMMAND_REGP0_ROWS) but that isn't used, so this shouldn't change behaviour.
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4913
|
293891 |
14-Jan-2016 |
arybchik |
sfxge: support FATSOv2 in common code
Sponsored by: Solarflare Communications, Inc. Reviewed by: gnn MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4912
|
293890 |
14-Jan-2016 |
arybchik |
sfxge: rx_prefix_pktlen methods do not require EFSYS_OPT_RX_SCALE
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4911
|
293889 |
14-Jan-2016 |
arybchik |
sfxge: convert nvram size method to use partition id
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4910
|
293888 |
14-Jan-2016 |
arybchik |
sfxge: rework MCDI start request
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4909
|
293887 |
14-Jan-2016 |
arybchik |
sfxge: add Medford NIC methods
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4908
|
293819 |
13-Jan-2016 |
arybchik |
sfxge: cleanup: fix return code types
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
293818 |
13-Jan-2016 |
arybchik |
sfxge: cleanup: fix typo in unused EFX_QWORD_IS_SET64
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
293817 |
13-Jan-2016 |
arybchik |
sfxge: cleanup: prefast fixes in common code
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
293814 |
13-Jan-2016 |
arybchik |
sfxge: cleanup: simplify EFX header includes
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
293813 |
13-Jan-2016 |
arybchik |
sfxge: define FATSOv2 option descriptors
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
293812 |
13-Jan-2016 |
arybchik |
sfxge: add Medford firmware subtypes definitions
Pulled firmware_ids.h from firmwaresrc and applied genfwdef script.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4897
|
293811 |
13-Jan-2016 |
arybchik |
sfxge: support MC_CMD_GET_CAPABILITIES_V2
Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4896
|
293810 |
13-Jan-2016 |
arybchik |
sfxge: simplify conversion of NVRAM types to/from partition ids
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4895
|
293809 |
13-Jan-2016 |
arybchik |
sfxge: simplify MCDI request start
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4894
|
293808 |
13-Jan-2016 |
arybchik |
sfxge: note VI_SHIFT reported in ALLOC_VIS response
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4892
|
293807 |
13-Jan-2016 |
arybchik |
sfxge: rework RX prefix handling in the common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4889
|
293806 |
13-Jan-2016 |
arybchik |
sfxge: remove unused common code EFSYS_OPT_RX_HDR_SPLIT
The EFSYS_OPT_RX_HDR_SPLIT optional feature in the common code implemented the Lookahead Split feature of Windows. This split received packets at a preconfigured byte offset, and delivered the header and payload portions to separate receive queues.
Now the common code interface has no callers, so remove it.
Note that this should not be confused with the Header Data Split feature of Windows, which splits packets at a header boundary.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4888
|
293805 |
13-Jan-2016 |
arybchik |
sfxge: rename common hunt NIC methods to ef10
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4880
|
293774 |
12-Jan-2016 |
arybchik |
sfxge: regenerate MCDI header
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
293773 |
12-Jan-2016 |
arybchik |
sfxge: remove obsolete lookahead split RXQ support
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4891
|
293772 |
12-Jan-2016 |
arybchik |
sfxge: pass context type and num_queues to efx_mcdi_rss_context_alloc
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4890
|
293770 |
12-Jan-2016 |
arybchik |
sfxge: cleanup: use consistent types for NVRAM partitions
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4887
|
293769 |
12-Jan-2016 |
arybchik |
sfxge: fix interrupt handling for Medford
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4886
|
293768 |
12-Jan-2016 |
arybchik |
sfxge: update NVRAM partition lookup for Medford
Prior to Medford, option ROM config was stored with one partition per network port. Medford stores option ROM config in a single partition (as an array of configurations, one per PF).
Update the EFXname /port to MCDI partition mapping for this.
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4885
|
293767 |
12-Jan-2016 |
arybchik |
sfxge: cleanup: improve consistency in efx_check.h
Make error messages consistent, and remove redundant checks.
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4884
|
293766 |
12-Jan-2016 |
arybchik |
sfxge: remove obsolete efx_mac_hash_set() from common code
This API has been replaced by efx_mac_multicast_list_set() and has no callers.
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4883
|
293765 |
12-Jan-2016 |
arybchik |
sfxge: rework MCDI header version handling
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4882
|
293764 |
12-Jan-2016 |
arybchik |
sfxge: rename hunt filter methods, types etc. to ef10 and use for Medford
New filters types may be added, but the same machinery should be able to handle them.
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4881
|
293763 |
12-Jan-2016 |
arybchik |
sfxge: add definitions for compressed satellite images to common code headers
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4878
|
293762 |
12-Jan-2016 |
arybchik |
sfxge: add new MCDI sensors to common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4877
|
293761 |
12-Jan-2016 |
arybchik |
sfxge: remove unnecessary pulling out of soft bits from RX events
These bigs are changed on Medford.
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4876
|
293758 |
12-Jan-2016 |
arybchik |
sfxge: remove obsolete common code PKTFILTER module
The pktfilter module has been obsolete for some time, as it was replaced by newer features in filter module. With the removal of the storport driver, this module has no users and can be removed.
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4875
|
293757 |
12-Jan-2016 |
arybchik |
sfxge: rename hunt MCDI methods to ef10 and use for Medford
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4874
|
293756 |
12-Jan-2016 |
arybchik |
sfxge: rename hunt nvram methods and use for Medford
Some new partitions have been added, but they shouldn't need to be handled any differently.
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4873
|
293755 |
12-Jan-2016 |
arybchik |
sfxge: rename Huntington VPD methods to ef10 and use for Medford
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4872
|
293754 |
12-Jan-2016 |
arybchik |
sfxge: rename hunt RX methods to ef10 and use for Medford
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4871
|
293753 |
12-Jan-2016 |
arybchik |
sfxge: rename hunt TX methods to ef10 and use for Medford
Rename all except hunt_tx_qdesc_tso_create(), which creates a fw-assisted TSO v1 descriptor which isn't supported on Medford.
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4870
|
293752 |
12-Jan-2016 |
arybchik |
sfxge: rename hunt ev methods to ef10 and use for Medford
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4869
|
293751 |
12-Jan-2016 |
arybchik |
sfxge: rename hunt interrupt methods to ef10 and use on Medford
All of these apply to both Huntington and Medford.
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4868
|
293750 |
12-Jan-2016 |
arybchik |
sfxge: update SRAM methods to be no-ops on Medford as well
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4867
|
293749 |
12-Jan-2016 |
arybchik |
sfxge: use NIC config in place of some Huntington specific PIO constants
This should allow these functions to work for Medford as well.
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4866
|
293748 |
12-Jan-2016 |
arybchik |
sfxge: change hunt specific fields of efx_nic_t to ef10
All these fields will be used in shared ef10 code, so put them in an ef10 member of a per-architecture union, rather that in the per-chip union.
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4865
|
293740 |
12-Jan-2016 |
arybchik |
sfxge: update autogenerated monitors lists
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
293734 |
12-Jan-2016 |
arybchik |
sfxge: add medford_impl.h, medford_nic.c, ef10_impl.h
Creating some files together to do the build system changes in one go.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4859
|
293733 |
12-Jan-2016 |
arybchik |
sfxge: add Medford sensor support
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4858
|
293732 |
12-Jan-2016 |
arybchik |
sfxge: use MCDIv2 on Medford
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4857
|
293731 |
12-Jan-2016 |
arybchik |
sfxge: add Medford PCI IDs to common code
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4856
|
293730 |
12-Jan-2016 |
arybchik |
sfxge: add sanity checking for EFX_OPT_MEDFORD build option to efx_check.h
Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4854
|
293658 |
11-Jan-2016 |
arybchik |
sfxge: add Medford build option disabled by default
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
292090 |
11-Dec-2015 |
arybchik |
sfxge: unify MCDI response polling
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: philip Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D4496
|
292088 |
11-Dec-2015 |
arybchik |
sfxge: simplify MCDI methods
It is a part of MCDI rework to share more code among NIC families.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D4481
|
292055 |
10-Dec-2015 |
arybchik |
sfxge: consolidate privilege check functions
To reduce code duplication in common code, consolidate similar privilege check functions.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4480
|
292053 |
10-Dec-2015 |
arybchik |
sfxge: cleanup: fix header
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
292052 |
10-Dec-2015 |
arybchik |
sfxge: simplify privilege checks with macro
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4455
|
292051 |
10-Dec-2015 |
arybchik |
sfxge: [6/6] support for MCDI proxy authorization in common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D4454
|
292050 |
10-Dec-2015 |
arybchik |
sfxge: [5/6] rework event completion error handling
Required for MCDI proxy authorization support.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D4453
|
292010 |
09-Dec-2015 |
arybchik |
sfxge: cleanup: removed unused variable
Submitted by: Artem V. Andreev <Artem.Andreev at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
292009 |
09-Dec-2015 |
arybchik |
sfxge: cleanup: fix (unused) EFX_OR_BYTE macro
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
292008 |
09-Dec-2015 |
arybchik |
sfxge: use MAC spoofing TX and MAC change privileges
Update of common code to provide a query on the MAC_SPOOFING_TX and CHANGE_MAC privileges instead of the deprecated MAC_SPOOFING privilege.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4436
|
292007 |
09-Dec-2015 |
arybchik |
sfxge: [4/6] rework MCDI response polling
Required for MCDI proxy authorization support.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D4435
|
291985 |
08-Dec-2015 |
arybchik |
sfxge: [3/6] rework MCDI response handling
Required for MCDI proxy authorization support.
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D4420
|
291928 |
07-Dec-2015 |
arybchik |
sfxge: [2/6] rework MCDI response polling
Required to support MCDI proxy authorization.
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D4418
|
291927 |
07-Dec-2015 |
arybchik |
sfxge: [1/6] add common code MCDI proxy auth build option
Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D4417
|
291926 |
07-Dec-2015 |
arybchik |
sfxge: fix pointer parameter/value signedness mismatch warnings
TLV routines use 'uint8_t *', NVRAM code uses caddr_t. Just cast to required type to fix the warning.
Required to build with -Werror=pointer-signg.
Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4391
|
291925 |
07-Dec-2015 |
arybchik |
sfxge: fix name conflict with crc32_table from sys/crc32.h
The header is not present on FreeBSD, but exists on OmniOS where sfxge common code is used as well.
Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4390
|
291924 |
07-Dec-2015 |
arybchik |
sfxge: switch to TxQ creation specific flags
It is better do not mix TxQ creation and receive event flags since only checksum flags are applicable to TxQ. Also it will allow to add a new TxQ creation specific flags.
Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4389
|
291923 |
07-Dec-2015 |
arybchik |
sfxge: [Sorrento] support writing of MUM firmware
When writing the MUM firmware the chunk size must be equal to the erase size.
Submitted by: Laurence Evans <levans at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4388
|
291922 |
07-Dec-2015 |
arybchik |
sfxge: support PERMIT_SET_MAC_WHEN_FILTERS_INSTALLED flag
Use flag on vadapter alloc when reported as a supported capability. Use the slow device reset only when the capability is missing.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4387
|
291862 |
05-Dec-2015 |
arybchik |
sfxge: erase nvram partitions in chunks equal to their erase size
The erase size is reported by the nvram info command.
Submitted by: Paul Fox <pfox at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4386
|
291849 |
05-Dec-2015 |
arybchik |
sfxge: pick up the new TLV structures
The header is auto-generated from firmware sources.
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291848 |
05-Dec-2015 |
arybchik |
sfxge: cleanup: remove set but not used trailer variable
Required to build with -Werror=unused-but-set-variable.
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291847 |
05-Dec-2015 |
arybchik |
sfxge: cleanup: remove set but not used variable with parse error indication
Required to build with -Werror=unused-but-set-variable. Keep it under #if 0 as a reminder for parse error processing.
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291846 |
05-Dec-2015 |
arybchik |
sfxge: cleanup: remove set but not used saved_spec variable
Required to build with -Werror=unused-but-set-variable.
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291845 |
05-Dec-2015 |
arybchik |
sfxge: cleanup: remove SFL9122 "Huntington" PCI IDs
The SFL9122 "Huntington" controller was never built.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291747 |
04-Dec-2015 |
arybchik |
sfxge: [EF10] support RxQ scattering control
If, for example, a VF is configured to use a 1500 byte MTU, but the port it is attached to is set to 9000 bytes, overlength frames can be received by the VF. As Huntington scatters by default, these overlength packets would be scattered across several descriptors, with all except the last having the CONT bit set.
To avoid this, disable scatter when creating RXQs if the firmware supports doing so, which all recent versions do. Then we only get a single descriptor from an overlength frame. This will have the CONT bit set to indicate it was truncated, so we can discard it.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4354
|
291746 |
04-Dec-2015 |
arybchik |
sfxge: add additional WRITESIZE value for NVRAM_INFO command
Submitted by: Paul Fox <pfox at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4353
|
291682 |
03-Dec-2015 |
arybchik |
sfxge: regenerate MCDI headers
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291680 |
03-Dec-2015 |
arybchik |
sfxge: remove internal register definitions that should not be used by host code
Submitted by: Guido Barzini <gbarzini at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291679 |
03-Dec-2015 |
arybchik |
sfxge: add markers for autogenerated defines
Move use defines outside.
Submitted by: Guido Barzini <gbarzini at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291678 |
03-Dec-2015 |
arybchik |
sfxge: sync TLV layout headers with firmwaresrc for event merging config
Submitted by: Tom Millington <tmillington at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291677 |
03-Dec-2015 |
arybchik |
sfxge: add MCDI logging support to common code
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4331
|
291590 |
01-Dec-2015 |
arybchik |
sfxge: retry VF vAdaptor allocation if it fails because of no EVB port yet
After an MC reboot, a VF driver may reset before the PF driver has finished bringing everything back up. This includes the VFs EVB port. MC_CMD_VADAPTOR_ALLOC is the first MCDI call after an MC reboot to require the EVB port, so if it fails with MC_CMD_ERR_NO_EVB_PORT, retry the command a few times after waiting a while.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4333
|
291588 |
01-Dec-2015 |
arybchik |
sfxge: add function to query link control privilege
Make link control privilege visible to OS driver to guard updates to flow control and PHY advertised capabilities.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4330
|
291587 |
01-Dec-2015 |
arybchik |
sfxge: FPGA and FPGA backup (diagnostic) partitions added to hunt_parttbl
It allows manftest to program them.
Submitted by: Paul Fox <pfox at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4329
|
291586 |
01-Dec-2015 |
arybchik |
sfxge: allow VFs to have locally administered MAC addresses
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4328
|
291585 |
01-Dec-2015 |
arybchik |
sfxge: support MAC spoofing for 4.2.x firmare
Common code should infer other privileges from Admin privilege to support firmware that pre-dates introduction of specific privilege flags.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4327
|
291436 |
29-Nov-2015 |
arybchik |
sfxge: add prefast annotation to common code return types
Using a typedef for common code return types (rather than "int") allows the Prefast static analyser to understand when a function has been successful (and thus when its postconditions must hold).
This greatly reduces then number of false positives reported by prefast for error paths in common code functions.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291434 |
29-Nov-2015 |
arybchik |
sfxge: cleanup: fix prefast annotations on mac stats updates
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days X-MFC with: r291397
|
291432 |
29-Nov-2015 |
arybchik |
sfxge: modify nvram update functions for uio platform to support RFID-selectable presets
Dynamic config partitions on boards that support RFID are divided into a number of segments, each formatted like a partition, with header, trailer and end tags. The first segment is the current active configuration.
The segments are initialised by manftest and each contain a different configuration e.g. firmware variant. The firmware can be instructed via RFID to copy a segment over the first segment, hence changing the active configuration. This allows ops to change the configuration of a board prior to shipment using RFID.
Changes to the dynamic config may need to be written to all segments (in particular firmware versions written by manftest) or just the first segment (changes to the active configuration). See SF-111324-SW. If only the first segment is written the code still needs to be aware of the possible presence of subsequent segments as writing to a segment may cause its size to increase, which would overwrite the subsequent segments and invalidate them.
Boards that do not support RFID will only have one segment in their dynamic config partition.
Submitted by: Paul Fox <pfox at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4302
|
291398 |
27-Nov-2015 |
arybchik |
sfxge: cleanup: report error on failure path in efx_vpd_hunk_verify
If the VPD is corrupt and contains an 'RV' keyword before the END tag, then this function could return without setting the return code to report the error.
Found by prefast.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291397 |
27-Nov-2015 |
arybchik |
sfxge: cleanup: fix prefast annotations on mac stats updates
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291396 |
27-Nov-2015 |
arybchik |
sfxge: fix prefast warning in falconsiena_tx_qcreate
Keep prefast happy by returning the initial queue index from falconsiena_tx_qcreate(). No change in behaviour, as etxo_qcreate already zeros *addedp before the call.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291395 |
27-Nov-2015 |
arybchik |
sfxge: cleanup: fix prefast annotations for stats buffers
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291394 |
27-Nov-2015 |
arybchik |
sfxge: unlink PIO buffers from VIs in WC mapping in hunt_nic_fini()
PIO is not yet supported in the FreeBSD driver.
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291393 |
27-Nov-2015 |
arybchik |
sfxge: infer external port numbering for Pavia
Adjust external port mapping table to distinguish Pavia from Monza. Now the presence of any 40G mode implies at least 2 outputs per external port. So Pavia 4x10G ports are now mapped to 1,2,3,4; Monza 4x10G ports map to 1,1,2,2 as before.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291392 |
27-Nov-2015 |
arybchik |
sfxge: cleanup: fix prefast annotation
Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291391 |
27-Nov-2015 |
arybchik |
sfxge: do not use unnamed union in siena_mc_combo_rom_hdr_t
GCC 4.2.1 used on FreeBSD 8 and 9 branches does not like unnamed union member in the structure. It is not strictly required in head, but nice to have to minimize difference with out-of-tree driver.
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
291390 |
27-Nov-2015 |
arybchik |
sfxge: cleanup: error probe correction
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
285798 |
22-Jul-2015 |
arybchik |
sfxge: added fallbacks for pre 4.2.1 firmware support
Driver must be able to start against older firmware that is missing recently added MCDI calls, otherwise firmware upgrade will not be possible.
Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D3145
|
283514 |
25-May-2015 |
arybchik |
sfxge: add 7xxx NICs family support
Support 7xxx adapters including firmware-assisted TSO and VLAN tagging:
- Solarflare Flareon Ultra 7000 series 10/40G adapters: - Solarflare SFN7042Q QSFP+ Server Adapter - Solarflare SFN7142Q QSFP+ Server Adapter
- Solarflare Flareon Ultra 7000 series 10G adapters: - Solarflare SFN7022F SFP+ Server Adapter - Solarflare SFN7122F SFP+ Server Adapter - Solarflare SFN7322F Precision Time Synchronization Server Adapter
- Solarflare Flareon 7000 series 10G adapters: - Solarflare SFN7002F SFP+ Server Adapter
Support utilities to configure adapters and update firmware.
The work is done by Solarflare developers (Andy Moreton, Andrew Lee and many others), Artem V. Andreev <Artem.Andreev at oktetlabs.ru> and me.
Sponsored by: Solarflare Communications, Inc. MFC after: 2 weeks Causually read by: gnn Differential Revision: https://reviews.freebsd.org/D2618
|
280379 |
23-Mar-2015 |
arybchik |
sfxge: do not check MCDI status word
This is a temporary workaround until we determine a reliable sequence of operations for detecting MC reboots.
Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D2084
|
280378 |
23-Mar-2015 |
arybchik |
sfxge: FreeBSD before 10 does not have bus_space_*_8 on amd64
bus_space_*_8() are not always macros, so it is not correct to use #ifndef.
Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D2083
|
280375 |
23-Mar-2015 |
arybchik |
sfxge: add barriers to BAR write macros
In theory the barriers are required to cope with write combining and reordering. Two barriers are added (sometimes merged to one): 1. Before the first write to guarantee that previous writes to the region have been done 2. Before the last write to guarantee that write to the last dword/qword is done after previous writes Barriers are inserted before in the assumption that it is better to postpone barriers as much as it is possible (more chances that the operation has already been already done and barrier does not stall CPU).
On x86 and amd64 bus space write barriers are just compiler memory barriers which are definitely required.
Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D2077
|
279266 |
25-Feb-2015 |
arybchik |
sfxge: correct limit for number of Rx queues
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279183 |
22-Feb-2015 |
arybchik |
sfxge: add common code support for changing TX queue pace
To delay packets from a particular TX queue by a particular time, write a value into the TX Pace table s.t. pace time <= TX Pace Clock Period * (2 ^ pace value) - the TX pace clock is 1/13 of the system clock, so its period should be 104 or 52 ns depending on whether turbo mode is active.
EFX_TX_PACE_CLOCK_BASE added by me.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279182 |
22-Feb-2015 |
arybchik |
sfxge: correct event queue interrupt moderation timer quanta
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279178 |
22-Feb-2015 |
arybchik |
sfxge: do no allow EFSYS_MEM_ALLOC sleep
It solves locking problem when EFSYS_MEM_ALLOC is called in the context holding a mutex (not allowed to sleep). E.g. on interface bring up or multicast addresses addition.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279175 |
22-Feb-2015 |
arybchik |
sfxge: using bus_space_*_stream_* API for better portability
Host-bus byte order translation is not requred.
Submitted by: Artem V. Andreev <Artem.Andreev at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279174 |
22-Feb-2015 |
arybchik |
sfxge: add missing Siena sensors to common code
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279173 |
22-Feb-2015 |
arybchik |
sfxge: add missing common code NVRAM types and map from MCDI
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279172 |
22-Feb-2015 |
arybchik |
sfxge: add new identities to Siena static config
Submitted by: Andrew Jackson <ajackson at solarflare.com> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279146 |
22-Feb-2015 |
arybchik |
sfxge: use sparse index to retrieve sensor value
Submitted by: Andrew Jackson <ajackson at solarflare.com> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279145 |
22-Feb-2015 |
arybchik |
sfxge: use macros to acquire and release BAR locks everywhere
It was the result of invalid merge of the patch from out-of-tree driver.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279143 |
22-Feb-2015 |
arybchik |
sfxge: use common definitions of MC shared memory offsets and PDU length
Submitted by: Ben Hutchings Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279142 |
22-Feb-2015 |
arybchik |
sfxge: synchronize EF10 registers header
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279141 |
22-Feb-2015 |
arybchik |
sfxge: style fixes and cleanup
Sync endif comment with conditional. BOOTROM and SIENA_BOOTROM are the same, but highlight that it is Siena. Restore commented out assertion. Sync comments with out-of-tree driver.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279098 |
21-Feb-2015 |
arybchik |
sfxge: allow TX and RX queue limits to be changed
Before the common code had hard coded limits on the IDs RXQs and TXQs could be created with which were suited for the Windows driver with VMQ, and so would prevent queues with IDs greater than or equal to 259 (for TXQs) or 768 (for RXQs) from being created. This change allows the limits to be set in efsys.h, so that all 1024 queues can be created during new manftest tests. Also, the descriptor cache sizes were also hard coded to values suited to the smaller queue counts, and so it was necessary to make them configurable as well.
Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279097 |
21-Feb-2015 |
arybchik |
sfxge: check allocations are non-NULL before freeing them
Caught when efx_filter_init() failed and called efx_filter_fini() in the teardown path.
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279096 |
21-Feb-2015 |
arybchik |
sfxge: keep fw and driver view of autoneg parameters consistent
Previously the driver's view was the expected outcome of any reconfiguration even if that reconfiguration failed.
Submitted by: Ben Horgan Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279095 |
21-Feb-2015 |
arybchik |
sfxge: never set RX_DESCQ_EN during self-test
We must not enable RX queues with random parameters when they are mapped into a VF with an untrusted driver. It's probably not a good idea to do this anyway, so take this bit out of the table test masks.
Submitted by: Ben Hutchings Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279078 |
20-Feb-2015 |
arybchik |
sfxge: add assertions that required event handlers are implemented
efx_ev_mcdi() does not assert or check that all event handlers it calls are non-null. Add assertions at the top for all required event handlers, as some events (in the case of this bug, monitor events) are rare.
Submitted by: Ben Hutchings Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279077 |
20-Feb-2015 |
arybchik |
sfxge: style fixes
Use nitem() to get number of array elements. Remove unused define. Use TAB to indent.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279076 |
20-Feb-2015 |
arybchik |
sfxge: regenerate sensor map
Add Florence R7 and Modena sensors.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279048 |
20-Feb-2015 |
arybchik |
sfxge: add Florence R7 turbo mode support to common code
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
279047 |
20-Feb-2015 |
arybchik |
sfxge: regenerate MCDI protocol headers
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
278942 |
18-Feb-2015 |
arybchik |
sfxge: fix broken MCDI_EV_FIELD() macro
Submitted by: Andrew Lee <alee at solarflare.com> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
278941 |
18-Feb-2015 |
arybchik |
sfxge: support variable-length response to MCDI GET_BOARD_CFG
Allocate the minimum or maximum response length for GET_BOARD_CFG as appropriate. When looking up firmware subtypes by partition ID, check the ID against the actual response length.
Merge of the patch made by Ben Hutchings in 2011.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
278839 |
16-Feb-2015 |
arybchik |
sfxge: style fixes
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
278254 |
05-Feb-2015 |
arybchik |
sfxge: using 64-bit access for x86-64
Submitted by: Artem V. Andreev <Artem.Andreev at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
278250 |
05-Feb-2015 |
arybchik |
sfxge: make lock names unique
Lock name should include interface name. Tx queue and event queue lock name should include queue number.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
278221 |
04-Feb-2015 |
arybchik |
sfxge: Add macros to init, destroy, acquire, release and assert locks
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
278220 |
04-Feb-2015 |
arybchik |
sfxge: Implement EFSYS_MEM_READ_BARRIER()
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
277891 |
29-Jan-2015 |
arybchik |
sfxge: Remove unused esm_size member of the efsys_mem_t structure
esm_size is not even initialized properly when memory is allocated.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
277886 |
29-Jan-2015 |
arybchik |
sfxge: Make it possible to build without EVQ statistics
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
272325 |
30-Sep-2014 |
gnn |
cleanup: code style fixes
Remove trailing whitespaces and tabs. Enclose value in return statements in parentheses. Use tabs after #define. Do not skip comparison with 0/NULL in boolean expressions.
Submitted by: Andrew Rybchenko <arybchenko at solarflare.com> Sponsored by: Solarflare Communications, Inc.
|
264461 |
14-Apr-2014 |
gnn |
Commit various fixes for the SolarFlare drivers, in particular this set of patches fixes support for systems with > 32 cores.
Details include
sfxge: RXQ index (not label) comes from FW in flush done/failed events
Change the second argument name of the efx_rxq_flush_done_ev_t and efx_rxq_flush_failed_ev_t prototypes to highlight that RXQ index (not label) comes from FW in flush done and failed events.
sfxge: TXQ index (not label) comes from FW in flush done event
Change the second argument name of the efx_txq_flush_done_ev_t prototype to highlight that TXQ index (not label) comes from FW in flush done event.
sfxge: use TXQ type as label to support more than 32 TXQs
There are 3 TXQs in event queue 0 and 1 TXQ (with TCP/UDP checksum offload) in all other event queues.
Submitted by: Andrew Rybchenko <Andrew.Rybchenko at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc.
|
258676 |
27-Nov-2013 |
pluknet |
Bandaid for compiling with gcc.
|
258541 |
25-Nov-2013 |
attilio |
- For kernel compiled only with KDTRACE_HOOKS and not any lock debugging option, unbreak the lock tracing release semantic by embedding calls to LOCKSTAT_PROFILE_RELEASE_LOCK() direclty in the inlined version of the releasing functions for mutex, rwlock and sxlock. Failing to do so skips the lockstat_probe_func invokation for unlocking. - As part of the LOCKSTAT support is inlined in mutex operation, for kernel compiled without lock debugging options, potentially every consumer must be compiled including opt_kdtrace.h. Fix this by moving KDTRACE_HOOKS into opt_global.h and remove the dependency by opt_kdtrace.h for all files, as now only KDTRACE_FRAMES is linked there and it is only used as a compile-time stub [0].
[0] immediately shows some new bug as DTRACE-derived support for debug in sfxge is broken and it was never really tested. As it was not including correctly opt_kdtrace.h before it was never enabled so it was kept broken for a while. Fix this by using a protection stub, leaving sfxge driver authors the responsibility for fixing it appropriately [1].
Sponsored by: EMC / Isilon storage division Discussed with: rstone [0] Reported by: rstone [1] Discussed with: philip
|
250460 |
10-May-2013 |
eadler |
Fxi a bunch of typos.
PR: misc/174625 Submitted by: Jeremy Chadwick <jdc@koitsu.org>
|
228078 |
28-Nov-2011 |
philip |
sfxge: Add $FreeBSD$ tags to common code files.
Requested by: bz
|
227641 |
17-Nov-2011 |
marius |
Implement prefetch_read_{many,once}() for sparc64 and fix compilation on other !x86 architectures.
|
227569 |
16-Nov-2011 |
philip |
Add the sfxge(4) device driver, providing support for 10Gb Ethernet adapters based on Solarflare SFC9000 family controllers. The driver supports jumbo frames, transmit/receive checksum offload, TCP Segmentation Offload (TSO), Large Receive Offload (LRO), VLAN checksum offload, VLAN TSO, and Receive Side Scaling (RSS) using MSI-X interrupts.
This work was sponsored by Solarflare Communications, Inc.
My sincere thanks to Ben Hutchings for doing a lot of the hard work!
Sponsored by: Solarflare Communications, Inc. MFC after: 3 weeks
|