Je suis Charlie

Autres trucs

Accueil

Seulement les RFC

Seulement les fiches de lecture

Ève

Accéder aux ports série d'une Sparc

Première rédaction de cet article le 20 septembre 2009
Dernière mise à jour le 2 avril 2011


Je sais, il n'y a plus grand'monde qui a des Sparc ou des UltraSparc en production mais c'était de bonnes machines et j'ai passé tellement de temps à essayer d'accéder à la console d'une Sparc par son port série qu'il me semble que ce serait dommage de ne pas rédiger cet article. Qui sait, je pourrais avoir demain besoin de cette petite documentation...

Pourquoi a t-on besoin du port série ? Parce que la Sparc n'a pas forcément une carte graphique et, même si elle en a, on n'a pas toujours le clavier et l'écran spéciaux qu'elle réclame. Si on a acheté sa Sparc sur eBay ou bien lors d'un vide-grenier, par exemple pour jouer avec Debian ou NetBSD sur une machine originale, on n'a souvent pas tout le matériel. En raison de cette utilisation « Unix libre », courante sur les vieilles Sparc, les meilleures documentations se trouvent en relation avec ces Unix (par exemple, la FAQ de NetBSD ou celle spécifique aux UltraSparc). Mais je n'ai jamais trouvé de documentation qui mentionne tous les points exposés ici. Si vous venez donc de toucher une vieille Sparc et que vous voulez y installer un Unix libre, voici quelques trucs utiles au démarrage.

Le principe de base est simple : la Sparc, dans sa configuration de sortie d'usine, démarre sur son clavier et son écran (spécifiques de Sun). Si elle ne trouve pas de clavier (et pas d'écran), elle bascule sur son premier port série, nommé A. Si on veut utiliser le second port série, nommé B, il faudra la configurer explicitement. Donc, même si on n'a pas de clavier Sun, le port série devrait être utilisé automatiquement. Néanmoins, il y a parfois des imprévus et, d'une manière générale, la solution la plus simple est d'essayer de mettre la main sur un clavier Sun.

Lorsque la machine démarre, si on veut prendre la main pour, par exemple, changer les options de démarrage, avec le clavier Sun, on doit taper STOP-A (les deux touches en même temps). Si on n'a pas de clavier Sun et qu'on passe par le port série, cela dépend du logiciel utilisé. Avec Minicom, c'est Ctrl-A F (qui envoie un BREAK) Avec cu, c'est ~#.

Note sur Minicom en passant : voici un fichier de configuration (/etc/minicom/minirc.$NOM_CONFIG) qui permet de se connecter au port série d'une Sparc, depuis un PC Linux moderne, qui n'a donc pas de port série et utilise un câble USB<->série (le câble série étant un « zéro modem »). Une fois le module noyau usbserial chargé, on se connecte donc à /dev/ttyUSB0 (ce serait plutôt /dev/ttyS0 pour un vieux PC, équipé d'un port série) :

# Connection to the serial port, for managing a machine such as a Sparc
pu port             /dev/ttyUSB0
pu baudrate         9600
pu bits             8
pu parity           N
pu stopbits         1
pu minit            
pu mreset           
pu mhangup          
pu rtscts           No 

Fin de la digression minicom, retournons à la Sparc. Si on utilise un clavier Sun et que le clavier est un Azerty, il faut faire un STOP-Q et non pas STOP-A. Ce n'est qu'après que la Sparc reconnait son clavier correctement. Les autres commandes sont donc à taper normalement.

Cela, c'est pour la configuration d'usine. Mais, si on a récupéré une Sparc d'occasion, une autre configuration, en général inconnue, a parfois été stockée dans la NVRAM. Cette configuration peut, par exemple, débrayer la sélection du port série et on est alors bien démuni si on n'a pas le clavier et l'écran Sun. Remettre à zéro la NVRAM nécessite, avec un clavier Sun, un STOP-N (les deux touches en même temps) au démarrage (presser bien avant d'allumer, et bien attendre longtemps). Si on n'a même pas de clavier Sun, même emprunté pour cinq minutes, je ne sais hélas pas quoi faire.

L'UltraSparc 10 a deux ports série, un DB25 femelle (le port A) et un DB9 mâle (le port B). Que faire si le premier, le seul choisi automatiquement avec la configuration d'usine, ne marche pas, ce qui m'est arrivé sur une Sparc récupérée ? Le mieux est d'emprunter un clavier Sun (l'écran n'est pas nécessaire) et de taper en aveugle les commandes qui forcent l'usage du port B :

setenv output-device ttyb
setenv input-device ttyb
reset

On peut aussi utiliser le clavier Sun en entrée et la console série seulement en sortie mais l'installeur de Debian n'aime pas (« Inconsistent console »).

Sur la photo ci-dessous, on voit un câble série branché dans le port B : sparc-ultra10-back-small.jpg et sur celle-ci, les deux ports sont libres. A est le 25-broches à gauche, B est étiqueté par son nom : sparc-ultra10-ports-small.jpg

Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)

Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)