Graphics driver for Fujitsu Coral chipsets


io-display [-vf]
           -d vid=[0x]vendor_id,did=[0x]device_id[,deviceindex=index]
           [-c config_file] [-p priority]

Runs on:



ARMLE, PowerPC, SHLE, x86


For the general io-display options that you can use with this driver, see io-display.

You can set configuration options that are specific to this driver by using the modeopts setting in display.conf:

The full path to the configuration file for the driver. For example, coral.conf is located in /usr/photon/config so that modeopts=/usr/photon/config/coral.conf.


The driver provides accelerated 2D support for the Fujitsu Coral graphics controller.

You can edit the configuration file to enable to run on your board. Follow the editing instructions in the sample file, /usr/photon/config/coral.conf, to specify the correct configuration for the required display mode. (For a more detailed explanation of the display settings, see the appropriate Fujitsu documentation.)

If you use a configuration file for this driver, you must use the modeopts setting in your display.conf to specify its location.

Note: Graphics drivers run at a higher priority than applications, but they shouldn't run at a higher priority than the audio, or else breaks in the audio occur. You can use the on command to adjust the priorities of the audio and graphics drivers.

Supported chipsets

Acceleration features

Feature Provision
Solid fills Yes
Bresenham lines Yes
Pattern fills No
Polygons Yes
Onscreen blitting Yes
Offscreen blitting Yes
Chroma-keyed blitting Yes
Alpha blending Yes
Raster OPs Full
Bitmaps Yes

Video Overlay/Scaler support

Feature Provision
YUV formats Yes
RGB formats Yes
Up scaling No

Other features

Feature Provision
Hardware Cursor Yes
TV Out No
Video capture Yes
DPMS (power saving) Yes
Layers supported 6

Resolution and refresh support

Display size (pixels): Refresh rate(Hz): Color depth (bits per pixel):
640x480 60 8, 15
800x600 60 8, 15a
1024x768 60 8, 15a

a Requires a driver configuration file.


The coral.conf file and dual-head

The coral.conf file provides additional control over the driver, including dual-head support (dual-head display is supported by Coral-PA-based devices only). This file is also required for providing additional configuration for panel displays. The file (by default located in /usr/photon/config/) contains a description of each option, and several pre-configured command-lines for various Coral device and display combinations.

For dual-head configurations, both displays will run at the same resolution/refresh rate - independent control is not available.

  • The Coral-PA reference card does not support dual-display on its own, a special adapter card is necessary.
  • The maximum supported resolution for dual-display is 800x480 at 66 MHz.

In coral.conf there are three parameters of note:

In the Coral-PA Documentation (section 7.10 Dual Display), you'll see that the SC0-en field of the Multi-Display Control register defines which layers and cursors are included in screen 0, and the SC1-en field defines which layers and cursors are included in screen 1. A layer or cursor can be included in one or both screens.

SC0en and SC1en are 8-bit values. The dlayers parameter is 16-bit with SC1 being the top 8-bits. A 1 indicates the layer is included in the display.

The bit layout for the dlayers parameter is as follows:

bit description
0 L0 is included in screen 0
1 L1 is included in screen 0
2 L2 is included in screen 0
3 L3 is included in screen 0
4 L4 is included in screen 0
5 L5 is included in screen 0
6 Cursor0 is included in screen 0
7 Cursor1 is included in screen 0
8 L0 is included in screen 1
9 L1 is included in screen 1
10 L2 is included in screen 1
11 L3 is included in screen 1
12 L4 is included in screen 1
13 L5 is included in screen 1
14 Cursor 0 is included in screen 1
15 Cursor 1 is included in screen 1

To include all layers and cursors on both displays, set dlayers=0xFFFF (This is the default). The driver default for dmode is 0 for single display.

There are two modes to output two screens. In parallel mode, one screen is output at digital RGB while another is output at analog RGB. In multiplex mode, two screens are multiplexed and output at digital RGB. Which version is used will depend on hardware and requirements.

For example, to run in parallel mode with Layers 0, 1 and Cursor 0 on screen 0 and the rest of the layers on screen 1 you would set:


The application code needs to then connect and draw to the proper layers.


This driver needs the following at run time:
Software rasterization library.

See also: