CGSIX(4) Device Drivers Manual (sparc) CGSIX(4)

cgsix
Sun accelerated 8-bit color frame buffer

cgsix* at sbus? slot ? offset ? (sun4c/sun4m)
cgsix0 at obio0 addr 0xfb000000 level 4 (sun4/300)
cgsix0 at obio0 addr 0x0b000000 level 4 (sun4/100)

The cgsix is a memory based color frame buffer. It supports the minimal ioctl's needed to run X(7).
There are several versions of the cgsix board. The Sun part numbers and board types are:
501-1374, 501-1532
P4 GX
501-1505
P4 GX with 3/80 backpanel
501-1481, 501-1645
Sbus double-width GX
501-1672, 501-1996
Sbus GX
501-1717, 501-2018, 501-2039
Sbus GX+
501-2325, 501-2922
Sbus TGX
501-2253, 501-2955
Sbus TGX+
There are also on-board ‘GX’ cards in the ‘SPARCstation IPX’ and ‘SPARCstation LX’ machines.
The ‘GX’ and ‘TGX’ cards have 1Mb of on-board memory and support a maximum graphics resolution of 1152x900. The ‘GX+’ cards have 4Mb of on-board memory and support a maximum resolution of 1280x1024. The ‘TGX+’ cards have 4Mb of on-board memory and support a maximum resolution of 1600x1280. The ‘TGX’ (Turbo GX) cards are faster than the ‘GX’ cards.
The number of supported resolutions varies by card type. All cards support a resolution of 1152x900 at 66Hz. All but the P4 and double-width cards support a resolution of 1152x900 at 76Hz. The cards default to a resolution dependent on the attached monitor (usually 1152x900).
It is only possible to change the resolution of a cgsix card from the PROM before the operating system is loaded. For the primary card, this can be done using the ‘output-device’ PROM field. For example, for a ‘TGX+’ card, the following PROM command will set the resolution to 1280x1024 at 76Hz:
setenv output-device screen:r1280x1024x76
For secondary cards, a different method must be used to set the resolution. For a machine with OpenBoot 2.x or 3.x, and assuming a ‘TGX’ card at Sbus slot 1, the following PROM commands will set the resolution to 1024x768 at 60Hz:
nvedit 
probe-all 
" /iommu/sbus/cgsix@1" select-dev 
r1024x768x60 
" /iommu/sbus/cgsix@1" " set-resolution" execute-device-method 
device-end 
install-console 
banner 
^C 
nvstore 
setenv use-nvramrc? true 
reset
For Sun4c machines, the device-path above would be:
" /sbus/cgsix@1"
For Sun-4 and Sun-3 systems, it is only possible to change PROM fields by altering byte values. For these systems, it is probably easier to use the eeprom(8) command to set the scrsize field to the desired resolution.

cgsix0 at obio0 addr 0xfb000000 level 4: cgsix/p4, 1152 x 900, rev 1 cgsix0 at sbus0 slot 0 offset 0x0 level 9: SUNW,501-2325, 1152 x 900, rev 11 cgsix0 at sbus0 slot 0 offset 0x0 level 9: SUNW,501-2253, 1280 x 1024, rev 11

sparc/bwtwo(4), sparc/cgeight(4), sparc/cgfour(4), sparc/cgfourteen(4), sparc/cgthree(4), sparc/cgtwo(4), sparc/tcx(4), eeprom(8)

The double-width ‘GX’ and the ‘GX+’ cards are not compatible with UltraSPARC machines.
On Sun-4 systems using a P4 GX card as console, the console field in the PROM must be set to p4opt, otherwise the card will not be recognised as the console output device.
Several firmware revisions on cgsix boards have a terminal emulation bug that shows up when using the screen control sequences for inserting blank lines near the bottom end of the screen (i.e., the control sequences produced by the termcap ‘al’ and ‘AL’ capabilities found in the terminfo(5) database). The most likely occasion for triggering this bug is to use a full-screen editor such as vi(1) on the workstation's console.
To work around this you can set your TERM environment variable to the ‘sun-cgsix’ terminal definition which is the same as the ‘sun’ entry, except that the ‘al’ and ‘AL’ capabilities have been removed (at the cost of making the scrolling of the screen slower).
February 17, 2017 NetBSD-current