SunVTS 2.1 Test Reference Manual
  Search only this book
Download this book in PDF
CHAPTER 35

HSI/S Boards Test (sunlink)


The sunlink test verifies the functionality of the SBus HSI boards. sunlink tests the HDLC and SDLC protocol of SBus HSI boards and PCI bus HSI boards. sunlink downloads the DCP microcode, initializes the selected channel, and configures the selected channel to the protocol being tested.
Next, sunlink opens a datagram socket and tries to modify the socket to accept ioctl communications with the driver, and receive synchronous mode information from it.
sunlink then opens the ports, linking the upper and lower layers with ioctl calls. After initialization, this test checks for activity before attempting to send or receive data. An error message is returned if activity is detected; otherwise the transmit buffer is filled with random data. Random data is used by default; other patterns may be specified. The data is then transmitted. If the transmission succeeds, sunlink then receives the returned data and verifies that it is identical to what was sent. Finally, statistics about the send and receive are gathered from the socket.
A full sunlink test takes approximately eight minutes per port and does a brief check of the board ports before the actual test begins. If the port is bad, the test immediately aborts and returns an error message.

Note - This test will not pass unless you install the correct loopback connectors or port to port cables on the ports you are testing. The ports specified for test in the option menu must have loopback connectors attached. See Appendix A for loopback connector part numbers and wiring instructions.


sunlink Options

The Configurations field displays the available ports. (See FIGURE 35-1.)

Graphic

FIGURE 35-1 sunlink

TABLE 35-1 sunlink
sunlink OptionsDescription
Clock sourceLets you select either the on-board clock or an external clock for use when using sunlink. To use the external clock option, the transmit, receive, and clock data lines must be physically loopbacked
Internal LoopbackEnables or disables internal loopback tests. Internal Loopback is only needed when the Loopback setting is not port-to-port, and the clock source is on-board
LoopbackSpecifies the loopback type: simple single external port loopback,
multiple external port loopback, and port-to-port external
loopback

sunlink Command Line Syntax

/opt/SUNWvts/bin/sunlink standard_arguments -o
dev=device_name,P=port#, p=data_pattern,I,C=B/E

TABLE 35-2 sunlink
ArgumentExplanation
dev=device_nameSpecifies the device to be tested.
hih0 HDLC and SDLC protocols
P=portsSpecifies the port number to be tested.
p=data_patternSpecifies the data_pattern as one of the following:
c: Character (0x55)
i: Incrementing
d: Decrementing
r: Random (default)
IEnables internal loopback for HSI/S (external).
c=clocksourceSpecifies the clock source value as one of the following:

B: On-board clock source

E: External clock source

The following is a typical command line syntax for testing an HSI/S Sbus card:

  # /opt/SUNWvts/bin/sunlink -o dev=hih0,P=0_to_1+2_to_3  

Typing this at the command line tests the internal loopback for port 0.

sunlink Test Modes

The sunlink test only supports the Functional test mode.

sunlink Loopback Connectors

Refer to Appendix A of this manual, and the High Speed Serial Interface hardware manuals for information on loopback connectors.

sunlink Error Messages

TABLE 35-3 sunlink

Error MessageProbable Cause(s)Recommended Action
6000Device name must be
provided!


6001Invalid port specification

6002Invalid port number

6003BSC protocol is not
implemented for
<device_name>


6004ASYNC protocol is not implemented for <device_name>

TABLE 35-3 sunlink(Continued)

Error MessageProbable Cause(s)Recommended Action
6005Illegal protocol specified for '<device_name>'

6006Could not open file :
<file_name>


6007Could not open file devname
<device_name>


6008Could not open file
(clonename)<file_name>


6009Can't get sync mode info for <device_name>

6010Can't set sync mode info for <device_name>

6011Couldn't successfully execute '/usr/sunlink/dcp/ dcp<file_name>

6012Packet received but none sent! Activity on-line. Quiesce other end before starting

6013Transmit failed on
'<device_name>'


6014Receive failed on
'<device_name>'


6015Data compare error on '<device_name>', exp = <value>, actual = <value>, offset = <number>

6016<device_name> does notNo loopback plugCheck loopback plug

respond

System load too heavyReduce system load
6017sigalrm: TIMEOUTNo loopback plugCheck loopback plug


System load too heavyReduce system load
8000Unsupported primitive type <value>

8001<text> (<error_message>)

TABLE 35-3 sunlink(Continued)

Error MessageProbable Cause(s)Recommended Action
8002Response ctl.len too short: <value>

8003DL_INFO_ACK was not
M_PCPROTO


8004DL_OK_ACK was not M_PCPROTO