Difference between revisions of "ATI Mobility Radeon X1400"

From ThinkWiki
Jump to: navigation, search
(Proprietary ATI driver)
m (Features: Corrected typo in PCI ID)
Line 8: Line 8:
=== Features ===
=== Features ===
* Chipset: ATI M54
* Chipset: ATI M54
* PCI ID: 1002:1745
* PCI ID: 1002:7145
* PCI Express x16
* PCI Express x16
* 128MB GDDR1 video memory
* 128MB GDDR1 video memory

Revision as of 17:43, 7 December 2006

ATI Mobility Radeon X1400

This is a ATI video adapter


  • Chipset: ATI M54
  • PCI ID: 1002:7145
  • PCI Express x16
  • 128MB GDDR1 video memory

Linux X.Org driver

Not Supported

ThinkPad LCD

Display on the internal LCD works as long as you set the monitor settings correct.

External VGA port


SVideo port


DVI port


Proprietary ATI driver

Proprietary fglrx driver version 8.24.8 adds support for the x1400 chipset (according to ATI changelog). It works, including dualhead, 3d and video (XV) acceleration, when using the fglrx kernel module. (Without it, you get screen corruption including underlined mouse pointers.)

Sample "Device" section for xorg.conf:

Section "Device"
       Identifier  "ATI Graphics Adapter 0"
       Driver      "fglrx"
       Option      "ForceMonitors" "lvds,crt1"
       Option      "Centermode" "off"
       Option      "VideoOverlay" "on"
       Option      "OpenGLOverlay" "off"
       Option      "OverlayOnCRTC2" "0"
       Option      "PseudoColorVisuals" "off"
       Option      "HSync2" "31-64"
       Option      "VRefresh2" "56-75"
       Option      "UseFastTLS" "off"
       Option      "Mode2" "1280x1024,1024x768,800x600,640x480"
       BusID       "PCI:1:0:0"

The kernel module doesn't work out of the box with the 2.6.16 kernel, you get undefined symbols such as module_get_request when inserting the module. The following patch to firegl_public.c fixes it (from http://www.stanchina.net/~flavio/debian/fglrx-archive/msg01158.html ):

--- firegl_public.c-orig        2006-02-23 14:54:16.386740016 -0600
+++ firegl_public.c     2006-02-23 14:56:38.054203288 -0600
@@ -361,13 +361,15 @@
 } firegl_drm_stub_info_t;
 static firegl_drm_stub_info_t firegl_stub_info;

-#if LINUX_VERSION_CODE < 0x020400
+#if LINUX_VERSION_CODE > 0x02060F
 struct firegl_drm_stub_info_t *firegl_stub_pointer = NULL;
 #define inter_module_put(x)
 #define inter_module_unregister(x)
 #define inter_module_get_request(x,y)   firegl_stub_pointer
 #define inter_module_register(x,y,z)    do { firegl_stub_pointer = z; } while (0)
 /* This is a kludge for backward compatibility that is only useful in DRM(stub_open) */
+#if LINUX_VERSION_CODE < 0x020400
 #define fops_put(fops)      MOD_DEC_USE_COUNT
 #define fops_get(fops)      (fops); MOD_INC_USE_COUNT
 #endif // LINUX_VERSION_CODE < 0x020400

XVideo support using the VideoOverlay option may not work with recent drivers. With version 8.29.6 of the fglrx driver, you can instead use

       Option          "TexturedVideo" "on"

Use the xvinfo utility to verify if XVideo support is available.

Linux kernel Framebuffer driver

Works with the VESA driver at 1280x1024 (you have to append vga=794 to the kernel boot parameters)

ThinkPads this chip may be found in