Up to [cvs.NetBSD.org] / src / sys / dev / pci / ixgbe
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
Pull up the following, requested by msaitoh in ticket #1914: sys/dev/pci/ixgbe/ix_txrx.c 1.103-1.104 sys/dev/pci/ixgbe/ixgbe.c 1.334-1.338, 1.341-1.344 via patch sys/dev/pci/ixgbe/ixgbe.h 1.90-1.93 sys/dev/pci/ixgbe/ixgbe_82599.c 1.31-1.32 sys/dev/pci/ixgbe/ixgbe_api.c 1.29 sys/dev/pci/ixgbe/ixgbe_bypass.h 1.5 sys/dev/pci/ixgbe/ixgbe_common.c 1.46-1.47 sys/dev/pci/ixgbe/ixgbe_common.h 1.18 sys/dev/pci/ixgbe/ixgbe_dcb.c 1.14-1.15 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c 1.13 sys/dev/pci/ixgbe/ixgbe_type.h 1.59-1.61 sys/dev/pci/ixgbe/ixgbe_x540.c 1.24 sys/dev/pci/ixgbe/ixgbe_x550.c 1.28 sys/dev/pci/ixgbe/ixv.c 1.187-1.192 via patch - ixg(4): Add 82599 LS support once again. - ixg(4): Filter out spurious link up indication more. - ixg(4): Print DEVICE_CAPS register. - ixg(4): Fix a bug that the number of queues is unintentionally limited to a small number or wrong error message may be printed when two devices' number of MSI-X vectors are different. - Modify error message of wrong TX/RX descriptor size. - Enable interrupt after setting IFF_RUNNING. - Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change all devices all queues default interrupt rate. - Cleanup the code.
Pull up the following, requested by msaitoh in ticket #1753: sys/dev/pci/ixgbe/ix_txrx.c 1.103-1.104 sys/dev/pci/ixgbe/ixgbe.c 1.334-1.338, 1.341-1.344 via patch sys/dev/pci/ixgbe/ixgbe.h 1.90-1.93 sys/dev/pci/ixgbe/ixgbe_82599.c 1.31-1.32 sys/dev/pci/ixgbe/ixgbe_api.c 1.29 sys/dev/pci/ixgbe/ixgbe_bypass.h 1.5 sys/dev/pci/ixgbe/ixgbe_common.c 1.46-1.47 sys/dev/pci/ixgbe/ixgbe_common.h 1.18 sys/dev/pci/ixgbe/ixgbe_dcb.c 1.14-1.15 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c 1.13 sys/dev/pci/ixgbe/ixgbe_type.h 1.59-1.61 sys/dev/pci/ixgbe/ixgbe_x540.c 1.24 sys/dev/pci/ixgbe/ixgbe_x550.c 1.28 sys/dev/pci/ixgbe/ixv.c 1.187-1.192 - ixg(4): Add 82599 LS support once again. - ixg(4): Filter out spurious link up indication more. - ixg(4): Print DEVICE_CAPS register. - ixg(4): Fix a bug that the number of queues is unintentionally limited to a small number or wrong error message may be printed when two devices' number of MSI-X vectors are different. - Modify error message of wrong TX/RX descriptor size. - Enable interrupt after setting IFF_RUNNING. - Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change all devices all queues default interrupt rate. - Cleanup the code.
Pull up following revision(s) (requested by msaitoh in ticket #407): sys/dev/pci/ixgbe/ixgbe_common.c: revision 1.47 sys/dev/pci/ixgbe/ixgbe_x550.c: revision 1.28 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.60 sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.31 sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.32 sys/dev/pci/ixgbe/ixv.c: revision 1.187 sys/dev/pci/ixgbe/ixv.c: revision 1.188 sys/dev/pci/ixgbe/ixv.c: revision 1.189 sys/dev/pci/ixgbe/ixgbe_common.h: revision 1.18 sys/dev/pci/ixgbe/ixgbe_x540.c: revision 1.24 sys/dev/pci/ixgbe/ixgbe.c: revision 1.334 sys/dev/pci/ixgbe/ixgbe.c: revision 1.335 sys/dev/pci/ixgbe/ixgbe.c: revision 1.336 sys/dev/pci/ixgbe/ixgbe.c: revision 1.337 sys/dev/pci/ixgbe/ix_txrx.c: revision 1.103 sys/dev/pci/ixgbe/ixgbe.c: revision 1.338 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.59 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c: revision 1.13 sys/dev/pci/ixgbe/ixgbe_dcb.c: revision 1.14 sys/dev/pci/ixgbe/ixgbe_dcb.c: revision 1.15 sys/dev/pci/ixgbe/ixgbe_api.c: revision 1.29 sys/dev/pci/ixgbe/ixgbe_bypass.h: revision 1.5 sys/dev/pci/ixgbe/ixgbe.h: revision 1.90 sys/dev/pci/ixgbe/ixgbe.h: revision 1.91 sys/dev/pci/ixgbe/ixgbe.h: revision 1.92 sys/dev/pci/ixgbe/ixgbe_common.c: revision 1.46 ixg(4): Remove unused and old function. No functional change. - From FreeBSD's ix-3.3.32. ixg(4): Add 82599 LS once again. - From: FreeBSD: 9228ac3a69c4c7401a743e6465e118101a2beeb0 DPDK: 549ccd3dc01539e060597b503f2b65b272de3347 - This was removed 5 years ago. From the commit message: > Remove IXGBE_DEV_ID_82599_LS(0x154f) support again. I don't know why. This > was added in ix-3.2.18.tar.gz(NetBSD: ixgbe_82599.c rev. 1.20) and > removed in ix-3.3.6.tar.gz. ixg(4): Filter out spurious link up indication - Extend SFP+ cage crosstalk fix by re-checking link state after 5ms delay to filter out spurious link up indication by transceiver with no fiber cable connected. - From FreeBSD: In-tree: 04a5e6d7cadd06b10169c3c3a560649e7dc7444c Out of tree: ix-3.3.33. ixgbe: Simplify definitions. No functional change. Both DEFAULT_{TX,RX}D and PERFORM_{TX,RX}D are 2048. Use DEFAULT_{TX,RX}D. Same as FreeBSD. ixgbe: Modify error message of wrong TX/RX descriptor size. - Based from FreeBSD ix-3.3.35. I think ix-3.3.35's RING_INCREMENT(== 32) is wrong. It should be 8(DBA_ALIGN / sizeof(union ixgbe_adv_[tr]x_desc)). Linux also uses 8. ixgbe: Remove NO_82599_SUPPORT and NO_X540_SUPPORT support. NFCI. From FreeBSD ix-3.3.35. Note that this file is not used in NetBSD. ixgbe: Enable interrupt after setting IFF_RUNNING. Same as FreeBSD x-3.3.35. ixgbe: Cleanup. No fucntional change. Remove unused code, fix whitespace and modify comment to reduce against FreeBSD(mainly from ix-3.3.35).
Pull up following revision(s) (requested by msaitoh in ticket #1745): sys/dev/pci/ixgbe/ixgbe.c 1.327-1.332 via patch sys/dev/pci/ixgbe/ixgbe.h 1.87-1.88 sys/dev/pci/ixgbe/ixv.c 1.184-1.185 sys/dev/pci/ixgbe/ix_txrx.c 1.101 sys/dev/pci/ixgbe/ixgbe_82599.c 1.30 sys/dev/pci/ixgbe/ixgbe_vf.c 1.32-1.33 sys/dev/pci/ixgbe/ixgbe_vf.h 1.18 sys/dev/pci/ixgbe/ixgbe_mbx.h 1.20 sys/dev/pci/ixgbe/ixgbe_type.h 1.57 - Reorder some event counters for readability. - Rename some descriptions of event counters. - Count Queue Bytes {Transmit, Receive} counter. - Improve error check in ixgbe_check_mac_link_vf(). - Add new IXGBE_VF_GET_LINK_STATE message support. The VF's link state can be forced to down by PF. - Update FCTRL after writing multicast filter. - Update comments.
Pull up following revision(s) (requested by msaitoh in ticket #1745): sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.30 sys/dev/pci/ixgbe/ixv.c: revision 1.184 sys/dev/pci/ixgbe/ixv.c: revision 1.185 sys/dev/pci/ixgbe/ixgbe_vf.c: revision 1.32 sys/dev/pci/ixgbe/ixgbe_vf.c: revision 1.33 sys/dev/pci/ixgbe/ixgbe.h: revision 1.87 sys/dev/pci/ixgbe/ixgbe.h: revision 1.88 sys/dev/pci/ixgbe/ixgbe.c: revision 1.330 sys/dev/pci/ixgbe/ixgbe.c: revision 1.331 sys/dev/pci/ixgbe/ixgbe.c: revision 1.332 sys/dev/pci/ixgbe/ixgbe_vf.h: revision 1.18 sys/dev/pci/ixgbe/ix_txrx.c: revision 1.101 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.57 sys/dev/pci/ixgbe/ixgbe_mbx.h: revision 1.20 sys/dev/pci/ixgbe/ixgbe.c: revision 1.327 sys/dev/pci/ixgbe/ixgbe.c: revision 1.328 sys/dev/pci/ixgbe/ixgbe.c: revision 1.329 ixgbe: Reorder some event counters for readability. ixg(4): Rename some descriptions of event counters. - Rename some descriptions from register name to the meaning. - For the same meaning's counters, add "(soft)" or "(reg)". The former is for a software level counter and the latter is for a statistics counter register based. ixg(4): Count Queue Bytes {Transmit, Receive} counter. ixg(4): Reorder some flow control related event counters for readability. ixg(4): Rename some descriptions of flow control related event conters. Remove obsolete comment. ixgbe: Fix typo in comment. No functional change. ixv(4): Improve error check. ixgbe_vf.c rev. 1.31 changed the behavior of the ixgbe_check_mac_link_vf() function. It was from FreeBSD's ixv-1.5.25 to resolve mailbox collision problem. The change had a problem that error checks have not done at all if the API version >= 1.5. Fix it. From FreeBSD ixv-1.5.27. ixv(4): Add new IXGBE_VF_GET_LINK_STATE message support. PF can control vf's link state by this change. Note that Linux's PF driver can't control the link to force up (i.e. ip link set XXX vf Y state enable). From FreeBSD ixv-1.5.30. ixg(4): Update FCTRL after writing multicast filter. Same as other OSes. From FreeBSD 395cc55d896654b8f75071e71e856b22aed87da5.
Pull up following revision(s) (requested by msaitoh in ticket #395): sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.30 sys/dev/pci/ixgbe/ixv.c: revision 1.184 sys/dev/pci/ixgbe/ixv.c: revision 1.185 sys/dev/pci/ixgbe/ixgbe_vf.c: revision 1.32 sys/dev/pci/ixgbe/ixgbe_vf.c: revision 1.33 sys/dev/pci/ixgbe/ixgbe.h: revision 1.87 sys/dev/pci/ixgbe/ixgbe.h: revision 1.88 sys/dev/pci/ixgbe/ixgbe.c: revision 1.330 sys/dev/pci/ixgbe/ixgbe.c: revision 1.331 sys/dev/pci/ixgbe/ixgbe.c: revision 1.332 sys/dev/pci/ixgbe/ixgbe_vf.h: revision 1.18 sys/dev/pci/ixgbe/ix_txrx.c: revision 1.101 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.57 sys/dev/pci/ixgbe/ixgbe_mbx.h: revision 1.20 sys/dev/pci/ixgbe/ixgbe.c: revision 1.327 sys/dev/pci/ixgbe/ixgbe.c: revision 1.328 sys/dev/pci/ixgbe/ixgbe.c: revision 1.329 ixgbe: Reorder some event counters for readability. ixg(4): Rename some descriptions of event counters. - Rename some descriptions from register name to the meaning. - For the same meaning's counters, add "(soft)" or "(reg)". The former is for a software level counter and the latter is for a statistics counter register based. ixg(4): Count Queue Bytes {Transmit, Receive} counter. ixg(4): Reorder some flow control related event counters for readability. ixg(4): Rename some descriptions of flow control related event conters. Remove obsolete comment. ixgbe: Fix typo in comment. No functional change. ixv(4): Improve error check. ixgbe_vf.c rev. 1.31 changed the behavior of the ixgbe_check_mac_link_vf() function. It was from FreeBSD's ixv-1.5.25 to resolve mailbox collision problem. The change had a problem that error checks have not done at all if the API version >= 1.5. Fix it. From FreeBSD ixv-1.5.27. ixv(4): Add new IXGBE_VF_GET_LINK_STATE message support. PF can control vf's link state by this change. Note that Linux's PF driver can't control the link to force up (i.e. ip link set XXX vf Y state enable). From FreeBSD ixv-1.5.30. ixg(4): Update FCTRL after writing multicast filter. Same as other OSes. From FreeBSD 395cc55d896654b8f75071e71e856b22aed87da5.
ixgbe: Cleanup. No fucntional change. Remove unused code, fix whitespace and modify comment to reduce against FreeBSD(mainly from ix-3.3.35).
ixg(4): Add 82599 LS once again. - From: FreeBSD: 9228ac3a69c4c7401a743e6465e118101a2beeb0 DPDK: 549ccd3dc01539e060597b503f2b65b272de3347 - This was removed 5 years ago. From the commit message: > Remove IXGBE_DEV_ID_82599_LS(0x154f) support again. I don't know why. This > was added in ix-3.2.18.tar.gz(NetBSD: ixgbe_82599.c rev. 1.20) and > removed in ix-3.3.6.tar.gz.
ixgbe: Fix typo in comment. No functional change.
Pull up following revision(s) (requested by msaitoh in ticket #1730): sys/dev/pci/ixgbe/ixgbe_mbx.h: revision 1.19 sys/dev/pci/ixgbe/ixgbe_vf.c: revision 1.31 sys/dev/pci/ixgbe/ixgbe_x540.c: revision 1.23 sys/dev/pci/ixgbe/if_sriov.c: revision 1.17 sys/dev/pci/ixgbe/ixv.c: revision 1.172 sys/dev/pci/ixgbe/ixv.c: revision 1.173 sys/dev/pci/ixgbe/ixgbe.c: revision 1.301 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.55 sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.29 sys/dev/pci/ixgbe/ixgbe_mbx.c: revision 1.16 sys/dev/pci/ixgbe/ixgbe_mbx.c: revision 1.17 sys/dev/pci/ixgbe/ixgbe_mbx.c: revision 1.18 Add code to support API version 1.5. No functional change. - This change adds almost all code to support API 1.5 except real negotiation and upgrade mailbox functions. - From ix-3.3.18, ix-3.3.22 and ixv-1.5.24. Enable mailbox API 1.5 support. Tested on ESXi with ixgben 1.10.3.0. Don't clear mailbox related counters in ixgbe_upgrade_mbx_params_vf(). Don't clear mailbox related counters in ixgbe_upgrade_mbx_params_pf().
Pull up following revision(s) (requested by msaitoh in ticket #1416): sys/dev/pci/ixgbe/ixgbe_mbx.h: revision 1.19 sys/dev/pci/ixgbe/ixgbe_vf.c: revision 1.31 sys/dev/pci/ixgbe/ixgbe_x540.c: revision 1.23 sys/dev/pci/ixgbe/if_sriov.c: revision 1.17 sys/dev/pci/ixgbe/ixv.c: revision 1.172 sys/dev/pci/ixgbe/ixv.c: revision 1.173 sys/dev/pci/ixgbe/ixgbe.c: revision 1.301 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.55 sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.29 sys/dev/pci/ixgbe/ixgbe_mbx.c: revision 1.16 sys/dev/pci/ixgbe/ixgbe_mbx.c: revision 1.17 sys/dev/pci/ixgbe/ixgbe_mbx.c: revision 1.18 Add code to support API version 1.5. No functional change. - This change adds almost all code to support API 1.5 except real negotiation and upgrade mailbox functions. - From ix-3.3.18, ix-3.3.22 and ixv-1.5.24. Enable mailbox API 1.5 support. Tested on ESXi with ixgben 1.10.3.0. Don't clear mailbox related counters in ixgbe_upgrade_mbx_params_vf(). Don't clear mailbox related counters in ixgbe_upgrade_mbx_params_pf().
Pull up the following, requested by msaitoh in ticket #1729: sys/dev/pci/ixgbe/if_sriov.c 1.12-1.16 sys/dev/pci/ixgbe/ixgbe.c 1.295-1.297,1.300,1.304 via patch sys/dev/pci/ixgbe/ixgbe.h 1.84 sys/dev/pci/ixgbe/ixgbe_82598.c 1.17-1.18 sys/dev/pci/ixgbe/ixgbe_82598.h 1.9 sys/dev/pci/ixgbe/ixgbe_82599.c 1.24-1.28 sys/dev/pci/ixgbe/ixgbe_82599.h 1.8 sys/dev/pci/ixgbe/ixgbe_api.c 1.26-1.27 sys/dev/pci/ixgbe/ixgbe_api.h 1.16 sys/dev/pci/ixgbe/ixgbe_bypass.h 1.3 sys/dev/pci/ixgbe/ixgbe_common.c 1.34-1.42 sys/dev/pci/ixgbe/ixgbe_common.h 1.15-1.16 sys/dev/pci/ixgbe/ixgbe_dcb.c 1.12-1.13 sys/dev/pci/ixgbe/ixgbe_dcb.h 1.8-1.9 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c 1.10-1.12 sys/dev/pci/ixgbe/ixgbe_dcb_82598.h 1.8 sys/dev/pci/ixgbe/ixgbe_dcb_82599.c 1.10-1.11 sys/dev/pci/ixgbe/ixgbe_dcb_82599.h 1.8 sys/dev/pci/ixgbe/ixgbe_fdir.h 1.4 sys/dev/pci/ixgbe/ixgbe_features.h 1.4 sys/dev/pci/ixgbe/ixgbe_mbx.c 1.13-1.15 sys/dev/pci/ixgbe/ixgbe_mbx.h 1.15-1.18 sys/dev/pci/ixgbe/ixgbe_netmap.c 1.5 sys/dev/pci/ixgbe/ixgbe_osdep.c 1.8 sys/dev/pci/ixgbe/ixgbe_osdep.h 1.31 sys/dev/pci/ixgbe/ixgbe_phy.c 1.25-1.29 sys/dev/pci/ixgbe/ixgbe_phy.h 1.13 sys/dev/pci/ixgbe/ixgbe_rss.h 1.6 sys/dev/pci/ixgbe/ixgbe_sriov.h 1.5 sys/dev/pci/ixgbe/ixgbe_type.h 1.51-1.54 sys/dev/pci/ixgbe/ixgbe_vf.c 1.28-1.29 sys/dev/pci/ixgbe/ixgbe_vf.h 1.15 sys/dev/pci/ixgbe/ixgbe_x540.c 1.20-1.22 sys/dev/pci/ixgbe/ixgbe_x540.h 1.10 sys/dev/pci/ixgbe/ixgbe_x550.c 1.21-1.25 sys/dev/pci/ixgbe/ixgbe_x550.h 1.7 sys/dev/pci/ixgbe/ixv.c 1.170, 1.174-1.175 via patch - Add typecast for type mismatch. - Fix retry count calculation of I2C read/write. - Wait longer for link after fiber MAC setup. - ixv(4): Use adapter->mta for the multicast array memory instead of the on-stack array. - Match X550_PHY_ID correctly on X550. - Print NVM image version on 82598. - Use 64bit for lxon + lxoff. - Don't expose garbage data of hw.ixvN.debug. - Some NetBSD unrelated changes: - Fix infinite recursion on PCIe link down if VMDQ is used. - Move PF mailbox initialization from ixgbe_attach() to ixgbe_init_iov(). - Add IPv6 mask for flow director. - Change error level in ixgbe_fc_autoneg(). - Check host interface return status when writing NVM. - Change DCB credit parameters. - Restore some mailbox related functions. Revert part of ixgbe_mbx.c rev. 1.7 and ixgbe_mbx.h rev. 1.11. No functional change. - Rename IXGBE_VT_MSGTYPE_{ACK,NACK} to IXGBE_VT_MSGTYPE_{SUCCESS,FAILURE}. No functional change. - Remove unused argument. Change argument. - Remove unnecessary return value check. - Remove debug error message. - Remove dead code. - Add some unused macros. - Fix typo in comment. - Rename some functions. - Sort lines, modify comment. - Whitespace fix.
Pull up the following revisions, requested by msaitoh in ticket #1414: sys/dev/pci/ixgbe/if_sriov.c 1.12-1.16 sys/dev/pci/ixgbe/ixgbe.c 1.295-1.297,1.300,1.304 via patch sys/dev/pci/ixgbe/ixgbe.h 1.84 sys/dev/pci/ixgbe/ixgbe_82598.c 1.17-1.18 sys/dev/pci/ixgbe/ixgbe_82598.h 1.9 sys/dev/pci/ixgbe/ixgbe_82599.c 1.24-1.28 sys/dev/pci/ixgbe/ixgbe_82599.h 1.8 sys/dev/pci/ixgbe/ixgbe_api.c 1.26-1.27 sys/dev/pci/ixgbe/ixgbe_api.h 1.16 sys/dev/pci/ixgbe/ixgbe_bypass.h 1.3 sys/dev/pci/ixgbe/ixgbe_common.c 1.34-1.42 sys/dev/pci/ixgbe/ixgbe_common.h 1.15-1.16 sys/dev/pci/ixgbe/ixgbe_dcb.c 1.12-1.13 sys/dev/pci/ixgbe/ixgbe_dcb.h 1.8-1.9 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c 1.10-1.12 sys/dev/pci/ixgbe/ixgbe_dcb_82598.h 1.8 sys/dev/pci/ixgbe/ixgbe_dcb_82599.c 1.10-1.11 sys/dev/pci/ixgbe/ixgbe_dcb_82599.h 1.8 sys/dev/pci/ixgbe/ixgbe_fdir.h 1.4 sys/dev/pci/ixgbe/ixgbe_features.h 1.4 sys/dev/pci/ixgbe/ixgbe_mbx.c 1.13-1.15 sys/dev/pci/ixgbe/ixgbe_mbx.h 1.15-1.18 sys/dev/pci/ixgbe/ixgbe_netmap.c 1.5 sys/dev/pci/ixgbe/ixgbe_osdep.c 1.8 sys/dev/pci/ixgbe/ixgbe_osdep.h 1.31 sys/dev/pci/ixgbe/ixgbe_phy.c 1.25-1.29 sys/dev/pci/ixgbe/ixgbe_phy.h 1.13 sys/dev/pci/ixgbe/ixgbe_rss.h 1.6 sys/dev/pci/ixgbe/ixgbe_sriov.h 1.5 sys/dev/pci/ixgbe/ixgbe_type.h 1.51-1.54 sys/dev/pci/ixgbe/ixgbe_vf.c 1.28-1.29 sys/dev/pci/ixgbe/ixgbe_vf.h 1.15 sys/dev/pci/ixgbe/ixgbe_x540.c 1.20-1.22 sys/dev/pci/ixgbe/ixgbe_x540.h 1.10 sys/dev/pci/ixgbe/ixgbe_x550.c 1.21-1.25 sys/dev/pci/ixgbe/ixgbe_x550.h 1.7 sys/dev/pci/ixgbe/ixv.c 1.170, 1.174-1.175 via patch - Add typecast for type mismatch. - Fix retry count calculation of I2C read/write. - Wait longer for link after fiber MAC setup. - ixv(4): Use adapter->mta for the multicast array memory instead of the on-stack array. - Match X550_PHY_ID correctly on X550. - Print NVM image version on 82598. - Use 64bit for lxon + lxoff. - Don't expose garbage data of hw.ixvN.debug. - Some NetBSD unrelated changes: - Fix infinite recursion on PCIe link down if VMDQ is used. - Move PF mailbox initialization from ixgbe_attach() to ixgbe_init_iov(). - Add IPv6 mask for flow director. - Change error level in ixgbe_fc_autoneg(). - Check host interface return status when writing NVM. - Change DCB credit parameters. - Restore some mailbox related functions. Revert part of ixgbe_mbx.c rev. 1.7 and ixgbe_mbx.h rev. 1.11. No functional change. - Rename IXGBE_VT_MSGTYPE_{ACK,NACK} to IXGBE_VT_MSGTYPE_{SUCCESS,FAILURE}. No functional change. - Remove unused argument. Change argument. - Remove unnecessary return value check. - Remove debug error message. - Remove dead code. - Add some unused macros. - Fix typo in comment. - Rename some functions. - Sort lines, modify comment. - Whitespace fix.
Add code to support API version 1.5. No functional change. - This change adds almost all code to support API 1.5 except real negotiation and upgrade mailbox functions. - From ix-3.3.18, ix-3.3.22 and ixv-1.5.24.
Update copyright to 2020. FreeBSD: 8455e365f77f5b66ac9521dbcd690f79345ce147
Add IPv6 mask for flow director. - FreeBSD: c4f73d5d6a6c0117e08a03920cce69202865ba13 or ix-3.3.18 DPDK: 21feefa2fcd5899ee26a10be405c17c0a1109860 Write FDIRIP6M register to allow flow director filter to set ipv6 rules without setting ipv6 source/destination address. - No functional change because NetBSD doesn't support flow director.
Whitespace fix. Sync with FreeBSD ix-3.3.14.
Remove unnecessary return value check. FreeBSD: 3a89005394bc5d82ce9b6baa9e7f8dee362354ae DPDK: 4b0ee6529b7897c2a08dd56669f07ac1f46a8474
Add typecast for type mismatch. FreeBSD: 994dd6328c66fc277438ad51ed074f3c52096147 DPDK: d8e52b2cf771c31b523b46852fd86225b5a2c721
Pull up the following (all via patch), requested by msaitoh in ticket #1696: sysdev/pci/ixgbe/ixgbe.c 1.252, 1.280-1.283, 1.286-1.287, 1.289-1.290 via patch sysdev/pci/ixgbe/ixgbe.h 1.73, 1.76-1.80 via patch sysdev/pci/ixgbe/ix_txrx.c 1.68-1.93 sysdev/pci/ixgbe/ixv.c 1.153, 1.157-1.161, 1.163-1.166 via patch sysdev/pci/ixgbe/if_bypass.c 1.7-1.9 sysdev/pci/ixgbe/if_fdir.c 1.4-1.5 sysdev/pci/ixgbe/if_sriov.c 1.10-1.11 sysdev/pci/ixgbe/ixgbe_82598.c 1.16 sysdev/pci/ixgbe/ixgbe_82599.c 1.23 sysdev/pci/ixgbe/ixgbe_api.c 1.25 sysdev/pci/ixgbe/ixgbe_bypass.h 1.2 sysdev/pci/ixgbe/ixgbe_common.c 1.30-1.33 sysdev/pci/ixgbe/ixgbe_dcb.c 1.10-1.11 sysdev/pci/ixgbe/ixgbe_dcb.h 1.7 sysdev/pci/ixgbe/ixgbe_dcb_82598.c 1.8-1.9 sysdev/pci/ixgbe/ixgbe_dcb_82598.h 1.7 sysdev/pci/ixgbe/ixgbe_dcb_82599.c 1.8-1.9 sysdev/pci/ixgbe/ixgbe_dcb_82599.h 1.7 sysdev/pci/ixgbe/ixgbe_fdir.h 1.3 sysdev/pci/ixgbe/ixgbe_features.h 1.3 sysdev/pci/ixgbe/ixgbe_mbx.c 1.12 sysdev/pci/ixgbe/ixgbe_netbsd.c 1.16-1.17 sysdev/pci/ixgbe/ixgbe_netbsd.h 1.13-1.14 sysdev/pci/ixgbe/ixgbe_netmap.c 1.3-1.4 sysdev/pci/ixgbe/ixgbe_netmap.h 1.2 sysdev/pci/ixgbe/ixgbe_osdep.c 1.7 sysdev/pci/ixgbe/ixgbe_osdep.h 1.29-1.30 sysdev/pci/ixgbe/ixgbe_phy.c 1.24 sysdev/pci/ixgbe/ixgbe_rss.h 1.5 sysdev/pci/ixgbe/ixgbe_sriov.h 1.4 sysdev/pci/ixgbe/ixgbe_type.h 1.49 sysdev/pci/ixgbe/ixgbe_vf.c 1.27 sysdev/pci/ixgbe/ixgbe_x540.c 1.18-1.19 sysdev/pci/ixgbe/ixgbe_x540.h 1.9 sysdev/pci/ixgbe/ixgbe_x550.c 1.19-1.20 sysdev/pci/ixgbe/ixgbe_x550.h 1.6 sysdev/pci/files.pci 1.438 share/man/man4/ixg.4 1.15 share/man/man4/ixv.4 1.8 - Use MCLGET() instead of homegrown cluster (jcl) allocation mechanism. Before this commit, resource shortage was easily occurred because the total number of the clusters is small. - Improve performance: - Use m_adj(ETHER_ALIGN) more. - Sprinkle __predict_false() in the RX path. - Don't pre-allocate a cluster for RXCOPY case to improve short packet's performance. - Call bus_dmamap_unload(9) via ixgbe_dmamap_unload(), before freeing DMA buffer. Also, when the buffer is already freed, do not call bus_dmamap_unload(9) (no resource leaks with this change). This change is required to make ixg(4) work on alpha. - Keep m_len and m_pkthdr.len consistent to prevent panic on arm. - Fix panic when bus_dmamap_load_mbuf() failed in ixgbe_setup_receive_ring(). - Added BUS_DMA_COHERENT flag to bus_dmamem_map() to improve stability on aarch64. - Use uint64_t instead of bus_addr_t for the TX descriptor's buffer address. At least, this change is required for macppc (sizeof(bus_addr_t) == 4) to make TX work. - Fix little-endian dependence. - Set rxr->next_to_refresh correctly in ixgbe_setup_receive_ring(). - Refresh unrefreshed descriptors' buffers correctly. - Don't call bus_dmamap_sync with rx_mbuf_sz(== MCLBYTES) to prevent panic. - Save the discard_multidesc state to not to forget the state by exiting rxeof(). - Add missing increment of no_mbuf error counter. - Don't increment no_mbuf evcnt(9) when discarding multi-descriptor packet. - ixv: Modify error message to sync with ixgbe.c - Print the error value of ixgbe_reset_hw() for debugging. - Remove extra unlock/lock processing around if_percpuq_enqueue(). - Refactor rxr->next_to_check updating. - Add new sysctl "rx_copy_len". - Add a new sysctl to read rxr->next_to_refresh. - Print error number when error occurred. - Rename ix{gbe,v}_stop() with ix{gbe,v}_stop_locked(). No functional change. - Don't use fixed value. - Comment out flow director processing in fast path. - Add missing NetBSD RCS IDs and __KERNEL_RCSID()s. - KNF. - Fix typos.
Pull up the following (via patch), requested by msaitoh in ticket #1346: sys/dev/pci/ixgbe/ixgbe.c 1.252, 1.280-1.283, 1.286-1.287, 1.289-1.290 via patch sys/dev/pci/ixgbe/ixgbe.h 1.73, 1.76-1.80 via patch sys/dev/pci/ixgbe/ix_txrx.c 1.68-1.93 sys/dev/pci/ixgbe/ixv.c 1.153, 1.157-1.161, 1.163-1.166 via patch sys/dev/pci/ixgbe/if_bypass.c 1.7-1.9 sys/dev/pci/ixgbe/if_fdir.c 1.4-1.5 sys/dev/pci/ixgbe/if_sriov.c 1.10-1.11 sys/dev/pci/ixgbe/ixgbe_82598.c 1.16 sys/dev/pci/ixgbe/ixgbe_82599.c 1.23 sys/dev/pci/ixgbe/ixgbe_api.c 1.25 sys/dev/pci/ixgbe/ixgbe_bypass.h 1.2 sys/dev/pci/ixgbe/ixgbe_common.c 1.30-1.33 sys/dev/pci/ixgbe/ixgbe_dcb.c 1.10-1.11 sys/dev/pci/ixgbe/ixgbe_dcb.h 1.7 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c 1.8-1.9 sys/dev/pci/ixgbe/ixgbe_dcb_82598.h 1.7 sys/dev/pci/ixgbe/ixgbe_dcb_82599.c 1.8-1.9 sys/dev/pci/ixgbe/ixgbe_dcb_82599.h 1.7 sys/dev/pci/ixgbe/ixgbe_fdir.h 1.3 sys/dev/pci/ixgbe/ixgbe_features.h 1.3 sys/dev/pci/ixgbe/ixgbe_mbx.c 1.12 sys/dev/pci/ixgbe/ixgbe_netbsd.c 1.13, 1.16-1.17 sys/dev/pci/ixgbe/ixgbe_netbsd.h 1.13-1.14 sys/dev/pci/ixgbe/ixgbe_netmap.c 1.3-1.4 sys/dev/pci/ixgbe/ixgbe_netmap.h 1.2 sys/dev/pci/ixgbe/ixgbe_osdep.c 1.7 sys/dev/pci/ixgbe/ixgbe_osdep.h 1.29-1.30 sys/dev/pci/ixgbe/ixgbe_phy.c 1.24 sys/dev/pci/ixgbe/ixgbe_rss.h 1.5 sys/dev/pci/ixgbe/ixgbe_sriov.h 1.4 sys/dev/pci/ixgbe/ixgbe_type.h 1.49 sys/dev/pci/ixgbe/ixgbe_vf.c 1.27 sys/dev/pci/ixgbe/ixgbe_x540.c 1.18-1.19 sys/dev/pci/ixgbe/ixgbe_x540.h 1.9 sys/dev/pci/ixgbe/ixgbe_x550.c 1.19-1.20 sys/dev/pci/ixgbe/ixgbe_x550.h 1.6 sys/dev/pci/files.pci 1.438 share/man/man4/ixg.4 1.15 share/man/man4/ixv.4 1.8 - Use MCLGET() instead of homegrown cluster (jcl) allocation mechanism. Before this commit, resource shortage was easily occurred because the total number of the clusters is small. - Improve performance: - Use m_adj(ETHER_ALIGN) more. - Sprinkle __predict_false() in the RX path. - Don't pre-allocate a cluster for RXCOPY case to improve short packet's performance. - Call bus_dmamap_unload(9) via ixgbe_dmamap_unload(), before freeing DMA buffer. Also, when the buffer is already freed, do not call bus_dmamap_unload(9) (no resource leaks with this change). This change is required to make ixg(4) work on alpha. - Keep m_len and m_pkthdr.len consistent to prevent panic on arm. - Fix panic when bus_dmamap_load_mbuf() failed in ixgbe_setup_receive_ring(). - Added BUS_DMA_COHERENT flag to bus_dmamem_map() to improve stability on aarch64. - Use uint64_t instead of bus_addr_t for the TX descriptor's buffer address. At least, this change is required for macppc (sizeof(bus_addr_t) == 4) to make TX work. - Fix little-endian dependence. - Set rxr->next_to_refresh correctly in ixgbe_setup_receive_ring(). - Refresh unrefreshed descriptors' buffers correctly. - Don't call bus_dmamap_sync with rx_mbuf_sz(== MCLBYTES) to prevent panic. - Save the discard_multidesc state to not to forget the state by exiting rxeof(). - Add missing increment of no_mbuf error counter. - Don't increment no_mbuf evcnt(9) when discarding multi-descriptor packet. - ixv: Modify error message to sync with ixgbe.c - Print the error value of ixgbe_reset_hw() for debugging. - Remove extra unlock/lock processing around if_percpuq_enqueue(). - Refactor rxr->next_to_check updating. - Add new sysctl "rx_copy_len". - Add a new sysctl to read rxr->next_to_refresh. - Print error number when error occurred. - Rename ix{gbe,v}_stop() with ix{gbe,v}_stop_locked(). No functional change. - Don't use fixed value. - Comment out flow director processing in fast path. - Add missing NetBSD RCS IDs and __KERNEL_RCSID()s. - KNF. - Fix typos.
Sync with HEAD.
Add missing __KERNEL_RCSID().
Pull up following revision(s) (requested by msaitoh in ticket #1601): sys/dev/pci/ixgbe/ixgbe_82598.c: revision 1.13 sys/dev/pci/ixgbe/ixgbe.c: revision 1.219 sys/dev/pci/ixgbe/ixgbe_phy.c: revision 1.20 sys/dev/pci/ixgbe/ixgbe_x550.c: revision 1.17 sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.22 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.44 Add recovery code for unsupported SFP+. Before this commit: If an unsupported SFP module is inserted before booting, the driver attach failed and there was no way to recover form it without rebooting or detaching/reattaching driver (drvctl -d && drvctl -r pciN). After this commit: We can automatically recover any time by replacing it with a supported module.
Merge changes from current as of 20200406
Pull up following revision(s) (requested by msaitoh in ticket #664): sys/dev/pci/ixgbe/ixgbe_82598.c: revision 1.13 sys/dev/pci/ixgbe/ixgbe.c: revision 1.219 sys/dev/pci/ixgbe/ixgbe_phy.c: revision 1.20 sys/dev/pci/ixgbe/ixgbe_x550.c: revision 1.17 sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.22 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.44 Add recovery code for unsupported SFP+. Before this commit: If an unsupported SFP module is inserted before booting, the driver attach failed and there was no way to recover form it without rebooting or detaching/reattaching driver (drvctl -d && drvctl -r pciN). After this commit: We can automatically recover any time by replacing it with a supported module.
Add recovery code for unsupported SFP+. Before this commit: If an unsuppored SFP module is inserted before booting, the driver attach failed and there was no way to recover form it without rebooting or detaching/reattaching drvier (drvctl -d && drvctl -r pciN). After this commit: We can automatically recover any time by replacing it with a supported module.
Pull up the following revisions (via patch), requested by msaitoh in ticket #1301: sys/dev/pci/ixgbe/if_sriov.c 1.5-1.6 sys/dev/pci/ixgbe/ix_txrx.c 1.53-1.54 sys/dev/pci/ixgbe/ixgbe_x550.h 1.5 sys/dev/pci/ixgbe/ixgbe.c 1.169-1.170,1.176,1.179,1.181,1.185-1.186,1.188-1.192 via patch sys/dev/pci/ixgbe/ixgbe.h 1.53,1.55 sys/dev/pci/ixgbe/ixgbe_82599.c 1.21 sys/dev/pci/ixgbe/ixgbe_api.c 1.22-1.23 sys/dev/pci/ixgbe/ixgbe_api.h 1.14-1.15 sys/dev/pci/ixgbe/ixgbe_x550.c 1.14-1.15 sys/dev/pci/ixgbe/ixgbe_common.c 1.23 sys/dev/pci/ixgbe/ixgbe_common.h 1.14 sys/dev/pci/ixgbe/ixgbe_mbx.c 1.11 sys/dev/pci/ixgbe/ixgbe_mbx.h 1.14 sys/dev/pci/ixgbe/ixgbe_netmap.c 1.2 sys/dev/pci/ixgbe/ixgbe_features.h 1.2 sys/dev/pci/ixgbe/ixgbe_netbsd.c 1.9 sys/dev/pci/ixgbe/ixgbe_netbsd.h 1.9-1.10 sys/dev/pci/ixgbe/ixgbe_phy.c 1.18 sys/dev/pci/ixgbe/ixgbe_type.h 1.37,1.39-1.40 sys/dev/pci/ixgbe/ixgbe_vf.c 1.18 sys/dev/pci/ixgbe/ixv.c 1.112-1.114,1.117,1.119 via patch Sync ixgbe up to 20190717 except ETHERCAP or ixv's VLAN stuff: - Add firmware recovery mode for X550, X550A(Xeon D) and X550EM(C3000). - Remove IXGBE_DEV_ID_82599_LS(0x154f) support again. - On X550EMU, use ixgbe_identify_sfp_module_X550em() instead of ixgbe_identify_module_generic(). ixgbe_identify_sfp_module_X550em() has extra check (e.g. exclude 1G copper). - It's not required to calculate unused queues' statistics. - Remove ETHERCAP_VLAN_HWFILTER's definition. - Match 82598_BX(0x1508), 82599_KR(0x1517), 82599_SFP_EM(0x1507), X550EM_X_XFI(0x15b0), X550EM_A_QSFP(0x15ca) and X550EM_A_QSFP_N(0x15cc) - Add missing XFI support into ixgbe_get_link_capabilities_X550em(). - Other than IXGBE_VF_RESET should wait ACK, so use ixgbevf_write_msg_read_ack() instead of write_posted() in ixgbe_update_mc_addr_list_vf(). - When ixv_check_link() failed in the watchdog function, reset the interface. - Remove RXCSUM register modification in ixv_initialize_receive_units(). It seems it's not required. - Remove some debug printf in ixv_print_debug_info(). - Calculate vector's bit location correctly when the vector >= 31 in ixgbe_allocate_msix(). - Fix hung queue check when the queue number >= 31. - On ENETRESET case, not continue and quit the ifflags_cb() function because if_init() will do the same thing. - Fix bugs in unused code. - Fix typo in comment. - Fix typo in unused code. - Whitespace fixes. KNF.
Sync with HEAD
Sync with HEAD, resolve a few conflicts
Apply FreeBSD ix-3.3.6.tar.gz's change to NetBSD. Tested on C3000 and X550-T1, but not tested on Xeon D: - Add firmware recovery mode for X550, X550A(Xeon D) and X550EM (C3000): - FreeBSD always set IXGBE_FEATURE_RECOVERY_MODE without checking the NVM image version. We compare it against 2.0 to not to make new callout and not to call extra atomic operations. - In some FreeBSD's sysctl functions, atomic_load_acq_int() is called before a null pointer check. We call it after null pointer check. - Before calling atomic_load_acq_uint(), check adapter->feat_en flags to save atomic operation call. - We don't check recovery_mode in ixgbe_set_sysctl_value() because this function doesn't touch any hardware register. - NetBSD don't have FreeBSD's atomic_load_acq_int()-like function, so do it with membar_sync(). Thanks riastradh@ for the advice. - FreeBSD's ix-3.3.6 changed ixgbe_enable_aim from TRUE to FALSE, but we will keep it as TRUE because we have already fixed some bugs. - Remove IXGBE_DEV_ID_82599_LS(0x154f) support again. I don't know why. This was added in ix-3.2.18.tar.gz(NetBSD: ixgbe_82599.c rev. 1.20) and removed in ix-3.3.6.tar.gz. - On X550EMU, use ixgbe_identify_sfp_module_X550em() instead of ixgbe_identify_module_generic(). ixgbe_identify_sfp_module_X550em() has extra check (e.g. exclude 1G copper). - if_sriov.c's change doesn't affect to NetBSD because we don't support SR-IOV PF function.
Pull up following revision(s) (requested by msaitoh in ticket #935): sys/dev/pci/ixgbe/ixgbe.c: revision 1.162 sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.20 sys/dev/pci/ixgbe/ixgbe_api.c: revision 1.21 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.35 sys/dev/pci/ixgbe/ixgbe_x540.c: revision 1.16 Apply changes of FreeBSD ix-3.2.18.tgz: - Add IXGBE_DEV_ID_82599_LS(0x154f) support. - Increase timeout for newer than ixgbe_mac_X550 (i.e. Xeon-D and Denverton) in ixgbe_acquire_swfw_sync_X540(). - Add some unused macros (IXGBE_FW_LESM_*). -- Remove nmbclusters check. We don't use the mbuf cluster. The old code also had a bug that ixgbe_total_ports adds two every port and never decrement in the detach path. Found by hikaru@. The code was removed in FreeBSD when it switched to use iflib and OpenBSD removed the code 8 years ago.
Sync with HEAD
Apply changes of FreeBSD ix-3.2.18.tgz: - Add IXGBE_DEV_ID_82599_LS(0x154f) support. - Increase timeout for newer than ixgbe_mac_X550 (i.e. Xeon-D and Denverton) in ixgbe_acquire_swfw_sync_X540(). - Add some unused macros (IXGBE_FW_LESM_*).
Pull up following revision(s) (requested by msaitoh in ticket #750): sys/dev/pci/ixgbe/ixgbe_x540.h: revision 1.8 sys/dev/pci/ixgbe/ixgbe_82598.c: revision 1.11 sys/dev/pci/ixgbe/ixgbe_dcb_82599.c: revision 1.6 sys/dev/pci/ixgbe/ixgbe_82598.c: revision 1.12 sys/dev/pci/ixgbe/ixgbe_dcb_82599.c: revision 1.7 sys/dev/pci/ixgbe/ixgbe_dcb_82598.h: revision 1.6 sys/dev/pci/ixgbe/ixgbe_fdir.h: revision 1.2 sys/dev/pci/ixgbe/ixgbe_dcb_82599.h: revision 1.6 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c: revision 1.6 sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.18 sys/dev/pci/ixgbe/if_sriov.c: revision 1.3 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c: revision 1.7 sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.19 sys/dev/pci/ixgbe/ixgbe_mbx.h: revision 1.13 sys/dev/pci/ixgbe/ixgbe_dcb.c: revision 1.7 sys/dev/pci/ixgbe/ixgbe_api.c: revision 1.19 sys/dev/pci/ixgbe/ixgbe_vf.c: revision 1.16 sys/dev/pci/ixgbe/ixgbe_dcb.c: revision 1.8 sys/dev/pci/ixgbe/ixgbe_vf.c: revision 1.17 sys/dev/pci/ixgbe/ixgbe_dcb.h: revision 1.6 sys/dev/pci/ixgbe/if_bypass.c: revision 1.4 sys/dev/pci/ixgbe/ixv.c: revision 1.91 sys/dev/pci/ixgbe/ixgbe_rss.h: revision 1.4 sys/dev/pci/ixgbe/ixv.c: revision 1.92 sys/dev/pci/ixgbe/ixv.c: revision 1.93 sys/dev/pci/ixgbe/ixgbe_osdep.c: revision 1.4 sys/dev/pci/ixgbe/ixgbe_common.h: revision 1.12 sys/dev/pci/ixgbe/ixgbe_common.h: revision 1.13 sys/dev/pci/ixgbe/ixgbe_api.h: revision 1.13 sys/dev/pci/ixgbe/ixgbe_x550.c: revision 1.12 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.33 sys/dev/pci/ixgbe/if_fdir.c: revision 1.2 sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.34 sys/dev/pci/ixgbe/ix_txrx.c: revision 1.39 sys/dev/pci/ixgbe/ixgbe_vf.h: revision 1.13 sys/dev/pci/ixgbe/ixgbe_api.c: revision 1.20 sys/dev/pci/ixgbe/ixgbe_sriov.h: revision 1.3 sys/dev/pci/ixgbe/ixgbe_common.c: revision 1.21 sys/dev/pci/ixgbe/ixgbe_osdep.h: revision 1.21 sys/dev/pci/ixgbe/ixgbe_common.c: revision 1.22 sys/dev/pci/ixgbe/ixgbe_82599.h: revision 1.7 sys/dev/pci/ixgbe/ixgbe.c: revision 1.144 sys/dev/pci/ixgbe/ixgbe.c: revision 1.145 sys/dev/pci/ixgbe/ixgbe_phy.c: revision 1.16 sys/dev/pci/ixgbe/ixgbe.c: revision 1.146 sys/dev/pci/ixgbe/ixgbe_phy.c: revision 1.17 sys/dev/pci/ixgbe/ixgbe_82598.h: revision 1.8 sys/dev/pci/ixgbe/ixgbe.h: revision 1.41 sys/dev/pci/ixgbe/ixgbe_mbx.c: revision 1.10 sys/dev/pci/ixgbe/ixgbe_x540.c: revision 1.14 sys/dev/pci/ixgbe/ixgbe_x540.c: revision 1.15 sys/dev/pci/ixgbe/ixgbe_phy.h: revision 1.11 Sync with the remaining part of FreeBSD r328265 except sfp_reinit stuff: - Always schedule module intterrupt in ixgbe_config_link() when a device is SFP+ based. - Use not loop index but txr->me in ixv_initialize_{transmit,receive}_units(). It's required for VMDQ but NetBSD doesn't use it, so it's not a bug in NetBSD. - Simplify ixgbe_bp_wd_set(). No functional change. - Whitespace. Sync with FreeBSD r331224 except ixv_if_update_admin_status()'s change: - Fix length of reading buffer when the command is Read Flash in ixgbe_host_interface_command(). - Add missing start_hw() call in ixv_init_locked(). This is not a real bug because start_hw just set hw->adapter_stopped to false and anyone refer it. - Style change. - Update comment. Read sc_if_flags after taking core lock. Same as if_wm.c rev. 1.418.
Sync with HEAD. 77 conflicts resolved - all of them $NetBSD$
Pull up following revision(s) (requested by msaitoh in ticket #690): sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.17 sys/dev/pci/ixgbe/ixgbe.c: revision 1.138 sys/dev/pci/ixgbe/ixv.c: revision 1.90 sys/dev/pci/ixgbe/ixgbe.c: revision 1.139 sys/dev/pci/ixgbe/ixgbe_common.c: revision 1.19 sys/dev/pci/ixgbe/ixgbe_common.h: revision 1.11 sys/dev/pci/ixgbe/ixgbe.h: revision 1.38 sys/dev/pci/ixgbe/ixgbe_api.h: revision 1.12 sys/dev/pci/ixgbe/ixgbe.h: revision 1.39 sys/dev/pci/ixgbe/ixgbe_x550.c: revision 1.10 sys/dev/pci/ixgbe/ixgbe_x550.c: revision 1.11 sys/dev/pci/ixgbe/ix_txrx.c: revision 1.37 sys/dev/pci/ixgbe/ix_txrx.c: revision 1.38 sys/dev/pci/ixgbe/ixgbe.c: revision 1.140 sys/dev/pci/ixgbe/ixgbe_common.c: revision 1.20 sys/dev/pci/ixgbe/ixgbe.c: revision 1.141 sys/dev/pci/ixgbe/ixgbe.c: revision 1.142 sys/dev/pci/ixgbe/ixgbe.c: revision 1.143 sys/dev/pci/ixgbe/ixgbe.h: revision 1.40 sys/dev/pci/ixgbe/ixgbe_x550.h: revision 1.4 Fix the problem between eitr and link_speed. In ixgbe_msix_que(), que->eitr_setting is limited to IXGBE_MIN_RSC_EITR_10G1G when link_speed is 1Gbps or 10Gbps. However, que->eitr_setting is set to EITR register in the *next* Tx/Rx interrupt. If link_speed changes from 100Mbps to 1Gbps ro 10Gbps, que->eitr_setting which is not limited can be set to EITR register, that is, the problem fixed by ixgbe.c:r1.124 can occur in this case. To fix this case, que->eitr_setting should be clear when link_speed is changed or link state is changed. Furthermore, expand the variants used for AIM (txr->bytes, txr->packets, rxr->bytes and rxr->packets) from u32 to u64 to avoid wraparound which causes que->eitr_setting calculation mistake. XXX pullup-8 Don't write EIMC directly. It is required to manage with struct ix_queue status. XXX pullup-8 - Add missing IFM_NONE support. If a interface support linkdown, "ifconfig ixgN media none" drpos link. Not all interface can do link down. Tested: 82598 AT2 (T) 92599 SF+(SFI) (X520-DA2) X540 X550-T1 X550EM_x (X10SDV-8C-TLN4F) X550EM_a (A2SDi-H-TP4F port 0, 1 (T)) Doesn't work: X550EM_a (A2SDi-H-TP4F port 2, 3 (SFP+ (KR))) X550EM_a (MA10-ST0 port 2, 3 (SFP+ (SFI))) (Denverton SFP+ can't force link down because SFP+'s TX_DISABLE pin is pull down. Is there a way to shutdown SFP+ cage's power?) Not tested: 82598 fiber. - Change some functions static. Avoid issues caused by sending old packets at next link-up time. This modification consists by the following two parts. - drain packets in if_snd queue or corresponding txr->txr_interq when link_active == false in ifp->if_start(), ifp->if_transmit(), and deferred Tx processing - drain packets in if_snd queue and all of txr->txr_interq's at link-down time ok by msaitoh@n.o. Fix long standing bug that 82598 SFP+ panics in ixgbe_handle_mod() because hw->mac.ops.setup_sfp is NULL. This change is a part of FreeBSD r327031. Fix a bug that "ifconfig ixgN down up" forgot IFM_NONE setting. - Don't assume autoneg == 0 is the first call of ixgbe_config_link(). Check ifm_media, too. - Don't override autoneg_advertised in ixgbe_get_phy_id_fw() to not to be inconsistent with if_media value.
Sync with FreeBSD r331224 except ixv_if_update_admin_status()'s change: - Fix length of reading buffer when the command is Read Flash in ixgbe_host_interface_command(). - Add missing start_hw() call in ixv_init_locked(). This is not a real bug because start_hw just set hw->adapter_stopped to false and anyone refer it. - Style change. - Update comment.
Sync with the remaining part of FreeBSD r328265 except sfp_reinit stuff: - Always schedule module intterrupt in ixgbe_config_link() when a device is SFP+ based. - Use not loop index but txr->me in ixv_initialize_{transmit,receive}_units(). It's required for VMDQ but NetBSD doesn't use it, so it's not a bug in NetBSD. - Simplify ixgbe_bp_wd_set(). No functional change. - Whitespace.
- Add missing IFM_NONE support. If a interface support linkdown, "ifconfig ixgN media none" drpos link. Not all interface can do link down. Tested: 82598 AT2 (T) 92599 SF+(SFI) (X520-DA2) X540 X550-T1 X550EM_x (X10SDV-8C-TLN4F) X550EM_a (A2SDi-H-TP4F port 0, 1 (T)) Doesn't work: X550EM_a (A2SDi-H-TP4F port 2, 3 (SFP+ (KR))) X550EM_a (MA10-ST0 port 2, 3 (SFP+ (SFI))) (Denverton SFP+ can't force link down because SFP+'s TX_DISABLE pin is pull down. Is there a way to shutdown SFP+ cage's power?) Not tested: 82598 fiber. - Change some functions static.
Pull up following revision(s) (requested by msaitoh in ticket #441): sys/dev/pci/files.pci: 1.390 sys/dev/pci/ixgbe/if_bypass.c: new sys/dev/pci/ixgbe/if_fdir.c: new sys/dev/pci/ixgbe/if_sriov.c: new sys/dev/pci/ixgbe/ixgbe_bypass.h: new sys/dev/pci/ixgbe/ixgbe_fdir.h: new sys/dev/pci/ixgbe/ixgbe_features.h: new sys/dev/pci/ixgbe/ixgbe_netmap.c: new sys/dev/pci/ixgbe/ixgbe_netmap.h: new sys/dev/pci/ixgbe/ixgbe_rss.h: new sys/dev/pci/ixgbe/ixgbe_sriov.h: new sys/dev/pci/ixgbe/ix_txrx.c: 1.28, 1.30 via patch sys/dev/pci/ixgbe/ixgbe.c: 1.97-1.105, 1.107-1.111, 1.113-1.115 sys/dev/pci/ixgbe/ixgbe.h: 1.26-1.29 via patch sys/dev/pci/ixgbe/ixv.c: 1.57-1.58, 1.60-1.61, 1.63-1.64, 1.66-1.72, 1.75 via patch sys/dev/pci/ixgbe/ixgbe_api.c: 1.17-1.18 via patch sys/dev/pci/ixgbe/ixgbe_type.h: 1.26-1.30 via patch sys/dev/pci/ixgbe/ixgbe_82598.c: 1.9-1.10 via patch sys/dev/pci/ixgbe/ixgbe_82598.h: 1.6-1.7 sys/dev/pci/ixgbe/ixgbe_82599.c: 1.15-1.16 via patch sys/dev/pci/ixgbe/ixgbe_82599.h: 1.5-1.6 sys/dev/pci/ixgbe/ixgbe_api.h: 1.10-1.11 via patch sys/dev/pci/ixgbe/ixgbe_common.c: 1.14-1.16 via patch sys/dev/pci/ixgbe/ixgbe_common.h: 1.8-1.9 via patch sys/dev/pci/ixgbe/ixgbe_dcb.c: 1.5-1.6 sys/dev/pci/ixgbe/ixgbe_dcb.h: 1.4-1.5 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c: 1.4-1.5 sys/dev/pci/ixgbe/ixgbe_dcb_82598.h: 1.4-1.5 sys/dev/pci/ixgbe/ixgbe_dcb_82599.c: 1.4-1.5 sys/dev/pci/ixgbe/ixgbe_dcb_82599.h: 1.4-1.5 sys/dev/pci/ixgbe/ixgbe_mbx.c: 1.7-1.9 via patch sys/dev/pci/ixgbe/ixgbe_mbx.h: 1.11-1.12 via patch sys/dev/pci/ixgbe/ixgbe_osdep.c: 1.2 sys/dev/pci/ixgbe/ixgbe_osdep.h: 1.18-1.19 via patch sys/dev/pci/ixgbe/ixgbe_phy.c: 1.12-1.14 via patch sys/dev/pci/ixgbe/ixgbe_phy.h: 1.9-1.10 via patch sys/dev/pci/ixgbe/ixgbe_vf.c: 1.13-1.15 via patch sys/dev/pci/ixgbe/ixgbe_vf.h: 1.9-1.11 via patch sys/dev/pci/ixgbe/ixgbe_x540.c: 1.10-1.12 sys/dev/pci/ixgbe/ixgbe_x540.h: 1.6-1.7 sys/dev/pci/ixgbe/ixgbe_x550.c: 1.6-1.7 sys/dev/pci/ixgbe/ixgbe_x550.h: 1.3 Sync with FreeBSD's up to r326022, fix bugs and some improvements: - Don't limit number of queue pair to 8. Take chip's max TX queues and max RX queues into account. - Add C3000 (Denverton) support. - Add bypass function support for bypass adapters. - Change EEE sysctl. - Remove thermal test sysctl. - ixv(4): set RSS mapping. - ixv(4): Add TSOv6. - ixv(4): Fix hardware counter. - ixv(4): Make TX/RX descriptors size the same as ixg(4). - ixv(4): Print device name in ixv_attach(). - ixv(4): Make mailbox statistic counters evcnt(9). - ixv(4): Fix a problem that mailbox interrupt never occurred. - ixv(4): Don't check neither VTEICR nor VTEICS same as Linux. It seems that both registers can't be used to check which MSI-X vector is triggered. - ixv(4): Print Mailbox API version. - Print driver feature capabilities and enable bits when verbose boot. - Fix a bug that X550EM_A (Denverton) can't force 10BaseT. - Remove all half-duplex setting because of the chip specification. - Add 2.5GBASE-T and 5GBASE-T support. - Set ifm_baudrate correctly. - Protect ec_multi* with mutex like other MP safe Ethernet drivers. - On X550 and newer, print NVM Image Version with %u.%02x. - On X540, print PHY FW Revision with %u.%x. 0x4030 will be printed as "Revision 4.3 ID 0x0" - Fix value check of OEM_NVM_IMAGE_VER. - Print PHY ID only for copper PHY. - Fix a bug that X550 and newer didn't linkup if it forces 100BaseTX-FDX or 10BaseT-FDX. - Fix a bug that RX may accesses freed area. It also fixes a problem that if_init() takes long time on many core machine. - Check ETHERCAP_VLAN_HWTAGGING in ixgbe_setup_vlan_hw_support(). This change has no influence to netbsd because it's enabled by default and NetBSD has no API to disable it. - Whitespace fix.
Sync with FreeBSD's r326022. All of the following changes have no influence to netbsd: - Check ETHERCAP_VLAN_HWTAGGING in ixgbe_setup_vlan_hw_support(). This change has no influence to netbsd because it's enabled by default and NetBSD has no API to disable it. - Fix for netmap module. - Remove never defined UDP_IPV4_EX - Add SPDX-License-Identifier
update from HEAD
- Sync with FreeBSD r320688 (and up to r322865): - Add C3000(Denvertion(-NS)) support. - Add bypass function support for bypass adapters. Sysctls are provided. Not tested because I have no any bypass adapter. - ixv(4): set RSS mapping. - Change EEE sysctl. - ixv(4): Add TSOv6. - ixv(4): Mailbox API 1.2 and more are implemented and comment says it negotiate with 1.2 but it really does 1.1... - Remove thermal test sysctl. - Fix unknown bugs. - Print driver feature capabilities and enable bits when verbose boot.
Sync with HEAD. (Note that most of these changes are simply $NetBSD$ tag issues.)
Sync with HEAD
Update ixg(4) and ixv(4) up to FreeBSD r292674: - Add X552 SFP+ and X550T single port. - Bug fixes.
Update ixg(4) and ixv(4) up to FreeBSD r282299: - Add support for X55x. - ADD EEE support (not tested). - Add WOL support (not tested). - Add suspend/resume support (not testd). - Add LPLU support (not tested). - Add DMA Coalescing (note verified). - Not tested well for sysctls. - Fix ixgbe_set_advertise() a bit. At least, FreeBSD r294578 is required to work hw.ixg0.advertise_speed sysctl correctly.
Update ixg(4) and ixv(4) up to FreeBSD r280197: - Add support for 82599_QSFP_SF_QP and X540T1. - Add partial support for X55x. It's required to sync with FreeBSD r282299 to support X55x. - Bugfixes.
Pull up following revision(s) (requested by msaitoh in ticket #1174): sys/dev/pci/ixgbe/README: 1.2 sys/dev/pci/ixgbe/ixgbe.c: 1.30-1.33, 1.35 via patch sys/dev/pci/ixgbe/ixgbe.h: 1.8 via patch sys/dev/pci/ixgbe/ixgbe_82598.c: 1.5 via patch sys/dev/pci/ixgbe/ixgbe_82599.c: 1.10 via patch sys/dev/pci/ixgbe/ixgbe_api.c: 1.8-1.11 via patch sys/dev/pci/ixgbe/ixgbe_api.h: 1.5-1.6 via patch sys/dev/pci/ixgbe/ixgbe_common.c: 1.6-1.7 via patch sys/dev/pci/ixgbe/ixgbe_common.h: 1.5 via patch sys/dev/pci/ixgbe/ixgbe_osdep.h: 1.9 via patch sys/dev/pci/ixgbe/ixgbe_phy.c: 1.6 via patch sys/dev/pci/ixgbe/ixgbe_phy.h: 1.5 via patch sys/dev/pci/ixgbe/ixgbe_type.h: 1.11, 1.13 via patch sys/dev/pci/ixgbe/ixgbe_vf.c: 1.5-1.6 via patch sys/dev/pci/ixgbe/ixv.c: 1.9-1.10, 1.12-1.14 via patch sys/dev/pci/ixgbe/ixv.h: 1.6 via patch sys/dev/pci/ixgbe/ixgbe_dcb.c: 1.1 sys/dev/pci/ixgbe/ixgbe_dcb.h: 1.1 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c: 1.1 sys/dev/pci/ixgbe/ixgbe_dcb_82598.h: 1.1 sys/dev/pci/ixgbe/ixgbe_dcb_82599.c: 1.1 sys/dev/pci/ixgbe/ixgbe_dcb_82599.h: 1.1 Sync ixg(4) up to ixgbe.c rev. 1.35 except MSI/MSI-X and NET_MPSAFE: - Sync ixg(4) up to FreeBSD r279805 (or r280181) which include some bugfixes. - Add missing evcnt_detach(&rxr->rx_copies) in ixgbe_detach(). - Fix error path in ixgbe_attach() and ixgbe_detatch() to prevent panic. - Remove unreachable code. - Remove duplicated assignment of mh->m_len. - Reduce the diff against FreeBSD (tabs, spaces and comments) - ixv.c: Fix unintialized data. Include vlan.h and check NVLAN. - Avoid shadowing global `min'.
Sync with HEAD
- Add MSI/MSI-X support. The multiqueue function is not supported yet. - Make ixv.c compilable. _NOT_TESTED_YET_
Sync ixg(4) up to FreeBSD r279805 (or r280181) which include some bugfixes. TODO: - Merge r280182 and newer. It's required to support X55x. - MSI/MSI-X support.
Sync with HEAD
Pull up following revisions (requested by msaitoh in ticket #734): sys/dev/pci/ixgbe/LICENSE 1.2 sys/dev/pci/ixgbe/ixgbe.c 1.28-1.29 sys/dev/pci/ixgbe/ixgbe.h 1.7 sys/dev/pci/ixgbe/ixgbe_82598.c 1.4 sys/dev/pci/ixgbe/ixgbe_82598.h 1.3 sys/dev/pci/ixgbe/ixgbe_82599.c 1.9 sys/dev/pci/ixgbe/ixgbe_82599.h 1.2 sys/dev/pci/ixgbe/ixgbe_api.c 1.7 sys/dev/pci/ixgbe/ixgbe_api.h 1.4 sys/dev/pci/ixgbe/ixgbe_common.c 1.5 sys/dev/pci/ixgbe/ixgbe_common.h 1.4 sys/dev/pci/ixgbe/ixgbe_mbx.h 1.4 sys/dev/pci/ixgbe/ixgbe_netbsd.h 1.3 sys/dev/pci/ixgbe/ixgbe_osdep.h 1.7 sys/dev/pci/ixgbe/ixgbe_phy.c 1.5 sys/dev/pci/ixgbe/ixgbe_phy.h 1.4 sys/dev/pci/ixgbe/ixgbe_type.h 1.10 sys/dev/pci/ixgbe/ixgbe_vf.c 1.4 sys/dev/pci/ixgbe/ixgbe_vf.h 1.5 sys/dev/pci/ixgbe/ixgbe_x540.c 1.3 sys/dev/pci/ixgbe/ixgbe_x540.h 1.2 sys/dev/pci/ixgbe/ixv.c 1.8 - Sync ixg(4) up to FreeBSD r250108: - Cleanup some unused counters and some unused code. - Improve performance. - Fix flow control - don't override user value on re-init - Fix to make 1G optics work correctly - Change to interrupt enabling - some bits were incorrect for certain hardware. - Certain stats fixes, remove a duplicate increment of ierror, thanks to Scott Long for pointing these out. - Fix the setting of RX which related to multicast. - Some netmap related fixes. - Fixes link error without vlan. PR#49879 reported by Hauke Fath. [msaitoh, ticket #734]
Sync ixg(4) up to FreeBSD r250108: - Cleanup some unused counters and some unused code. - Improve performance. - Fix flow control - don't override user value on re-init - Fix to make 1G optics work correctly - Change to interrupt enabling - some bits were incorrect for certain hardware. - Certain stats fixes, remove a duplicate increment of ierror, thanks to Scott Long for pointing these out. - Fix the setting of RX which related to multicast. - Some netmap related fixes.
Apply patch (requested by msaitoh in ticket #697): sys/dev/pci/files.pci 1.375 via patch sys/dev/pci/ixgbe/ixgbe.c 1.24-1.27 via patch sys/dev/pci/ixgbe/ixgbe.h 1.4-1.6 via patch sys/dev/pci/ixgbe/ixgbe_82598.c 1.2-1.3 via patch sys/dev/pci/ixgbe/ixgbe_82598.h 1.1-1.2 via patch sys/dev/pci/ixgbe/ixgbe_82599.c 1.6-1.8 via patch sys/dev/pci/ixgbe/ixgbe_82599.h 1.1 via patch sys/dev/pci/ixgbe/ixgbe_api.c 1.5-1.6 via patch sys/dev/pci/ixgbe/ixgbe_api.h 1.2-1.3 via patch sys/dev/pci/ixgbe/ixgbe_common.c 1.3-1.4 via patch sys/dev/pci/ixgbe/ixgbe_common.h 1.2-1.3 via patch sys/dev/pci/ixgbe/ixgbe_mbx.c 1.2-1.3 via patch sys/dev/pci/ixgbe/ixgbe_mbx.h 1.2-1.3 via patch sys/dev/pci/ixgbe/ixgbe_osdep.h 1.4-1.6 via patch sys/dev/pci/ixgbe/ixgbe_phy.c 1.3-1.4 via patch sys/dev/pci/ixgbe/ixgbe_phy.h 1.2-1.3 via patch sys/dev/pci/ixgbe/ixgbe_type.h 1.8-1.9 via patch sys/dev/pci/ixgbe/ixgbe_vf.c 1.2-1.3 via patch sys/dev/pci/ixgbe/ixgbe_vf.h 1.3-1.4 via patch sys/dev/pci/ixgbe/ixgbe_x540.c 1.1-1.2 via patch sys/dev/pci/ixgbe/ixgbe_x540.h 1.1 via patch sys/dev/pci/ixgbe/ixv.c 1.5-1.7 via patch sys/dev/pci/ixgbe/ixv.h 1.4-1.5 via patch Synchronize our ixg(4) driver up to FreeBSD r243716: - Add X540 support. - Add TSO6 support. - Add 100BaseTX support. - The max size in dma tag is changed from 65535 to 262140 (IXGBE_TSO_SIZE). The value is the same as other *BSDs. The change might cause a address space shortage (ixgbe_dmamap_create() might fail) on some machines. - Show 1000Base-SX correctly. - Fix if_baudrate from 1G to 10G. - Fix a bug that ifconfig -z (SOICZIFDATA) doesn't work. - Fix a lot of bugs. - Improve performance. [msaitoh, ticket #697]
Sync ixg(4) up to FreeBSD r243716: - A lot of bugfixes. Some of them are realted to multi queue and those have not affected in NetBSD because we have not used it yet. - Show 1000Base-SX correctly. - Fix if_baudrate from 1G to 10G. - Improve performance.
Sync with HEAD
Update our ixg(4) driver up to FreeBSD r238149: - Add TSO6 support. - The max size in dma tag is changed from 65535 to 262140 (IXGBE_TSO_SIZE). The value is the same as other *BSDs. The change might cause a address space shortage (ixgbe_dmamap_create() might fail) on some machines. - Fix a lot of bugs. - Improve performance.
Synchronize our ixg(4) driver up to FreeBSD r230775: - Add X540 support. - Add 100BaseTX support. - Fix a lot of bugs. - Improve performance.
Pull up the following revisions (via patch), requested by msaitoh in #641: sys/dev/pci/files.pci 1.374 sys/dev/pci/ixgbe/ixgbe.h 1.3 sys/dev/pci/ixgbe/ixgbe.c 1.20-1.23 sys/dev/pci/ixgbe/ixgbe_type.h 1.3-1.7 sys/dev/pci/ixgbe/ixgbe_82599.c 1.4-1.5 sys/dev/pci/ixgbe/ixgbe_api.c 1.3-1.4 sys/dev/pci/ixgbe/ixgbe_vf.h 1.2 sys/dev/pci/ixgbe/ixv.c 1.3-1.4 sys/dev/pci/ixgbe/ixv.h 1.3 - Sync ixg(4) up to FreeBSD r230572. - Fix in the interrupt handler to make sure the stack TX queue is processed. (FreeBSD r222588) - The maximum read size of incoming packets is done in 1024-byte increments. The current code was rounding down the maximum frame size instead of routing up, resulting in a read size of 1024 bytes, in the non-jumbo frame case, and splitting the packets across multiple mbufs. (FreeBSD r225045) - Consequently the above problem exposed another issue, which is when packets were splitted across multiple mbufs, and all of the mbufs in the chain have the M_PKTHDR flag set. (FreeBSD r225045) - Use the correct constant for conversion between interrupt rate and EITR values (the previous values were off by a factor of 2) (FreeBSD r230572) - Make dev.ix.N.queueM.interrupt_rate a RW sysctl variable. Changing individual values affects the queue immediately, and propagates to all interfaces at the next reinit. (FreeBSD r230572) - Add dev.ix.N.queueM.irqs rdonly sysctl, to export the actual interrupt counts. (FreeBSD r230572) - Some netmap related changes. - Fix a bug that vlan setting may not apply to the parent interface correctly. - Add 82599EN_SFP and 82599_SFP_SF_QP. - Modify to make Intel Intel 10G Ethernet (ixg(4)) virtual function ixv(4) compilable. Not completed yet. It's required to use MSI-X. - Change comments, tabs and spaces to make difference among *BSDs small. - Enclose macro argument correctly. Same as *BSDs. No binary change. - Add missing parenthesis in IXGBE_CORE_LOCK_ASSERT() macro. No binary change.
Add 82599EN_SFP and 82599_SFP_SF_QP. Not tested.
Change macro name IXGBE_DEV_ID_82599_SFP_DELL to IXGBE_DEV_ID_82599_SFP_SF2. Same as OpenBSD and Linux. No binary change.
Rebase to HEAD as of a few days ago.
Rebase.
sync with head. for a reference, the tree before this commit was tagged as yamt-pagecache-tag8. this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
sync with head
CID 140077: Add missing break and FALLTHROUGH
Add dell's flavor (from uwe, in current-users@)
Add sources for ixgbe(4), a Intel 82599 10-gigabit ethernet driver ported from FreeBSD.