Эльбрус/пнс
Программа начального старта
ПНС, также "бут" (boot) -- аналог BIOS в обычных ПК: прошивка, входящая в комплект материнской платы и обеспечивающая начальную настройку/самодиагностику вычислительного комплекса с последующей загрузкой операционной системы.
Отличается не полноэкранным, а командно-строчным методом организации взаимодействия.
Конфигурируется посредством своего интерактивного режима, а в части загрузчика -- также /boot/boot.conf на указанном загрузочном устройстве/разделе.
Задачи
Помимо своей основной задачи ПНС решает и ряд вспомогательных, предоставляя интерактивный режим для выбора загрузочного носителя и позволяя сконфигурировать аппаратное обеспечение (например, отключить инициализацию отсутствующих жёстких дисков или неподключенных сетевых интерфейсов для ускорения загрузки).
Нижняя консоль
Интерактивный режим, вызываемый по нажатию пробела при соответствующей подсказке после инициализации оборудования и перед загрузкой ядра ОС; включает:
- основное меню
- boot#-меню
- расширенное меню
Для работы нижней консоли требуется уже запущенная память, что приводит к необходимости сброса настроек всего бута по зажатой Esc в случае выбора несовместимых настроек.
Верхняя консоль
В бутах для v6-систем (e16c/e12c/e2c3) добавлена интерактивная часть, работающая до инициализации ОЗУ -- т.н. верхняя консоль, вызываемая по зажатой X на COM-порту при старте машины[1].
Среди прочего позволяет настроить:
- режим работы памяти
- прогрев VGA BIOS дискретной видеокарты
режим ОЗУ
Пример для Micron MTA18ASF2G72PZ-3G2R1 на 1Э16С-uATX:
Cmd Accepted ... b Calc CPU MC Freq (PLL MC) ... Hit any Menu-key:b E.g: 350000000-1350, 400000000-1600, 450000000-1800, 525000000-2100, 600000000-2400 650000000-2600, 675000000-2700, 700000000-2800, 725000000-2900, 750000000-3000, 800000000-3200 Hit Enter to DFLT MC Freq 337500000 or 0 to finish or type Freq in Hz : 8000000003 Max ---------------------------------------------------------------------- # NF NR OD Fvco error ---------------------------------------------------------------------- 1 . 0x3000000000 1 3 2.400000e+09 +0000.000000 ---------------------------------------------------------------------- Calc tunes: clkf 0x3000000000 , clkr 0 , clkod 2 Press Enter for Dflt CPUs Mask 0xF | type 0 to finish | type hex CPUs mask: 0x20 Max Press Enter for Dflt MCs Mask 0xFF | type 0 to finish | type hex MCs mask: 0x0ff You are about to set MC Freq 800000000 Hz for CPU0 ,1 ,2 ,3 MC0 ,1 ,2 ,3 ,4 ,5 ,6 ,7 Save Tune ? (y or n)y Saved in CMOS Will applied after PwrReset Other Tune ? (y or n)n Exit ? (y or n)y
В ответ на подсказку "0x0" был произведён ввод значения "ff", далее трижды "y". Внимание: для учёта сделанных настроек следует выполнить аппаратный reset по кнопке!
прогрев VGA BIOS
Пример для 1Э16С-uATX:
2 y/n X86EMU_VIDEO_INIT En
[...] Hit any Menu-key:2
Current x86emu_video_init_enable Flag = 0
Invert ? (y or n)y
Exit ? (y or n)_
Ввод -- после выбора в меню верхней консоли пункта "2" дважды "y".
Советы
Определение версии
В самой ПНС (расширенный режим по "~"):
get version boot
В загруженной Linux-системе:
cat /proc/bootdata
Отключение сетевой загрузки
Для ускорения процесса инициализации можно выключить ethernet-интерфейсы в ПНС (ядро Linux их поднимет самостоятельно)[2]:
~ set eth controller disable <Esc> b <Enter>
Переключение видеовывода по умолчанию
См. в расширенном командном режиме ПНС (~) вывод:
get video output set video output
Например, для случая 1Э8СВ с набортным Aspeed VGA и дискретным Radeon для переключения на последний рекомендовали[3]:
set video output 0
В более старых бутах (до video) был параметр vga.
На случай потери доступа к интерфейсу ПНС с локальной консоли держите под руками COM-кабель.
Отключение встроенной видеокарты
Для отключения встроенной видеокарты необходимо в расширенной командной строке набрать команду set cpu_pci 0 0; рекомендуется предварительно выполнить команду get cpu_pci 0 и запомнить ее выдачу, чтобы потому можно было восстановить настройку командой set cpu_pci 0 <old_value>
Проблемы
GUI
COM-COM
Загрузка двух связанных последовательным кабелем ВК "Эльбрус" может пойти кувырком, если при одновременном включении прошивки "уговорят" друг друга сменить настройки загрузчика (#2436); рекомендуется применять асимметричные кабели USB-COM.
8С
Ранние версии прошивки для 801-РС/804 не работают с USB-клавиатурами через USB-хаб, при этом 4С/1С+ с этим справляются; в недавней версии исправлено, запрашивайте в МЦСТ (#4770). Там же в наличии поддержка символических ссылок (#2231).
Если получили подобный вывод при попытке загрузки с флэшки -- попробуйте флэшку другой модели (выделенного курсивом быть не должно):
Use this Unit as Drive #10Error request
Обновление
Причины
Также обновление может добавить ранее отсутствовавшую функциональность -- например, вышеупомянутую поддержку USB-хабов или загрузку ОС через USB3-карту.
Проведение
Прошивка запрашивается в техподдержке МЦСТ с указанием типа и серийного номера ВК; само обновление можно произвести из-под загруженной ОС при установленном пакете flashrom[4] (#2966):
flashboot.sh e8c.bin
В процессе будет сделана резервная копия имеющейся прошивки, путь к ней будет указан в начале процесса прошивки (можно заархивировать на всякий).
После произведения обновления можно перезагрузить машину в удобное время, чтобы убедиться в отсутствии необходимости вмешательства в процесс загрузки.
Для некоторых систем, особенно v5/v6, может потребоваться добавление dtb (запрашивайте образ совмещённых прошивки и devicetree для конкретной платы в поддержке, указав модель и серийный номер); свежие буты умеют подшивать devicetree прямо из основного меню[5]
Сброс настроек
При перепрошивке через ОС могут наложиться настройки от предыдущей версии. На машине, где открыт терминал, "читающий" СОМ-порт перешитого ВК, зажмите ESC при включении/перезапуске ВК и наберите "yes, I want", когда бут попросит. (#3985)
Для настройки режима работы памяти на v6-системах обратите внимание на верхнюю консоль.
Ссылки
- Эльбрус/загрузчик
- Эльбрус/com
- Программа начального старта (ТВГИ.00727)
- Документация ВК "Эльбрус": ТВГИ.00315-03 34 01 изм. 30, п. 3.2.
- "И всё таки она живая!" | Создаем загрузочную USB-флешку с Альт Линукс для Эльбруса
- Как сбросить пароль (init=/bin/bash)
Примечания
- ↑ Наиболее вероятно читать ПНС будет с COM1/ttyS0; например, на 1Э16С-uATX разъём X31 отображается в COM2/ttyS1 и в ряде прошивок вывод на него есть, а ввод в верхней консоли не воспринимается (исправлено в мае 2023)
- ↑ работает автодополнение по кнопке <Tab>, достаточно набирать первые буквы слов команды
- ↑ mcst#5977
- ↑ обратите внимание: flashrom собран с патчем МЦСТ
- ↑ 'U' - Upload file from Flash to Disk:, далее 2 - rDEV3 (DevTree), указать номер диска (флэшки), раздела (обычно 0) и путь к файлу .dtb