Hi all,
Screenshot above: LuCI status page on Ten64 running from an OpenWrt.org build
I am delighted to announce that OpenWrt now has support for the Ten64 as part of it’s new armsr (Arm SystemReady) target.
armsr
takes over from the previous armvirt
target and adds support for Arm systems that support booting EFI images. These include Ten64, Arm based servers (like AWS Graviton) virtual machines like VMWare Fusion on macOS and various other devices from embedded to servers.
SystemReady is the name of Arm’s standards and certification program which we are working on getting for the Ten64 as well.
By being part of a industry standard, we will be able to use enhancements like secure boot in the future without ‘reinventing the wheel’.
I have actually had some form of this port around for several years, but there has been quite an increase in interest from others in the ecosystem in the last 6-12 months.
Sorry it’s taken so long, but I believe the outcome achieved is better for everyone.
When the next generation of Arm SoC’s arrives over the next few years, I expect they will use this target instead of individual ones (such as imx, layerscape etc.).
What about OpenWrt 23.05?: The armsr change has only been applied to the OpenWrt main (master) branch, but we are working on getting it into the upcoming 23.05 release.
23.05 uses kernel 5.15 while the main branch is now on 6.1.
NAND users:
Update: as of 2023-06-27, snapshot builds for Ten64 NAND are available, see the OpenWrt firmware selector.
The armsr target is only for disk boot, but a separate pull request has been opened to add Ten64-NAND to the layerscape
target. These images will be compatible with the images built by Traverse.
The NAND builds on archive.traverse.com.au will continue to be built on the (now) armsr target for efficiency reasons. You will still be able to move between our builds and OpenWrt.org ones.
There are enhancements for NAND boot planned in upcoming firmware releases, so it’s not going anywhere.
Upgrades from our 22.03 builds are not currently supported!
The sysupgrade mechanism has been changed slightly the upstream version. If you upgrade, it will not correctly update the root=
argument in the new GRUB configuration. I will see if I can backport the “new” upgrade support to the 22.03 builds.
There are also issues with the different / partition sizes between Traverse and OpenWrt.org builds. It is on the TODO list to deal with this more gracefully.
Where to download the OpenWrt builds
Ten64 (disk boot) support falls under the armsr/armv8
target (Arm SystemReady => 64 bit (armv8) machines in the OpenWrt buildroot).
You can download them from https://downloads.openwrt.org/snapshots/targets/armsr/armv8/.
Keep in mind that OpenWrt.org builds (currently) don’t have LuCI or WiFi drivers installed by default. For example, you will need to run opkg update && opkg install luci
.
Attended Sysupgrade does not work just yet, I am looking into it.
Acknowledgements:
Many thanks to Anton Antonov at Arm for his assistance, Petr Štetiar (ynezz) for reviewing and merging these changes, users of various other Arm boards for testing and to all of you for your support.