ブログ

Armadillo-400シリーズ:コンソール用シリアルインタフェースの切り替え方法

at_kazutaka.bito
2017年12月1日 15時41分

例えば、Armadillo-420/440は、デフォルトではRS232Cコネクタ(CON3)をコンソールとして使用しますが、
用途によっては、RS232Cコネクタ(CON3)を周辺装置との通信に使用したい場合が考えられます。
このような用途において、コンソールをRS232Cコネクタ(CON3)以外のシリアルインタフェースに設定することが可能です。

下記は、Armadillo-400シリーズのコンソール用シリアルインタフェースを切り替える方法です。

Armadillo-400シリーズは、4系統のシリアルインタフェースが使用可能で、
/dev/ttymxc*というデバイスファイル名になっています。

デバイスファイル名とArmadillo-400シリーズのコネクタ名の相関は、下記のようになっています。
(コネクタの端子番号と信号の相関は各製品マニュアルを参照ください。)

/dev/ttymxc1:Armadillo-420/440/460のCON3/CON4、Armadillo-410のCON2
/dev/ttymxc2:Armadillo-420/440/460のCON9、Armadillo-410のCON2
/dev/ttymxc4:Armadillo-420/440/460のCON9、Armadillo-410のCON2
/dev/ttymxc3:Armadillo-460のCON19、Armadillo-410のCON2

デフォルトでは、コンソール用シリアルインタフェースは、
/dev/ttymxc1
に設定されています。

コンソール用シリアルインタフェースを変更するには、下記の2つの手順が必要です。
1.カーネル/ブートローダのコンソールの変更
2.ユーザーランドのコンソールの変更

下記では、コンソール用シリアルインタフェースを
/dev/ttymxc2
に変更する例で説明します。
(別のシリアルインタフェースに変更する場合は、下記、"ttymxc2"の箇所を該当のデバイスファイル名で読み替えてください。)

1.カーネル/ブートローダのコンソールの変更

Armadillo-400 シリーズソフトウェアマニュアル
3.8. ブートモード
を参考に、Armadilloを「保守モード」で起動します。

ブートローダ(Hermit-At)が起動した状態で、下記のように"setenv"コマンドを入力します。

hermit> setenv console=ttymxc2,115200

電源OFF/ONすると、以降はカーネル/ブートローダのコンソールが、/dev/ttymxc2になります。

2.ユーザーランドのコンソールの変更

ATDE上で、ユーザーランドの/etc/inittabを変更したイメージを作成する必要があります。

Armadillo-400 シリーズソフトウェアマニュアル
7.1. Linuxカーネル/ユーザーランドをビルドする
のように、アーカイブが展開されている場合、

atmark-dist-[version]/vendors/AtmarkTechno/[プロダクトディレクトリ名]/etcディレクトリの
inittabファイルの

::respawn:/sbin/getty -L 115200 ttymxc1 vt102

の行を

::respawn:/sbin/getty -L 115200 ttymxc2 vt102

に変更します。

上記変更後、ビルドしたユーザーランドイメージをArmadlloに書き込みます。
イメージを書き込み後、起動した以降はユーザーランドのコンソールが、/dev/ttymxc2になります。

参考)
Armadillo-400 シリーズソフトウェアマニュアル
A.Hermit-Atブートローダー
A.7.1. setenv/clearenv 使用例