SunVTS 3.0 Test Reference Manual

Chapter 10 ECP 1284 Parallel Port Printer Test (ecpptest)

The ecpptest verifies the functionality of the ecpp(7) IEEE 1284 parallel printer port device.

The ecpp(7) device is an exclusive use device. Only one application can interface with it at a time. This test is not scalable.

Printer Test Hardware and Software Requirements

The ecpp(7) driver is installed with the OS if the system being tested supports the ecpp(7) device. To run the optional printer subtest, a Centronics or ECP-mode printer must be attached to the printer port. To run the optional external loopback test, a passive loopback connector must be installed on the printer port.


Note -

The external loopback test is intended for Sun internal manufacturing use only. It requires a custom loopback connector not available to an external customer.


ecpptest Subtests

Table 10-1 ecpptest Subtests

Subtest 

Description 

Internal Test FIFO Loopback 

Verifies DMA and PIO accesses to the ecpp device. It uses an internal test fifo on the ecpp device. There are no printer or loopback connectors required. This test is always executed.

External Passive Loopback 

This verifies the parallel port I/O connections to the back panel connector. This test requires a passive loopback connector (Sun part no. 270-2965-01). This test is disabled by default and must be manually enabled by the user. 

Note: The external loopback test is intended for Sun internal manufacturing use only. It requires a custom loopback connector that is not available to an external customer. 

Printer Test 

This verifies the parallel port printer operation. It will output a half page of ASCII character data. The output mode (for example, ECP and Centronics) is determined by which mode the printer and ecpp driver automatically negotiate. It will not change the current mode. The user must verify that data printed properly. This test is disabled by default and must be manually enabled by the user.

ecpptest Options

Figure 10-1 ecpptest Option Menu

Graphic

Table 10-2 ecpptest Options

ecpptest Options

Description 

External Loopback 

Enables or disables the external loopback test. This test requires a special loopback plug

Printer 

Enables or disables the printer test; this test requires a printer to be attached to the parallel port

 Printer_data_type Choose whether ascii text or postscript data is sent to the printer. The printer test must be enabled for this to be meaningful. A postscript printer must be attached to print postscript data.
 Printer_delay _seconds Allows the user to choose a delay between passes of the printer test. This prevents continuous printing of data that could quickly empty the paper supply. This is only meaningful if the printer test is enabled.
 Internal_loop_during_delay Enables the Internal Test FIFO loopback test during the printer delay time. This is only meaningful if the printer test is enabled.

ecpptest Test Modes

Table 10-3 ecpptest Test Modes

Test Mode 

Description 

Connection Test  

Opens and closes the ecpp(7) device. No data is transferred. The test passes if the device can be open and closed successfully. The test also passes if the device cannot be opened because the device is busy with another process

Functional Test 

Runs the internal loopback test and the user can optionally run the External loopback test and Printer test. The test will fail if the device is busy 

 

If you invoke SunVTS through SyMON, the following Functional Test description applies: Runs the internal loopback test. If the device cannot be opened because it is busy, then it is assumed that the device is successfully connected to another process 

ecpptest Command Line Syntax

/opt/SUNWvts/bin/ecpptest standard_arguments -o [dev=device_name] [ext_loop=Enable|Disable][printer=Enable|Disable][,data=ascii|postscript][,delay=0-86400][,dloop=Enable|Disable]

Table 10-4 ecpptest Command Line Syntax

Argument Explanation 

dev=device_name

Specifies the name of the device. This should be of the form /dev/ecpp#, where # is the minor number of the device. The default device is /dev/ecpp0.

ext_loop=Enable|Disable

If enabled, the external loopback test is run. The External loopback plug must be attached to the printer port. 

printer=Enable/Disable

If enabled, the printer test is run. A Centronics or ECP mode parallel port printer must be attached 

data=ascii|postscript Choose whether ascii text or postscript data is sent to the printer. A postscript printer must be attached to print postscript data.
delay=0-86400 Allows the user to choose a delay between passes of the printer test. This prevents continuous printing of data that could quickly empty the paper supply.
dloop=Enable|Disable Enables the Internal Test FIFO loopback test during the printer delay time.


Note -

64-bit tests are located in the sparcv9 subdirectory: /opt/SUNWvts/bin/sparcv9/testname. If a test is not present in this directory, then it may only be available as a 32-bit test. For more information refer to "32-Bit and 64-Bit Tests".


ecpptest Error Messages

Table 10-5 ecpptest Error Messages

 

Error Message 

Probable Cause(s) 

Recommended Action 

8000

External loop test and printer test cannot be enabled at the same time

Operator error. 

Examine system message files (/var/adm/messages) for other information.

8001

device_name: Device does not exist or is otherwise inaccessible

Correct ecpp driver not installed.

Examine system message files (/var/adm/messages) for other information.

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8002

Must be super user (root) to execute

Operator error. 

Examine system message files (/var/adm/messages) for other information.

8003

Failed to open device_name (error_message)

Correct ecpp driver not installed.

Examine system message files (/var/adm/messages) for other information. 

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8004

Failed ioctl name, device = device_name, error = error_message

Correct ecpp driver is not installed.

Examine system message files (/var/adm/messages) for other information.

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8005

Device not in correct mode, device = device_name, expected mode = number, observed mode = number

Correct ecpp driver is not installed.

Examine system message files (/var/adm/messages) for other information.

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8006

device_name: Status line miscompare, expected = number, observed = number, xor = number

Faulty or missing external loopback connector. 

Examine system message files (/var/adm/messages) for other information.

Correct ecpp driver is not installed.

 

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8007

ECPP_nACK in wrong state, expected = number, observed = number, xor = number

Faulty or missing external loopback connector. 

Examine system message files (/var/adm/messages) for other information.

Correct ecpp driver not installed.

 

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8008

subtest_name: Data miscompare, expected = number, observed = number, xor = number

Faulty or missing external loopback connector. 

Examine system message files (/var/adm/messages) for other information.

Correct ecpp driver not installed.

 

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8009

Could not set correct port type, expected = number (device_name), observed = number, device = device_name

Correct ecpp driver not installed.

Examine system message files (/var/adm/messages) for other information.

System software problem. 

 

Faulty ecpp device or motherboard hardware.

 

8010

subtest_name: Failed to allocate number bytes of memory, error = error_message

System resources temporarily not available, try again. 

Examine system message files (/var/adm/messages) for other information.

Correct ecpp driver not installed.

 

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8011

subtest_name: Write() failed, device = device_name, error = error_message

Correct ecpp driver not installed.

Examine system message files (/var/adm/messages) for other information.

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8012

subtest_name: Write count is wrong, expected = number, observed = number

Correct ecpp driver is not installed.

Examine system message files (/var/adm/messages) for other information.

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8013

subtest_name: Data miscompare, expected = number, observed = number, xor = number, offset = number

Correct ecpp driver not installed

Examine system message files (/var/adm/messages) for other information.

Faulty ecpp device or motherboard hardware.

 

System software problem. 

 

8014

device_name: Device busy

Another process is using the device. 

Make sure no other process is using the device. 

Someone is printing with the device. 

Make sure no one is printing to the device. 

Faulty ecpp device or motherboard hardware.

Examine system message files (/var/adm/messages) for other information.

System software problem. 

 

8015

Bad state for device name, expected mode = number, observed mode = number

 

 

8016

ecpp device busy: device name, expected mode = number, observed mode = number

 

 

8017

Paper out: device name, expected mode = number, observed mode = number

 

 

8018

Printer offline: device name, expected mode = number, observed mode = number

 

 

8019

Printer error: device name, expected mode = number, observed mode = number

 

 

8020

Printer unplugged: device name, expected mode = number, observed mode = number

 

 

8021

Unrecognized printer error: device name, expected mode = number, observed mode = number