C H A P T E R  17

Graphics Buffer Test (graphicstest)

graphicstest verifies the functionality of frame buffers. Test accuracy is checked using direct image comparison against compressed images. Failed pixel locations are printed as error messages.

 

caution icon

Caution - Do not run any other application or screen saver program that uses the framebuffer's accelerator port while running graphicstest. This combination causes SunVTS to return incorrect errors.



 

Test Requirements

Disable all screen savers before testing any graphics device. To disable the Solaris screen saver, type the following at a UNIX prompt:



# xset s off

 

To turn Display Power Management off, type the following at a UNIX prompt:



# xset -dpms

 

The display resolution must be 1024x768 or higher (the standard resolution). To change resolution, go to a UNIX prompt and type:



# fbconfig -res 1280x1024x76

 

For full instructions on testing frame buffers, see Testing Frame Buffers.

Test Preparation

Perform the steps in this section prior to performing graphicstest to ensure the test runs as smoothly as possible.

If you are running graphicstest in a window system (such as CDE):

1. Turn Power Management off, if it is enabled. See Test Requirements.

2. Verify that no other program is running that might modify the screen during the test.

3. Verify you have permission to lock the X server. graphicstest is designed to lock the X server during testing to prevent screen changes.

4. Verify that the CDE login window is not displayed during testing.

5. Verify that the window system is running on one frame buffer only.

If you are not running graphicstest in a window system:

1. Turn Power Management off, if it is enabled. See Test Requirements.

2. Verify that no other program is running that might modify the screen during the test.

3. Verify that the frame buffer being tested is not the console device. Console messages may modify the screen.

graphicstest Options

To reach the dialog box below, right-click on the test name in the System Map and select Test Parameter Options. Because graphics test can test multiple types of frame buffers, the test name that is displayed will correspond to the particular framebuffer being tested. If you do not see this test in the System Map, you might need to expand the collapsed groups, or your system may not include the device appropriate to this test. Refer to the SunVTS User's Guide.

 

By default, all graphicstest options are enabled.

 FIGURE 17-1 graphicstest jfb0 Test Parameter Options Dialog Box

 


TABLE 17-1 dcatest Options

Option

Description

Open test

The open test verifies that the graphics device can be correctly opened. First the device is opened with an open system call. Next the register and framebuffer regions are mapped into the virtual address space of the test process. Next a subset of the read/write resisters are written to and read back from to verify that the register region was correctly mapped. Next selected areas of the framebuffer are written to and read back from to see if the the framebuffer was correctly mapped.

This test takes little time and no progress is displayed.

Memory test

The memory tests verifies that all the memory on the graphics card is working. The test opens the device, allocates all the device memory, and then writes to it using DMA or programmed I/O. The test then reads back the values from memory and checks to see if the correct values were read back.

DMA test

The DMA test verifies that the DMA engine on the device is functioning. The test writes data to an area of the frame buffer using DMA, then reads back the same area using programmed I/O and checks if the values are correct. The second part of the test writes data into the framebuffer and reads it back using the DMA engine and checks to see if the correct values were read back.

Chip Test

The chip test exercises the graphics chip on the board to see if it is functioning correctly. The chip test exercises the main data paths through the graphics chip. Commands are sent to the graphics board to initiate a graphics program. Once the program has run the results are read from the frame buffer to verify if they are correct.


  

 

 FIGURE 17-2 graphicstest kfb0 Test Parameter Options Dialog Box

 


TABLE 17-2 graphicstest Options

Options

Description

Open test

The open test verifies that the graphics device can be correctly opened. First the device is opened with an open system call. Next the register and framebuffer regions are mapped into the virtual address space of the test process. Next a subset of the read/write resisters are written to and read back from to verify that the register region was correctly mapped. Next selected areas of the framebuffer are written to and read back from to see if the the framebuffer was correctly mapped.

This test takes little time and no progress is displayed.

Memory test

The memory tests verifies that all the memory on the graphics card is working. The test opens the device, allocates all the device memory, and then writes to it using DMA or programmed I/O. The test then reads back the values from memory and checks to see if the correct values were read back.

DMA test

The DMA test verifies that the DMA engine on the device is functioning. The test writes data to an area of the frame buffer using DMA, then reads back the same area using programmed I/O and checks if the values are correct. The second part of the test writes data into the framebuffer and reads it back using the DMA engine and checks to see if the correct values were read back.

Chip Test

The chip test exercises the graphics chip on the board to see if it is functioning correctly. The chip test exercises the main data paths through the graphics chip. Commands are sent to the graphics board to initiate a graphics program. Once the program has run the results are read from the frame buffer to verify if they are correct.


 

graphicstest Test Modes

Due to the nature of graphic tests, reading data from, or writing data to the frame buffer during graphic tests will disturb user operation. For this reason, graphicstest is only available in offline Functional test mode.


TABLE 17-3 graphicstest Supported Test Modes

Test Mode

Description

Functional

Performs the entire set of tests offline.


 

graphicstest Command-Line Syntax

/opt/SUNWvts/bin/sparcv9/graphicstest standard_arguments -o [[dev=device_name] [open=Enable/Disable] [dma=Enable/Disable] [mem=Enable/Disable] [chip=Enable/Disable] [B=n] [F=n] [S=value]]


TABLE 17-4 graphicstest 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. There is no default.

open=Enable/Disable

Enables or disables the open test. Default is enable.

dma=Enable/Disable

Enables or disables the dma test. Default is enable.

mem=Enable/Disable

Enables or disables the memory test. Default is enable.

chip=Enable/Disable

Enables or disables the chip test. Default is enable.

B=n

Defines times to repeat each test loop Default is one.

F=n

Defines the number of times to repeat each subtest. Default is one.

S=value

Sets a bit mask to select which subtests will be used.

  • Bit 1, test open
  • Bit 2, test dma
  • Bit 3, test mem
  • Bit 4, test chip

For example -o S=3 would run the open and dma tests only. The default is to run all tests