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

XL710 40GbE #2

Open
roedie opened this issue Apr 25, 2017 · 2 comments
Open

XL710 40GbE #2

roedie opened this issue Apr 25, 2017 · 2 comments

Comments

@roedie
Copy link

roedie commented Apr 25, 2017

Do you think it is possible to unlock an XL710 40GbE with this?

I have been looking around a bit and think I've found the offsets, but it looks quite different.

root@bootstrap:~# ./mytool 0x67fa 0xc
000067fa + 00 => 000b
000067fa + 01 => 0023
000067fa + 02 => 0600
000067fa + 03 => 0700
000067fa + 04 => 0000
000067fa + 05 => 0000
000067fa + 06 => 0e0d
000067fa + 07 => 0000
000067fa + 08 => 0b10
000067fa + 09 => 0000
000067fa + 0a => 0a1e
000067fa + 0b => 0002
root@bootstrap:~# ./mytool 0x6806 0xc
00006806 + 00 => 000b
00006806 + 01 => 0023
00006806 + 02 => 0600
00006806 + 03 => 0700
00006806 + 04 => 0000
00006806 + 05 => 0000
00006806 + 06 => 0e0d
00006806 + 07 => 0000
00006806 + 08 => 0b10
00006806 + 09 => 0000
00006806 + 0a => 0a1e
00006806 + 0b => 0102
root@bootstrap:~# ./mytool 0x6812 0xc
00006812 + 00 => 000b
00006812 + 01 => 0023
00006812 + 02 => 0600
00006812 + 03 => 0700
00006812 + 04 => 0000
00006812 + 05 => 0000
00006812 + 06 => 0e0d
00006812 + 07 => 0000
00006812 + 08 => 0b10
00006812 + 09 => 0000
00006812 + 0a => 0a1e
00006812 + 0b => 0202
root@bootstrap:~# ./mytool 0x681e 0xc
0000681e + 00 => 000b
0000681e + 01 => 0023
0000681e + 02 => 0600
0000681e + 03 => 0700
0000681e + 04 => 0000
0000681e + 05 => 0000
0000681e + 06 => 0e0d
0000681e + 07 => 0000
0000681e + 08 => 0b10
0000681e + 09 => 0000
0000681e + 0a => 0a1e
0000681e + 0b => 0302
@Yaugen-D
Copy link

It's completely possible to unlock an XL710 to work with unqualified 40GbE QSFP+ modules. I've tested my XL710-QDA2 NIC with HPE X140 40Gb BiDi QSFP+ module and this combination works fine (however intel datasheet for the card says BiDi optical modules are unsupported).

For unlocking XL710-based NIC you only need to set 11th bit in 0x0008 offset to 0. So for my NIC PHY Capability data structure 0 looks like:
000067fa 00 0x000b
000067fa 01 0x0023
000067fa 02 0x0600
000067fa 03 0x0700
000067fa 04 0x0000
000067fa 05 0x0000
000067fa 06 0x0e0d
000067fa 07 0x0000
000067fa 08 0x0310 <- this data was modified
000067fa 09 0x0000
000067fa 0a 0x0a1e
000067fa 0b 0x0002

You can easily find more information about data structures of XL710 in Intel datasheet:
http://www.intel.com/content/dam/www/public/us/en/documents/datasheets/xl710-10-40-controller-datasheet.pdf

@paunadeu
Copy link

I don't understand it :(

Output of:
./mytool 0 0x8000

http://paste.ubuntu.com/p/MWnB6fshNr/

How can find phy0_offset?

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

No branches or pull requests

3 participants