| Age | Commit message (Collapse) | Author |
|
i) EHCI_HCSPARAMS should be read with EREAD4 (and not EOREAD4). Spotted by
jmcneill
ii) Apply brackets so that ?: vs | operator precedence doesn't give the
wrong result.
|
|
Use the correct pointer, not the one used in the other piece of
code that changed at the same time..
|
|
zerodivide (from RVP)
|
|
|
|
|
|
|
|
|
|
FreeBSD ix-3.3.29 added code to decode NVM version. On 82598, the NVM
offset is NVM_EEP_OFFSET_82598(== 0x2a). My own three different 82598
cards' value in NVM_EEP_OFFSET_82598 are 0xffff. Instead, the dev starter
version (0x29) has the value. Two of them have 0x1070 and another has 0x2090.
The 82598 specification update notes about 2.9.0.
|
|
- From FreeBSD ix-3.3.24.
- No functional change because NetBSD doesn't support DCB.
|
|
FreeBSD: 0b487fb4547ad1a939be0d523e555557c94b7cd1
DPDK: a6395d471e14e5a7432875dad8fb3533238c5167
|
|
- FreeBSD: c1a56b6f5ffd6f3180a654d058c1783ccb808e8b or ix-3.3.18
DPDK: db18e37090a3b9af47d6a6886248520f6b220bf9
Writing to read-only fields returns a non-OK Return Status
for shadow RAM write command for X550.
This information was previously discarded.
- No functional change on NetBSD because our ixg has no interface to
write the NVM.
|
|
- Sync with FreeBSD ix-3.3.18.
- phy_id's revision field is cleared, so use new X550_PHY_ID.
- Before this commit, phy_id was set to ixgbe_phy_cu_unknown on X550.
Now it's set to ixgbe_phy_aq.
|
|
|
|
|
|
- Same as ixv-1.5.22.
- Same as ixg(4).
|
|
- FreeBSD:
aaa3af802f90d93fdffb99100fe56f0bc3dda119
96ef6eb3ae9d622906fb838c82ede3074f864cdc
DPDK:
64f1c8539c8ce99214b9eb1fb728a2c6745f3300
73247f1ced303c16987bb366d38a2d8a0fc40db4
After setting up the link on a fiber port, the maximum wait time for
the link to come up is 500 ms in ixgbe_setup_mac_link_multispeed_fiber().
On an x550 SFP+ port, this is often not sufficiently long for the link
to come up. This can result in never being able to retrieve accurate
link status for the port using rte_eth_link_get_nowait().
Increase the maximum wait time in ixgbe_setup_mac_link_multispeed_fiber()
to 1 s.
|
|
|
|
- FreeBSD: afb1aa4e6df245d38fd2ba683fa521d5dabe8392 or ix-ix-3.3.22
- Note that the checksum error is not added to the ierror.
|
|
- FreeBSD: f511cd22586a9c0358b86334a51e3db60ca2db01 or ix-3.3.18
DPDK: ab6ac48d483ef7f906b90f45182f2ddf3254d876
- No functional change in NetBSD.
|
|
- 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.
|
|
problem shown here:
http://mail-index.netbsd.org/tech-kern/2021/12/10/msg027851.html
but seems unlikely to fix the original problem.
tested on i386/anita. ok oster@
XXX: pullup-9 (netbsd-8 uses old APIs.)
|
|
Fixes PR kern/56546 (probably!).
|
|
|
|
|
|
|
|
another copyright claim line. again. (i did this in 2008 and then
did not update all of my personal templates.)
|
|
|
|
|
|
From FreeBSD ix-3.3.18. No functional change.
|
|
- Sync with FreeBSD ix-3.3.18.
- Rename ixgbe_get_advertise() to ixgbe_get_default_advertise.
- Sort lines, modify comment and whitespace to reduce diff against FreeBSD.
|
|
|
|
|
|
FreeBSD: dc11ba4eb3fe5cce615f361de83e85e07005ca24 or ix-3.3.14
DPDK: 390445ec30b4c52a3d2887c3d2a202d9cf37ea8e
The retry variable was being incremented before it was evaluated by the
subsequent conditional against the maximum retries to figure out which
message to print. So we'll move the increment op to the end.
|
|
|
|
- FreeBSD: 8270b7174c48417a4d5f3effa4a4f4588205e687 or ix-3.3.14
- DPDK: 2d04b9e856125197ec8e967471426d56ab7efcf0
In some corner cases the functions ixgbe_clear_rar_generic and
ixgbe_clear_vmdq_generic may call one another leading to infinite
recursion.
When ixgbe_clear_vmdq_generic is called with IXGBE_CLEAR_VMDQ_ALL
flag, it's going to clear MPSAR registers, and proceed to call
ixgbe_clear_rar_generic, which in turn will clear the RAR registers,
and recursively call back ixgbe_clear_vmdq_generic. Normally, the
latter would detect that MPSAR registers have already been cleared
and terminate the recursion.
However, when PCIe link is down, and before the driver has had the
opportunity to shut itself down, all register reads return 0xFFFFFFFF,
and all register writes fail silently. In such case, because
ixgbe_clear_vmdq_generic blindly assumes that clearing MPSAR registers
succeeded, it's going to always call ixgbe_clear_rar_generic, which
in turn will always call back ixgbe_clear_vmdq_generic, creating
infinite recursion.
This patch re-reads MPSAR register values after they had been cleared.
In case of PCIe link failure, the values read will be non-zero, which
will terminate the recursion. On the other hand, under normal
circumstances the value read from MPSAR registers is going to be equal
to the value previously written, so this patch is expected not to cause
any regressions.
- Note that NetBSD doesn't support VMDQ.
|
|
|
|
|
|
FreeBSD: 3a89005394bc5d82ce9b6baa9e7f8dee362354ae
DPDK: 4b0ee6529b7897c2a08dd56669f07ac1f46a8474
|
|
|
|
FreeBSD: 994dd6328c66fc277438ad51ed074f3c52096147
DPDK: d8e52b2cf771c31b523b46852fd86225b5a2c721
|
|
FreeBSD: b3ebe337ffa06b0f1f460bf8f1e42fb55db77d0b or ix-3.3.14
DPDK: 40543be5376ca415b2a7e196315d0555725b8bdf
While sending request using ixgbe_hic_unlocked() the data field in
buffer struct is not used. It is set when the struct is overwritten by
FW to deliver the response. To not pass random data to FW the whole
structure should be zeroed before use.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Driver module as illustrated here:
https://www.sparkfun.com/products/13911
A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.
The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.
|
|
|