Tablet with WINDOWS 10 and USB-LAN SMC 7500 adapter
-
@AndrewG78 I’ve been waiting on feedback from the developers on the proposed update to FOG.
What I would recommend you do/test if you are willing.
-
Take that refind_ia32.efi and save it to /var/www/html/fog/service/ipxe as refind32.efi (to keep naming consistent with bzImage).
-
Then if you are willing, edit /var/www/html/fog/lib/fog/bootmenu.class.php
-
Go to line 131 to should have some code that looks like this:
$refind = sprintf( 'imgfetch ${boot-url}/service/ipxe/refind.conf%s' . 'chain -ar ${boot-url}/service/ipxe/refind.efi', "\n" );
- Replace that code with
$refind = sprintf( 'cpuid --ext 29 && set rboot-kernel refind.efi || set rboot-kernel refind32.efi%s' . 'imgfetch ${boot-url}/service/ipxe/refind.conf%s' . 'chain -ar ${boot-url}/service/ipxe/${rboot-kernel}', "\n","\n" );
- Save and exit your editor.
- Now test and see if the efi exit mode is able to load the 32 bit efi version of refind on exit.
If you get an error, I would expect one like in the 3rd picture you posted about error 0x7f048283.
I would test this myself but I don’t have a 32 bit uefi system. Also make sure you backup that php file before you edit it, just incase 1) I’m wrong 2) Your edit is bad and something breaks.
-
-
@george1421
Thx. In the meantime I replaced original refind.efi with refind_ia32.efi but it did not help.
There is different error, but I can provide details on Monday the earliest. -
@george1421
So here is the story:- There must be something wrong with this php code as I got
So, I just changed original
'chain -ar ${boot-url}/service/ipxe/refind.efi',
to
'chain -ar ${boot-url}/service/ipxe/refind_ia32.efi',
and got this
I found scanfor option in refind.conf and disabled it.
After that I can boot to Windows from the FOG menu- “Boot from hard disk”!
So there is some progress.
But
when I choose Quick registration on white background FOG menu, there is another B&W menu displayed.
I must use up/down arrows to select something from the menu, however this is blind selection as current row is not highlighted.When I enter Registration(down arrow x2)
and that second FOG menu without highlighted row is loaded immediately(loop).
When I enter Run Memtest(down arrow x1)
And the system is rebooted.Why do I have 2 menus?
- There must be something wrong with this php code as I got
-
@AndrewG78 said in Tablet with WINDOWS 10 and USB-LAN SMC 7500 adapter:
I found scanfor option in refind.conf and disabled it.
After that I can boot to Windows from the FOG menu- “Boot from hard disk”!You have multiple issue here, so I’m not sure where to start. I have no idea on the boot.php error unless you had a type-o in the code.
The second screen, is a positive note with refind initializing. You have the 32 bit refind running. That is great. The scanfor line, should not be commented out, just remove the reference to bios scan and that error will away. That is the reference to the CSM.
The two screens, the back one is because of an ipxe error. What I’m confused about is why it is picking the init.xz file, since that is a 32 bit system. It should pick init_32.xz. The issue is that the init_XX.xz has to match the architecture of the boot kernel (bzImageXX). If they are mismatched or the boot kernel format does not match the hardware arch, then you will get that error.
You could manually register this host, and then go into the host registration and manually force bzImage32 for the host kernel and init_32.xz for the host initrd file. (this is just a test at the moment to see if it can boot).
-
@george1421
Thank you so much.
Looks like we got it.
When I set bzImage32 for the host kernel and init_32.xz and when I created a task to capture the disk, PartClone has been loaded and it’s taking the image right now.
What is still strange, there is no more any FOG menu list loaded from the PXE, but I can live with manual host registration.
Next step is to test deploy function. -
@AndrewG78 What I’m speculating is that iPXE is miss-identifying the target computer. We have seen this on some tablets where the processor is a 64 bit system, but its locked in 32 bit mode by the manufacturer.
While you have a workaround. I’m interested in the code patch I provided for refind… but if ipxe is miss-identifying the target system, it will still call the wrong refind.
I’m wondering if you could try something for me on your hardware. Reset things so you get the ipxe error with the “chainloading failed, hit ‘s’ for the ipxe shell”.
At this message press s to get the ipxe shell. Then key in
show platform
cpuid --ext 29
if the short method doesn’t return anything then you can use this onecpuid --ext 29 && echo x64 || echo x32
-
@george1421
Well this is really strange, ipxe thinks this is 64 bit architecture
-
@AndrewG78 excellent, we see that iPXE is thinking its a 64 bit system. That’s why things didn’t work out of the box.
I’m more curios now, what model tablet is this? What CPU does it report on the tin?
-
@george1421
Inari 10 2GB
-
@AndrewG78 Thank you for the feedback. The atom processor IS 64 bits.
What I’m wondering is what operating system is installed on these tablets (in regards to the architecture)? Is that Win10 32 bit or Win10 64 bit?
According to what you captured from your dnsmasq server
Aug 20 10:55:28 localhost dnsmasq-dhcp[9463]: 2705516733 vendor class: PXEClient:Arch:00006:UNDI:003001
The system is telling your dnsmasq server that its a [Arch:00006] == “EFI IA32” computer. So at least the firmware thinks its a 32 bit computer.
-
@george1421
Actually it is not WIN10 but WIN 8.1 ( my mistake in the topic)
It’s 32bit version. -
@AndrewG78 said in Tablet with WINDOWS 10 and USB-LAN SMC 7500 adapter:
It’s 32bit version.
Ah that explains a bit. These did some electronic trickery to make a 64 bit processor think its a 32 bit one.
So you have a workaround for this system now? Can we close this issue because there is not much FOG can do with scripting around this?
-
@george1421
Thanks for your support here. Yes we can close it.
Im just curious, what about refind in 32 and 64 bit ? Will this be supported in the next FOG release out of the box? -
@AndrewG78 I need to talk to the developers about this. I feel yes since fog supports both 32 bit and 64 bit environments, that refind 32 bit needs to be included.
BUT I’m afraid it will not help you since your system is a 64 bit imposter, in that the CPU is reporting its 64 bits, but the hardware manufacturer has locked it in 32 bit mode. I looked through smbios to see if there was a system board setting that would report the data width so we could see if FOG can classify the system better. But there wasn’t anything I could see in smbios that reported we could key off of. I did see using dmidecode that the Processor section says its 64-bit capable (on my VM), but I don’t know if that would work correctly on your non-standard hardware.
-
@george1421
OK that was clear to me. Just wanted to see if FOG can benefit somehow through this tough work with my tablet -
@george1421
Hi.
I have new FOG server with the newest 1.5.5 version(centos 7 ), but this time acting as a DHCP server(no dnsmasq anymore).
It works fine with regular laptop, but again on this Tablet I got strange tftp behavior.
I have checked tftp from windows machine and this file could be downloaded with no issues.
But on the tablet I got:
There is nothing in the /var/log/messages
-
@AndrewG78 This device is being detected as a 32 bit uefi system. So its being told to load ipxe from the i386-efi directory.
I would start out on the FOG server and ensure that ipxe.efi exists in `/tftpboot/i386-efi directory. the error message says it requested the file but the responded file size is 0.
Can we also assume that 192.168.1.1 is the IP address of your fog server?
-
@george1421
It works now.
Im not sure what was that.
I have updated centos through the yum update
Then it did not even load fog interface on 192.168.1.1/fog but on localhost/fog only.
So I have installed FOG again like an update, it has finished with an error “DB backup failed”
But, surprisingly all works correctly now.
Thx again for your time,
I think something was not up to date in the system, but why did it work with regular laptop but didn’t with the tablet? Strange a bit. -
@george1421
Hi, I have another puzzle to solve
I had to run FOG server on another hardware. I obviously ran nmtui-edit and updateIP.sh community script.
And this time I have in logs
in.tftpd[12096] Error code 8. User aborted the transfer
in.tftpd[12097] Client 192.168.1.18 finished i386-efi/ipxe.efiand Tablet freezes on this screen
-
@george1421
Hi George,
Puzzle is solved now
Unfortunately version 1.5.5 has some issue /bug with 32bit version of init and kernel files.
I have manually downloaded binaries1.5.4.zip and overwrote bzImage32 and init_32.xz in the ipxe folder and all is working fine!!!
Could anyone check it and confirm my words?