• 0 Posts
  • 10 Comments
Joined 9 months ago
cake
Cake day: March 25th, 2024

help-circle


  • I try to use FOSS as much as possible, but I am not willing to give up video games, so I do have steam installed. I also need discord for communication with friends I am playing with. I only use these two on my desktop computer. On my laptop I don’t have any proprietary software running in userspace, but of course it still has proprietary firmware blobs and proprietary UEFI firmware. I also have an old Thinkpad X220 running coreboot and with ME disabled (HAP bit set, ME technically still runs, but halts after hardware initialization) and unnecessary ME components stripped using me_cleaner. And my home server also runs coreboot with ME “disabled” and stripped but it has a BMC with proprietary supermicro firmware and an LSI HBA that also requires firmware.


  • It’s just the easiest way to do this. Memory training is a very early step in the boot process. Firmware only has the CPU cache available as memory and most hardware in the system isn’t initialized yet. Most of this isn’t even done by the UEFI firmware itself, but by calling a binary blob provided by the CPU manufacturer, for intel it is called FSP and AMD i believe it is AGESA. I’d have to check, but I believe at the point memory training is running the PCIe bus has not even been brought up and scanned, so video output in this phase would require extensive reengineering of the early boot process from both the CPU manufacturer, firmware vendors and the board manufacturer. PCIe has DMA so making that work without memory might be a challenge. There are three easy to implement solutions though: post codes if your mainboard has a display for them, serial output if the board has a serial port (though this needs another device to read the messages) and the cheapest solution could be a flashing LED on the board labeled memory training in progress.




  • I tried various linux distros like ubuntu as a kid, but because of gaming I didn’t switch at that time, then around 2010 I got a home server and installed Arch on it. When Arch switched to systemd I switched to gentoo because I did not want systemd. In 2014 I switched to gentoo Linux on my desktop, but still had dual boot for gaming on windows. I tried various init systems on gentoo and then ended up using systemd anyways. Because I got sick of waiting for packages to compile I switched back to arch on my desktop. On my home server and laptop I used alpine linux for a while. I switched back to arch shortly after because I had too many issues with alpine on desktop. I still use alpine in VMs on the server, but others that I don’t touch as much like the print server run rocky linux. I also tried GPU-passthrough to game in a windows VM, but I never managed to resolve all the issues. Since nowadays most games run on wine and proton I never bothered reinstalling/fixing windows when it stopped booting a few years ago, so now I use linux only.