lbwww/site/docs/hardware/dell9020.md

7.6 KiB

7020/9020 MT each have the same motherboard. Flash the 9020 ROM from Libreboot on your 7020, and it will work.

Ditto 7020/9020 SFF, it's the same motherboard. However, Libreboot provides separate targets for MT and SFF.

Build ROM image from source

For the MT variant (7020 MT and 9020 SFF):

./build roms dell9020mt_12mb

For the SFF variant (7020 MT and 7020 SFF):

./build roms dell9020sff_12mb

It is important that you choose the right one. The MT variant is the full MTX tower.

Installation

Insert binary files

If you're using a release ROM, please ensure that you've inserted extra firmware required refer to the guide for that. (failure to adhere to this advice will result in a bricked machine)

Libreboot's build system automatically downloads and processes these files if you build Libreboot from source, but the same logic that it uses must be re-run if you're using a release image.

Set MAC address

This platform uses an Intel Flash Descriptor, and defines an Intel GbE NVM region. As such, release/build ROMs will contain the same MAC address. To change the MAC address, please read nvmutil documentation.

WARNING about CPU/GPU compatibility

NOTE: Graphics cards did not work when last tested; the rendering and output is still handled by the intel graphics. Until this changes, you can only use the onboard Intel graphics reliably, on these boards. - however, if you then set a mode in xrandr, with a monitor plugged into the graphics card, you can get a framebuffer off it and use that. Useful if you want to run more monitors. However, it is recommended for now that you stick to Intel graphics only.

If you want to use onboard graphics, you must have a CPU that has a GPU built into it. You can find a list here:

https://en.wikipedia.org/wiki/Haswell_(microarchitecture) (must be LGA 1150 socket)

Because of this, Libreboot currently only provides ROM images where SeaBIOS is the first payload, and SeaBIOS is relied upon the execute the VGA ROM that's stored on the graphics card. However, coreboot's libgfxinit is also enabled, so onboard graphics should work if you don't have a graphics card installed.

Coreboot has libre initialisation code for Intel graphics, but libre initialisation code is not available for most graphics cards. This machine can take any graphics card that fits in the PCI-E slot.

GRUB also works, from SeaBIOS when the machine is booted in text mode. Both coreboot GRUB, and BIOS GRUB provided by your (Linux) distro. It's done this way (SeaBIOS first) because Libreboot's configuration does not tell coreboot to execute VGA Option ROMs, and it's important that we try to prevent bricks whenever possible.

Flash a ROM image (software)

If you're already running Libreboot, and you don't have flash protection turned on, internal flashing is possible.

Flash a ROM image (hardware)

REMOVE all power sources and connectors from the machine, before doing this. This is to prevent short circuiting and power surges while flashing.

For general information, please refer to 25xx NOR flash instructions - that page refers to use of socketed flash.

This machine is somewhat cumbersome to flash, because it has a SOIC-16 flash for the first 8MB part, and 4MB SOIC8. You can split up your 12MB ROM image like so:

dd if=libreboot.rom of=4mb.rom bs=1M skip=8
dd if=libreboot.rom of=8mb.rom bs=1M count=8

The side cover comes off easily, and you can find the flash ICs next to the RAM.

Here's the SOIC8 ICs being flashed:

SOIC8 flash IC on 9020 SFF SOIC8 flash IC on 9020 SFF

Enjoy!