This reverts commit a08b8d94fc.
From #libreboot IRC today:
07:02 <irys> ooh this is fun. seabios commit 8863cbbd15a73b03153553c562f5b1fb939ad4d7 (ahci: add controller reset) breaks ahci entirely on t420
07:05 <irys> cbmem console on that seabios commit has a timeout then "AHCI/0: device not ready"
07:07 <irys> AHCI works fine if i change config/seabios/default/target.cfg to use the immediate previous seabios commit (df9dd418b3b0e586cb208125094620fc7f90f23d)
07:07 <irys> works in grub payload either way though
07:31 <irys> here, `cbmem -c` after booting the broken rev: https://0x0.st/84oQ.log
07:31 <irys> compared to the working one https://0x0.st/84o1.log
07:33 <irys> i can't report to upstream myself *right now* but i figure you might want to know about this leah
I have downloaded those logs locally for reference, so that an upstream
report can be made to SeaBIOS. For the purposes of this Libreboot commit,
the diff of the logs is as follows (diff -u broken.log working.log):
Taking each diff line out of the log, the relevant entries
seem to be:
Searching bootorder for: /pci@i0cf8/*@1f,2/drive@0/disk@0
+AHCI/0: Set transfer mode to UDMA-6
+Searching bios-geometry for: /pci@i0cf8/*@1f,2/drive@0/disk@0
+AHCI/0: registering: "AHCI/0: Netac SSD 128GB ATA-11 Hard-Disk (119 GiBytes)"
-WARNING - Timeout at ahci_port_setup:477!
-AHCI/0: device not ready (tf 0x80)
-All threads complete.
-2. Payload [memtest]
+2. AHCI/0: Netac SSD 128GB ATA-11 Hard-Disk (119 GiBytes)
+3. Payload [memtest]
-Space available for UMB: c7000-eb800, f5880-f5ff0
-Returned 16777216 bytes of ZoneHigh
+drive 0x000f5fa0: PCHS=16383/16/63 translation=lba LCHS=1024/255/63 s=250069680
+Space available for UMB: c7000-eb800, f5880-f5fa0
+Returned 16773120 bytes of ZoneHigh
Therefore, the revision will be reverted back for now. It was
only about 8 additional patches imported in the update anyway.
Libreboot
Documentation: libreboot.org
Support: #libreboot on
Libera IRC
Libreboot provides libre boot firmware on supported motherboards. It replaces proprietary vendor BIOS/UEFI implementations, by
- Using coreboot to initialize the hardware (e.g. memory controller, CPU, etc.) while minimizing unwanted functionality (e.g. backdoors such as the Intel Management Engine)
- ... which runs a payload such as SeaBIOS, GRUB, or U-Boot
- ... which loads your operating system's boot loader (BSD and Linux-based systems are supported).
Why use Libreboot, and what is coreboot?
A lot of users who use libre operating systems still use proprietary boot firmware, which often contain backdoors and bugs, hampering user freedom and right to repair.
coreboot provides libre boot firmware by initializing the hardware then running a payload. However, coreboot is notoriously difficult to configure and install for most non-technical users, requiring detailed technical knowledge of hardware.
Libreboot solves this by being a coreboot distribution (in the same way that Alpine Linux is a Linux distribution). It provides a fully automated build system that downloads and compiles pre-configured ROM images for supported motherboards, so end-users could easily fetch images to flash onto their devices.
Libreboot also produces documentation aimed at non-technical users and excellent user support via IRC.
Contribute
You can check bugs listed on the bug tracker.
You may use Codeberg pull requests to send patches with bug fixes or other improvements. This repository hosts the code for the main build system. The website lives in a separate repository.
Development is also done on the IRC channel.
License for this README
It's just a README file. It is released under Creative Commons Zero, version 1.0.