diff options
| author | Jack F Vogel <jfv@FreeBSD.org> | 2010-03-27 00:21:40 +0000 |
|---|---|---|
| committer | Jack F Vogel <jfv@FreeBSD.org> | 2010-03-27 00:21:40 +0000 |
| commit | c00148556a4cbd3d8fd249c1d32968d95dcdfe29 (patch) | |
| tree | 56ba93eba1abadf72b500969032db51e45f29957 /sys/dev/ixgbe/ixgbe_api.c | |
| parent | 1764e57174705ac12de7a47b55a99706a4a7b999 (diff) | |
Update the driver to Intel version 2.1.6
- add some new hardware support for 82599
- Big change to interrupt architecture, it now
uses a queue which contains an RX/TX pair as
the recipient of the interrupt. This will reduce
overall system interrupts/msix usage.
- Improved RX mbuf handling: the old get_buf routine
is no longer synchronized with rxeof, this allows
the elimination of packet discards due to mbuf
allocation failure.
- Much simplified and improved AIM code, it now
happens in the queue interrupt context and takes
into account both the traffic on the RX AND TX
side.
- variety of small tweaks, like ring size, that have
been seen as performance improvements.
- Thanks to those that provided feedback or suggested
changes, I hope I've caught all of them.
Notes
svn path=/head/; revision=205720
Diffstat (limited to 'sys/dev/ixgbe/ixgbe_api.c')
| -rw-r--r-- | sys/dev/ixgbe/ixgbe_api.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/sys/dev/ixgbe/ixgbe_api.c b/sys/dev/ixgbe/ixgbe_api.c index 44644574860c..a65686e29f21 100644 --- a/sys/dev/ixgbe/ixgbe_api.c +++ b/sys/dev/ixgbe/ixgbe_api.c @@ -1,6 +1,6 @@ /****************************************************************************** - Copyright (c) 2001-2009, Intel Corporation + Copyright (c) 2001-2010, Intel Corporation All rights reserved. Redistribution and use in source and binary forms, with or without @@ -111,6 +111,7 @@ s32 ixgbe_set_mac_type(struct ixgbe_hw *hw) case IXGBE_DEV_ID_82599_COMBO_BACKPLANE: case IXGBE_DEV_ID_82599_SFP: case IXGBE_DEV_ID_82599_CX4: + case IXGBE_DEV_ID_82599_T3_LOM: hw->mac.type = ixgbe_mac_82599EB; break; default: @@ -168,6 +169,20 @@ s32 ixgbe_start_hw(struct ixgbe_hw *hw) } /** + * ixgbe_enable_relaxed_ordering - Enables tx relaxed ordering, + * which is disabled by default in ixgbe_start_hw(); + * + * @hw: pointer to hardware structure + * + * Enable relaxed ordering; + **/ +void ixgbe_enable_relaxed_ordering(struct ixgbe_hw *hw) +{ + if (hw->mac.ops.enable_relaxed_ordering) + hw->mac.ops.enable_relaxed_ordering(hw); +} + +/** * ixgbe_clear_hw_cntrs - Clear hardware counters * @hw: pointer to hardware structure * |
