#oreboot — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #oreboot, aggregated by home.social.
-
Gosh, I finally got how the RISC-V SBI timer is supposed to work.
And that fixes a bunch of issues I've had with Linux where a bunch of driver APIs go async, requiring a working, interrupt based timer. It worked when adding support for a platform timer (patch pending for upstream) and deferring the probing of drivers having trouble - through a side effect of working around my original suspicion, which was power supplies and clocks.
I.e.: #oreboot + #Linux on the JH7110 works now, except kexec.
-
Ha, first output from lk on the JH7110 booted with #oreboot (non-SMP)!
-
I started publishing the recordings of our #UEFI exploitation sessions.
Playlist is here: https://youtube.com/playlist?list=PLenOHeTI_A9PIW3zelb6c2vhd9V9GhCgF
If you're at #37C3, go check out the self-organized sessions. I have submitted an intro to #oreboot and a #LinuxBoot/u-root/cpu workshop.
And at the Open Source #Firmware Foundation (OSFF) assembly, I'll run a little a #UEFI exploitation session. -
FINALLY!
We just *fully* booted into #Linux on the #VisionFive2 #RISCV board using #oreboot as #firmware and a u-root rootfs. 🧑💻
This took quite a while again and I had needed some breaks here and there. Go 1.21RC2 has the necessary alignment checks for this to work without too much performance penalty otherwise caused if Linux or (even worse!) oreboot handled this.
In other news, this is a vast improvement to what OpenSBI offers. Less hacks, a cleaner architecture, and IT WORKS! 🥳 -
Hey #firmware #hackers, #RISCV friends, #Rust #embedded folks and #oreboot fellows!
As you may know, I've been live coding on Twitch at https://twitch.tv/cyrevolt for some months - otherwise, welcome to the show, every Wednesday at 20:00 CET! 🥳
To catch up and recap, you will find the recordings with descriptions (18 so far) on YouTube in this playlist:
https://youtube.com/playlist?list=PLenOHeTI_A9PSGshDnEc4dYK-GSnCshk6Please share, leave your feedback, and I'm looking forward to having you join the stream! ✨👩💻✨
-
LL262 InuxOunge – Das Linux Magazin ohne L ist nun als Podcast verfügbar https://theradio.cc/blog/2022/10/09/ll262-inuxounge-das-linux-magazin-ohne-l/
#podcast #oreboot #rust #steamdeck #torrent #bitsundbaeume #37c3 #peertube #pipewire #diabetes #linux #opensource #freesoftware #floss #foss
-
We can boot a bunch of operating systems now with #oreboot on the Allwinner D1, both S-mode and M-mode payloads (PR for the latter is WIP, but works already).
This includes MnemOS, xv6, Linux and r9.Here is r9 kexec'ed from the LinuxBoot environment via cpu over USB.
-
I'm happy to return back to #OSFC (https://osfc.io) with two talks, summarizing the tremendous international success we're having in the #oreboot project (https://github.com/oreboot) designing and implementing #firmware for RISC-V platforms and outlining the audit and annotation features in #Fiedka the firmware editor (https://fiedka.app) to support fulfilling the software supply chain #security requirements as demanded in the US Executive Order 14028 Section 4e.
-
I'm happy to return back to #OSFC (https://osfc.io) with two talks, summarizing the tremendous international success we're having in the #oreboot project (https://github.com/oreboot) designing and implementing #firmware for RISC-V platforms and outlining the audit and annotation features in #Fiedka the firmware editor (https://fiedka.app) to support fulfilling the software supply chain #security requirements as demanded in the US Executive Order 14028 Section 4e.
-
I'm happy to return back to #OSFC (https://osfc.io) with two talks, summarizing the tremendous international success we're having in the #oreboot project (https://github.com/oreboot) designing and implementing #firmware for RISC-V platforms and outlining the audit and annotation features in #Fiedka the firmware editor (https://fiedka.app) to support fulfilling the software supply chain #security requirements as demanded in the US Executive Order 14028 Section 4e.
-
Gotta ramp things up a bit, so here's news on #oreboot on the #VisionFive: I've figured out that we already had the code for switching to the other UART pin header, and documented and reenabled things.
So yay, we can now start booting from SRAM and output is good! \o/
In next week's live stream, we'll see about a second stage where we bring #RustSBI into the mix. We may introduce the #xtask based build setup already.
-
So what are we going to explore in today's #oreboot and #RISCV stream?
I'll try a run from flash on the #VisionFive, and then step back a bit and talk about the #firmware boot flow, flash layout, and building up a #framework.
See you again at 20:00 CEST!
-
Decompression in #oreboot now works :-)
-
Experimenting with #compression crates in #Rust, looks promising:
https://github.com/orangecms/compress-test-rs
This test tool expects a file named `Image` in the current directory, made for Linux kernels, with 8MB max compressed size.
It compresses and decompresses. Just `cargo run --release` to try it, takes ~30 seconds for a 16MB sparse kernel. It'll tell you the result sizes.
The limit may need to be raised to 10MB for the D1 kernel, we'll see, but it suffices, eventually.
Next up is trying that in #oreboot. -
Here is how #oreboot is pieced together:
We start from a ROM with SRAM, initialize the platform, set up DRAM, copy the next stage into it, and continue there. On RISC-V, we pull in #RustSBI for the SBI implementation. Then we execute #LinuxBoot or any other payload.With u-root in #LinuxBoot, we offer a common #Linux environment including all the usual commands such as cat, ls, etc, plus boot loaders that can boot into the final OS - e.g., another Linux system. 🐧
-
IT WORKS!!!!! 🥳
We can now fully boot the Allwinner D1 RISC-V SoC in #Rust, from flash right into #Linux, demoed on a Lichee RV + Dock. :-)
The full flow:
boot0 (ROM/SRAM) -> #oreboot (DRAM) + #RustSBI -> #LinuxBoot (Linux + u-root)The last issue was a stupid one again. I had sorta crapped up arithmetics again. :D
If you have a D1 with a NOR flash (16MB / 128Mbit), you can try it out:
https://metaspora.org/oreboot-linuxboot-licheerv-spinor.romIn the coming weeks, we will iron a few things out and do a writeup on everything.
-
Since it hadn't worked out last week - sorry again! - we're going to do this today. Tune in again in 45 minutes, at 20:00 CEST, for the next session of #oreboot #firmware on the #VisionFive #RISCV board!
Will we get to run our own code? Let's see! 🥳
-
Next up for this Wednesday: A closer look at the #VisionFive mask ROM, live again at 20:00 CEST. Tune in for another #RISCV development stream, where we bring forward #oreboot, which is #firmware written in #Rust.
Sorry for not making it last week. I was in another city for a conference and the hotel Wi-Fi didn't like me that day. -_-
-
As announced, I'm doing weekly streams now on #oreboot #Rust #firmware hacking, every Wednesday at 20:00 CEST. Feel free to subscribe to the channel: https://twitch.tv/cyrevolt
Recordings are archived there for 14 days, so I reupload them here:
https://youtube.com/playlist?list=PLenOHeTI_A9PSGshDnEc4dYK-GSnCshk6Feel free to subscribe and tune in, see you there! 🥳🙂
-
Next #vPub on 17 February - see https://vpub.dasharo.com/
We'll talk about #firmware, featuring #oreboot, https://racklet.io/ and other projects. 🎉
-
If you would like to try out #oreboot on the Allwinner D1 boards #Nezha or Lichee FV, here are quick notes on obtaining and running a prebuilt image: https://gist.github.com/orangecms/df0d3c15f9e32b5c708c021c4be8857b
I am gradually upstreaming things to eventually build the image in CI automatically. Few details are left to be figured out, and the Linux kernel patches are also pending in the mailing lists, so let me know if you'd like to participate and I can point you to where we're at and what's where at that moment. Things are moving. -
What's up? We have graphics output on the Sipeed Lichee RV module with a little test program written in Go as part of u-root, plus the #Linux #framebuffer console.
✨👩💻✨
This is #oreboot + @LinuxBootOrg on #RISCV. :-)
The SBI implementation is Luo Jia's #RustSBI. It allows us to keep everything before Linux fully in #Rust. \o/If you have one such module, let me know and I can provide you with an image and how to load and run it. :-)
More to follow when carrier boards arrive in a few weeks.