Gentoo Logo

Предупреждение : Этот документ находится в разработке, и его пока не следует считать официальным.


Справочное руководство по ППЗУ OpenBoot PROM (OBP)

Содержание:

1.  Об этом документе

Этот документ предоставляет список наиболее используемых команд OBP, которые могут быть полезны при загрузке, настройке и диагностике оборудования Sun SPARC и его клонов.

Отметим что не все команды доступны на всех версиях PROM. На некоторых, системы sun4c имеют другой режим ввода, а в некоторых моделях JavaStation отсутствует очень большой функциональный кусок.

OBP не постоянен в названиях команд. Иногда для раздела слов используются дефисы, иногда они не используются. Некоторые команды, отображающие информацию, начинаются с или содержат точку (это правило — из языка Форт).

В этом документе использование терминов "OBP", "OpenBoot PROM" и "PROM" взаимозаменяемо.

2.  Вход в OBP

Системы с клавиатурой Sun

На обычных системах Sun (и их корнах использующих клавиатуру Sun), нажмите Stop+A когда система начинает загрузку для входа в OBP. Клавиша Stop находится в лквом верхнем углу в районе дополнительного набора клавиш с левой стороны клавиатуры. (на очень старых системах она может быть помечена как L1).

Нажатие клавиш Stop+N во время загрузки на большинстве систем сбросит настройки PROM в установки по умолчанию. Stop+D включит режимы проверки на некоторых системах.

Через последовательный терминал

Для входа в OBP через серийный терминал, пошлите прерывание. В системах minicom, нажмите ctrl+A F. В системах xc, нажмитеe ctrl+A B.

Системы с не Sun'овскими клавиатурами (стиль персональных компьютеров)

На системах с клавиатурами в стиле персональных компьютеров (таких как JavaStations и некоторые клоны Ultra), обычно используется ctrl+break или alt+ctrl+break.

Заметим что в системах JavaStation JK, нажатие клавиш ctrl+break перезапустит систему, вместо загрузки PROM. Чтобы войти в OBP, нужно будет установить на переключателе материнской платы J1300 разъёмы 7-8.

3.  Базовые команды системы

Остановка и перезапуск

Команда power-off остановит систему и выключит питание. Эта команда иногда работает неправильно на системах Ultra5/10.

Команда reset выполнит мягкий сброс. Если включен режим тестирования. тесты не будут перезапущены. В некоторых документах этак оманда описывается как reset-all.

Команда boot загружает систему. Команда может быть запущена с параметром, указывающим на устройство загрузки по умолчанию -- это может быть полное имя диска или псевдоним устройства, такой как disk, cdrom или net. Любой дополнительный аргумент будет передан загрузчику или операционной системе.

PROM и информация о системе

Команда .version покажет версию OBP.

Листинг 3.1: вывод команды .version

{0} ok .version
Release 3.7 Version 0 created 1997/01/09 13:06
OBP 3.7.0 1997/01/09 13:06
POST 3.2.1 1996/12/20 03:01

Команда banner покажет заголовок системной информации.

Листинг 3.2: вывод команды banner

{0} ok banner
Sun Ultra 2 UPA/SBus (2 X UltraSPARC-II 296MHz), No Keyboard
OpenBoot 3.7, 704 MB memory installed, Serial #9705521.
Ethernet address 8:0:20:94:18:31, Host ID: 80941831

Команда .speed покажет скорость шин.

Листинг 3.3: вывод команды .speed

{0} ok .speed
CPU  Speed : 296.00 MHz
UPA  Speed : 098.66 MHz
SBus Speed : 025.00 MHz

Информация об устройствах

Команда show-devs выведет на экран список устройств доступных в системе.

Команда probe-scsi покажет внутренние SCSI-устройства доступные системе. Команда probe-scsi-all покажет внутренние и наружные устройства на каждом интерфейсе SCSI. После запуска одной из этих двух команд, вы обязаны выполнить команду reset-all перед попыткой загрузить операционную систему.

Листинг 3.4: вывод команды probe-scsi-all

{0} ok probe-scsi-all
This command may hang the system if a Stop-A or halt command
has been executed.  Please type reset-all to reset the system
before executing this command.
Do you wish to continue? (y/n) y
/sbus@1f,0/SUNW,fas@e,8800000
Target 1
  Unit 0   Disk     SEAGATE ST34371W SUN4.2G74629710B00491
                    Copyright (c) 1997 Seagate
                    All rights reserved

Команда probe-ide также доступна на системах базирующихся на интерфейсе IDE.

Листинг 3.5: вывод команды probe-ide

ok probe-ide
  Device 0  ( Primary Master )
          ATA Model: ST320420A

  Device 1  ( Primary Slave )
          ATA Model: Maxtor 6E040L0

  Device 2  ( Secondary Master )
         Not Present

  Device 3  ( Secondary Slave )
         Not Present

4.  Переменные среды и псевдонимы устройств

Получение и установка переменных среды

Команда printenv используется для того чтобы получить список переменных среды. Чтобы получить значение конкретной переменной, воспользуйтесь командой printenv fnord.

Чтобы установить значение переменной воспользуйтесь командой setenv myvar the new value.

Чтобы восстановить значение переменной по умолчанию, воспользуйтесь командой set-default blah. Чтобы вернуть значения всех переменных к значению по умолчанию воспольуйтесь командой set-defaults.

Заметим что имена булевских переменных обычно заканчиваются символом ?, и это отличает их от переменных не булевского типа с тем же именем. Для переменных булевского типа используются значения true и false.

Полезные переменные среды

Некоторые полезные переменные среды:

Переменная Значение
ttya-mode Устанавливает скорость передачи информации и соответствующие установки используемые серийным терминалом. По умолчанию используется значение 9600,8,n,1,-, означающее 9600 baud, 8 битов, отсутствует контроль четности, один стоп бит, отсутствует контроль процесса.
auto-boot? По умолчанию OBP будет автоматически загружаться в момент загрузки. Установив эту переменную в false можно будет подавать команды загрузки самому.
boot-device При автоматической загрузке, когда вы дали команду boot без аргументов, данная переменная используется для определения загрузочного устройства. Переменная может принимать более одного значения (значения должны быть разделены пробелами). В этом случае, испытывается каждое значение по очереди. Каждое значение должно быть полным путём к устройству или псевдонимом устройства.
diag-device как и в случае с boot-device, но используется если включен параметр diag-switch?.
local-mac-address? Если установлена сетевые интерфейсы будут использовать собственные, а не системные MAC. Так себя ведут персональные компьютеры, и это поведение расходится со стандартами Ethernet.
diag-switch? Если установлена, будут выполнены дополнительные тестировочные проверки при включении питания. Заметим, что это может отнимать очень много времени на SMP системах и/или системах HyperSparc. Дополнительно заметим, что переменная diag-device, а не переменная boot-device будет использоваться для определения загрузочного устройства. На некоторых системах на материнской плате или на корпусе спереди находится переключатель который переключает эту переменную.

Получение и установка псевдонимов устройств

Псевдонимы устройств могут быть использованы для упрощения аргументов к многим командам. Например, вместо того чтобы написать boot /sbus/SUNW,hme@e,8c00000, можно воспользоваться командой boot net. Количество псевдонимов устройств определено по умолчанию на каждой системе.

Чтобы просмотреть все псевдонимы устройств воспользуйтесь командой devalias. Чтобы увидетьотдельный псевдоним, используйте команду devalias whatever. Чтобы установить псевдоним устройства, воспользуйтесь командой devalias whatever newvalue.

Изменение разрешения монитора

Переменная output-device можнт быть использована для контроля над тем какой используется кадровый буффер, кокае разрешение используется для консоли PROM. Например, чтобы использовать видеокарту Creator на системе Ultra 1C или 2 с разрешением в 1024x768@76Hz:

Листинг 4.1: Изменение настроек монитора

{0} ok devalias screen /SUNW,ffb
{0} ok setenv output-device screen:r1024x768x76

Изменения не будут зафиксированы до тех пор пока не произойдёт сброс системы. каждая видеокарта имеет свои поддерживаемые разрешения и частоту регенерации.

5.  Тесты

Вход в тестировочный режим

Перед тем как запустить тестирование рекомендуется установить переменную diag-switch? и произвести отключение питания системы. Дополнительная тестовая информация будет предоставлена при загрузке машины на серийной консоли.

Базовые тесты

Если тест power on self (POST) прошел успешно, дополнительные тесты могут быть запущены используя команды test, test-all, watch-net и watch-clock.

Команда test somedevice запустит проверку указанного устройства (это может быть полный путь к устройству или его псевдоним).

Листинг 5.1: Примеры тестов

{0} ok test scsi
        CE DMA fill from address fff8e000 for 80 bytes   succeeded.
         Dma register test -- succeeded.
         Esp register test -- succeeded.
         Dma read test -- succeeded.
         Dma write test -- succeeded.
{0} ok test /sbus/SUNW,hme
Internal loopback test -- succeeded.
Transceiver check  -- Using Onboard Transceiver - Link Up.
passed
{0} ok test ttya
 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn

Команда test-all запустит проверку каждого устройства которое может себя протестировать.

Команда watch-net может быть использована для наблюдения за рассылкой пакетов по сети.

Команда watch-clock может быть использована для проверки работы внутренних часов. Она должна просчитать от 0 до 59 в цикле с 1 секундным интервалом.

Расширенное тестирование с использованием obdiag

Примечание: Функция obdiag доступна только на компьютерах серии Ultra 5/10 и выше.

Чтобы включить режим расширенного тестирования, запустите следующую последовательность команд:

Листинг 5.2: Вход в программу obdiag

ok setenv mfg-mode on
mfg-mode =            on
ok setenv diag-switch? true
diag-switch? =        true
ok setenv auto-boot? false
auto-boot? =          false
ok reset-all
ok obdiag

На дисплее появится меню. Сначала выберите 16 для включения режима полных сообщений.

Листинг 5.3: Меню программы obdiag

          OBDiag Menu

  0 ..... PCI/Cheerio
  1 ..... EBUS DMA/TCR Registers
  2 ..... Ethernet
  3 ..... Keyboard
  4 ..... Mouse
  5 ..... Floppy
  6 ..... Parallel Port
  7 ..... Serial Port A
  8 ..... Serial Port B
  9 ..... NVRAM
 10 ..... Audio
 11 ..... EIDE
 12 ..... Video
 13 ..... All Above
 14 ..... Quit
 15 ..... Display this Menu
 16 ..... Toggle script-debug
 17 ..... Enable External Loopback Tests
 18 ..... Disable External Loopback Tests

 Enter (0-13 tests, 14 -Quit, 15 -Menu) ===> 16
 Enter (0-13 tests, 14 -Quit, 15 -Menu) ===>

Индивидуальные тесты могут затем быть запущены выбором соответствующего номера. Заметим что некоторые тесты (например тесты серийного порта) предполагают что установлена внешняя заглушка. Тест Ethernet предполагает что сетевой кабель присоединён к сетевой карте и сетевому разъёму.

Чтобы выйти из программы, наберите 14.

6.  Ссылки



Для печати

Обновлено 27 августа 2004

Аннотация: Описание OpenBoot PROM (OBP) предоставляет список наиболее используемых команд OBP, которые могут помочь при загрузке, настройке и диагностировании оборудования Sun SPARC и его клонов.

Ciaran McCreesh
автор

Игорь Короть
переводчик

Donate to support our development efforts.

Support OSL
Gentoo Centric Hosting: vr.org
Tek Alchemy
SevenL.net
Global Netoptex Inc.
Bytemark
Online Kredit Index
Copyright 2001-2009 Gentoo Foundation, Inc. Questions, Comments? Contact us.