Support for Supermicro X7DB8+ added

It’s been a while since i committed the northbridge code for the Intel 5000 chipset. Now i finally had some spare time to clean up my Supermicro board patch. This board features:

  • Dual Socket 771
  • 1 PCI-e x4 Slot
  • 2 PCI-e x8 Slot
  • 3 PCI-X Slots
  • Onboard Adaptec SCSI Controller
  • two Gigabit NICs
  • and of course various other I/O stuff like serial ATA, IDE, serial/parallel ports, etc

What isn’t working right now:

  • Fan Control. All Fans are running on full speed, support for the Winbond W83793 and PECI has to be added
  • using a PCI-e x1 graphics card. As soon as such a card is plugged in, the system dies with a Machine check exception during startup.
  • Automatic MPTABLE generation. I’m currently working on a generic solution, but for now you have to edit devicetree.cb manually.

 

Intel i5000 northbridge code commited

I’ve started that port in November 2011, and made it finally working in January. Well, at least working on my Supermicro X7DB8 Board. Compared to the vendor BIOS which takes about 30 seconds from power-on to grub, coreboot finishes the same task in 3s. Unfortunately the VGA BIOS takes about 2 seconds to program the register to do 80×25 resolution, so eventually we end up with 5s. If you don’t need a VGA console, and prefer a serial console, you can save even these two seconds.

Actually i didn’t expect the port progressing so fast. One tool that was a great help was serialice. I used it to watch the original BIOS initializing memory. To get serialice running, all you have to do is writing a few lines of board specific C code, which initializes the serial port and some basic chipset parts required for accessing the serial port registers. On the host side, a patched QEMU is running, executing the vendor BIOS while redirecting HW accesses to the target computer. Which HW accesses are redirected can be configured by a small lua script. LUA can also be used to pretty print the output from serialice.

Continue reading Intel i5000 northbridge code commited