Dell 7010 Lenovo L530 with UEFI enabled, won't network boot.
-
@Sebastian-Roth Here is the output requested using the two files.
https://drive.google.com/folder/d/0B2BmriqzYEgXbjFVdXhPbjhkY1k/editThey have filenames that include the file that was being tested.
-
Thanks again for pics and videos! To me this looks like realtek.efi is working on your machine. There is only a minor issue (typo) that @Tom-Elliott can fix soon I guess. (end of second line:
gotosetserv
should begoto setserv
). But to me this really looks as if it is loading and initializing the devices properly. Or try the relatek binary I uploaded. It’ll only get you to a shell but we would see debug output as well. If you get to the shell just trydhcp && echo YES
to see if it can properly request an IP.Could you please give this binary another try: 0_1447365739406_ipxe.efi (
DEBUG=snp,snponly,snpnet,netdevice
) I am pretty sure that we are failing here: http://git.ipxe.org/ipxe.git/blob/master:/src/net/netdevice.c#l666 (just want to be absolutely sure)Anyone got an idea why iPXE could be failing with “Reject network devices that are already available via a different hardware device.”? Does that mean that this card was already used by a native driver? But that doesn’t make sense to me. Or another NIC having the same MAC address? No?!
-
@Sebastian-Roth said:
try the relatek binary I uploaded.
I did, the output of the one video labled realtek.efi.mp4 is for the file you posted. Was it supposed to do other stuff?
Could you please give this binary another try: 0_1447365739406_ipxe.efi
I can and will, I want to get this working for my site and for documentational / educational purposes for the FOG Project in general.
-
@Wayne-Workman said:
I did, the output of the one video labled realtek.efi.mp4 is for the file you posted.
I am pretty sure it’s not because of the ‘gotosetserv’ error which is not in my embedded script and because we don’t see any colored debugging output. Maybe you got the binaries mixed up?
-
The post is great!
-
Welcome everyone to build iPXE binaries and try to get those UEFI devices to work! Please let us know how you compiled the binary (full make call) and show us a picture of errors if you need help to debug iPXE on your machine (error numbers must be readable on the pic!).
Take a look here on how to compile your own binary: https://wiki.fogproject.org/wiki/index.php/IPXE#Compile
-
@Sebastian-Roth said:
I am pretty sure it’s not because of the ‘gotosetserv’ error which is not in my embedded script and because we don’t see any colored debugging output. Maybe you got the binaries mixed up?
I’ll re-try on Monday morning.
I promise I did download the binary you provided… I don’t know what happened - I would never deceive you Sebastian, not in a million years ever. I thought I did download what you posted, I had to rename it to realtek.efi and then when I copied it to the /tftpboot directory I had to confirm overwriting the old file…
I will retry and report back. I do sincerely appreciate your efforts, you’re an incredible asset to the FOG team!
-
@Wayne-Workman said:
I don’t know what happened - I would never deceive you Sebastian, not in a million years ever.
Don’t worry, I never thought you would! I know what happened… It was me working late into the night I suppose. Most of those binaries were compiled with this flawed embedded script. Damn!
Didn’t hurt much when you were using the ipxe.efi files as those didn’t even get that far. And we still got some very helpful debugging output from those. But I am trying to pay more attention from now on.
And still I am wondering why realtek.efi didn’t show any debugging output. But anyhow. Here is a new binary that should bring you to an iPXE shell and have debugging enabled: 0_1447518970841_realtek.efi (DEBUG=realtek,netdevice) Forget about the other realtek binary! Try
dhcp
command to see if it is able to request an IP - watch wireshark…I am really looking forward to see what you get from those binaries. realtek.efi as well as the latest ipxe.efi (you didn’t get to try this out yet, right? No hurry, I just wanna make sure I haven’t overlooked anything)…
-
@Sebastian-Roth https://drive.google.com/file/d/0B2BmriqzYEgXSVBoTWhXTkd0RlU/view?usp=docslist_api
That’s with using this particular file:
@Sebastian-Roth said:
Here is a new binary that should bring you to an iPXE shell and have debugging enabled: 0_1447518970841_realtek.efi (DEBUG=realtek,netdevice)
-
@Wayne-Workman Thanks a lot for trying. I am really confused. Why don’t we see any debug messages? Why does it pop straight back to EFI instead of opening iPXE shell?
Have you tried Tom’s latest realtek.efi binary yet? The gotosetserv issue is fixed as far as I can see in the source. Does it jump straight back to EFI as well? -
Thinking about this and trying different things I somehow got the impression that DELL OptiPlex 7010 does not have realtek but intel NIC. Can you please check and confirm this?
Here is an intel binary with debugging enabled: 0_1447932660735_intel.efi (
DEBUG=intel,netdevice,device,pci
)And here is another ipxe binary. Please give this a try as well: 0_1447932787631_ipxe.efi (
DEBUG=device,pci,snp,snponly,snpnet,netdevice
) -
FWIW: All of the 7010 SFF Dells we have have “Intel 82579LM Gigabit Network Connection” according to our inventory tool.
-
@Sebastian-Roth Guess what I just figured out?
Changes in Windows Server 2012 DHCP are not immediate.
I have it set to ipxe.efi currently for the vendor class PXEClient:Arch:00007
I just did a packet capture on the dhcp server using wireshark… the client asked for realtek.efi… Oh boy…
-
Even after restarting the DHCP Server service, it is still handing out realtek.efi even though it’s set for ipxe.efi
-
So - the previous confusion in the last two posts were due to our split-scope configuration, and DHCP coming from offsite. I’ve had that disabled. I’m getting much more consistency with testing, wireshark confirms my settings as well.
I’ve also learned that the problem machine (optiplex 7010) needs fully shut off and re-started in order for it to use the new DHCP settings - even though it says it’s “Starting IPv4” and supposedly gets DHCP info… so… Total shutdown and startup for every change from now on…
That could also explain some other things too…
I’ve tried the latest ipxe.efi and intel.efi from trunk and those don’t work. They sit at “initializing devices…” for both.
About to try the binaries @Sebastian-Roth posted.
-
@Wayne-Workman said:
I’ve also learned that the problem machine (optiplex 7010) needs fully shut off and re-started in order for it to use the new DHCP settings
Not only DHCP settings I reckon. I think I even had one of my machines reusing the iPXE binary it still had in memory. Had to switch it off and on again to make it request the file via TFTP again…
Did you get to try out the binaries? Any output??
-
https://drive.google.com/folder/d/0B2BmriqzYEgXQk5tbWczVVdZeEE/edit
One video hasn’t uploaded yet. When it does it will appear in this folder. The files are labeled by voice in the video.
-
Can’t stop scratching my head today. EFI is really complex and I am sure I haven’t been able to understand even a tiny bit of it. The PC I am testing EFI PXE boot with is a Fujitsu ESPRIMO P910 E85+ which comes with the exact same NIC as you have in your DELL OptiPlex 7010 (Intel 82579LM!!). But EFI PXE boot is working on my machine (ipxe.efi, intel.efi, snponly.efi)…
So I checked your video again to see what debugging output we see right from the start. And there might be something interesting there:
iPXE initialising devices...Adding 3c509 root bus Adding EFI root bus MII PciRoot(0x0)/Pci(0x19,0x0)/MAC(90b11c9bc14f,0x0) is an MII device MII PciRoot(0x0)/Pci(0x19,0x0)/MAC(90b11c9bc14f,0x0) is an MII device SNP PciRoot(0x0)/Pci(0x19,0x0)/MAC(90b11c9bc14f,0x0)/IPv4(0.0.0.0) is an SNP device SNP PciRoot(0x0)/Pci(0x19,0x0)/MAC(90b11c9bc14f,0x0)/IPv4(0.0.0.0) is an SNP device NETDEV net0 registered (phys SNP-0xd07eb518 hwaddr 90:b1:1c:9b:c1:4f) NETDEV net0 could not add SNP device: Error 0x7f45e082 (http://ipxe.org/7f45e082)
All the other messages about
NETDEV rejecting duplicate ...
might just be caused as it tries to re-add the device over and over again.If I boot the my last uploaded ipxe.efi debug binary on the Fujitsu I get:
iPXE initialising devices...Adding 3c509 root bus Adding EFI root bus PCI 00:19.0 (8086:1502) has driver "82579lm" PCI 00:19.0 has mem f7100000 io f040 irq 11 PCI latency timer is unreasonably low at 0. Setting to 32. NETDEV net0 registered (phys PCI00:19.0 hwaddr 00:19...) NETDEV net0 link is up Adding EISA root bus Adding ... ... Adding PCI root bus ok
So where is the difference? Why is your DELL 7010 not able to register it as an intel NIC and tries SNP which fails (snponly.efi is working on my Fujitsu as well by the way!)??
-
Well this is either good or bad. I get the same results as Wayne using 7010 bios A18.
Not sure if this has any bering on anything. But I checked into the dhcp discover and the 7010s are sending out arch type 7. I noticed that there are two different arch types. One is 7 and one is 9. There is also a arch 6 for 32bit. I guess the question I have is what is the efi boot kernel that is being built?
Type Architecture Name
---- -----------------
0 Intel x86PC (BIOS pre-OS environment)
1 NEC/PC98
2 EFI Itanium
3 DEC Alpha
4 Arc x86
5 Intel Lean Client
6 EFI IA32 (UEFI 32 pre-OS environment)
7 EFI BC (UEFI 64 pre-OS environment)
8 EFI Xscale
9 EFI x86-64 (UEFI 64 pre-OS environment) -
@george1421 A18 won’t work according to this: http://www.dell.com/support/article/us/en/19/SLN296756/EN
I’m using A12 for the record.