LINUX.ORG.RU

Coreboot на thinkpad l420

 , ,


0

2

Пока нет времени вникать, может быть кто-то сталкивался. Есть ли рабочий coreboot для данного ноутбука, надо ли паять, чтобы прошить и возможные подводные камни.

Если никто не в курсе, попробую сам разобраться и отписаться тут, вдруг кому пригодится.

Не скажу за актуальную инфу и за всё остальное однако по поводу:

(cut) надо ли паять, чтобы прошить и возможные подводные камни

Емнип паять надо во всех случаях связанных с coreboot а подводные камни полное окирпичивание девайса.

init_6 ★★★★★ ()
Ответ на: комментарий от init_6

подводные камни полное окирпичивание девайса

Ну и как бы, если ты прошил кривой ROM на флешку, то ты потом так же прошьешь оригинальный биос, который ты до этого забекапил. Не очень полное окирпичивание.

паять надо во всех случаях связанных с coreboot

Это не так, но в большинстве случаев его надо шить внешним программатором. Есть исключения, например на макбуках 2011-2012 годов флешка не защищена должным образом и ее можно перезаписать из userspace (я недавно писал об этом статью).

ch1p ()

возможные подводные камни

Я пользовался корбутнутым T420 около года, каких-то проблем не припоминаю. В целом, все работает, поддержка EC и прочего для thkinkpad-ов там хорошая. Если L420 не сильно от него отличается, то норм должно быть. Нет пока поддержки optimus (есть незаконченный патч в gerrit), но мне это не нужно было.

ch1p ()
Ответ на: комментарий от init_6

паять надо во всех случаях связанных с coreboot

init_6 , а вот и нет! У китайцев есть дешёвые прищепки SOIC8, SOIC16, DIP8 и т.д. - специально чтобы ничего не паять на материнке, а просто прицепиться к чипу и прошивать его. И «окирпичивай» сколько душе угодно, всегда «раскирпичить» сможешь! Программатор можно взять двухдолларовый CH341A, он поддерживается опенсорсным софтом для прошивания flashrom - https://flashrom.org/ . В итоге, на инструменты для прошивки без выпаивания чипа ddidwyll может уложиться где-то в 500 рублей, в то время как просто за однократную прошивку БИОСа в сервис центре дерут минимум 1500.

Список совместимого железа с coreboot - https://coreboot.org/status/board-status.html . К сожалению тут нету L420, но есть много похожих на него ноутов - T420 например - так что при желании за недельку-другую ты сможешь портировать на свой ноут, и прославиться закоммитив свои изменения. В коребутовской вики есть много руководств на этот счёт, к тому же ты можешь воспользоваться утилитой autoport - она сделает за тебя часть работы.

Разумеется, нужно быть готовым что с первого раза не заведётся, и на всякий случай сделать бэкап того что изначально прошито в БИОС чип. Даже если не сделал бэкап, при желании можно извлечь проприетарный БИОС из утилиты апдейта от производителя, но на всякий случай можешь сделать его прежде чем как прошивать экспериментальную сборку coreboot. Также рекомендуется перед прошивкой coreboot обновить проприетарный БИОС до последней версии, т.к. заодно с ним обновится и прошивка EC-контроллера.

Удачи!

SakuraKun ★★ ()
Ответ на: комментарий от ddidwyll

Пожалуйста ;) Кстати, в этом руководстве - http://dangerousprototypes.com/docs/Flashing_a_BIOS_chip_with_Bus_Pirate#CH341A_flashing_coreboot_open_source_BIOS_to_Lenovo_G505S_hacking - ты можешь увидеть как выглядит процесс прошивки при помощи программатора CH341A, а также есть небольшой обзор различных прищепок SOIC8 - http://dangerousprototypes.com/docs/Flashing_a_BIOS_chip_with_Bus_Pirate#SOIC8_test_clip . Правда я не знаю, какого формата у твоего ноута BIOS-чип, может тебе другая прищепка нужна. А под некоторые формы чипов прищепок ещё не изобрели, и людям приходится или самодельную хлипкую фигню делать или всё же отпаивать.

SakuraKun ★★ ()
Ответ на: комментарий от ddidwyll

Если flashrom поддерживает internal режим на твоём ноуте, после однократной прошивки рабочего coreboot ты сможешь прошивать его более новые версии без прищепок. + После того как разобрал ноут, можешь раскалённым ненужным ножом (можно нагревать зажигалкой) / паяльником (с ненужным жалом, потому что очень запачкается) прорезать окошко в корпусе для быстрого доступа к BIOS-чипу, и аппаратная прошивка. будет занимать не более 5-10 минут даже с учётом времени на подключение. Главное перед этим отсоединяй аккумулятор/блок питания, и на всякий случай снимай заряд с ноута нажатием кнопки включения после того как всё отсоединил.

SakuraKun ★★ ()
Ответ на: комментарий от SakuraKun

Прищепку конечно не надо. Но дырка в корпусе (при чем сверху, ведь на thinkpad SPI чипы всегда на той стороне платы, что сверху), как по мне, это слишком) водой случайно зальешь, коротнет.

ch1p ()
Ответ на: комментарий от SakuraKun

Ну на всех thinkpad что я шил, а это штук 8-9 разных моделей, они под палмрестом, плюс на Тшках чаще всего прикрыты ещё и железкой внутри (магниевым каркасом таким).

Вот на макбуках кайф. Я недавно добавил поддержку трёх новых макбуков. На прошках флешка прямо под крышкой. Снимаешь её и шьешь сразу. Очень быстро.

ch1p ()
Ответ на: комментарий от ddidwyll

В зависимости от платы не всё может изначально работать, например у нас на Lenovo G505S только недавно дискретная видеокарта заработала, правда патчи пока в официальный коребут не принимают и приходится применять их самостоятельно. + Есть всякие дополнения вроде дискетных операционных систем, которые ты сможешь добавлять к своему coreboot биосу.

SakuraKun ★★ ()
Ответ на: комментарий от ddidwyll

Есть даже скрипт csb_patcher.sh https://review.coreboot.org/c/coreboot/ /33509 , который - помимо возможности автоматически выкачать и установить некоторые неофициальные патчи, также поможет скачать и установить хорошие дискетные ОС - с проверкой SHA256 контрольных сумм, разумеется! Сейчас там 9 дискет: KolibriOS, FreeDOS, MichalOS, Snowdrop, Fiwix, Memtest, Tatos, Plop, FloppyBird - и, благодаря LZMA-сжатию, они все влезают в мой 4МБ БИОС-чип помимо coreboot+SeaBIOS (которые сами по себе занимают чуть меньше мегабайта)

Среди неофициальных патчей, обязательно применить набор из патчей для SeaBIOS, который включает в себя патч multiple_floppies для поддержки нескольких дискет - иначе SeaBIOS будет показывать только первую найденную дискету. в SeaBIOS (основной «payload» у coreboot) вообще закоммитить что-то проблематично, поэтому так и будет висеть в неофициальных, скорее всего.

SakuraKun ★★ ()
Ответ на: комментарий от ch1p

SakuraKun Влезу не в свою тему, но про коребут: скоро у меня освобождается Tyan S8226, на которую когда-то портировали коребут, но он протух.
С какой вероятностью его можно будет воскресить слишком большого количества секса и кому это может быть нужно?

steeels ()
Ответ на: комментарий от SevikL

Можно, но заметно меньшее количество чипов, т.к. ардуина вроде не поддерживается опенсорсным софтом для прошивки flashrom. https://www.flashrom.org/Flashrom/1.0/Supported_Hardware#USB_Devices

SakuraKun ★★ ()
Последнее исправление: SakuraKun (всего исправлений: 1)
Ответ на: комментарий от steeels

Если бы всё было так просто то и flashrom был бы не нужен. Т.к. пример по твоей ссылке не учитывает особенности различных чипов, он не может быть совместим с их значительной частью. https://www.flashrom.org/Supported_hardware#Supported_flash_chips

SakuraKun ★★ ()
Последнее исправление: SakuraKun (всего исправлений: 2)
Ответ на: комментарий от K22

Какой замечательный биос, очманiти просто.

Зато наш опенсорсный биос развивается и IOMMU поддерживает - в отличие от проприетарного, который так и останется кривым индусским поделием застрявшим в 2014. Да и крутые дискетки к нашему коребуту можно добавлять - это ли не киллер фича? Когда показывал знакомому загрузку KolibriOS прям из биоса, у него глаза на лоб вылезли ;)

SakuraKun ★★ ()
Последнее исправление: SakuraKun (всего исправлений: 1)
Ответ на: комментарий от anonymous

Меня ризены не волнуют из-за наличия в них аппаратного бэкдора AMD PSP. К тому же ризены пока не поддерживаются коребутом, а наши «кукурузозатычки» там есть - и это самое главное, тем более что по производительности они не уступают многим днищеультрапукам

SakuraKun ★★ ()
Последнее исправление: SakuraKun (всего исправлений: 1)
Ответ на: комментарий от anonymous

Я помню, на канале писали, что у AMD хуже с открытостью, иногда вообще нет никаких даташитов, и тд. У интела больше документации. Сам с AMD не работал, не знаю насколько это правда.

ch1p ()
Ответ на: комментарий от steeels

Думаю можно воскресить. Платы удаляют, когда у них долгое время нет мейнтейнера ими никто не пользуется (нет board_status и тд). Если хочешь стать мейнтейнером этой платы, то пожалуйста.

ch1p ()
Ответ на: комментарий от anonymous

Haswell с Sandy Bridge поддерживаете, я так понимаю там бэкдоров нет, лол.

Кто это «поддерживаете» ? я вот не поддерживаю ;) разве что общим кодом не зависящим от платформы.

Пока ризен не избавится от своего главного изъяна - бэкдора PSP - часть коребутного сообщества даже не посмотрит в его сторону! Ведь многие бежали на коребут ради безопасности, и на бэкдор в процессоре - хоть Intel ME, хоть AMD PSP - не согласятся.

Поэтому сейчас главная инициатива по добавлению ризена в коребут исходит от китайцев, которые совместно с AMD смастерили похожие на райзен процессоры - https://www.phoronix.com/scan.php?page=news_item&px=Hygon-Dhyana-Coreboot-First

SakuraKun ★★ ()
Последнее исправление: SakuraKun (всего исправлений: 1)