aarch64-laptops / build

Build an Linux OS based image
237 stars 55 forks source link

Question about the firmware/booting ISOs #30

Open falkor2k15 opened 5 years ago

falkor2k15 commented 5 years ago

Not really an issue and off-topic - but since there's nowhere else to discuss I thought I would ask the question here:

Does anyone know which of the snapdragon laptops can boot Windows on ARM ISOs from external USB for restoring the operating system when the internal hard drive is completely erased?

Is the firmware different between, say, the HP Envy x2 (the first snapdragon laptop) and C630 (the more recent Lenovo offering)? I was hoping it would have got upgraded after all the issues with the earlier snapdragon laptops.

lag-linaro commented 5 years ago

As far as we know, there isn't a working recovery image for these laptops.

@jhugo would be the best person to answer the F/W questions.

falkor2k15 commented 5 years ago

Since they have a uefi bios what could the issue be and how are they imaged in the first place? Has anyone actually tested a windows 10 on arm iso on the yoga c630 written to USB with Rufus? Does it also crash the system like the HP envy x2?

On Mon, 2 Sep 2019, 08:18 lag-linaro, notifications@github.com wrote:

As far as we know, there isn't a working recovery image for these laptops.

@jhugo https://github.com/jhugo would be the best person to answer the F/W questions.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/aarch64-laptops/build/issues/30?email_source=notifications&email_token=AI4ARJSU6RCMFUJ4JH5VH63QHS45XA5CNFSM4ISVEKS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5U6AIA#issuecomment-527032352, or mute the thread https://github.com/notifications/unsubscribe-auth/AI4ARJRAEWHJUK7HFVK7W2LQHS45XANCNFSM4ISVEKSQ .

lag-linaro commented 5 years ago

This isn't something we have tried.

I would be very interested in the results however.

lag-linaro commented 5 years ago

One thing I should say however; there are many device specific files contained on the Windows partition (and other partitions). Even if someone were to find a working generic image, it would lack many features. The only real hope is if the vendor released a recovery image specifically for the device in question.

falkor2k15 commented 5 years ago

Any examples? I would be very surprised if the devices did have any special files besides the efi file for the bootloader and arm64 specific drivers for GPU, Ethernet, sound, etc. These are all embedded within Windows. The HP envy crash and failure to boot windows or Linux efi installers suggested that the efi firmware had some driver problems of its own perhaps in terms of booting externally. I was hoping it would have been fixed for the yoga c630 - and even the envy x2 by means of a firmware update. That's my theory anyhow. The only thing comparable though would be the custom uefi for the raspberry pi 3.

On Mon, 2 Sep 2019, 14:32 lag-linaro, notifications@github.com wrote:

One thing I should say however; there are many device specific files contained on the Windows partition (and other partitions). Even if someone were to find a working generic image, it would lack many features. The only real hope is if the vendor released a recovery image specifically for the device in question.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/aarch64-laptops/build/issues/30?email_source=notifications&email_token=AI4ARJSHNC4XUBLRUIVVEBDQHUIXBA5CNFSM4ISVEKS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5V2WHI#issuecomment-527149853, or mute the thread https://github.com/notifications/unsubscribe-auth/AI4ARJSO5ROSB7YZG2RP5JTQHUIXBANCNFSM4ISVEKSQ .

falkor2k15 commented 5 years ago

Perhaps the drivers just need to be exported first and injected into the installer using dism as they may not be part of windows updates and unavailable from the manufacturer.

On Mon, 2 Sep 2019, 17:04 Gilius 2k15, gilius2k15@gmail.com wrote:

Any examples? I would be very surprised if the devices did have any special files besides the efi file for the bootloader and arm64 specific drivers for GPU, Ethernet, sound, etc. These are all embedded within Windows. The HP envy crash and failure to boot windows or Linux efi installers suggested that the efi firmware had some driver problems of its own perhaps in terms of booting externally. I was hoping it would have been fixed for the yoga c630 - and even the envy x2 by means of a firmware update. That's my theory anyhow. The only thing comparable though would be the custom uefi for the raspberry pi 3.

On Mon, 2 Sep 2019, 14:32 lag-linaro, notifications@github.com wrote:

One thing I should say however; there are many device specific files contained on the Windows partition (and other partitions). Even if someone were to find a working generic image, it would lack many features. The only real hope is if the vendor released a recovery image specifically for the device in question.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/aarch64-laptops/build/issues/30?email_source=notifications&email_token=AI4ARJSHNC4XUBLRUIVVEBDQHUIXBA5CNFSM4ISVEKS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5V2WHI#issuecomment-527149853, or mute the thread https://github.com/notifications/unsubscribe-auth/AI4ARJSO5ROSB7YZG2RP5JTQHUIXBANCNFSM4ISVEKSQ .

lag-linaro commented 5 years ago

I'd be very surprised if the device drivers and/or firmwares required to run these platforms in any meaningful way would have been upstreamed into Windows such that they would appear in a generic installer.

jhugo commented 5 years ago

Yes, the firmware is substantially different between the 835 devices (ie the HP x2) and the 850 devices (ie the c630). The 850 devices would use the 835 FW as a starting point, and evolve on it - add support for new components, and fix up mistakes that were learned.

falkor2k15 commented 5 years ago

I managed to get some pics of the BIOS screen... looks like it's definitely updated as of 2019 - comes with 1903 in S mode - but I couldn't figure out which F key to access the boot menu for booting from USB, etc.

IMG_20190903_184614 IMG_20190903_184249

Surprisingly it can play 4K video quite well.

lag-linaro commented 5 years ago

To boot from USB, go to the Boot section in the BIOS.

If viable, USB/SD will boot first, before UFS.

NiQ1 commented 5 years ago

At least for the Yoga C630 you can download a vendor recovery image - https://support.lenovo.com/lu/en/solutions/ht103653 It should restore the machine to factory image.

If you need a clean Windows 10 image without any vendor customization, it is available on MSDN, the file name is: en_windows_10_consumer_editions_version_1803_updated_march_2018_arm64_dvd_12063378.iso Never tried to actually install it though, so can't guarantee anything. I also won't provide any illegal download links so it's up to you to find it.

jabtn2 commented 5 years ago

No issues at all wiping the drive and installing from a USB drive made with Rufus and an ARM windows ISO. ISO created using UUPdump and aria2. Oh and if needed, the boot menu on a c630 is opened by holding down the fn key while powering on.

falkor2k15 commented 4 years ago

I managed to get hold of a Yoga C630 for £200. Similarly to the first generation HP Envy x2 the USB boot isn't working - crashes on "starting ntfs partition service". This might have something to do with the latest firmware - version 1.33 - since USB drives larger than 32GB are no longer being detected according some reports online (confirmed from my testing too). Windows on ARM ISOs are certainly not booting up, so this second gen laptop isn't much of an improvement (yet) over the first wave IMO.

Incidentally, I dual booted a clean Windows on ARM (DISM applied) via the internal hard drive - and to my horror the keyboard, trackpad, touchscreen and external wireless keyboards did not work by default due to lack of standard drivers in Windows on ARM; therefore, even if it were possible to boot from USB I don't think the OOBE interface could be controlled using C630 hardware by default - even though the UEFI/boot menus can (using their own EFI drivers perhaps). Luckily, the recovery partition does allow wireless mice so I was able to undo this experiment.

Next time around I injected the 164 Qualcomm drivers into the install.wim (previously exported using PowerShell) before applying it to the internal partition again - and it now works flawlessly without all the Lenovo bloatware. Besides that, there could be something special about the bootloader itself that contains the Lenovo branding. There are some peculiar files alongside the EFI folder as well as several other non-standard partitions. I'm unable to clone the bootloader due to a problem with the VSS writers - but I doubt USB boot would benefit from it because the logs it spits out mentions GRUB and other stuff before crashing on "starting ntfs partition service" - unlike any other UEFI boot feature I've ever come across.

falkor2k15 commented 4 years ago

The recovery disk worked for the Yoga C630 - goes through some mad audit mode/sysprep bizness to assemble Windows 10 ARM with about 5-6 restarts from all kinds of basic building blocks beyond UUP! :D Though it cannot boot anything else besides the opening menus of Ubuntu 19.10 and 20.04, if anything the Yoga C630 USB boot prefers exFAT + GPT (over FAT32 or NTFS).

I noticed that turning off secure boot doesn't really turn it off because I have a hunch that the EFI system partition containing the Windows Boot Manager is actually chainloaded from another EFI partition somewhere amidst all the hidden logical disks and partitions and files that exist as part of a botched UEFI framework - reminiscent of Windows Phone. Storing all this mess is a Samsung eUFS disk that cannot be replaced or even bridged to USB outside of Silicon Valley! Is the Surface Pro X any tidier I wonder!?

falkor2k15 commented 4 years ago

Interesting... the prebuilt Linux distro from this site is booting up! I guess the DTB makes all the difference when it comes to these devices.

powderluv commented 4 years ago

Also disable fastboot when you disable secure boot. I noticed with the latest build 1909 my USB drives were not being detected.

powderluv commented 4 years ago

also a 16GB USB drive boots well but two SanDisk 128GB/256GB drives couldn't boot.

powderluv commented 4 years ago

BTW I am unable to boot Dimitri's bionic installer as per the instructions for a c630 but your prebuilt image boots fine. Is there a way I can invoke the installer from the prebuilt image ?

2603624819 commented 2 years ago

can you share the drivers backed up from this devices? I recently lost it. lol