trident

From Gentoo Wiki
Jump to: navigation, search

trident is the open source graphics drivers for Trident graphics cards.

Installation

Kernel

You need to activate the following kernel options:

KERNEL
Processor type and features  --->
    [*] MTRR (Memory Type Range Register) support
Device Drivers  --->
    Graphics support  --->

        If your card sits in an AGP slot, choose your AGP driver:
        (Note: ALI chipsets are typically bundled with Trident graphics cards in laptops)
        <*> /dev/agpgart (AGP Support)  --->
            <*> ALI chipset support

        <*> Support for frame buffer devices  --->
            [*] Enable firmware EDID
            [*] VESA VGA graphics support
            <*> Trident/CyberXXX/CyberBlade support

Firmware

Unknown IRQ microcode needed for Trident graphics support at this time, since the Kernel driver (tridentfb) should support most functions for Trident cards.

x11-drivers/xf86-video-trident is an old video card and old driver. It has no corresponding KMS (Kernel ModeSetting), at least in recent (3.12.21) kernels. Although in some distros (AFAIK Fedora 21) such drivers were removed, to my experience it works without KMS. At least with =x11-base/xorg-server-1.15.0.

Make sure firmware for your model (check available ones in /lib/firmware/trident) is included in kernel:

KERNEL Including trident firmware
Device Drivers  --->
	-*- Userspace firmware loading support
	[*] Include in-kernel firmware blobs in kernel binary
		(trident/<YOUR-MODEL>.bin)
		(/lib/firmware) Firmware blobs root directory

Below is a list of the firmware files needed for each family of cards:

No known firmware files are needed for any particular Trident card at this time.

Driver

Portage uses the USE_EXPAND variable called VIDEO_CARDS to enable support for various graphics cards in packages. Setting VIDEO_CARDS to appropriate value(s) will pull in the correct driver(s):

FILE /etc/portage/make.confSet VIDEO_CARDS to trident
VIDEO_CARDS="trident"

Substitute the name of the driver(s) to be used. Common choices include nouveau, nvidia, radeon, and intel. After setting or altering VIDEO_CARDS values remember to update the system using the following command so the changes take effect:

root #emerge --ask --changed-use --deep @world


Configuration

Permissions

If the acl USE flag is enabled globally and ConsoleKit is being used (default for desktop profiles) permissions to video cards will be handled automatically. It is possible to check the permissions using getfacl:

user $getfacl /dev/dri/card0 | grep larry
user:larry:rw-

A broader solution is to add the user(s) needing access the video card to the video group:

root #gpasswd -a larry video

Note that users will be able to run X without permission to the DRI subsystem, but acceleration will be disabled.

xorg.conf

The X server is designed to work out-of-the-box, with no need to manually edit X.Org's configuration files. It should detect and configure devices such as displays, keyboards, and mice.

However, the main configuration file of the X server is the xorg.conf.

You can force the X server to use desired driver with:

FILE /etc/X11/xorg.conf.d/trident.confExplicit trident driver section
Section "Device"
   Identifier  "trident"
   Driver      "trident"
EndSection

To my experience quoted config don't works. Last error message in Xorg.log is:

[   218.176] (II) Loading sub module "xaa"
[   218.176] (II) LoadModule: "xaa"
[   218.177] (WW) Warning, couldn't open module xaa
[   218.178] (II) UnloadModule: "xaa"
[   218.178] (II) Unloading xaa
[   218.178] (EE) TRIDENT: Failed to load module "xaa" (module does not exist, 0)

Adding to trident.conf the option:

FILE /etc/X11/xorg.conf.d/trident.conf
Option		"AccelMethod" "EXA"

makes xorg server operable.

Framebuffer (GRUB or LILO)

CODE
video=tridentfb:1024x768-16@60

Documentation

Full Documentation can be found under /usr/src/linux/Documentation/fb/tridentfb.txt.

Troubleshooting

External resources