Tow-Boot
edk2
Tow-Boot | edk2 | |
---|---|---|
24 | 51 | |
481 | 4,246 | |
3.5% | 1.6% | |
8.3 | 9.9 | |
12 days ago | 7 days ago | |
Nix | C | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Tow-Boot
-
Building an ARM64 home server the hard way
For the Pine family of SBCs I highly recommend installing Tow-Boot - https://tow-boot.org/ - on the SPI flash memory to allow yourself much better boot options, including booting directly from NVMe so you don't need to keep the MicroSD card plugged-in.
-
I fucked up with my Pinephone Pro (postmarket edition), do not boot anymore
TL:DR: Install Tow-boot first, then install in Mobian image.
- Can't get PinePhone to boot
- Another one of those "which distro runs better these days"
-
Not booting on Micro SD
I opened a ticket on Two-Boot because I wasn't sure Tow-Boot was actually installed, and every information on the internet assume you don't use Tow-Boot (and so, Micro SD is booted if present).
-
Back to Android (for the time being) - Sadly my PinePhone experiment has - after several months of running one as a daily driver - come to an end for now and I'm back on my Pixel 2.
Also the PinePhone and PinePhone Pro both can (and the PPP already does in postmarketOS) boot with UEFI nowadays. For that we use Tow-Boot currently but it could be any platform firmware really.
-
Unable to compile ATF to build Uboot
Also you should use Tow-boot which is more user-friendly than u-boot. you can download it here. Make sure you select the one for "pine64-pinephonePro" and not "pine64-pinephoneA64". You can find instructions for installing it here.
-
How does ARM support for Linux work? Why do they use custom kernels, OS instead of mainline and the typical distros?
U-boot is quite the nice project. Any opinion on tow-boot as a tool for it?
-
PINE64 has let its community down
This seems way overblown, from pretty much all perspectives.
1) Listening to community. People can suggest all kinds of conflicting things, and you just can't satisfy everyone. My experience is that many of my HW modification suggestions were listened to, even some I'd expect the Pine64 might have found a bit frivolous, like desire to have some GPIO exposed as easily accessible solderable pads on the Pinephone keyboard's PCB, so that I can mod the keyboard later on and add some buttons to the bottom side of it, etc. I got some help with aquiring of information about various chips, that I requested, etc. I didn't get everything I wanted. Life is hard I guess. OTOH, Pine64 probably did not listen to some other HW mod suggestions that I have participated in group thinking about in the chats.
I think those were the mods that would require more risky redesign, and would cause incompatibilities between Pinephone and the Pro, like sugestion to split DC-IN and USB-IN on the Original Pinephone PMIC to better support the keyboard, or suggestions to redesign battery charging circuitry in Pinebook Pro, so that drivers can limit input current to be able to follow the Type-C/PD specs more closly.
These are risky to follow from us randos on the internet. Even simple suggestions are risky to follow, even if they are correct! Take the addition of diode to prevent some issues with the pinephone keyboard's charging circuitry. The suggestion was followed, but mistakes were made in the long chain that engineering the change takes, and the diode was placed incorrectly and prevented charging the keyboard completely.
2) Bootloader/SPI thing. Yeah it's unpleasant for distros to have to include U-Boot as part of the distro image, especially when things are in flux and fixing bootloader is required for fixing things in general, too, and you have to track non-mainline patches, because Pro support can't be mainlined, yet.
So now there's Tow-Boot to come to the rescue as bit of a center of gravity for U-Boot development/support. Except that it's not really that maintained either with last patches added like 6 months ago https://github.com/Tow-Boot/Tow-Boot/tree/released/boards/pi... despite persistent issues with Pinephone Pro bootlooping, because bootloader allows boot when there's not enough energy in the battery. Some hack patches are available, but not included. Etc.
Also because things are in flux, allowing users to combine arbitrary U-Boot with arbitrary kernel version can lead to all kind of fun things, like hard to explain overheating of the phone, because kernel enabled cpuidle support, and U-Boot version in SPI lacks it and similar things.
3) Diversity/monoculture angle
Focing Tow-Boot can easily be construed as just another thing that Pine64 is forcing on users by default, too. Pinephone/pinephone pro has bootloader diversity, with alternative bootloaders being much better for users in several aspects (like not having charging or bootloop issues, or having multi-boot functionality or GUI) and maybe worse in others. So on one hand Drew is arguing that there's monoculture in distros, but wants to force monoculture in bootloader, barely maintained or developed one from Pine64 support perspective.
In the end, the most important thing is that there's not technical lockdown (secure boot not enabled). Pine64 has no say in what user can flash or not. Escaping the default bootloader is as easy as booting the preloaded Manjaro and erasing it from SPI and eMMC. The phone or pinebook will then boot whatever user wants to boot from SD card.
- I Left PINE64
edk2
-
Future of 32-bit platform support in FreeBSD
For the modern server/desktop and even laptop, that's also no bad thing. It is somewhat ridiculous that UEFI bioses, internally, still boot in 16-bit real mode and have to do all the steps your bios bootloader used to do to set up a 64-bit environment ready to go: https://github.com/tianocore/edk2/blob/edc6681206c1a8791981a..., https://github.com/tianocore/edk2/blob/edc6681206c1a8791981a..., https://github.com/tianocore/edk2/blob/edc6681206c1a8791981a...
Why not just start the CPU in "long mode", which is what everyone is using it for, in the first place?
These newer ARM processors support 32-bit code at EL0 only (userspace). That seems like a reasonable approach for x86 as well and the freebsd announcement has this to say:
> There is currently no plan to remove support for 32-bit binaries on 64-bit kernels.
So for the moment, you can run 32-bit applications just fine.
-
Precision 7520: 64GB memory 3200MHz support
Download this UEFI shell and place it in the BOOT subfolder
-
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack
They could have at least informed TianoCore. the affected code in edk2 hasn't been modified in 2 years.... https://github.com/tianocore/edk2/blob/master/MdeModulePkg/Library/BaseBmpSupportLib/BmpSupportLib.c
-
VM not booting with host-passthrough or host-model
I have half fixed it.. Using this solution: https://github.com/tianocore/edk2/discussions/4662
-
All gaming laptop owners know this is never true...
You need only EDK2 and some lööps.
-
AMD openSIL open source firmware proof of concept
What is the difference between this and https://github.com/tianocore/edk2
-
AMD to move to open source firmware in 2026
From there you'll need to get an EFI Shell. There may be one built into your system, but you can also get one here from Tianocore (aka, the people mostly making UEFI). Neither this EFI Shell nor Keytool.efi (the thing you need to load the keys) are signed of course, so you will need to turn off SecureBoot to continue. From there just run Keytool with your new keys, turn back on SecureBoot, and move on with your life.
-
Windows installation doesn't boot up when I try to use UEFI firmware
I had the same issue. What fixed it for me was compiling my own OVMF.fd file from here and using that to boot. The version of OVMF that shipped with fedora was broken for me for some reason.
- why chatgpt knows about (haswell NRI) [ERROR] REUT timed out, ch_done: 0 but not in google?
- EDK II Project: cross-platform firmware development environment
What are some alternatives?
Jumpdrive - Flash/Rescue SD Card image for PinePhone and PineTab. This is NOT a bootloader
vTPM - libtpms / swtpm software emulation of a Trusted Platform Module (TPM 1.2 and TPM 2.0) compile script
sse2neon - A translator from Intel SSE intrinsics to Arm/Aarch64 NEON implementation
tianocore
electron-discord-webapp - A Discord and SpaceBar :electron:-based client implemented without Discord API.
coreboot - Mirror of https://review.coreboot.org/coreboot.git. We don't handle Pull Requests.
uefi-simple - UEFI development made easy
Getting-Started-With-ACPI - Repo for Getting Started With ACPI
plasma-mobile - Manjaro Plasma-Mobile
limine - Modern, advanced, portable, multiprotocol bootloader.
mobile-nixos - Questions? #nixos-aarch64 (or #nixos) on Freenode!
OpenCorePkg - OpenCore bootloader