OpenBoot PROM (OBP) Reference

Contenuti:

1.A proposito di questo documento

Questo documento fornisce una lista di utili comandi per OBP che possono essere d'aiuto quando si avvia, configura o si esegue una diagnosi su hardware o cloni Sun SPARC.

Nota che non tutti i comandi sono disponibili in tutte le versioni di PROM. In modo particolare, i sistemi sun4c hanno differenti modi di input e alcune stazioni JavaStation non sono provviste di molte funzionalità di OBP.

I comandi di OBP sono qualcosa di inconsistente. Alcune frasi sono usate con parole separate, altre non lo sono. Alcuni comandi che mostrano informazioni partono o contengono un punto (convenzione FORTH).

Il termine "OBP", "OpenBoot PROM" e "PROM" sono usati alternativamente in questo documento.

2.Entrare in OBP

Sistemi con tastiere Sun 

In sistemi SUN normali (e cloni che usano tastiere Sun), per entrare in OBP premi Stop+A quando il sistema si avvia. Il bottone Stop è nella parte sinistra della tastiera, in alto a sinistra sopra il blocco di tasti extra (nei sistemi molto vecchi è marcato da L1).

La combinazione di tasti Stop+N durante l'avvio, causa il reset della configurazione predefinita di PROM in molti sistemi. Su alcune macchine Stop+D abilita la diagnostica

Nella Console seriale 

Per entrare in OBP con la console seriale, invia un break. In minicon, fai questo premendo ctrl+A F. In xc utilizza ctrl+A B.

Sistemi con tastiere non Sun (stile PC) 

Nei sistemi con tastiere stile PC (come JavaStation e alcuni cloni Ultra), sono generalmente usati ctrl+break o alt+ctrl+break.

Nota che nelle JavaStation JK, ctrl+break riavvia la macchina al posto di entrare in PROM. Per accedere a OBP, devi mettere sulla scheda madre il jumper J1300 sui pin 7-8.

3.Comandi base di sistema

Spegnimento e riavvio 

Il comando power-off spegne la macchina. Questo comando è a volte strano nei sistemi Ultra5/10.

Il comando reset causa un reset. Se la diagnostica è abilitata, non avviene il riavvio. In alcuni documenti, questo comando si chiama reset-all.

Il comando boot avvia il sitema. Si può utilizzare un paramentro per sovrascrivere il device di boot predefinito --questo può essere un nome completo di device oppure un alias di un device come disk, cdrom oppure net. Nessun'altro paramentro addizionale viene passato al bootloader o al sistema operativo.

Informazioni su PROM e sul sistema 

Il comando .version visualizza la versione di OBP.

Esempio 1: output di .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

Il comando banner visualizza le informazioni di sistema.

Esempio 2: output di 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

Il comando .speed visualizza le velocità del bus.

Esempio 3: output di .speed

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

Informazioni sui dispositivi 

Il comando show-devs visualizza la lista dei dispositivi disponibili sul sistema.

Il comando probe-scsi visualizza i dispositivi interni SCSI disponibili sul sistema. Il comando probe-scsi-all visualizza entrambi i dispositivi, interni ed esterni su ogni interfaccia SCSI. Dopo aver dato questi comandi, devi concludere con un reset-all prima di tentare il boot di un sistema operativo.

Esempio 4: output di 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

Nei sistemi basati su IDE è pure disponibile il comando probe-ide

Esempio 5: output di 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.Varialbili di ambiente e alias di device

Vedere e impostare il valore delle varibili di ambiente 

Utilizza printenv per avere una lista delle varibili di ambiente. Per vedere il contenuto di una specifica variabile, utilizza il comando printenv fnord.

Per impostare il valore di una variabile, utilizza setenv varibile nuovo_valore.

Per ripristinare una variabile al suo valore predefinito utilizza set-default variabile. Per ripristinare tutte le variabili con il loro valore predefinito utilizza set-defaults.

Nota che solitamente le variaibli booleane finiscono con ?, e che sono separate dalle variabili con lo stesso nome senza il punto di domanda. I valori utilizzati per le variaibli booleane sono true e false.

Variabili di sistema utili 

Alcune variabili si sitema utili:

Variabile Significato
ttya-mode Imposta il baud rate e relative impostazioni usate dalla console seriale. Per default viene utilizzato 9600,8,n,1,-, che significa 9600 baud, 8 nits, nessuna parità, 1 bit di stop, nessun controllo del flusso.
auto-boot? Per default OBP viene automaticamente avviato. Imposta questa variabile a false se vuoi dare il comando di boot manualmente.
boot-device Quando avviente l'auto-boot, e quando il comando boot è dato senza argomenti, questa variabile è usata per determinare il device per il boot. Possono essere assegnati più di un valore (separati da spazio), in questo caso vengono provate una dopo l'altra. Ogni valore può essere un percorso completo al device oppure l'alias del device.
diag-device Come boot-device, ma usato quando è abilitata diag-switch?.
local-mac-address? Se impostata, le interfacce di rete utilizzano il loro propio MAC al posto del system-wide MAC. Questo è consistente al comportamento dei PC, e in violazione con le specifiche Ethernet.
diag-switch? Se settato, vengono eseguiti all'avvio addizionali controlli di diagnostica. Nota che questo può impegnare un tempo molto lungo nei sistemi SMP e/o HyperSparc. In più, la variabile diag-device è anche utilizzata per determinare il device di boot invece della variabile boot-device. Alcuni sistemi hanno un jumper sulla scheda madre oppure uno switch sul davanti della macchina che forza questa impostazione.

Vedere e impostare i device alias 

GLi alias dei devices possono essere utilizzati per semplificare gli argomenti di molti comandi. Invece di digitare boot /sbus/SUNW,hme@e,8c00000, per esempio, si può utilizzare boot net. Alcuni alias di device sono definiti per default in tutti i sistemi.

Per vedere tutti gli alias di device, utilizza il comando devalias. Per vedere un alias specifico, utilizza devalias nome_device. Per impostare un device alias, utilizza devalias nome_device nuovo_valore.

Cambiare la risoluzione del monitor 

La variabile output-device può essere utilizzata per controllare quale framebuffer è utilizzato, e a che risoluzione è impostato per la console PROM. Per esempio, per usare la scheda Creator su Ultra 1C o 2 ad una risoluzione di 1024x768@76MHz:

Esempio 6: Cambiare impostazioni del monitor

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

I cambiamenti non hanno effetto fino a quando non si fa un reset. Non tutte le risoluzioni e refresh sono supportate dalle schede video.

5.Diagnostica

Entrare nella modalità di diagnostica 

Prima di entrare in qualsiasi modalità di diagnostica è consigliato abilitare diag-switch?, spegnere completamente la macchina e riaccenderla (hard power off). Maggiori informazioni sulla diagnostica sono fornite dalla console seriale quando la macchina è avviata.

Tests di base 

Se l'autotest di accensione (POST) ha successo, possono essere ottimizzati alcuni tests usando il comando watch-clock.

Il comando test device_da_testare fornisce un controllo del specifico device (patch completo o alias).

Esempio 7: Esempio di test

{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

Il comando test-all fornisce un controllo su ogni device capace di un auto test.

Il comando watch-net può essere utilizzato per vedere pacchetti broadcast inviati sulla rete.

Il comando watch-clock può essere utilizzato per verificare che il clock interno è funzionante. Esso deve contare da 0 a 59 in un ciclo con intervallo di 1 secondo.

Diagnostica avanzata tramite l'utilizzo di obdiag 

Nota: La routine obdiag è disponibile soltanto su Ultra 5/10 e sucessivi.

Per abilitare la diagnoastica avanzata fai come segue:

Esempio 8: Entrare in 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

Questo visualizza un menu. Prima scegli 16 per abilitare messaggi prolissito enable verbose.

Esempio 9: menu di 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) ===>
 

Tests individuali possono essere così eseguiti scegliendo il loro relativo numero. Nota che alcuni tests (per esempio, quello delle porte seriali), presuppone che vi sia un attaccato un connettore esterno per il loopback. Il test Ethernet presuppone che il cavo di rete è attaccato e connesso ad uno switch.

Per uscire utilizza 14.

6.Referenze



Ultimo aggiorn.:
27 agosto 2004
Ciaran McCreesh
Autore

Diana Fossati
Traduzione

Sommario:  La referenza a OpenBoot PROM (OBP) fornisce una lista di comandi utili che possono essere d'aiuto quando si avvia, configura o si esegue una diagnosi su hardware o cloni Sun SPARC.
- 2002 Gentoo.it - Domande, commenti e/o correzioni? Email gentoo-dev@gentoo.it.