[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Radeon 9000



On Sun, Apr 20, 2003 at 09:28:20PM +0200, Christian Schoenebeck wrote:
> On Sun, 20 Apr 2003 21:30:05 +1000
> Daniel Stone <dstone@kde.org> wrote:
> 
> > On Sun, Apr 20, 2003 at 12:37:37PM +0200, Christian Schoenebeck wrote:
> > > Is it yet possible with current XFree86 from Sid to use a Radeon
> > > 9000 with 3D support? Do I need kernel modules, 3rd party drivers or
> > > something?
> > 
> > 2D will work, but for 3D support, you'll have to wait for
> > 4.3.0-0pre1v1, which Branden and I are currently working on. Watch
> > http://people.debian.org/~branden/xsf/xsf.html for further news.
> 
> Oh, good to hear that!
> 
> And for the meantime, how can I achieve at least 2D? I tried to kick the
> "GLcore" and "glx" module from XF86Config-4, but I still get only an
> '(EE) No devices detected.' error. What may I have missed? Or do I also
> have to grep for the experimental packages even for 2D?

Well, the most probable problem is that the Radeon 9000 was released
after the 4.2.1 release, so 4.2.1 doesn't know about it. I don't know if
the debian packages were patched so that newer cards get recognized or
something such, but if you really don't want to install Daniel's 4.3.0
packages, or the upcoming 4.3.0 packages from branden, you could do the
following :

  o get yourself the 4.2.1 source tree and unpack it.

  o check what the pci id of your radeon 9000 is (using lspci).

  o go to xc/programs/Xserver/hw/xfree86/drivers/ati

  o get also the xc/programs/Xserver/hw/xfree86/drivers/ati directory
    from a 4.3.0 source tree.

  o edit the radeon_probe.c file, and add the lines corresponding to
    the radeon 9000, these are the ones like :

    { PCI_CHIP_RV250_Id, "ATI Radeon 9000 Id (AGP)" },
    { PCI_CHIP_RV250_Ie, "ATI Radeon 9000 Ie (AGP)" },     
    { PCI_CHIP_RV250_If, "ATI Radeon 9000 If (AGP)" },     
    { PCI_CHIP_RV250_Ig, "ATI Radeon 9000 Ig (AGP)" },

and 

    { PCI_CHIP_RV250_Id, PCI_CHIP_RV250_Id, RES_SHARED_VGA },
    { PCI_CHIP_RV250_Ie, PCI_CHIP_RV250_Ie, RES_SHARED_VGA },
    { PCI_CHIP_RV250_If, PCI_CHIP_RV250_If, RES_SHARED_VGA },
    { PCI_CHIP_RV250_Ig, PCI_CHIP_RV250_Ig, RES_SHARED_VGA },

  o edit radeon_drivers.c, and look and add the places where
    PCI_CHIP_RV250_Id is used in the 4.3.0 driver and copy it to the
    4.2.1 driver. A quick look shows me that this is only used in two
    places in static Bool RADEONPreInitConfig(ScrnInfoPtr pScrn). The
    first defining info->ChipFamily = CHIP_FAMILY_RV250; which would
    need you to define CHIP_FAMILY_RV250 in the corresponding .h file.
    For the second occurence, you can just add the PCI_CHIP_RV250_Id
    with the list of other files.

  o once that is done, go to the toplevel xc directory of the 4.2.1
    tree, and do a make World.

  o then go to the xc/programs/Xserver/hw/xfree86/drivers/ati directory
    of the 4.2.1 tree again, become root, and do a make install. this
    will copy the module on top of the existing ati module, and you will
    have a driver which will recognize your card.

This is a bit involved though, so i would not be doing this personnally
but just using the 4.3.0 drivers.

Then you could always use the "pretend it is a radeon 8500" trick, which
involves using the chipset option in your configuration file, and
setting it to the radeon 8500 pci id, not sure it works though.

Friendly,

Sven Luther



Reply to: