Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed bug in intel 10M/100M/1G NIC driver. #52

Closed
wants to merge 2 commits into from

Conversation

olivernie
Copy link

@olivernie olivernie commented Apr 26, 2016

Bit CTRL_ASDE is reserved and must be set to 0b according to intel 82576EB datasheet.

…and must be set to 0b according intel 82576EB datasheet.
@robinsmidsrod
Copy link
Contributor

Does this fix an actual problem, or is it just for datasheet compliance? From what I can remember, we try to avoid flags on new drivers unless absolutely required (usually for strange hardware issues/bugs).

@olivernie
Copy link
Author

Yes. In my board, intel 82576EB is connected to BCM8359(copper on board). The builtin PXE in NIC can DHCP and load the IPXE binary from server. But IPXE can't even the ifstat shows link is up. This patch fix this bug. IPXE could DHCP again and chainload the other image.

@robinsmidsrod
Copy link
Contributor

It would be beneficial if you provide the results from the tests located at ipxe.org/dev/driver both with and without the provided patch, so that it is clear what this patch fixes.

@ipxe-devel
Copy link

On 27/04/16 16:17, Oliver Nie wrote:

Yes. In my board, intel 82576EB is connected to BCM8359(copper on
board). The builtin PXE in NIC can DHCP and load the IPXE binary from
server. But IPXE can't even the ifstat shows link is up. This patch fix
this bug. IPXE could DHCP again and chainload the other image.

Thanks for confirming that.

If we're applying this change to one NIC, then we should probably apply
it to all NICs with the same requirement stated in the datasheet.

Michael

@olivernie
Copy link
Author

Ok. I will take a look at ipxe.org/dev/driver to see how to run those tests. Update the result later.

@olivernie
Copy link
Author

OK. Here are results of ipxe.org/dev/driver

  • Link detection --- Pass
  • Basic DHCP --- Pass
  • Close and reopen --- Pass
  • Large file transfer correctness --- Pass
  • Large file transfer speed --- 4.6s on 512MB
  • Link interruption --- Transfer finished with no error
  • Loopback --- Not Applicable since I have only one port on intel 82576
  • High-MTU loopback --- Not Applicable
  • VLAN loopback --- Not Applicable

@robinsmidsrod
Copy link
Contributor

@olivernie Thanks for the test feedback. The loopback tests are most of the time tested with two NICs in the same system, with one being the one under test and the other one a known working NIC. This ensures that there is no packet drop in the receive and transmit data paths and that VLAN features work as intended. If it's a laptop and it's impossible to attach another NIC then it's quite hard to test that, but doable if you have one of the supported USB3 NICs.

@olivernie
Copy link
Author

@robinsmidsrod I got another board which has two NICs. Net0 is using intel 82567lm, net1 is using intel 82576eb. My patch is on 82576eb. Following are the results on loopback tests. Enabled debugging level 3 for intel and netdevice. The failed case shows 1 packet transmitted but nothing received, even packet with error. Since I am not sure 82567lm is a known working NIC or not, regarding to intel driver in IPXE, I can't tell the problem is on which side. I have no supported USB3 NICs in my hand to do further test.

  • Loopback --- lotest net0 net1 --- Pass; lotest net1 net0 --- Pass
  • High-MTU loopback --- lotest -m 1504 net0 net1 --- Fail; loest -m 1504 net1 net0 --- Pass
  • VLAN loopback --- lotest net0-123 net1-123 --- Pass; loest net1-123 net0-123 --- Pass

@NiKiZe
Copy link
Contributor

NiKiZe commented Feb 11, 2022

Is this still an issue in current master?

@mcb30
Copy link
Member

mcb30 commented Feb 11, 2022

This was cleaned up into commit 2d79b20f2

@mcb30 mcb30 closed this Feb 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants