Compare commits
3 Commits
94a6a35d05
...
51c06dcae2
Author | SHA1 | Date |
---|---|---|
Leah Rowe | 51c06dcae2 | |
Leah Rowe | 3a23e0c350 | |
Riku Viitanen | 5e1ca595cd |
|
@ -912,9 +912,7 @@ LIBREBOOT](../../news/safety.md).**
|
||||||
Refer to the [ivybridge/haswell common guide.](ivy_has_common.md) for how to
|
Refer to the [ivybridge/haswell common guide.](ivy_has_common.md) for how to
|
||||||
make the rom image usable for external flashing.
|
make the rom image usable for external flashing.
|
||||||
|
|
||||||
Read [board documentation](/docs/install/t440p_external.md) for disassembly.
|
Read [board documentation](/docs/install/t440p_external.html) for disassembly.
|
||||||
|
|
||||||
and for W541: [W541 guide](/docs/install/w541_external.md)
|
|
||||||
|
|
||||||
**If using release ROMs, neutered ME must be inserted. Refer to the above
|
**If using release ROMs, neutered ME must be inserted. Refer to the above
|
||||||
guide.**
|
guide.**
|
||||||
|
|
|
@ -1,56 +0,0 @@
|
||||||
---
|
|
||||||
title: ThinkPad W541 external flashing
|
|
||||||
x-toc-enable: true
|
|
||||||
...
|
|
||||||
|
|
||||||
Buy Libreboot preinstalled
|
|
||||||
==========================
|
|
||||||
|
|
||||||
This laptop is available to buy with Libreboot pre-installed:
|
|
||||||
<https://minifree.org/product/libreboot-w541/>
|
|
||||||
|
|
||||||
Introduction
|
|
||||||
============
|
|
||||||
|
|
||||||
NOTE: Libreboot standardises on [flashprog](https://flashprog.org/wiki/Flashprog)
|
|
||||||
now, as of 27 January 2024, which is a fork of flashrom.
|
|
||||||
|
|
||||||
**[PLEASE READ THESE INSTRUCTIONS BEFORE INSTALLING](../../news/safety.md),
|
|
||||||
OR YOU MIGHT BRICK YOUR MACHINE: [SAFETY PRECAUTIONS](../../news/safety.md)**
|
|
||||||
|
|
||||||
Read the [Ivybridge/Haswell common guide](/docs/install/ivy_has_common.html) if you want more information.
|
|
||||||
All of the following instructions assume that you've cloned lbmk and are operating from the
|
|
||||||
root of that project. To do so, run
|
|
||||||
|
|
||||||
git clone https://codeberg.org/libreboot/lbmk
|
|
||||||
cd lbmk
|
|
||||||
|
|
||||||
You can now follow the rest of the instructions.
|
|
||||||
|
|
||||||
Warning: external flashing notes
|
|
||||||
================================
|
|
||||||
|
|
||||||
This machine cannot be easily flashed externally. It is recommended
|
|
||||||
to set a higher drive strength on your programmer; anything 12mA to
|
|
||||||
16mA should be fine.
|
|
||||||
|
|
||||||
When flashing one of the two chips, you must tie the chip select high
|
|
||||||
on the other one. More testing is needed.
|
|
||||||
|
|
||||||
The only currently known-reliable way of flashing it is to de-solder both
|
|
||||||
ICs, flash them in a socket and solder them back. You could alternatively
|
|
||||||
use WSON8 sockets, and install WSON8 ICs in them.
|
|
||||||
|
|
||||||
Here are some photos of the flashes being soldered and re-soldered:
|
|
||||||
|
|
||||||
<img tabindex=1 class="l" src="https://av.libreboot.org/w541/flash_removed.jpg" /><span class="f"><img src="https://av.libreboot.org/w541/flash_removed.jpg" /></span>
|
|
||||||
<img tabindex=1 class="l" src="https://av.libreboot.org/w541/flash_soldered.jpg" /><span class="f"><img src="https://av.libreboot.org/w541/flash_soldered.jpg" /></span>
|
|
||||||
|
|
||||||
Flash the chip in a socket:
|
|
||||||
|
|
||||||
<img tabindex=1 class="l" src="https://av.libreboot.org/hp2170p/ch341a_socket_soic8.jpg" /><span class="f"><img src="https://av.libreboot.org/hp2170p/ch341a_socket_soic8.jpg" /></span>
|
|
||||||
|
|
||||||
NOTE: The pictured flasher is a CH341A, but it's modified to have 3.3v logic levels
|
|
||||||
and pull-up resistors on WP/HOLD - the unmodified one is unsafe to sue on this machine, unless
|
|
||||||
you use a model with 3.3v flash (e.g. some of the green models). More info available
|
|
||||||
in the [SPI flashing guide](spi.md).
|
|
|
@ -2423,3 +2423,37 @@ interesting video
|
||||||
=================
|
=================
|
||||||
|
|
||||||
<https://www.youtube.com/watch?v=5qauRh7eTNY>
|
<https://www.youtube.com/watch?v=5qauRh7eTNY>
|
||||||
|
|
||||||
|
Automate testing
|
||||||
|
================
|
||||||
|
|
||||||
|
Even though there's lots of error handling, it's better to be paranoid than
|
||||||
|
brick users' machines.
|
||||||
|
|
||||||
|
Unit tests
|
||||||
|
----------
|
||||||
|
|
||||||
|
- Build time or separate?
|
||||||
|
- me_cleaner -c: checks that ime was inserted and has valid signatures
|
||||||
|
|
||||||
|
CI
|
||||||
|
--
|
||||||
|
|
||||||
|
Preferably self-hosted. Run tests for every commit. There could be tests of
|
||||||
|
different size, and even a periodic nightly release could be done.
|
||||||
|
|
||||||
|
Integrating this with an automated test stand would also be doable. At the
|
||||||
|
very least, it would assure that the ROM images boot successfully.
|
||||||
|
|
||||||
|
Board status
|
||||||
|
============
|
||||||
|
|
||||||
|
As the number of ports grows, it becomes harder to keep track of what works.
|
||||||
|
Let's build a machine-readable repo documenting every release (or commit)
|
||||||
|
on every board. What features/payloads work, maybe include errata text field.
|
||||||
|
A HTML report could also be generated and published online.
|
||||||
|
|
||||||
|
On top of this, an easy to use installer could be developed. It would know
|
||||||
|
to not install an unbootable (broken) ROM, and would inform users about any
|
||||||
|
known problems and have meaningful options.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue