C H A P T E R  44

Suntrademark XVR-100 Graphics Accelerator Test (pfbtest)


pfbtest Description, Subtests, and Requirements

pfbtest tests the PCI-based Suntrademark XVR-100 graphics accelerator by performing the following subtests:



caution icon

Caution - Do notrun any other application or screen saver program that uses the Sun XVR-100graphics accelerator port while running pfbtest. This program causes SunVTS to return incorrect errors.





caution icon

Caution - If pfb0b is set to display, an error similar to the following occurs: Accelerator: signature err or in test Ramdac.
Display should always be set to pfb0a when running SunVTS.





Note - Disable all screen savers before testing any graphics device. Type
xset s off at a UNIX prompt to disable the Solaris screen saver. Type
xset -dpms (to turn off power management) or type xset s noblank (to turn off screen saver). Disable Power Management software if it is running.





Note - To start SunVTS with vtsui, but without vtsk, you must add the host name to xhost as: xhost + hostname.



For full instructions on testing frame buffers, refer to the Testing Frame Buffers section of the SunVTS 5.1 Test Reference Manual.


pfbtest Options

To reach the following dialog box, right-click on the test name in the System Map and select Test Parameter Options. If you do not see this test in the System Map, you might need to expand the collapsed groups, or your system might not include the device appropriate to this test. Refer to the SunVTS User's Guide for more details.

By default, all options are enabled except frame buffer locking.


FIGURE 44-1 pfbtest Test Parameter Options Dialog Box

Screenshot of the pfbtest Test Parameter Options dialog box


 


TABLE 44-1 pfbtest Options

pfbtest Options

Description

Video Memory test

Thoroughly tests the on-screen video memory (the memory part that is mapped on to the monitor) of the Sun XVR-100 graphics accelerator in 8-bit, 16-bit, 32-bit, 64-bit, and 64 byte (block) modes. Entire on-screen video memory is tested by testing 512 bit blocks at a time (8x8 pixel block). Each block is tested in two passes. Each pass consists of a data write and read. In the first pass, user specified data or random data is used, and in the second pass, one's complement of the data used in the first pass is used so that each on-screen video memory location (bit) is tested with a zero (electrical low state) and one (electrical high state).

RAMDAC test

Tests the RAMDAC in three phases. In the first phase the RAMDAC CLUT (Color LookUp Table) is tested using simple write/read patterns to determine if there are any bad bits in CLUT.

The data patterns used are:

  • Random data
  • Complement of the random data (used as first data pattern)
  • The data pattern 0101
  • The data pattern 10101

In the second phase, four different patterns are drawn on the screen. Each pattern stays on the screen for approximately 1/4 second. The four patterns are listed below. For each pattern, the signature is captured and compared with the signature obtained for the same pattern on a known good board. This test verifies that all the different data paths within the RAMDAC are functioning properly.

Patterns drawn on screen:

  • Red ramp with cursor at top-left corner of the screen
  • Blue ramp with cursor at top-right corner of the screen
  • Green ramp with cursor at bottom-left of the screen
  • Grey ramp with cursor at bottom-right of the screen

In the last (third) phase of the RAMDAC test the Vertical Retrace Interrupt is tested for approximately five seconds.

Accelerator Port test

Tests all of the following:

  • Data paths (sources: fixed color, host data, blit, fixed pattern)
  • Arithmetic and logic unit (ALU)
  • Primitives (destinations: line, rectangle)
  • Mono to color expansion logic

Primitives are drawn using a combination of different data paths (allowed), ALU functions, and color comparator functions. A checksum is generated for each data combination and is compared with the checksum generated for the same data combination on a known good board.

Frame Buffer Locking

This option is disabled if the Sun XVR-100 graphics accelerator is not the console device.

When the SunVTS GUI is brought up, Frame Buffer Locking is enabled by default if the Sun XVR-100 graphics accelerator is the console device. If the Sun XVR-100 graphics accelerator is not the console device, Frame Buffer Locking is disabled by default.



pfbtest Test Modes

Due to the nature of graphics tests, reading from or writing to the frame buffer during graphics tests will disturb user operation. This test is only available in the Functional test mode.


TABLE 44-2 pfbtest Supported Test Modes

Test Mode

Description

Functional

The pfbtest verifies the proper functioning of Sun XVR-100 graphics accelerator.



pfbtest Command-Line Syntax

/opt/SUNWvts/bin/pfbtest standard-arguments -o dev=device-name, S=subtest-number,F=#-of-subtest-loops,B=#-of-test-loops,L=disable,P=test-pattern


TABLE 44-3 pfbtest Command-Line Syntax

Argument

Description

dev=device-name

device-name is the relative path name of the device being tested with respect to /dev/fbs. The default is pfb0.

S=subtest-number

subtest-number is the test number of the subtest to be run. Select from the subtests below. You can run multiple subtests by adding the subtest numbers. For example, n=0x3 runs both test 1 and test 2; n=0x5 runs both test 1 and test 4.

  • n 0x1 VRAM
  • n 0x2 RAMDAC
  • n 0x4 Accelerator port test (Rendering Pipeline)

More than one test can be selected by ORing subtest numbers. For example: n = 0x5 indicates VRAM and Rendering Pipeline tests. A hex number must be preceded by 0x, decimal numbers are also acceptable.

F=subtest-loops

Specifies the number of times to repeat each subtest. The default is 1.

B=test-loops

Specifies the number of times to repeat a test loop before passing; the default is 1.

L=disable

Disables the frame buffer lock. Disables the lock when the Sun XVR-100 graphics accelerator is not the console or when the server is not running on the Sun XVR-100 graphics accelerator under test.

P=test-pattern

Specifies the test pattern number. The default is r, for random patterns. You may also choose 0 for 0x0000000, 3 for 0x3333333, 5 for 0x5555555, or 9 for 0x9999999.




Note - Errors returned by pfbtest are nonspecific. It is not possible to determine which component caused a failure. In all error conditions, the field replaceable unit (FRU) is the entire Sun XVR-100 graphics accelerator.