Gentoo Logo

OpenBoot PROM (OBP) Reference

Indice:

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 sistema. Si può utilizzare un parametro 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 parametro addizionale viene passato al bootloader o al sistema operativo.

Informazioni su PROM e sul sistema

Il comando .version visualizza la versione di OBP.

Codice 3.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.

Codice 3.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.

Codice 3.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.

Codice 3.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

Codice 3.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.  Variabili 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 variabile 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 variabili booleane finiscono con ?, e che sono separate dalle variabili con lo stesso nome senza il punto di domanda. I valori utilizzati per le variabili booleane sono true e false.

Variabili di sistema utili

Alcune variabili di sistema 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 bit, 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 avviene 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 proprio 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 device 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:

Codice 4.1: 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.

Test di base

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

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

Codice 5.1: 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 sia 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 successivi.

Per abilitare la diagnostica avanzata fai come segue:

Codice 5.2: 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 menù. Prima scegli 16 per abilitare i messaggi proliss.

Codice 5.3: 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) ===>

Test individuali possono essere così eseguiti scegliendo il loro relativo numero. Nota che alcuni test (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 sia attaccato e connesso ad uno switch.

Per uscire utilizza 14.

6.  Referenze



Stampa

Aggiornato il 27 agosto 2004

La versione originale di questo documento non è più mantenuta

Oggetto: 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.

Ciaran McCreesh
Autore

Diana Fossati
Traduzione

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.