--- title: Dell OptiPlex 9020 SFF/MT (and 7020) x-toc-enable: true ... **[PLEASE READ THESE INSTRUCTIONS BEFORE INSTALLING](../../news/safety.md), OR YOU MIGHT BRICK YOUR MACHINE: [SAFETY PRECAUTIONS](../../news/safety.md)**
Dell OptiPlex 9020 Dell OptiPlex 9020
Dell OptiPlex 9020 Dell OptiPlex 9020
Dell OptiPlex 9020 Dell OptiPlex 9020
| ***Specifications*** | | |----------------------------|------------------------------------------------| | **Manufacturer** | Dell | | **Name** | OptiPlex 9020 SFF/MT | | **Variants** | OptiPlex 9020 SFF/MT | | **Chipset** | Intel Q87 Express | | **CPU** | Intel Haswell | | **Graphics** | Intel HD Graphics | | **Memory** | DDR3 DIMMs (max 32GB, 4x8GB) | | **Architecture** | x86_64 | | **Original boot firmware** | Dell UEFI firmware | | **Intel ME/AMD PSP** | Present. Can be disabled with me_cleaner. | | **Flash chip** | 2x SOIC-8, 12MiB (8+4) (96Mbit) | ``` W+: Works without blobs; N: Doesn't work; W*: Works with blobs; U: Untested; P+: Partially works; P*: Partially works with blobs ?: UNKNOWN AT THIS TIME ``` | ***Features*** | | |---------------------------------------------------|----| | **Internal flashing with original boot firmware** | ? | | **Display (if Intel GPU)** | W+ | | **Display (discrete CPU, SeaBIOS payload only)** | W* | | **Audio** | W+ | | **RAM Init** | W+ | | ***Payloads supported*** | | |----------------------------|-----------| | **GRUB (libgfxinit only)** | Works | | **SeaBIOS** | Works | | **SeaBIOS with GRUB** | Works |
Introduction ============ **Unavailable in Libreboot 20240126 or earlier. You must [compile from source](../build/), or use a version newer than Libreboot 20240126** Official information about the laptop can be found here: 7020 compatibility ------------------ 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](../install/ivy_has_common.md) 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](../install/nvmutil.md). 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: (**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](../install/) 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](../install/spi.md) - 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!