iPXE discussion forum
X710 network drivers - Printable Version

+- iPXE discussion forum (https://forum.ipxe.org)
+-- Forum: iPXE user forums (/forumdisplay.php?fid=1)
+--- Forum: General (/forumdisplay.php?fid=2)
+--- Thread: X710 network drivers (/showthread.php?tid=11170)



X710 network drivers - Transce - 2018-05-03 18:43

Digging through the threads, I saw something back in 2015 about adding X710 network drivers. But I'm not seeing them in the list. Did this ever get accomplished or was it abandoned?

I have Dell Poweredge r740 servers with 10G X710 network cards that are causing me a headache. I just got my automation setup with iPXE, but these new servers are having issues finding those cards. Any help would be appreciated.


RE: X710 network drivers - NiKiZe - 2018-05-04 00:46

no Intel X7xxx have not been implemented.

But for future reference please provide the pciid of your actuall nic (in linux you can use lspci -nn to get appropiate output)

Relevant thread for X710 http://forum.ipxe.org/showthread.php?tid=8215


RE: X710 network drivers - Transce - 2018-05-08 01:32

(2018-05-04 00:46)NiKiZe Wrote:  no Intel X7xxx have not been implemented.

But for future reference please provide the pciid of your actuall nic (in linux you can use lspci -nn to get appropiate output)

Relevant thread for X710 http://forum.ipxe.org/showthread.php?tid=8215

The offending driver in question is 0x8086, 0x1572. They are X710 10Gb SFP cards.

I thought it was just a Dell Proliant issue, but I just found out that gen 10 HPE Proliants are using them now.


RE: X710 network drivers - NiKiZe - 2018-05-08 17:35

(2018-05-08 01:32)Transce Wrote:  The offending driver in question is 0x8086, 0x1572. They are X710 10Gb SFP cards.

I thought it was just a Dell Proliant issue, but I just found out that gen 10 HPE Proliants are using them now.

Just to avoid any missunderstandings, iPXE does not currently have any native drivers for this nic. So it would make more sense to say that 8086:1572 is the offending device, an not driver Wink

However, if you chainload over the network then you can use snponly.efi (assuming efi environment) or undionly.kpxe (if running in legacy pcbios mode)

In which environment are you running (efi/pcbios) and which buildtarget/ipxe binary are you using. And what do you see in regards to ifstat if you run above mentioned snponly.efi or undionly.kpxe?


RE: X710 network drivers - Transce - 2018-05-08 19:40

(2018-05-08 17:35)NiKiZe Wrote:  
(2018-05-08 01:32)Transce Wrote:  The offending driver in question is 0x8086, 0x1572. They are X710 10Gb SFP cards.

I thought it was just a Dell Proliant issue, but I just found out that gen 10 HPE Proliants are using them now.

Just to avoid any missunderstandings, iPXE does not currently have any native drivers for this nic. So it would make more sense to say that 8086:1572 is the offending device, an not driver Wink

However, if you chainload over the network then you can use snponly.efi (assuming efi environment) or undionly.kpxe (if running in legacy pcbios mode)

In which environment are you running (efi/pcbios) and which buildtarget/ipxe binary are you using. And what do you see in regards to ifstat if you run above mentioned snponly.efi or undionly.kpxe?

So a little backstory... My company, for some reason, doesn't believe that we need DHCP/PXE. So I've created my own workaround to that for my physical server automation. I actually embed a custom bootloader script into an iPXE image to configure a static IP. It then kicks off initrd and kernel without actually chainloading. I know it's hacky, but it was working until I had to deal with these newer generation servers using the X710 hardware.

Now that I have these offending devices, I can't get a network connection. ifstat doesn't show the network devices. We figured out a workaround on Dell by adding:
PCI_ROM ( 0x8086, 0x1572, "x710", "X710-SFP", 0 ),
To the end of the device list in the intelx.c file. It does allow the devices to show up on ifstat, but I haven't been able to test the connections yet due to some other networking issues I'm trying to solve. But that trick seems to not work for the newer HPE servers. That's what I'm trying to solve.

Sorry for my novice knowledge, but is there a way to load the snponly.efi or undionly.kpxe via virtual cdrom/usb?


RE: X710 network drivers - NiKiZe - 2018-05-08 20:00

(2018-05-08 19:40)Transce Wrote:  
(2018-05-08 17:35)NiKiZe Wrote:  In which environment are you running (efi/pcbios) and which buildtarget/ipxe binary are you using. And what do you see in regards to ifstat if you run above mentioned snponly.efi or undionly.kpxe?

So a little backstory... My company, for some reason, doesn't believe that we need DHCP/PXE. So I've created my own workaround to that for my physical server automation. I actually embed a custom bootloader script into an iPXE image to configure a static IP. It then kicks off initrd and kernel without actually chainloading. I know it's hacky, but it was working until I had to deal with these newer generation servers using the X710 hardware.

That is just fine, and is what many uses, but that does not answer my questions Wink
I know what I asked does not directly lead to a solution, but it does help to get you further once we have that information, even if you don't use DHCP it is still a step to see which workarounds are available to you ....

(2018-05-08 19:40)Transce Wrote:  We figured out a workaround on Dell by adding:
PCI_ROM ( 0x8086, 0x1572, "x710", "X710-SFP", 0 ),
To the end of the device list in the intelx.c file. It does allow the devices to show up on ifstat

AFAIK the x7 device is compleatly different from the previous cards, it might be able to initialize, but don't expect more.

(2018-05-08 19:40)Transce Wrote:  Sorry for my novice knowledge, but is there a way to load the snponly.efi or undionly.kpxe via virtual cdrom/usb?

I wish I knew what iPXE binary you where using to not get you into something that won't work ... if you are using pcbios then no, if you are using efi then the snp driver should work fine, you get that in snp.efi build, but it is also included in the ipxe.efi build, again this is why I asked the information to start with....
If no native driver is available for a device in EFI mode, but it has an SNP or NII handle, then that driver is used for those devices instead.
For this to work you should try to configure a box to use network booting in EFI mode, this requires a DHCP. and then have it load snponly.efi. If you can verify that working then you should be able to use snp.efi or ipxe.efi with your embeded script and without DHCP, but for testing and debug purposes the normal PXE boot setup is likely to be invaluable. Even if it isn't what you will be using in the end.


RE: X710 network drivers - Transce - 2018-05-08 20:32

Quote:I wish I knew what iPXE binary you where using to not get you into something that won't work ... if you are using pcbios then no, if you are using efi then the snp driver should work fine, you get that in snp.efi build, but it is also included in the ipxe.efi build, again this is why I asked the information to start with....
If no native driver is available for a device in EFI mode, but it has an SNP or NII handle, then that driver is used for those devices instead.
For this to work you should try to configure a box to use network booting in EFI mode, this requires a DHCP. and then have it load snponly.efi. If you can verify that working then you should be able to use snp.efi or ipxe.efi with your embeded script and without DHCP, but for testing and debug purposes the normal PXE boot setup is likely to be invaluable. Even if it isn't what you will be using in the end.
Oh! Sorry about that. It's the current one from git:
git describe --tags
v1.0.0-2665-g960d1e3
cat .git/refs/heads/master
960d1e36b09803b291803ab336412f7d95349568

Currently, we are still using legacy mode. But I'm willing to finally join the new world order and try UEFI if that will work.


RE: X710 network drivers - NiKiZe - 2018-05-08 20:51

How do you build iPXE? or which file are you copying from the iPXE build?
Since you use legacy, I'm expecting that you are are using the ipxe.iso, or ipxe.usb binary.

For efi, try make bin-x86_64-efi/ipxe.efi
then copy bin-x86_64-efi/ipxe.efi to /Boot/EFI/bootx64.efi on a fat formated usb device.
The only thing that is interesting in this case is to see if the device you want is found with ifstat.
If so then you can move on to try and get your script working, but don't expect it to work right of the bat.


RE: X710 network drivers - NiKiZe - 2018-07-17 14:03

There is now iPXE native drivers available for the Intel X710 and friends: http://git.ipxe.org/ipxe.git/commitdiff/d2063b769


RE: X710 network drivers - Transce - 2018-07-25 19:28

(2018-07-17 14:03)NiKiZe Wrote:  There is now iPXE native drivers available for the Intel X710 and friends: http://git.ipxe.org/ipxe.git/commitdiff/d2063b769

Thanks for the heads up! I will have to wait until we have a new server come in with those cards and give it a try. I'm hoping it works though. That would make my life a lot easier.


RE: X710 network drivers - Transce - 2018-11-07 23:21

I just finally was able to test this out and have had success! This is going to make my life ultimately more easy now. It seems that more and more, we are getting those X710 cards in.

Thanks for the heads up on this!