KolibriOS в BIOS ( coreboot / SeaBIOS ) на G505S - успех!

Using Kolibri in embedded systems
  • olodar wrote: Хм, сейчас проверил - танки потребляют около 480 мб (что минималки, что ультра), а видеопамяти - 512 мб.
    Первое это что? ОЗУ?
    olodar wrote:Судя по всему - да, так и получается. А подкачки нет, т.к. рамы 16 гб.
    И это мало ОЗУ? Сейчас вроде больше особо и не надо (если конечно кучи виртуалок не держать). Да и вообще эти танки странная вещь, а может и не они а АМД. Работало себе спокойно на RX480 на максимуме качества, и тут бац, где-то что-то поменялось, и все три кулера СО видеокарты начали работать на все 100%. Правда давно уже не запускал, может что и исправилось.
    to infinity and beyond
  • punk_joker wrote:
    olodar wrote: Хм, сейчас проверил - танки потребляют около 480 мб (что минималки, что ультра), а видеопамяти - 512 мб.
    Первое это что? ОЗУ?
    Видео ОЗУ (столько выделил coreboot).
    punk_joker wrote: и тут бац, где-то что-то поменялось
    Что где поменялось? Ты о чем?
  • olodar wrote: Что где поменялось? Ты о чем?
    Это так, отход от темы. Я имел ввиду, что играл себе спокойно в танки, видеокарта вела себя умеренно. А потом, после обновления игры. или возможно я драйвера при этом еще обновил, при тех же настройках, кулеры на видеокарте стали крутиться если не по максимуму, то близко к нему. Но это просто вспомнилось, когда прочитал про танки и RX470, и не имеет никакого отношения к теме разговора
    to infinity and beyond
  • нашел в src/mainboard/amd/dinar/Kconfig следующие параметры:
    1)
    config HW_MEM_HOLE_SIZEK
    hex
    default 0x200000

    что-то связанное с памятью, но если перевести его из 16-ой СС в десятичную, то получаем число 2097152, что далеко не соответствует 512 МБ.
    2)
    config HW_MEM_HOLE_SIZE_AUTO_INC
    bool
    default n
    Тоже что-то похожее
  • punk_joker
    Включи вертикальную синхронизацию в настройках игры или драйвера.
  • Вобщем, погонял танки. Твоя теория не канает, игра действительно потребляет около 480 мегабайт видео ОЗУ (минимальные настройки графики), 60 FPS, постоянно загружен процессор на 25% (1 ядро из 4), и часто происходят микрофризы, "подергивания" в игре. Так что, процессор не особо нужен играм, но минимум он должен потянуть. Это как палка, на которой груз. Если чуть чуть нехватит ей прочности, то она сломается, а вот добавить прочности немного и будет держать.
  • Какая теория? Почему не канает?
    60 FPS при загрузке на 25% это десятикратный запас. "Маловато будет! Маловато!"
    О каких танках идёт речь? World of Tanks? Так там рекомендуется 2 ГБ видеопамяти.
  • olodar wrote:нашел в src/mainboard/amd/dinar/Kconfig следующие параметры
    "dinar" это совсем другая плата. Исходники специфичные для нашей платы:

    Code: Select all

    ./src/mainboard/lenovo/g505s/
    дальше

    Code: Select all

    ./src/ec/compal/ene932/ - интерфейс с EC контроллером
    ./cpu/amd/agesa/family15rl/ - процессор
    ./northbridge/amd/agesa/ - северный мост
    ./southbridge/amd/agesa/hudson/ - южный мост
    Остальные вещи можно узнать в ./mainboard/lenovo/g505s/dsdt.asl и похожих исходниках.
    Разработчики коребута любят объединять код и приходится помнить некоторые особенности:
    например у нас EC контроллер ENE KB9012 но для него подходят исходники из ./src/ec/compal/ene932
    или например у нас южный мост Bolton, но для них обоих подходит код из ./southbridge/amd/agesa/hudson/
    а дальше нужно добавлять xhci блоб от болтона если хочешь чтобы был USB3.0

    Если посмотреть KConfig в папке g505s там тоже есть

    Code: Select all

    config HW_MEM_HOLE_SIZEK
    	hex
    	default 0x200000
    
    config HW_MEM_HOLE_SIZE_AUTO_INC
    	bool
    	default n
    Чтобы понять, на что именно влияют эти конфиги, нужно всего лишь поискать
    "HW_MEM_HOLE_SIZEK" и "HW_MEM_HOLE_SIZE_AUTO_INC" по всем исходникам коребута
    или какой то отдельной папке. Для этого можно использовать или Total Commander (если сидишь на винде) -
    - или в линуксовом терминале командой типа

    Code: Select all

    find ./coreboot/ -type f -print0 | xargs -0 grep -n "HW_MEM_HOLE_SIZEK"
    Напечатает список файлов и строчку на которой смотреть, а дальше их открываешь прям из консоли в тестовом редакторе, например

    Code: Select all

    gedit ./mainboard/lenovo/g505s/dsdt.asl &
    главное не забывать на конце команды значок & чтобы открытие текстового редактора не заблокировало терминал и в том же окне можно было вызвать ещё команд

    Code: Select all

    gedit ./src/northbridge/amd/agesa/family15rl/northbridge.c &
    а иногда достаточно просто погуглить по названию этого конфига - часто его обсуждали в списке рассылки coreboot и там есть его описание

    по-моему там просто отъедается небольшой кусок оперативки (2 МБ) для использования PCI устройствами (не как видеопамять и т.д. а просто для работоспособности интерфейсов PCI) . можно попробовать увеличить до 4 МБ если есть ощущение что этого не хватает
  • Pathoswithin wrote:Какая теория? Почему не канает?
    60 FPS при загрузке на 25% это десятикратный запас. "Маловато будет! Маловато!"
    О каких танках идёт речь? World of Tanks? Так там рекомендуется 2 ГБ видеопамяти.
    Какой нафиг запас?! Это для многопоточных программ запас! А танки потребляют одно ядро, на i7 второго поколения нагружает лишь на 10 процентов и никаких фризов нет (т.е. ядро загружено меньше, чем на половину). И это древний i7.
    Речь идет о танках онлайн.
    В дарке, например, похожая ситуация, но только дарк нагружает переодически два ядра, а к видеокарте дарк вообще не требователен.
  • olodar wrote: Какой нафиг запас?! Это для многопоточных программ запас! А танки потребляют одно ядро, на i7 второго поколения нагружает лишь на 10 процентов и никаких фризов нет (т.е. ядро загружено меньше, чем на половину). И это древний i7.
    Речь идет о танках онлайн.
    Так это браузерные танки? Тогда очевидно, что загрузка зависит от использования процессора браузером, не?
    to infinity and beyond
  • .
    Новости c этих выходных:

    1) Полностью распакован официальный биос InsydeH20 этого ноутбука
    при помощи немного устаревших инструментов от Insyde Software Japan:
    https://github.com/s-sosnitskiy80/Insider_BIOS_Tools
    https://www.bios-mods.com/forum/Thread- ... st-Release

    Зачем это было нужно:

    раньше для встроенной видеокарты HD 8650G в A10-5750M у нас был только тот VGABIOS который мы извлекали через линуксовое ядро при помощи этого метода - https://www.coreboot.org/VGA_support#Re ... nux_kernel . Разумеется мы извлекали его уже после того как комп включился, а в процессе включения компа VGABIOS модифицируется: меняются значения встроенных переменных и т.д. - То есть этот наш VGABIOS изначально был не совсем чистый и когда мы грузимся с "нечистым" VGABIOS-ом с которым уже раз грузились и у которого уже по умолчанию изменены какие-то переменные - это чисто в теории может привести к дополнительным глюкам

    Теперь у меня есть "чистый" VGABIOS для встроенной видеокарты HD 8650G, а также два тоже чистых VGABIOS-а для двух встроенных дискретных видеокарт которые встречаются в разных версиях этого ноута Lenovo G505S (HD 8570M и R5 M230) - их вообще не получалось извлечь через линуксовое ядро, но благодаря этим инструментам от InsydeH20 удалось наконец-то добыть эти VGABIOS-ы

    Помимо этого ещё есть куча модулей которые могут быть чем-то интересны. Всё это я выложу куда-нибудь в скором времени

    2) Пересобран coreboot с многими полезными патчами, расширяющими его функционал, а также с тремя "чистыми" VGABIOS-ами

    Конфиги, патчи и описания что они делают и как их применять, а также билды - тоже выложу, как решим проблемы (про них ниже)

    *) Мини-проблема: при попытке загрузки дополнения "FILO" (это такой мини-бутлоадер альтернативный GRUB-у) оно виснет на выполнении одной ассемблерной вставки. Пока что виню компилятор - полгода назад был gcc-5.2.0 и нормально запускалось, а сейчас gcc-6.3.0 и зависон при запуске (при этом исходники FILO почти не менялись с того времени). Скорее всего новый GCC криво компилит эту ассемблерную вставку. Пока что мои билды будут без FILO, может быть я тут один им пытался пользоваться, но все равно жаль когда на одно интересное дополнение меньше

    3) Тщательно протестированы все видеокарты на билдах коребута с тремя "чистыми" VGABIOS-ами

    *) ПРОБЛЕМА - не работает подс