C H A P T E R  2

Sun XVR-2500 and XVR-300 Graphics Accelerator Test (graphicstest)

This chapter describes how to use graphicsttest for both the XVR-300 and XVR-2500. The following topics are included:


graphicstest Description

graphicstest verifies the functionality of XVR-2500 and XVR-300 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 frame buffer's accelerator port while running graphicstest. This combination causes SunVTS to return incorrect errors.




graphicstest Test Requirements for XVR-2500

To run graphicstest as super user, you must use the console device or start the desktop with the -ac option.



Note - The CDE desktop is an X client that prevents the X server from restarting after each graphicstest finishes testing the kfb device.



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 1280x1024. To change resolution, go to a UNIX prompt and type:


# fbconfig -res 1280x1024x76


graphicstest Test Preparation for XVR-2500

You must run graphicstest through the SunVTS user interface. The desktop must be running on the XVR-2500, and the desktop must be setup to run in 24-bit mode (the default depth for XVR-2500). Perform on of the following procedures prior to performing graphicstest to ensure that the test runs as smoothly as possible.


procedure icon  To Run graphicstest in a Desktop GUI

1. Turn Power Management off, if it is enabled. See graphicstest Test Requirements for XVR-2500.

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

3. Verify that 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 JDS login window is not displayed during testing.

5. For frame buffers other than kfb, verify that the desktop is running on one frame buffer only.

If a kfb device is in the platform, the desktop must not be run on any other non-kfb graphics devices in the system when performing SunVTS.



Note - To perform graphicstest on kfb frame buffers, the desktop must be running on each kfb device in the system.




graphicstest Options for XVR-2500

To reach the following dialog box, 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 frame buffer being tested. 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.

By default, all graphicstest options are enabled.



FIGURE 2-1 graphicstest kfb0 Test Parameter Options Dialog Box

Screenshot of the graphicstest Test Parameter Options dialog box


 


TABLE 2-1 graphicstest kfb0 Options

Option

Description

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 frame buffer 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 frame buffer are written to and read back from to see if the the frame buffer was correctly mapped.

This test takes very little time and no progress is displayed.

Memory test

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 memory 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

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 frame buffer and reads it back using the DMA engine, checking to see if the correct values were read back.

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 for XVR-2500

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


TABLE 2-2 graphicstest Supported Test Modes

Test Mode

Description

Functional

Performs the entire set of tests offline.



graphicstest Command-Line Syntax for XVR-2500

/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 2-3 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. The default value is Enable.

dma=Enable/Disable

Enables or disables the dma test. The default value is Enable.

mem=Enable/Disable

Enables or disables the memory test. The default value is Enable.

chip=Enable/Disable

Enables or disables the chip test. The default is Enable.

B=n

Defines the number of times to repeat each test loop. The default value is 1.

F=n

Defines the number of times to repeat each subtest. The 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.



graphicstest Test Requirements for XVR-300

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

For full instructions on testing frame buffers, see Frame Buffer Tests.


graphicstest Test Preparation for XVR-300

Perform all of the following procedures prior to performing graphicstest to ensure that the test runs as smoothly as possible.


procedure icon  To Run graphicstest for XVR-300 With the Window System

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

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

3. Verify that 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 JDS login window is not displayed during testing.

5. If you are running the window system and testing multiple framebuffers, make sure you set Group Concurrency of Graphics to 1.


procedure icon  To Run graphicstest for XVR-300 From the Command Line

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

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

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


graphicstest Options for XVR-300


To reach the following dialog box, 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 frame buffer being tested. 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. By default, all graphicstest options are enabled.
FIGURE 2-2 graphicstest nfb0 Test Parameter Options Dialog Box


graphicstest nfb0 Options for XVR-300

 


TABLE 2-4

Option

Description

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 frame buffer regions are mapped into the virtual address space of the test process. Next a subset of the read/write registers are read to see if the the frame buffer was correctly mapped. This test takes very little time and no progress is displayed.

Memory test

Verifies that all the memory on the graphics card is working. The test opens the device, allocates the device memory, and then writes to memory using programmed I/O. The video memory is tested by testing 512 bit blocks at a time (8x8 pixel block). Each block is tested in two passes. In the first pass, 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 and one.

DMA test

DMA is not implemented on this device and hence is not being tested.

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 by sending commands to the graphics board to generate multiple patterns using the line and rectangle primitives.



graphicstest Test Modes for XVR-300

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

TABLE 2-4 lists the graphicstest Supported Test Modes for XVR-300.


TABLE 2-5 Supported Test Modes for XVR-300

Test Mode

Description

Functional

Performs the entire set of tests offline.



graphicstest Command-Line Syntax for XVR-300

/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 2-6 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. The default value is Enable.

dma=Enable/Disable

Enables or disables the dma test. The default value is Enable.

mem=Enable/Disable

Enables or disables the memory test. The default value is Enable.

chip=Enable/Disable

Enables or disables the chip test. The default is Enable.

B=n

Defines the number of times to repeat each test loop. The default value is 1.

F=n

Defines the number of times to repeat each subtest. The 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

The default is to run all tests.