|Variants||E6400, E6400 XFR and E6400 ATG are supported|
|Chipset||Intel Cantiga GM45(Intel GPU)/PM45(Nvidia GPU)|
|CPU||Intel Core 2 Duo (Penryn family). A Quad-core|
|mod exists, replacing the Core 2 Duo with a Core Quad|
|Graphics||Intel GMA 4500MHD (and NVidia Quadro NVS 160M|
|on some models)|
|Memory||2 or 4GB (Upgradable to 8GB)|
|EC||SMSC MEC5035 with proprietary firmware|
|Original boot firmware||Dell BIOS|
|Intel ME/AMD PSP||Present. Can be completely disabled.|
|Flash chip||SOIC-8 4MiB or 2MiB+4MiB|
W+: Works without blobs; N: Doesn't work; W*: Works with blobs; U: Untested; P+: Partially works; P*: Partially works with blobs
|Internal flashing with original boot firmware||W+|
|Display (if Intel GPU)||W+|
|Display (if Nvidia GPU)||W*|
|SeaBIOS with GRUB||Works|
Known supported variants: E6400, E6400 XFR and E6400 ATG. This page has been updated to include information about Nvidia GPU variants. See news post: Dell Latitude E6400 XFR support confirmed, plus experimental Nvidia GPU support on E6400 variants.
To install Libreboot, see: E6400 installation instructions
ROM images for Dell Latitude E6400 are available for flashing in the Libreboot release 20230423 onwards, or you can compile a ROM image for installation via lbmk, see: build instructions
There are two possible flash chip sizes for the E6400: 4MiB (32Mbit) or 2+4MiB (16Mbit+32MBit). Libreboot presently supports the 4MiB version, and provides 8MiB images for those who upgrade their flash to 8MiB or 16MiB. There appears to be several possible mainboard PCBs for the E6400, which we believe mostly affects the GPU configuration and the number of available SPI flash footprints:
These PCB numbers can be found either under the black plastic in the RAM slots on the bottom (CPU side) of the board, the top left corner near the VGA port (top side, under the keyboard and palmrest), or near the CPU backplate (only requires removal of the keyboard).
We believe that all boards will have at least a single 4MiB flash chip, regardless of the number of SPI footprints. This is likely the most common configuration on most available systems. The 2+4MiB configuration likely would have only been used on systems with full Intel ME firmware with AMT functionality, though this configuration has not yet been encountered.
Most people will want to use the 4MiB images.
This is a GM45/PM45 platform, so completely libre initialisation in coreboot is possible, provided by default in Libreboot.
This port in Libreboot makes use of
ich9gen from ich9utils, which you can read about in the ich9utils manual - this creates a no-ME setup. The Intel Management Engine firmware (ME) is completely removed, and the ME disabled, just like on ThinkPad X200, T400 and so on.
The E6400 laptops may come with the ME (and sometimes AMT in addition) before flashing libreboot. Dell also sold configurations with the ME completely disabled, identifiable by a yellow sticker reading “3 ME Disabled” inside the bottom panel. This config sets the MeDisable bit in the IFD and sets the ME region almost entirely to 1’s, with the occasional 32-bit value (likely not executable). libreboot disables and removes it by using a modified descriptor: see ../install/ich9utils.html (contains notes, plus instructions)
NOTE: this section does not apply to XFR or ATG variants of E6400, which have a much beefier heatsink by default.
The default heatsink in Nvidia variants of E6400 (regular model) has thermal paste for the CPU, and a thermal pad for the GPU. This pad is woefully inadequate, but replacing it with paste is a bad idea, because of the gap there would be between heatsink plate and GPU die.
A solution for this would be to use a copper shim, with paste on each side, to replace the thermal pad.
This eBay seller seems to make and sell a lot of copper shims, specifically for E6400:
If the listing ends, please contact the Libreboot project so that this link can be replaced or (if a replacement link is no longer available) removed.
If you buy one of those, could you measure it? Tell Libreboot the dimensions. Get in touch with us. It would be nice to know precise specs, but that seller provides what you need. If you find similar listings elsewhere, please also let us know.
The shim will greatly reduce GPU temperatures, and probably improve performance due to less GPU throttling as a result of heat.
Nouveau is the libre driver in Linux, for Nvidia graphics. Nvidia themselves do not provide binary drivers anymore, for these GPUs. It crashes in Linux, when you try to start Xorg (Wayland is untested).
If you’re booting an Nvidia variant in Linux, boot Linux with the
nomodeset kernel option at boot time. This means that graphics are rendered in software.
Development discussion, for Nvidia variants of E6400, is available here:
OpenBSD 7.3 was tested, on my Nvidia-model E6400, and Xorg works OK with the
OpenBSD is a complete free 4.4BSD Unix operating system focused on portability, security and code correctness. It’s quite useable for most day to day tasks.
You can find information in Libreboot about BSD operating systems on the main guide:
FreeBSD has not yet been tested, as far as we know, but it should work.
Testers needed! Please get in touch!
At the time of writing this post, FreeBSD and newer Linux have not yet been tested (I plan to test Arch Linux), but the older Linux/Mesa version in Debian 11.6 works just fine in the Dell BIOS, and I’ve confirmed that it uses the exact same Video BIOS Option ROM.
TODO: This section could probably be moved to its own section. It’s not really relevant to Libreboot per se, but it may help a few people.
Again, Linux’s nouveau driver is currently broken. I’ve been playing with my E6400 (nvidia model) for a while and I’ve found that these things are a must for performance (the machine otherwise lags, openbsd’s
nv driver isn’t quite as good as nouveau, when the nouveau one works that is):
cwmin base, and it’s excellent)
obsdfreqdwhich scales down the CPU speed during idle state; the GPU has a poor thermal pad for cooling and so if the CPU is running hot, that doesn’t bode well for GPU temperatures either, and the GPU is likely lagging due to heat:
How to install
pkg_add obsdfreqd rcctl enable obsdfreqd
Now, before you start it, make sure
apmd is disabled; it can be used, but not with the
rcctl stop apmd rcctl disable apmd
Now start obsdfreqd:
rcctl start obsdfreqd
You will be well served to perform the copper shim mod, for GPU cooling. With
obsdfreqd, your laptop will run much cooler. This is generally a good idea anyway, especially on laptops, to save electricity.
Of course, there are many tweaks that you can do to OpenBSD but the key is: don’t use heavy bloated software. The term lightweight is misleading anyway; if the software does its job efficiently, and you’re happy with it, then it is by definition superior for your purposes. So, “lightweight” is simply a word for “efficient” in many contexts. We should encourage the use and development of highly efficient software that runs more smoothly on old machines. The elitist attitude of just buy a new computer is quite damaging; re-use is always better, when that is feasible and safe. The power of BSD (and Linux) is precisely that you can tweak it to get the most use out of older hardware..
Another nice hint: higher resolution video like 1080p 60fps or above won’t play smoothly at all in a web browser. In testing at least on OpenBSD 7.3, Firefox seems to have the best performance among all the web browsers, at least when I used it. Anything 720p 30/60fps will work ~OK.
For YouTube, you could use yt-dlp, which is available in ports, and use mpv to stream via yt-dlp. Or download manually with yt-dlp and play offline. See:
Another hint: for watching youtube in the browser, Invidious works quite well. It’s a frontend that lets you view it by proxy, and there are many instances of it online. For a list of instances, see:
Markdown file for this page: https://libreboot.org/docs/hardware/e6400.md
Subscribe to RSS for this site
This HTML page was generated by the untitled static site generator.