Compare commits

..

3 Commits

Author SHA1 Message Date
Leah Rowe 51c06dcae2 docs/install/spi: note about wson8 probes
Signed-off-by: Leah Rowe <info@minifree.org>
2024-03-06 22:39:54 +00:00
Leah Rowe 3a23e0c350 Merge pull request 'tasks: ideas about testing' (#110) from Riku_V/lbwww:master into master
Reviewed-on: https://codeberg.org/libreboot/lbwww/pulls/110
2024-03-02 17:44:13 +00:00
Riku Viitanen 5e1ca595cd tasks: ideas about testing
Signed-off-by: Riku Viitanen <riku.viitanen@protonmail.com>
2024-03-01 22:31:53 +02:00
3 changed files with 35 additions and 59 deletions

View File

@ -912,9 +912,7 @@ LIBREBOOT](../../news/safety.md).**
Refer to the [ivybridge/haswell common guide.](ivy_has_common.md) for how to
make the rom image usable for external flashing.
Read [board documentation](/docs/install/t440p_external.md) for disassembly.
and for W541: [W541 guide](/docs/install/w541_external.md)
Read [board documentation](/docs/install/t440p_external.html) for disassembly.
**If using release ROMs, neutered ME must be inserted. Refer to the above
guide.**

View File

@ -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).

View File

@ -2423,3 +2423,37 @@ interesting video
=================
<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.