On Thu, Oct 26, 2023 at 01:50:10PM +0200, Paul Menzel wrote:
Dear Marty,
Am 26.10.23 um 12:29 schrieb Marty E. Plummer via coreboot:
I've been working on porting coreboot to Asrock X370 Killer Sli/AC, and I've made quite a lot of progress, and can even boot arch linux off usb from either seabios or tianocore.
However, there's a number of odds and ends that need to be fixed which will require a lot of build/flash/boot cycles to wholly figure out. Problem is, the act of booting linux in my board's current state is an absolute chore to perform.
After grub loads the kernel and initramfs, it goes quite smoothly for a while, but at some point, it slows to an absolute crawl/almost halts entirely. I've found that by plugging and unplugging a usb keyboard it causes the boot to progress a bit more each time, until it gets to the point where getty@ttyS0 comes up and sshd is running. Once ssh'd in, I can basically use it just like it was the vendor firmware, a few outstanding issues notwithstanding. This slowing/halting of boot also occurs if I issue a shutdown command and requires the same plug/unplug manipulation to make it actually finish.
It has been suggested to me in a few places that its a lack of a timer irq getting through, but I'm not certain that's actually it but its the only lead I have to go on right now. My current state of code is at: https://review.coreboot.org/c/coreboot/+/77879 and is largely based off the zork chromebooks and the mandolin devel board's code. As I can see no particular handling of timer irqs in either I'm at a loss as to what could be the missing piece of the puzzle.
Once I can build/flash/boot a bit faster I'm almost certain I can get the usb ports coming off the x370 chipset working (pcie and sata both appear to be fully functional as of this moment, more testing required) but as mentioned, it is *such a painful process* to actually boot linux on it in its current state.
Any suggestions or solutions greatly appreciated.
Thank you for your message and your detailed description. It’d be great, if you could also attach the coreboot and Linux log messages.
Find attached cbmem.log and dmesg.log. The latter is not as clean or complete as previous boots, as for some reason the archlinux on the usb is entering emergency shell (prolly needs some fixing due to the occasional need to hard power off the machine in question).
Kind regards,
Paul