fix e6400 instructions

remove all the lenovo stuff

just a basic stub for now. i'll let nicholas
have at it later on
hslick-master
Leah Rowe 2023-04-19 19:09:55 +01:00
parent 7c12c507ed
commit 9f2ec6abf0
3 changed files with 104 additions and 128 deletions

View File

@ -47,20 +47,51 @@ P*: Partially works with blobs
| ***Payloads supported*** | |
|---------------------------|-----------|
| **GRUB** | Works |
| **GRUB** | Not yet |
| **SeaBIOS** | Works |
| **SeaBIOS with GRUB** | Works |
| **SeaBIOS with GRUB** | Not yet |
</div>
Introduction
============
It is believed that all or most laptops of the model T400 are compatible. See notes
about [CPU
compatibility](../install/t400_external.html#cpu_compatibility) for
potential incompatibilities.
ROM images for Dell Latitude E6400 will be available in the next Libreboot
release after 20230413, or you can compile a ROM image for installation via
lbmk, see: [build instructions](../build/)
We believe all models with iGPU are GM45 and will work perfectly. We suspect
that the dGPU models are PM45 and won't work yet, because Libreboot currently
supports just the iGPU (Intel graphics) on these machines.
There are two possible flash chip sizes for the E6400: 4MiB (32Mbit) or
2+4MiB (64Mbit).
2+4MiB (64Mbit). Libreboot presently supports the 4MiB version, and provides
8MiB images for those who upgrade their flash to 8MiB or 16MiB.
Most people will want to use the 4MiB images.
SeaBIOS-only
------------
At the time of publishing this port, keyboard initialisation is
broken in the GRUB payload (it *works fine* in BIOS GRUB, loaded
from SeaBIOS, but not *coreboot* GRUB provided by Libreboot - see
build targets `i386-coreboot` and `i386-pc` in GRUB).
This is being investigated. For the time being, SeaBIOS payload works
very well and it is provided by Libreboot.
Blob-free setup (no-ME possible)
---------------
This is a GM45/PM45 platform, so completely libre initialisation in
coreboot is possible, provided by default in Libreboot.
Management Engine (ME) firmware removed
-------------------------
This port in Libreboot makes use of `ich9gen` from ich9utils, which
you can read about in the [ich9utils manual](../install/ich9utils.md) - 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
@ -70,28 +101,3 @@ 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.md](../install/ich9utils.md)*
(contains notes, plus instructions)
Flashing instructions can be found at
[../install/\#flashrom](../install/#flashrom)
EC update {#ecupdate}
=========
It is recommended that you update to the latest EC firmware version. The
[EC firmware](../../faq.md#ec-embedded-controller-firmware) is separate from
libreboot, so we don't actually provide that, but if you still have
Lenovo BIOS then you can just run the Lenovo BIOS update utility, which
will update both the BIOS and EC version. See:
- [../install/#flashrom](../install/#flashrom)
- <http://www.thinkwiki.org/wiki/BIOS_update_without_optical_disk>
NOTE: this can only be done when you are using Lenovo BIOS. How to
update the EC firmware while running libreboot is unknown. libreboot
only replaces the BIOS firmware, not EC.
Updated EC firmware has several advantages e.g. bettery battery
handling.
The T400 is almost identical to the X200, code-wise. See
[x200.md](x200.md).

View File

@ -22,6 +22,12 @@ Here's the [Technical Reference Manual](https://web.archive.org/web/201601091432
Installation of Libreboot
-------------------------
TODO: this patch is now in coreboot gerrit:\
<https://review.coreboot.org/c/coreboot/+/74248>\
(more notes about internal flashing)\
also:\
<https://www.reddit.com/r/coreboot/comments/12nux51/hp_elite_8200_sff_coreboot_port_current_state/> - see notes about 8300
You can actually just compile the Libreboot ROM for this, and flash the
entire ROM, then flash it. The *coreboot* project proper, has information
about this:

View File

@ -1,65 +1,45 @@
---
title: Flashing the Latitude E6400
title: Flashing the Dell Latitude E6400
x-toc-enable: true
...
Initial flashing instructions for the E6400.
Introduction
============
Initial flashing instructions for the E6400. ROM images for this board will be
available in Libreboot releases *after* Libreboot 20230413, or you can [build
ROM images from source via lbmk](../build/).
This guide is for those who want libreboot on their Latitude E6400 while
they still have the original Dell BIOS present. This guide can also be
followed (adapted) if you brick your E6400, to know how to recover.
A
["HMM"](https://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles_pdf/43y6629_05.pdf#page=386)
(Hardware Maintenance Manual) detailing the process of [dis]assembly
is available for this model. Be careful when reassembling the laptop as
the screws on page 114 (with title "1130 Keyboard bezel") are swapped
and if you follow the HMM you will punch a hole through the bezel in the
upper right corner.
Blob-free initialisation!
=========================
Serial port {#serial_port}
-----------
This board can boot entirely blob-free in the flash. The hardware is similar
to that of ThinkPad X200, T400 etc where no-ME setup is possible.
EHCI debug might not be needed. It has been reported that the docking
station for this laptop has a serial port, so it might be possible to
use that instead.
No-microcode setup feasible
----------------------------
A note about CPUs
=================
[ThinkWiki](http://www.thinkwiki.org/wiki/Category:T400) has a list of
CPUs for this system. The Core 2 Duo P8400, P8600 and P8700 are believed
to work in libreboot.
T9600, T9500, T9550 and T9900 are all compatible, as reported by users.
Quad-core CPUs
--------------
Very likely to be compatible, but requires hardware modification.
Based on info from German forum post about installing Core Quad CPU on T500 found in coreboot mailing list. Currently work in progress and no guide available.
- [Coreboot mailing list post](https://mail.coreboot.org/pipermail/coreboot/2016-November/082463.html)
- [German forum post about install Core Quad on T500](https://thinkpad-forum.de/threads/199129)
The
[microcode bugfixes/mitigations added for GM45](../../news/gm45microcode.md)
are also applicable to this board, for users who are interested. Read that
article for more information.
Libreboot still recommends that boot with CPU microcode updates, by default,
for all the reasons described by Libreboot's [Binary Blobs Reductions
Policy](../../news/policy.md) but this board run reasonably well without them.
A note about GPUs
=================
-----------------
Some models have an Intel GPU, while others have both an ATI and an
Intel GPU; this is referred to as "switchable graphics". In the *BIOS
setup* program for lenovobios, you can specify that the system will use
one or the other (but not both).
We *believe* the dGPU models are PM45, and therefore will require a VGA
blob for initialisation. This is currently unsupported in Libreboot.
libreboot is known to work on systems with only the Intel GPU, using
native graphics initialization. On systems with switchable graphics, the
Intel GPU is used and the ATI GPU is disabled, so native graphics
initialization works all the same.
CPU paste required
==================
See [\#paste](#paste).
Models with iGPU (Intel graphics) are GM45, and fully supported in Libreboot
with native initialisation.
Flash chip size {#flashchips}
===============
@ -68,15 +48,46 @@ Use this to find out:
flashrom -p internal
We believe most/all are 4MB (32Mb) flash sizes, but larger ROM images are
provided for people who wish to upgrade.
MAC address {#macaddress}
===========
Refer to [mac\_address.md](../hardware/mac_address.md).
How to flash internally
========================
How to flash internally (no diassembly)
=======================================
You can flash Libreboot directly from the vendor (Dell) BIOS, without taking
the machine apart. It can be done entirely from Linux. It will probably also
work on BSD systems, but it has only been testing on Linux thus far.
Check `util/e6400-flash-unlock` in the `lbmk.git` repository, or in release
archives for Libreboot releases *after* 20230413.
Go in there:
cd util/e6400-flash-unlock
make
With this program, you can unlock the flash in such a way where everything
is writeable. Information about how to use it is in the `README.md` file which
is included in that program's directory, or you can read it only here:
<https://codeberg.org/libreboot/lbmk/src/branch/master/util/e6400-flash-unlock/README.md>
Literally just run that program, and do what it says. You run it once, and
shut down, and when you do, the system brings itself back up automatically.
Then you run it and flash it unlocked. Then you run it again. The source code
is intuitive enough that you can easily get the gist of it; it's writing some
EC commands. The EC on this machine is hooked up to the `GPIO33` signal,
sometimes called `HDA_DOCK_EN`, which sets the flash descriptor override
thus disabling any flash protection by the IFD - Dell's BIOS doesn't set any
other type of protection either, such as writing to Protected Range registers.
With this method, you can probably flash it within 5 minutes. Again, zero
disassembly required!
How to flash externally
=========================
@ -89,52 +100,5 @@ causes the ICH9 to partially power up and attempt to drive the SPI clock pin
low, which can interfere with programmers such as the Raspberry Pi. See
[RPi Drive Strength](spi.md#rpi-drive-strength) for a workaround.
The procedure
-------------
Thermal paste (IMPORTANT)
=========================
Because part of this procedure involved removing the heatsink, you will
need to apply new paste. Arctic MX-4 is ok. You will also need isopropyl
alcohol and an anti-static cloth to clean with.
When re-installing the heatsink, you must first clean off all old paste
with the alcohol/cloth. Then apply new paste. Arctic MX-4 is also much
better than the default paste used on these systems.
![](https://av.libreboot.org/t400/paste.jpg)
NOTE: the photo above is for illustration purposes only, and does not
show how to properly apply the thermal paste. Other guides online detail
the proper application procedure.
Memory
======
In DDR3 machines with Cantiga (GM45/GS45/PM45), northbridge requires sticks
that will work as PC3-8500 (faster PC3/PC3L sticks can work as PC3-8500).
Non-matching pairs may not work. Single module (meaning, one of the slots
will be empty) will currently only work in slot 0.
NOTE: according to users reports, non matching pairs (e.g. 1+2 GiB) might
work in some cases.
Make sure that the RAM you buy is the 2Rx8 configuration when buying 4GiB sticks
(In other words: maximum of 2GiB per rank, 2 ranks per card).
[This page](http://www.forum.thinkpads.com/viewtopic.php?p=760721) might
be useful for RAM compatibility info (note: coreboot raminit is
different, so this page might be BS)
The following photo shows 8GiB (2x4GiB) of RAM installed:\
![](https://av.libreboot.org/t400/memory.jpg)
Boot it!
--------
You should see something like this:
![](https://av.libreboot.org/t400/boot0.jpg) ![](https://av.libreboot.org/t400/boot1.jpg)
Now [install Linux](../linux/).
Have a look online for videos showing how to disassemble, if you wish to
externally re-flash.