sunlink テストは、HDLC プロトコルを使用して、SBus および PCI バスの HSI ボードの機能を検査します。sunlink はまず、選択されたチャネルを初期化し、設定します。
次に、データグラムソケットを開き、ドライバで ioctl 通信を受けるようにソケットの変更を試み、そこから同期モード情報を受け取ります。
その後、ポートを開いて上位層と下位層を ioctl コールでリンクします。初期化後、データの送受信を試みる前に、何らかの動作があるかを調べます。動作が検出されると、エラーメッセージを返し、検出されなければ、送信バッファーにランダムなデータを書き込みます。デフォルトではランダムなデータが使用されますが、他のパターンを指定することもできます。次に、データを送信して送信が成功すると、sunlink は返信されたデータを受信し、送信したものと同一であるか照合します。最後に、送受信に関する統計情報をソケットから収集します。
sunlink テストを一通り実施するには、ポートごとに約 8 分を要します。sunlink は、テストを開始する前にボードの簡単な検査を行います。ポートが不良な場合は、ただちに終了し、エラーメッセージを返します。
テストするポートに、正しいループバックコネクタ、またはポート間ケーブルが接続されていない場合は、このテストは正常に完了しません。オプションダイアログボックスのテストに指定されたポートには、ループバックコネクタが接続されている必要があります。ループバックコネクタのパーツ番号と結線については、付録 A 「ループバックコネクタ」を参照してください。
ダイアログボックスを表示するには、システムマップにあるテスト名を右クリックし、Test Parameter Options を選択します。システムマップにこのテスト名が表示されない場合は、グループツリーを展開すると表示される場合があります。展開しても表示されない場合は、このテストに合ったデバイスがシステムに含まれていない可能性があります。詳細は、『SunVTS 4.0 ユーザーマニュアル』を参照してください。
Configuration セクションには、使用可能なポートが表示されます (図 42-1 参照)。
オプション |
説明 |
---|---|
Clock Source |
sunlink を使用時に、オンボードクロックまたは外部クロックを選択することができます。外部クロックオプションを使用する場合は、送信、受信、クロックの各データ線を物理的にループバックさせる必要があります。 |
Internal Loopback |
内部ループバックテストを有効または無効にします。内部ループバックを必要とするのは、Loopback の設定がポート間以外で、クロック源がオンボードの場合だけです。 |
Port |
ループバックの種類を指定します。単純単一外部ポートループバック、複数外部ポートループバック、ポート間外部ループバックがあります。 |
/opt/SUNWvts/bin/sunlink 標準引数 -o dev=デバイス名,p=ポート番号, P=データパターン,I,C=B/E
表 42-2 sunlink のコマンド行構文
HSI カードをテストするための一般的なコマンド行構文を以下に示します。
# /opt/SUNWvts/bin/sunlink -o dev=hih0,P=0+1+2+3
このコマンドを入力すると、ポート 0、1、2、3 の内部ループバックをテストします。ポート間の内部ループバックはテストしません。
64 ビットのテストは、sparcv9 サブディレクトリに格納されています (/opt/SUNWvts/bin/sparcv9/テスト名)。このディレクトリにテストが存在しない場合は、そのテストは、32 ビットのテストとしてだけ実行することができます。詳細は、「32 ビットテストと 64 ビットテスト」を参照してください。
テストモード |
サポート |
説明 |
---|---|---|
接続テスト |
× |
サポートされていません。 |
機能テスト (オフライン) |
○ |
すべてのテストを実行できます。 |
機能テスト (オンライン) |
× |
サポートされていません。 |
sunlink テスト用のループバックケーブルとコネクタについては、付録 A 「ループバックコネクタ」を参照してください。ヌルモデムケーブルについては、高速シリアルインタフェースのハードウェアの取り扱い説明書を参照してください。
|
エラーメッセージ |
考えられる原因 |
対処方法 |
---|---|---|---|
6000 |
Device name must be provided! |
|
|
6001 |
Invalid port specification |
|
|
6002 |
Invalid port 数値 |
|
|
6003 |
BSC protocol is not implemented for デバイス名 |
|
|
6004 |
ASYNC protocol is not implemented for デバイス名 |
|
|
6005 |
Illegal protocol specified for 'デバイス名' |
|
|
6006 |
Could not open file: ファイル名 |
|
|
6007 |
Could not open file devname デバイス名 |
|
|
6008 |
Could not open file (clonename)ファイル名 |
|
|
6009 |
Can't get sync mode info for デバイス名 |
|
|
6010 |
Can't set sync mode info for デバイス名 |
|
|
6011 |
Couldn't successfully execute '/usr/sunlink/dcp/dcp ファイル名 |
|
|
6012 |
Packet received but none sent! Activity on-line. Quiesce other end before starting |
|
|
6013 |
Transmit failed on 'デバイス名' |
|
|
6014 |
Receive failed on 'デバイス名' |
|
|
6015 |
Data compare error on 'デバイス名', exp = 値, actual = 値, offset = 数値 |
|
|
6016 |
デバイス名 does not respond |
ループバックプラグが接続されていません。 |
ループバックプラグを調べてください。 |
システムに過大な負荷がかかっています。 |
システムの負荷を減らしてください。 |
||
6017 |
sigalrm: TIMEOUT |
ループバックプラグが接続されていません。 |
ループバックプラグを調べてください。 |
システムに過大な負荷がかかっています。 |
システムの負荷を減らしてください。 |
||
8000 |
Unsupported primitive type 値 |
|
|
8001 |
テキスト (エラーメッセージ) |
|
|
8002 |
Response ctl.len too short: 値 |
|
|
8003 |
DL_INFO_ACK was not M_PCPROTO |
|
|
8004 |
DL_OK_ACK was not M_PCPROTO |
|
|