<?xml version='1.0' encoding="UTF-8"?>
<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/it/gentoo-sparc-obpreference.xml,v 1.4 2012/02/26 08:36:40 swift Exp $ -->

<guide lang="it">
<title>OpenBoot PROM (OBP) Reference</title>

<author title="Autore">
  <mail link="ciaranm@gentoo.org">Ciaran McCreesh</mail>
</author>
<author title="Traduzione">
  <mail link="luna80@gmail.com">Diana Fossati</mail>
</author>

<abstract>
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.
</abstract>

<license />
<version>1.2</version>
<date>2004-08-27</date>

<chapter><title>A proposito di questo documento</title>
<section>
<body>

<p>
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.
</p>

<p>
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.
</p>

<p>
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).
</p>

<p>
Il termine "OBP", "OpenBoot PROM" e "PROM" sono usati alternativamente in questo
documento.
</p>

</body>
</section>
</chapter>

<chapter>
<title>Entrare in OBP</title>
<section>
<title>Sistemi con tastiere Sun</title>
<body>

<p>
In sistemi SUN normali (e cloni che usano tastiere Sun), per entrare in OBP
premi <c>Stop+A</c> quando il sistema si avvia. Il bottone <c>Stop</c> è nella
parte sinistra della tastiera, in alto a sinistra sopra il blocco di tasti extra
(nei sistemi molto vecchi è marcato da <c>L1</c>).
</p>

<p>
La combinazione di tasti <c>Stop+N</c> durante l'avvio, causa il reset della
configurazione predefinita di PROM in molti sistemi. Su alcune macchine
<c>Stop+D</c> abilita la diagnostica
</p>

</body>
</section>
<section><title>Nella Console seriale</title>
<body>

<p>
Per entrare in OBP con la console seriale, invia un break. In minicon, fai
questo premendo <c>ctrl+A F</c>. In xc utilizza <c>ctrl+A B</c>.
</p>

</body>
</section>
<section>
<title>Sistemi con tastiere non Sun (stile PC)</title>
<body>

<p>
Nei sistemi con tastiere stile PC (come JavaStation e alcuni cloni Ultra), sono
generalmente usati <c>ctrl+break</c> o <c>alt+ctrl+break</c>.
</p>

<p>
Nota che nelle JavaStation JK, <c>ctrl+break</c> 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.
</p>

</body>
</section>
</chapter>

<chapter>
<title>Comandi base di sistema</title>
<section>
<title>Spegnimento e riavvio</title>
<body>

<p>
Il comando <c>power-off</c> spegne la macchina. Questo comando è a volte strano
nei sistemi Ultra5/10.
</p>

<p>
Il comando <c>reset</c> causa un reset. Se la diagnostica è abilitata,
<e>non</e> avviene il riavvio. In alcuni documenti, questo comando si chiama
<c>reset-all</c>.
</p>

<p>
Il comando <c>boot</c> 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 <c>disk</c>, <c>cdrom</c> oppure
<c>net</c>. Nessun'altro parametro addizionale viene passato al bootloader o al
sistema operativo.
</p>

</body>
</section>
<section>
<title>Informazioni su PROM e sul sistema</title>
<body>

<p>
Il comando <c>.version</c> visualizza la versione di OBP.
</p>

<pre caption="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
</pre>

<p>
Il comando <c>banner</c> visualizza le informazioni di sistema.
</p>

<pre caption="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
</pre>

<p>
Il comando <c>.speed</c> visualizza le velocità  del bus.
</p>

<pre caption="output di .speed">
{0} ok .speed
CPU  Speed : 296.00 MHz
UPA  Speed : 098.66 MHz
SBus Speed : 025.00 MHz
</pre>

</body>
</section>
<section>
<title>Informazioni sui dispositivi</title>
<body>

<p>
Il comando <c>show-devs</c> visualizza la lista dei dispositivi disponibili sul
sistema.
</p>

<p>
Il comando <c>probe-scsi</c> visualizza i dispositivi interni SCSI disponibili
sul sistema. Il comando <c>probe-scsi-all</c> visualizza entrambi i dispositivi,
interni ed esterni su ogni interfaccia SCSI. Dopo aver dato questi comandi,
<e>devi</e> concludere con un <c>reset-all</c> prima di tentare il boot di un
sistema operativo.
</p>

<pre caption="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
</pre>

<p>
Nei sistemi basati su IDE è pure disponibile il comando <c>probe-ide</c>
</p>

<pre caption="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
</pre>

</body>
</section>
</chapter>

<chapter>
<title>Variabili di ambiente e alias di device</title>
<section>
<title>Vedere e impostare il valore delle varibili di ambiente</title>
<body>

<p>
Utilizza <c>printenv</c> per avere una lista delle varibili di ambiente. Per
vedere il contenuto di una specifica variabile, utilizza il comando <c>printenv
fnord</c>.
</p>

<p>
Per impostare il valore di una variabile, utilizza <c>setenv variabile
nuovo_valore</c>.
</p>

<p>
Per ripristinare una variabile al suo valore predefinito utilizza <c>set-default
variabile</c>. Per ripristinare tutte le variabili con il loro valore
predefinito utilizza <c>set-defaults</c>.
</p>

<p>
Nota che solitamente le variabili booleane finiscono con <c>?</c>, e che sono
separate dalle variabili con lo stesso nome senza il punto di domanda. I valori
utilizzati per le variabili booleane sono <c>true</c> e <c>false</c>.
</p>

</body>
</section>
<section>
<title>Variabili di sistema utili</title>
<body>

<p>
Alcune variabili di sistema utili:
</p>

<table>
<tr>
  <th>Variabile</th>
  <th>Significato</th>
</tr>
<tr>
  <ti><c>ttya-mode</c></ti>
  <ti>
    Imposta il baud rate e relative impostazioni usate dalla console seriale.
    Per default viene utilizzato <c>9600,8,n,1,-</c>, che significa 9600 baud, 8
    bit, nessuna parità , 1 bit di stop, nessun controllo del flusso.
  </ti>
</tr>
<tr>
  <ti><c>auto-boot?</c></ti>
  <ti>
    Per default OBP viene automaticamente avviato. Imposta questa variabile a
    <c>false</c> se vuoi dare il comando di boot manualmente.
  </ti>
</tr>
<tr>
  <ti><c>boot-device</c></ti>
  <ti>
    Quando avviene l'auto-boot, e quando il comando <c>boot</c> è 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.
  </ti>
</tr>
<tr>
  <ti><c>diag-device</c></ti>
  <ti>
    Come <c>boot-device</c>, ma usato quando è abilitata <c>diag-switch?</c>.
  </ti>
</tr>
<tr>
  <ti><c>local-mac-address?</c></ti>
  <ti>
    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.
  </ti>
</tr>
<tr>
  <ti><c>diag-switch?</c></ti>
  <ti>
    Se settato, vengono eseguiti all'avvio addizionali controlli di diagnostica.
    Nota che questo può impegnare un tempo <e>molto</e> lungo nei sistemi SMP
    e/o HyperSparc. In più, la variabile <c>diag-device</c> è anche utilizzata
    per determinare il device di boot invece della variabile <c>boot-device</c>.
    Alcuni sistemi hanno un jumper sulla scheda madre oppure uno switch sul
    davanti della macchina che forza questa impostazione.
  </ti>
</tr>
</table>

</body>
</section>
<section>
<title>Vedere e impostare i device alias</title>
<body>

<p>
Gli alias dei device possono essere utilizzati per semplificare gli argomenti
di molti comandi. Invece di digitare <c>boot /sbus/SUNW,hme@e,8c00000</c>, per
esempio, si può utilizzare <c>boot net</c>. Alcuni alias di device sono definiti
per default in tutti i sistemi.
</p>

<p>
Per vedere tutti gli alias di device, utilizza il comando <c>devalias</c>. Per
vedere un alias specifico, utilizza <c>devalias nome_device</c>. Per impostare
un device alias, utilizza <c>devalias nome_device nuovo_valore</c>.
</p>

</body>
</section>
<section>
<title>Cambiare la risoluzione del monitor</title>
<body>

<p>
La variabile <c>output-device</c> 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:
</p>

<pre caption="Cambiare impostazioni del monitor">
{0} ok devalias screen /SUNW,ffb
{0} ok setenv output-device screen:r1024x768x76
</pre>

<p>
I cambiamenti non hanno effetto fino a quando non si fa un reset. Non tutte le
risoluzioni e refresh sono supportate dalle schede video.
</p>

</body>
</section>
</chapter>

<chapter>
<title>Diagnostica</title>
<section><title>Entrare nella modalità di diagnostica</title>
<body>

<p>
Prima di entrare in qualsiasi modalità di diagnostica è consigliato abilitare
<c>diag-switch?</c>, spegnere completamente la macchina e riaccenderla (hard
power off). Maggiori informazioni sulla diagnostica sono fornite dalla console
seriale quando la macchina è avviata.
</p>

</body>
</section>
<section>
<title>Test di base</title>
<body>

<p>
Se l'autotest di accensione (POST) ha successo, possono essere ottimizzati
alcuni test usando il comando <c>watch-clock</c>.
</p>

<p>
Il comando <c>test device_da_testare</c> fornisce un controllo del specifico
device (patch completo o alias).
</p>

<pre caption="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
 !"#$%&amp;'()*+,-./0123456789:;;&lt;=&gt;?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn
</pre>

<p>
Il comando <c>test-all</c> fornisce un controllo su ogni device capace di un
auto test.
</p>

<p>
Il comando <c>watch-net</c> può essere utilizzato per vedere pacchetti broadcast
inviati sulla rete.
</p>

<p>
Il comando <c>watch-clock</c> 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.
</p>

</body>
</section>
<section>
<title>Diagnostica avanzata tramite l'utilizzo di obdiag</title>
<body>

<note>
La routine <c>obdiag</c> è disponibile soltanto su Ultra 5/10 e successivi.
</note>

<p>
Per abilitare la diagnostica avanzata fai come segue:
</p>

<pre caption="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
</pre>

<p>
Questo visualizza un menù. Prima scegli <c>16</c> per abilitare i messaggi
proliss.
</p>

<pre caption="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) ===>
</pre>

<p>
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.
</p>

<p>
Per uscire utilizza <c>14</c>.
</p>

</body>
</section>
</chapter>

<chapter>
<title>Referenze</title>
<section>
<body>

<ul>
  <li>
    OpenBoot 3.x Quick Reference, Sun P/N 802-3240 (<uri
    link="http://sunsolve.sun.com/data/802/802-3240/pdf/802-3240-10.pdf">PDF
    Version) </uri>
  </li>
  <li>
    OpenBoot 3.x Command Reference, Sun P/N 802-3242 (<uri
    link="http://sunsolve.sun.com/data/802/802-3242/html/TOC.html">HTML
    Version)</uri>
  </li>
  <li>
    OpenBoot 3.x Supplement for PCI, Sun P/N 802-7679 (<uri
    link="http://sunsolve.sun.com/data/802/802-7679/pdf/">Collection of PDF
    files)</uri>
  </li>
  <li>
    <uri link="http://firmworks.com/QuickRef.html">Open Firmware Quick
    Reference</uri> (Not Sun OBP specific)
  </li>
</ul>

</body>
</section>
</chapter>
</guide>
