Пофиксил блоки кода
This commit is contained in:
parent
a403baff13
commit
f38332ef8c
1 changed files with 10 additions and 10 deletions
|
@ -65,9 +65,9 @@ nihonium@delta/~/T530$ cd coreboot
|
|||
nihonium@delta/~/T530/coreboot$ git submodule update --init --checkout
|
||||
```
|
||||
Мы можем собрать toolchain для сборки coreboot, чтоб результат был воспроизводим не только на нашем устройстве (или чтоб собрать образ, сидя на другой архитектуре, например, на малине):
|
||||
```
|
||||
```
|
||||
nihonium@delta/~/T530/coreboot$ make crossgcc-i386 CPUS=$(nproc)
|
||||
```
|
||||
```
|
||||
Но я собирал, используя системный toolchain, пользуясь тем, что в Artix все пакеты свежие (вот и пригодился Arch-based!). Очевидно, собрать на малине таким образом образ для ThinkPad'а не выйдет, так что там обязателен данный шаг!
|
||||
|
||||
### Знакомимся с CH341A
|
||||
|
@ -119,18 +119,18 @@ Found Macronix flash chip "MX25L6406E/MX25L6408E" (8192 kB, SPI) on ch341a_spi.
|
|||
Found Macronix flash chip "MX25L6436E/MX25L6445E/MX25L6465E/MX25L6473E" (8192 kB, SPI) on ch341a_spi.
|
||||
Multiple flash chip definitions match the detected chip(s): "MX25L6405", "MX25L6405D", "MX25L6406E/MX25L6408E", "MX25L6436E/MX25L6445E/MX25L6465E/MX25L6473E"
|
||||
Please specify which chip definition to use with the -c <chipname> option.
|
||||
```
|
||||
```
|
||||
Наш чип - "MX25L6406E/MX25L6408E", дальше подставляем эту строку при считывании/записи.
|
||||
|
||||
![Крепление прищепки к чипу](https://nekoea.red/wrfreely-images/clip.cleaned.jpg)
|
||||
|
||||
Если чип стабильно читается, то идем в каталог bios-backup и считываем левый чип (SPI1):
|
||||
```
|
||||
```
|
||||
nihonium@delta/~/T530$ cd bios-backup
|
||||
nihonium@delta/~/T530/bios-backup$ sudo flashrom -p ch341a_spi -r factory_spi1-1.bin -c "MX25L6406E/MX25L6408E"
|
||||
nihonium@delta/~/T530/bios-backup$ sudo flashrom -p ch341a_spi -r factory_spi1-2.bin -c "MX25L6406E/MX25L6408E"
|
||||
nihonium@delta/~/T530/bios-backup$ sha512sum factory_spi1-*
|
||||
```
|
||||
```
|
||||
Мы два раза считываем один чип, а затем проверяем, совпадают ли хеши этих двух файлов. Если хеши совпадают, то идем дальше.
|
||||
|
||||
Делаем такую же операцию для правого чипа (SPI2).
|
||||
|
@ -147,14 +147,14 @@ Found Macronix flash chip "MX25L3206E/MX25L3208E" (4096 kB, SPI) on ch341a_spi.
|
|||
Found Macronix flash chip "MX25L3273E" (4096 kB, SPI) on ch341a_spi.
|
||||
Multiple flash chip definitions match the detected chip(s): "MX25L3205(A)", "MX25L3205D/MX25L3208D", "MX25L3206E/MX25L3208E", "MX25L3273E"
|
||||
Please specify which chip definition to use with the -c <chipname> option.
|
||||
```
|
||||
```
|
||||
Наш чип - "MX25L3206E/MX25L3208E".
|
||||
Если все в порядке, идем считывать правый чип:
|
||||
```
|
||||
```
|
||||
nihonium@delta/~/T530/bios-backup$ sudo flashrom -p ch341a_spi -r factory_spi2-1.bin -c "MX25L3206E/MX25L3208E"
|
||||
nihonium@delta/~/T530/bios-backup$ sudo flashrom -p ch341a_spi -r factory_spi2-2.bin -c "MX25L3206E/MX25L3208E"
|
||||
nihonium@delta/~/T530/bios-backup$ sha512sum factory_spi2-*
|
||||
```
|
||||
```
|
||||
Так же сверяем суммы, если все совпадает - идем дальше.
|
||||
Снимаем программатор, **папку bios-backup сохраняем в надежном месте.**
|
||||
|
||||
|
@ -246,14 +246,14 @@ nihonium@delta/~/T530/coreboot$ make nconfig
|
|||
- Add a payload (Tianocore coreboot payload package)
|
||||
- Tianocore payload (CorebootPayload)
|
||||
- Secondary Payloads (None)
|
||||
```
|
||||
```
|
||||
Особое внимание следует уделить параметру payloads/Tianocore payload.
|
||||
Тут необходимо выбрать именно этот пункт, т.к. [иные версии Tianocore чаще всего не работают на ThinkPad'ах](https://www.reddit.com/r/coreboot/comments/rilew7/tianocore_upstream_vs_uefipayload_vs/). Но из-за "старости" кода в данном варианте, нам надо поставить python2 и разрулить пару проблем с gcc.
|
||||
Ставим второй питон и начинаем сборку.
|
||||
```
|
||||
nihonium@delta/~/T530/coreboot$ sudo pacman -S python2
|
||||
nihonium@delta/~/T530/coreboot$ make CPUS=$(nproc)
|
||||
```
|
||||
```
|
||||
Скорее всего, посреди сборки вылезет ошибка gcc с жалобами на vla-parameter.
|
||||
Делаем вот такой финт:
|
||||
```
|
||||
|
|
Loading…
Reference in a new issue