Re: KolibriOS в BIOS ( coreboot / SeaBIOS ) на G505S - успех!
Posted: Fri Feb 10, 2017 3:59 pm
Ну а процессор здесь при чём? Графикой он не занимается.
Official KolibriOS board
http://board.kolibrios.org/
https://www.youtube.com/watch?v=iXcKZdB95eM <--- на экран ноутбука выводитсяolodar wrote:Погонял в играх, и да, действительно. По ядрам максимум была нагрузка 60% (на каждое ядро, а не ЦП в целом), что уже говорит о том, что ЦП хватает! А вот графический процессор(ы) всегда на 100%. И как вообще будет выводится изображение, интересно, если подключить сюда внешнюю видеокарту? Через монитор, который к самой видюхе подключается, или все же на экран ноутбука можно запихнуть?
Code: Select all
config MULTIPLE_VGA_ADAPTERS
bool
default n
Code: Select all
+-01.0 Advanced Micro Devices, Inc. [AMD/ATI] Richland [Radeon HD 8650G]
+-01.1 Advanced Micro Devices, Inc. [AMD/ATI] Trinity HDMI Audio Controller
+-02.0-[01]----00.0 Advanced Micro Devices, Inc. [AMD/ATI] Sun PRO [Radeon HD 8570A/8570M]
Раз он есть в корбуте, значит, можно просто как-то выпилить?art_zh wrote:на АМД системную частоту при перегреве скидывает специальный встроенный микроконтроллер.
который программируется по дефолту в отдельном модуле BIOS (и в coreboot тоже - AMD давно слила туда свой микрокод).
ну и да, интел (увы) всегда впереди. Потому что против их холодных нанометров никто (просто термодинамически) устоять не сможет.
Да, можно так сделать, это "минимальный рабочий конфиг" - минимум настроек чтобы получить рабочий биос. Моя версия настроек занимает на 10 минут больше времени если без "аддона" filo; или на час больше если собирать filo (из-за того что придётся делать загрузочный диск/флешку с 32-битной убунтой, потому что на 64-битном линуксе filo не собирается) . Зато полученная на выходе сборка биоса будет отличаться в лучшую сторону; вот список отличий:olodar wrote:У тебя при сборке много куча непонятных вещей сделано, поэтому:
1) git clone https://review.coreboot.org/coreboot.git
2) make crossgcc-i386
3) в coreboot/src/device/Kconfig изменить config MULTIPLE_VGA_ADAPTERS
4) с VGA все понятно.
5) make menuconfig - заходим и выбираем производителя и модель. сохраняем конфиг и
6) make
Правильно?
Разумеется сможетolodar wrote:После загрузки сможет ли грузится ОС с диска (AHCI),
по сети сможет если дополнительно собрать образ IPXE и добавить этот образ к образу coreboot. Инструкция - https://www.coreboot.org/IPXE . Загрузка по сети - это дополнительный риск безопасности, поэтому она меня не интересует...olodar wrote:по сети?
Про это уже было написано в первом сообщении... После нажатия кнопки включения ноутбука понажимать Escape и дальше начать кнопку 1-9 на клавиатуре, которая соответствует диску, устройству, RamDisk-у или payload-у ("аддону") с которого ты хочешь загрузитьсяolodar wrote:Как биосу "сказать", с какого именно диска (ус-ва) грузиться,
Статичный конфиг (меняется только с перепрошивкой) у него разумеется есть, например https://www.seabios.org/Runtime_config# ... boot_order - можно добавить к образу coreboot текстовый файл чтобы изменить порядок загрузки по умолчанию. Динамический конфиг (можно менять после прошивки) есть в "аддоне" nvramcui - там есть опция boot_devices, но скорее всего она используется только загрузчиком filo, и вообще по ней нет толковой документации - остаётся или гуглить сообщения или исходники читать...olodar wrote:если у него нет конфига?
Хоть и удобно называть весь BIOS одним словом "коребут", на самом деле coreboot производит лишь начальную низкоуровневую инициализацию железа компа и передает управление аддону payload-у ("полезной нагрузке), которым обычно является SeaBIOS (в конфиге по умолчанию уже выбрана опция CONFIG_SEABIOS_STABLE - собрать coreboot вместе со стабильным SeaBIOS, но я меняю её на CONFIG_SEABIOS_MASTER чтобы получить SeaBIOS посвежее), причём через SeaBIOS можно грузить вторичные payload-ы: мемтест, тетрис, загрузчик FILO и т.д. Но при желании можно заменить SeaBIOS другим payload-ом: загрузчиком GRUB или FILO, или вообще линуксовым ядром (которое придётся собирать с небольшим набором опций, иначе всё вместе не влезет в 4 МБ биос чип) , или ещё чем-то другим... Вот полный список - https://www.coreboot.org/Payloadsolodar wrote:Или для этого еще нужно установить SeaBIOS обязательно?
Нет. Это возможность добавить в образ коребута XHCI "прошивку"-блоб с закрытым исходным кодом, для того чтобы синие порты USB 3.0 (у G505S таких порта два) работали как USB 3.0 . Проблема в том, что большинство "USB 3.0" устройств по своей скорости работы - "фейковый USB 3.0" : или та же скорость что и USB 2.0, или как в случае с моим переносным жёстким диском "USB 3.0", скорость файловых операций через USB 3.0 максимум на 10 процентов быстрее чем если на том же компе переключить в порт USB 2.0 . К тому же некоторые программы, например VirtualBox, глючат с USB 3.0 портами. Короче, я не увидел смысла в USB 3.0 и не стал добавлять этот блоб (который к тому же создаёт дополнительный риск безопасности т.к. его исходники закрыты), поэтому в моих прошивках все порты работают как USB 2.0 . Если ты считаешь что USB 3.0 нужен, можешь добавить этот блоб самостоятельно, это или ./coreboot/3rdparty/blobs/southbridge/amd/bolton/xhci.bin или ./coreboot/3rdparty/blobs/southbridge/amd/hudson/xhci.bin . Не уверен на 100% какой из них, потому что Southbridge у этого ноута стоит A76M Fusion (Bolton-M3, 218-0844012), но при автоматической сборке хочет взять от Hudson у которого по идее меньше функций... Можешь попробовать и тот и другойolodar wrote:И см. скрин: это, я так понимаю, чтобы биос смог загрузится с USB-дисков? (usb 3.0)
Режим работы дискового контроллера скорее всего выбирается payload-ом. SeaBIOS инициализирует как AHCI, но если вдруг дисковый контроллер древний и AHCI не поддерживает, то наверное будет инициализировать как IDE. Если ставить GRUB вместо SeaBIOS - начиная с какой-то версии он тоже научился в AHCI инициализировать. Кстати, KolibriOS показала мою SATA как AHCI 1.0 , но не знаю правильно ли она определила версию, потому что SATA в KolibriOS на этом ноуте почему-то не работает...olodar wrote:И как задать режим работы дискового контроллера? IDE/AHCI?
я думал что ты уже давно заказал чем раньше тем лучше, ведь ещё из Китая месяц ждатьolodar wrote:ПЫ СЫ: через недельку появятся средства, и закажу все ингредиенты
Троттлинг ведь определяется процессором а не биосом. Разумеется при сверхнагреве процессор мгновенно вырубит компьютер, чтобы самому не сломаться. Чтобы избежать троттлинга, нужно как-то понизить температуру процессораolodar wrote:как с корбутом ноут ведет себя при перегреве? есть ли троттлинг? или он даже при сверхнагреве не отрубит ноут? и как будет себя вести при 90 градусах... потому что на стоке чуть что, сразу троттлинг
Если будут лишние деньги купи вот эту вот баночку 10 грамм GC-Extreme с лопаткой в комплекте, выгоднее чем шприцы и надолго хватит , http://www.xcom-shop.ru/gelid_gc-extreme_426960.html . Не пожалеешь! Самая хорошая термопаста, лучше только "жидкий металл" (который проводит электричество и поэтому лучше избегать) . Ещё как вариант можно купить специальный внешний вентилятор, который прикладывается к вентиляционным отверстиям ноутбука и помогает внутреннему вентилятору высасывать горячий воздух. Например вот эта модель очень хорошая, до 4500 оборотов в минуту, понижает температуру ноута где-то на 10 градусов. http://aliexpress.com/item/Protable-Min ... 37989.html . Такой вентилятор намного луше чем охлаждающая подставка, потому что вентиляторы охлаждающей подставки параллельны материнской плате и располагаются сразу под ней - электромагнитные импульсы этих вентиляторов негативно влияют на материнскую плату и она может сломаться раньше времени. А боковой вентилятор расположен сбоку, не параллельно и на значительном удалении от платы, поэтому он безопасенfloppy121 wrote:Довольно давно поменял термопасту на Gelid GC-Extreme, одна из лучших термопаст согласно куче таблиц тестов которые я посмотрел, и до сих пор даже при загрузке ЦП почти 100% температура не поднимается выше 70 градусов. Раньше (на старой "зубной" пасте которая была намазана производителем) при таких нагрузках он быстро перегревался и выключался
Если нажать кнопку ? на этой опции, то всё станет понятноolodar wrote:в конфиге есть что-то вроде SATA MODE, но там нифига не понятно, потому что есть только численный параметр (0 по дефолту)
По какой-то причине оно не нашло блоба по этому адресу, и решило не включать в сборку. Почему у тебя меню menuconfig криво рисуется, и вообще всё странно выглядит? В какой операционной системе ты пытаешься собирать, неужели в винде?olodar wrote:Попробовал собрать с этим xhci. это ошибка, или что?
У дискретной карты есть свой VGABIOS который операционная система по идее должна считать в процессе включения, чтобы например иметь возможность переключать разрешение экрана для изображения идущего через эту видеокарту. Но недавно я обнаружил одну интересную вещь: оказывается, в большинстве дистрибутивов линукса отказались от проприетарных AMD драйверов с закрытыми исходниками в пользу опенсорсных, а опенсорсные AMD-шные драйвера для этого семейства дискретных видеокарт пока ещё не подоспели... Вернее, они доступны в ядре Linux 4.10, но только в экспериментальном режиме, и можно включить только пересборкой линуксового ядра с этим включённым конфигом т.к. по умолчанию у всех выключено! Или подождать пока выйдет ядро Linux 4.11 (через полтора-два месяца приблизительно) и или собрать ядро из исходников чтобы притащить его на убунту, или выбрать линуксовый дистрибутив вроде Antergos (Arch линукс с человеческим лицом, по удобству почти как убунта) - в котором постоянно идут обновления на самый свежие версии пакетов как только они выходят, чтобы линуксовое ядро автоматически обновилось до самого нового без ручной пересборкиolodar wrote:А как быть все же с двумя видеокартами? lspci говорит следующее:То есть, видит обе карточки. Но нужно ли их обе запихнуть в корбут? Или потом система сама все подловит? Или у этой дискретной карты есть свой биос, и включать его в биос системы не надо?Code: Select all
+-01.0 Advanced Micro Devices, Inc. [AMD/ATI] Richland [Radeon HD 8650G] +-01.1 Advanced Micro Devices, Inc. [AMD/ATI] Trinity HDMI Audio Controller +-02.0-[01]----00.0 Advanced Micro Devices, Inc. [AMD/ATI] Sun PRO [Radeon HD 8570A/8570M]
Вообще-то у всех Lenovo G505S стоит биос чип 4 МБ одной из нескольких моделей, например cFeon EN25QH32-104HIP. Теоретически можно отпаять этот биос чип и припаять другой биос чип таких же линейных размеров, почти такой же модели (чтобы увеличить шансы на совместимость), но 8 МБ. Например, EN25QH64-104HIP (в маркировке этого производителя 32 или 64 в этом месте - количество мегабит; 64 мегабита - максимально, к сожалению не бывает EN25QH128 модели чипа с такими же физическими размерами SOIC-8) . Но я не изучал насчёт адресных линий биос чипа на этой плате, может ли получиться так что припаяли 8 МБ чип а процессору всё равно доступно только "нижних" 4 МБ ?olodar wrote:ROM Chip Size - что тут указывать? По дефолту стоит 4 мб, но у нас же размер чипа 8 мб?
https://www.coreboot.org/SeaBIOS#Adding ... h.22_imageolodar wrote:Add a bootsplash image - а какое нужно разрешение и параметры изображения? Или пойдет любое?
Зависит от того, собираешься ли ты пользоваться клавиатурой ноутбука Если серьёзно, нажми кнопку ? на этой опции и ты увидишь что некоторым payload-ам вроде filo, которые не инициализируют PS/2 сами, нужно чтобы coreboot до них проинициализировал, а некоторые - например SeaBIOS - инициализируют сами и помощь коребута им не нужна. Кстати, у меня в конфиге коребута (во вложениях из первого письма в этой теме) опция CONFIG_DRIVERS_PS2_KEYBOARD, но при этом и в SeaBIOS клавиатура работает, и даже в filo работает - потому что SeaBIOS уже проинициализировал эту клавиатуру до filo, который у меня в качестве "вторичного" payload-а и может быть загружен только из меню загрузки SeaBIOS-аolodar wrote:PS/2 keyboard init - означает, что будет ли иннициализирована встроенная клава? нужно ли это?