8. Using framebuffer devices on SPARC platforms

8.1. Which graphic cards can work on the SPARC

This lists all the graphic cards available:

  • MG1 / MG2 - SBus or integrated on Sun3 - max 1600 x 1200 & mono (BWtwo)

  • CGthree - Similar to MG1 / MG2 but supports colour

  • GX - SBus - max. 1152 x 900 & 8 bit (CGsix)

  • TurboGX - SBus - max. 1152 x 900 & 8 bit (CGsix)

  • SX (SS10 / SS20 only) - max. 1280 x 1024 & 24 bit (CGfourteen)

  • ZX (TZX) - SBus - accelerated 24 bit 3D card (Leo)

  • TCX (Sparc 4 only) - max 1280 x 1024 & 8 bit

  • TCX (Sparc 5 only) - max 1152 x 900 & 24 bit

  • Creator - SBus - max 1280 x 1024 & 24 bit (FFB

  • Creator3D - SBus - max 1920 x 1200 & 24 bit (FFB

  • ATI Mach64 - PCI - accelerated 8 / 24 bit UltraSparc only

There is the option to use the PROM to output characters to the display or to a serial console.

Also, have a look at the Sparc Frame Buffer FAQ at http://c3-a.snvl1.sfba.home.com/Framebuffer.html

8.2. Configuring the framebuffer devices

During make config, you need to choose whether to compile promcon and / or fbcon. You can select both, but if you do this, you will need to set the kernel flags to select the device. fbcon always takes precedence if not set. If promcon is not selected in, on boot up, it defaults to dummycon. If promcon is selected, it will use this device. Once the buses are booted, and fbcon is compiled in, the kernel probes for the above framebuffers and will use fbcon. If there is no framebuffer devices, it will default to promcon

Here are the kernel options

  • video=sbus:options

    • where options is a comma separated list:

      • nomargins - sets margins to 0, 0

      • margins=12x24 - sets margins to 12, 24 (default is computed from resolution)

      • off - don't probe for any SBus / UPA framebuffers

      • font=SUN12x22 - use a specific font

So for example, booting with video=sbus:nomargins,font=SUN12x22 gives you a nice fast text console with a text resolution of 96x40, looks similar to a Solaris console but with colours and virtual terminals just like on the x86 platform.

If you want to use the SUN12x22 font, you need to enable it during make config (disable the fontwidth != 8 option). The accelerated framebuffers can support any font width between one to sixteen pixels, whilst dumb frame buffers only supports 4, 8, 12 and 16 pixel font widths.

It is recommended that you grab a recent consoletools packages.