Page 1 of 7 123 ... LastLast
Results 1 to 10 of 69

Thread: openSUSE Graphic Card Practical Theory Guide for Users

  1. #1
    Join Date
    Mar 2008
    Location
    Europe
    Posts
    25,697
    Blog Entries
    29

    Default openSUSE Graphic Card Practical Theory Guide for Users

    The guide below has now been superceded with a new version here and an updated ATI specific post here. The thread below is kept open for comments. Comments / contributions / corrections are welcome.

    The purpose behind this "guide" is to provide some practical theory for new to average openSUSE users, explaining what graphic drivers are available for the more common ATI, nVidia and Intel Graphic hardware. ATI users should also check out post#11 in this thread.

    ATI Graphic Hardware:

    This 1st post is on ATI hardware. A subsequent post will cover nVidia and Intel.

    A brief explanation about drivers for ATI cards.

    ATI Graphic card practical theory

    There are various drivers available:
    • fbdev - this is the frame buffer driver and it is compatible with many different graphic cards (ati, nvidia, intel ... ) . It has the slowest performance, but sometimes it will work when all else fails. It comes packaged with openSUSE as part of the xorg-x11-driver-video rpm.
    • vesa - this is the vesa driver and it is compatible with many different graphic cards (ati, nvidia, intel ... ) . It is faster than the fbdev for performance, and it is pretty robust, but overall it still has slow performance. It comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • mach64 - ATI Mach64 - graphic driver specific for the old ATI Mach64 graphic hardware. It comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • r128 - ATI Rage 128 - graphic driver specific for the old ATI Rage 128 graphic hardware. It comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • ati - this is the free open source "ati" driver for very old ATI hardware. The "ati" driver supports Radeon, Rage 128, and Mach64 and earlier chipsets by loading those drivers . For that hardware it should have better performance than the VESA driver. It comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • radeon - this is the free open source ATI "radeon" driver for moderately aged ATI hardware. For that hardware it should have better performance than the VESA driver. It comes packaged with openSUSE as part of the xorg-x11-driver-video rpm. To see exactly what hardware the "radeon" driver supports one can type
      Code:
      man radeon
      More information on the radeon driver implemented in the xorg-x11-driver-video rpm can be found here in the X Org Radeon wiki for radeon
      .
    • radeonhd - this is the free open source ATI "radeonhd" driver for the latest ATI hardware. For that hardware it should have better performance than the VESA driver. It comes packaged with openSUSE in the file xorg-x11-driver-video-radeonhd rpm. To see exactly what hardware the "radeonhd" driver supports one can type
      Code:
      man radeonhd
      As of openSUSE-11.3 Milestone6 Novell/SuSE-GmbH have announced this driver superseded by the radeon driver, so it is possible the radeon driver may function better on RadeonHD hardware. More information on the radeonhd driver implemented in the xorg-x11-driver-video-radeonhd rpm can be found here in the X Org Radeonhd wiki for radeonhd
      .
    • fglrx - this is the proprietary free (as in free beer) ATI driver for the latest ATI hardware. For that hardware it should have better performance than all other graphic drivers, but it tends to be a fragile driver and many times a kernel or an xorg update will break it. In order to install it one must download it from the ATI web site (or from a special repository) and then do various hand tweaks to get it to work. It does NOT come with openSUSE. One can read about how to install this proprietary driver on the following link: ATI proprietary driver for openSUSE


    ATI dropping support for older cards

    Now ATI used to produce a proprietary "Catalyst" graphic driver for older ATI cards, but they no longer do that for the 2.6.31 kernel which comes in openSUSE-11.2 and comes in other Linux distributions. Hence for moderatorly aged ATI hardware, one can no longer get access to the very high performance proprietary ATI graphic driver. One can get a list of ATI hardware considered legacy (as of March-2010) here: ATI Catalyst Proprietary Display Driver - legacy hardware. Note the words:
    The Linux ATI Catalyst™ driver will only be supported in Linux distributions prior to February 2009 for the legacy products listed above. [ ... and ATI provide a list of graphic devices ... ]

    Any customers using a combination of a ATI Radeon™ HD 2000 Series, ATI Radeon™ HD 3000 Series, or ATI Radeon™ HD 4000 Series product with any of the legacy products listed above in a single PC system must use the ATI Catalyst 9.3 or earlier driver. All future ATI Catalyst™ releases made available past the ATI Catalyst™ 9.3 release will not include support for the legacy products listed above or any of the features associated with those legacy products.
    For more detail, see also post#18 below: ATI Legacy Driver Policy

    xorg.conf file in Linux

    In older openSUSE releases, it was necessary to have an /etc/xorg.conf file which defined the configuration needed for one's graphic card.

    As of openSUSE-11.2, the need to have an xorg.conf file was removed for many graphic cards. This was because "xorg" who code X window framework are moving away from requiring the xorg.conf file, but rather want to have the card configured automatically without that xorg.conf file. In such a case, the xorg software should automatically use the latest open source driver (either "radeon" or "radeonhd"). However the automatic recognition of graphic cards is still not reliable for all cards in openSUSE-11.2.

    In that case (where automatic graphic card recognition fails) one needs to create an xorg.conf file for the card to force a configuration, for if that xorg.conf file is available, then the xorg software will use it.

    Software to Create xorg.conf file

    There is software provided by ATI (comes with their driver) that can be used to configure the proprietary driver and create an /etc/X11/xorg.conf file. This package is called "aticonfig" . One should run that program from "run level 3" (more about "run level 3" later) with root permissions.

    There is also software provided by SuSE-GmbH in openSUSE that is used to generate the xorg.conf file for graphic drivers, which is called "sax2". One can run "sax2" with many options (but it must be run with root permissions).

    For example, to check what chip# one's graphic devices are, one can run:
    Code:
    sax2 -p
    pay attention to the chip, ... ie chip 0 (typically if only one graphic device) or there may be a chip-0 and a chip-1 (if one has more than one graphic device).

    Run Level 3

    Now typically, when reconfiguring a graphic card, it is best to do this NOT in X window, but rather in the full screen terminal run level 3. One boots to run level 3 by pressing "3" (no quotes) when the very first menu (the initial grub boot menu) appears. By pressing "3" one will see the "3" appear in the options line. Then boot normally. That brings one to a full screen text login. Login as a regular user. Then after logged in, type "su" (no quotes - enter root password) to switch users to the administrator/root.

    Creating the xorg.conf file

    If one wishes to force sax2 to create an xorg.conf file for the vesa driver, then one would type in run level 3 (NOT in X window):
    Code:
    sax2 -r -m 0=vesa
    or
    Code:
    sax2 -r -m 1=vesa
    where the 0 or 1 depends on what graphic chip one is trying to configure. The "-r" option tells sax2 to ignore any previous created xorg.conf file, and overwrite/replace it.

    Or, another example, if one wishes to force sax2 to create an xorg.conf file for the open source free radeonhd driver, then one would type in run level 3 (NOT in X window):
    Code:
    sax2 -r -m 0=radeonhd
    or
    Code:
    sax2 -r -m 1=radeonhd
    where the 0 or 1 depends on what graphic chip one is trying to configure. The "-r" option tells sax2 to ignore any previous created xorg.conf file, and overwrite/replace it.

    Instead of "vesa" or "radeonhd", dependent on ones hardware, one can try "fbdev", "ati", "mach64", "r128", "radeon" or "fglrx" (where fglrx requires extra rpms/packages installed).

    If one has the proprietary ATI driver installed (via the rpm) and one wished to use the ATI software (instead of sax2) to configure the proprietary nvidia driver and create the xorg.conf file, one would type something like (with root permissions):
    Code:
    aticonfig --initial
    ... there are also other input values one can use to tune the application of "aticonfig" for creation of the /etc/X11/xorg.conf file.

    Once aticonfig or sax2 is complete, one can restart from run level 3 by typing "shutdown -r now" (with root permissions) and then let the reboot continue to see if the graphic card configuration worked.

    Hopefully that gives some practical theory so that users can understand the recommendations that have been given in various posts by our forum members.
    Last edited by oldcpu; 21-Dec-2010 at 02:10. Reason: Post superceded. Highlighted link to replacement post.

  2. #2
    Join Date
    Mar 2008
    Location
    Europe
    Posts
    25,697
    Blog Entries
    29

    Default Re: openSUSE Graphic Card Practical Theory Guide for Users

    The guide below has now been superceded with a new version here and an updated nVidia specific post here. The thread below is kept open for comments. Comments / contributions / corrections are welcome.


    nVidia Graphic Hardware

    A brief explanation about drivers for nVidia cards

    nVidia Graphic card practical theory. Note that for nVidia graphic cards, you have some choices for graphic drivers:
    • fbdev - this is the frame buffer driver and it is compatible with many different graphic cards (ati, nvidia, intel ... ) . It has the slowest performance, but sometimes it will work when all else fails. It typically comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • vesa - this is the vesa driver and it is compatible with many different graphic cards (ati, nvidia, intel ... ) . It is faster than the fbdev for performance, and it is pretty robust, but overall it still has slow performance. It typically comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • nv - this is the free open source nVidia driver for all nVidia hardware. This driver should have much better performance than the VESA driver. It typically comes packaged with openSUSE as part of xorg-x11-driver-video rpm. Prior to openSUSE-11.3 it was the default graphic driver for nVidia graphic hardware on openSUSE. Recently (2010) nVidia announced reduced support for this driver, with it becoming more of a "legacy" driver. More detail on that announcement can be found here: Post 13 - nVidia reducing support for nv driver . To see exactly what hardware the "nv" driver supports, one can type:
      Code:
      man nv
    • nouveau - this is a new open source nVidia driver for nVidia hardware. Its pretty new, and cutting edge. It is the default graphic driver for nVidia hardware as of openSUSE-11.3. Note openSUSE-11.2 (and earlier) users may wish to read more about its success or failure before trying. It will come with the rpm: xorg-x11-driver-video-nouveau and for example in the case of openSUSE-11.2 can be found here:
      Code:
      http://download.opensuse.org/repositories/X11:/XOrg/openSUSE_11.2/
    • nvidia - this is the proprietary free (as in free beer) nVidia driver supplied by nVidia for the latest nVidia hardware. For nVidia hardware it should have better performance than all other drivers, but it tends to be a fragile driver and many times a kernel or an xorg update will break it. In order to install it one must download it from the nVidia web site (or from a special repository) and then do various hand tweaks to get it to work. It does NOT come with openSUSE. Here is a link with some information on how to install this proprietary driver: NVIDIA drivers - openSUSE


    xorg.conf file in Linux. In older openSUSE releases, it was necessary to have an /etc/X11/xorg.conf file which defined the configuration needed for one's graphic card to work with one's PC's hardware.

    As of openSUSE-11.2, the need to have an xorg.conf file was removed for many graphic cards. This was because "xorg" who code X window framework are moving away from requiring the xorg.conf file, but rather want to have the card configured automatically without that xorg.conf file. In such a case, the xorg software should automatically use the latest open source driver (i.e. "nv"). However the automatic recognition of graphic cards is still not reliable for all cards in openSUSE-11.2.

    In that case (where automatic graphic card recognition fails) one needs to create an xorg.conf file for the card to force a configuration, for if that xorg.conf file is available, then the xorg software will use it.

    Software to Create xorg.conf file. There is software provided by nVidia (comes with their proprietary driver) that can be used to configure the proprietary driver and create an /etc/X11/xorg.conf file. This package is called "nvidia-xconfig" . One should run that program from "run level 3" (more about "run level 3" later) with root permissions.

    There is also software provided by SuSE-GmbH in openSUSE that is used to generate the xorg.conf file for graphic drivers, which is called "sax2". One can run "sax2" with many options (but it must be run with root permissions).

    For example, to check what chip# one's graphic devices are, one can run with root permissions:
    Code:
    sax2 -p
    pay attention to the chip, ... ie chip 0 (typically if only one graphic device) or there may be a chip-0 and a chip-1 (if one has more than one graphic device).

    Run Level 3. Now typically, when reconfiguring a graphic card, it is best to do this NOT in X window, but rather in the full screen terminal run level 3. One boots to run level 3 by pressing "3" (no quotes) when the initial grub boot menu first appears. By pressing "3" one will see the "3" appear in the options line. Then boot normally. That brings one to a full screen text login. Login as a regular user.

    Creating the xorg.conf file After logging in to run level 3, type "su" (no quotes - enter root password) to switch users to the administrator/root. If one wishes to force sax2 to create an xorg.conf file for the open source graphic driver (called "nv"), then one would type in run level 3 (NOT in X window):

    Code:
    sax2 -r -m 0=nv
    or
    Code:
    sax2 -r -m 1=nv
    where the 0 or 1 depends on what graphic chip one is trying to configure. The "-r" option tells sax2 to ignore any previous created xorg.conf file, and overwrite/replace it.

    If one has the proprietary driver installed (via the proprietary rpm) one could tell sax2 to use that driver when creating the xorg.conf by typing:
    Code:
    sax2 -r -m 0=nvidia
    or change the "0" to a "1" if one's graphic card is chip-1.

    If one has the proprietary nVidia driver installed (via the rpm) and one wished to use the nvidia software (instead of sax2) to configure the proprietary nvidia driver and create the xorg.conf file, one would type:
    Code:
    nvidia-xconfig
    Once sax2 or nvidia-xconfig is complete, one can restart from run level 3 with root permissions by typing "shutdown -r now" and then let the reboot continue to see if the graphic card configuration worked.

    Now as noted, one can install the nVidia driver via the repository/rpm method or one can download the proprietary driver as a binary .run file and install the driver by running that binary. This is called "the hardway" and it is NOT hard (that is the way I always do this). There is more guidance on this "hardway" here: NVIDIA/The hard way - openSUSE Note installing the hardway means one is building the driver on one's PC, in which case one needs gcc (ie the base developement pattern) and also kernel-source, kernel-syms and linux-headers installed.

    Hopefully that gives some practical theory so that users can understand the recommendations that have been given in various posts by our forum members.
    Last edited by oldcpu; 21-Dec-2010 at 02:11. Reason: Post superceded. Highlighted link to replacement post.

  3. #3
    Join Date
    Mar 2008
    Location
    Europe
    Posts
    25,697
    Blog Entries
    29

    Default Re: openSUSE Graphic Card Practical Theory Guide for Users

    The guide below has now been superceded with a new version here and an updated Intel specific post here. The thread below is kept open for comments. Comments / contributions / corrections are welcome.


    Intel Graphic Hardware

    A brief explanation about drivers for Intel cards

    Intel Graphic card practical theory. Note that for Intel graphic cards, you have some choices for graphic drivers:
    • fbdev - this is the frame buffer driver and it is compatible with many different graphic cards (ati, nvidia, intel ... ) . It has the slowest performance, but sometimes it will work when all else fails. It typically comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • vesa - this is the vesa driver and it is compatible with many different graphic cards (ati, nvidia, intel ... ) . It is faster than the fbdev for performance, and it is pretty robust, but overall it still has slow performance. It typically comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • i740 - this is a free open source driver for the Intel740 hardware. It comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • i810 - this is a free open source driver for some Intel hardware. I believe this driver has been depreciated and it is no longer maintained, although it is provided in openSUSE-11.1 and earlier. This driver should have much better performance than the VESA driver. It typically comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • intel - this is an free open source driver for all Intel hardware. The "intel" driver supports the i810, i810-DC100, i810e, i815, i830M, 845G, 852GM, 855GM, 865G, 915G, 915GM, 945G, 945GM, 965G, 965Q, 946GZ, 965GM, 945GME, G33, Q33, Q35, G35, GM45, G45, Q45, G43 and G41 chipsets. This driver should have much better performance than the VESA driver. It typically comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • iegd - this is a proprietary Intel Linux driver for selected Intel graphic hardware. The iegd driver supports the Mobile Intel(R) GM45/GL40/GS45, GLE960, GME965, 945GME, 945GSE, 915GME, 910GMLE chpsets and also the Intel(R) Atom(TM), Q45/G45/G41, Q35, Q964, Q945G, 915GV chipsets. More detail to follow in a future update to this post ... For now some information is recorded in in post#10 and post#11 of this same guide/thread . One needs to download and install separately this proprietary Intel graphic driver.


    xorg.conf file in Linux. In older openSUSE releases, it was necessary to have an /etc/X11/xorg.conf file which defined the configuration needed for one's graphic card to work with one's PC's hardware.

    As of openSUSE-11.2, the need to have an xorg.conf file was removed for many graphic cards. This was because "xorg" who code X window framework are moving away from requiring the xorg.conf file, but rather want to have the card configured automatically without that xorg.conf file. In such a case, the xorg software should automatically use the latest open source driver (i.e. "intel"). However the automatic recognition of graphic cards is still not reliable for all cards in openSUSE-11.2.

    In that case (where automatic graphic card recognition fails) one needs to create an xorg.conf file for the card to force a configuration, for if that xorg.conf file is available, then the xorg software will use it.

    Software to Create xorg.conf file. There is software provided by SuSE-GmbH in openSUSE that is used to generate the xorg.conf file for graphic drivers, which is called "sax2". One can run "sax2" with many options (but it must be run with root permissions).

    For example, to check what chip# one's graphic devices are, one can run with root permissions:
    Code:
    sax2 -p
    pay attention to the chip, ... ie chip 0 (typically if only one graphic device) or there may be a chip-0 and a chip-1 (if one has more than one graphic device).

    Run Level 3. Now typically, when reconfiguring a graphic card, it is best to do this NOT in X window, but rather in the full screen terminal run level 3. One boots to run level 3 by pressing "3" (no quotes) when the initial grub boot menu first appears. By pressing "3" one will see the "3" appear in the options line. Then boot normally. That brings one to a full screen text login. Login as a regular user.

    Creating the xorg.conf file After logging in to run level 3, type "su" (no quotes - enter root password) to switch users to the administrator/root. If one wishes to force sax2 to create an xorg.conf file for the intel open source graphic driver (called "intel"), then one would type in run level 3 (NOT in X window):

    Code:
    sax2 -r -m 0=intel
    or
    Code:
    sax2 -r -m 1=intel
    where the 0 or 1 depends on what graphic chip one is trying to configure. The "-r" option tells sax2 to ignore any previous created xorg.conf file, and overwrite/replace it.

    or for the slower vesa driver
    Code:
    sax2 -r -m 0=vesa
    or
    Code:
    sax2 -r -m 1=vesa
    where the 0 or 1 depends on what graphic chip one is trying to configure. The "-r" option tells sax2 to ignore any previous created xorg.conf file, and overwrite/replace it.


    Once sax2 is complete, one can restart from run level 3 with root permissions by typing "shutdown -r now" and then let the reboot continue to see if the graphic card configuration worked.

    Hopefully that gives some practical theory so that users can understand the recommendations that have been given in various posts by our forum members.
    Last edited by oldcpu; 21-Dec-2010 at 02:11. Reason: Post superceded. Highlighted link to replacement post.

  4. #4
    Join Date
    Jun 2008
    Location
    The English Lake District. UK - GMT/BST
    Posts
    36,978
    Blog Entries
    16

    Default Re: openSUSE Graphic Card Practical Theory Guide for Users

    Nice work @oldcpu
    I'm bookmarking this, it will be very useful. Well done.
    My openSUSE 13.1 KDE Box
    My Articles
    Was I any help? If yes: Click the star below

  5. #5
    Join Date
    Mar 2008
    Location
    Europe
    Posts
    25,697
    Blog Entries
    29

    Default Re: openSUSE Graphic Card Practical Theory Guide for Users

    Quote Originally Posted by caf4926 View Post
    Nice work @oldcpu
    I'm bookmarking this, it will be very useful. Well done.
    Thanks caf4926. I am thinking I should have added that one can get a flavour as to what drivers are available by typing:
    Code:
    rpm -ql xorg-x11-driver-video
    and in the case of a 64-bit openSUSE the various
    Code:
    /usr/lib64/xorg/modules/drivers/something_drv.la    
    /usr/lib64/xorg/modules/drivers/something_drv.so
    /usr/share/man/man4/something.4.gz
    provides an indication of the drivers.

    There is more on that method here: http://en.opensuse.org/HCL/All_Video_Cards
    Last edited by oldcpu; 17-Jan-2010 at 02:28. Reason: added http://en.opensuse.org/HCL/All_Video_Cards link

  6. #6
    Join Date
    Mar 2008
    Location
    Europe
    Posts
    25,697
    Blog Entries
    29

    Default Re: openSUSE Graphic Card Practical Theory Guide for Users

    Quote Originally Posted by oldcpu View Post
    I am thinking I should have added ....
    and if one notes the line
    Code:
     /usr/share/man/man4/something.4.gz
    then one can read up more on their driver by typing (for this example)
    Code:
    man something
    ...
    a real life example would be where something=vesa and hence one would type
    Code:
    man vesa

  7. #7
    Join Date
    Mar 2008
    Location
    Europe
    Posts
    25,697
    Blog Entries
    29

    Default Re: openSUSE Graphic Card Practical Theory Guide for Users

    NOTE: Until I hear of a good experience, I can NO LONGER recommend this post. Last time I tried this it broke X on the PC


    I do note a number of openSUSE users have complained that the radeon and radeonhd drivers (and also Intel drivers) that come with openSUSE-11.2 (in rpms xorg-x11-driver-video and xorg-x11-driver-video-radeonhd) are lacking.

    For those who are willing to take a chance, they can try the latest very cutting edge open source drivers unofficially packaged for openSUSE for ATI hardware. ie ... some openSUSE-11.2 users with "legacy" ATI hardware have found they get better behaviour on openSUSE-11.2 from the open source radeon and radeonhd drivers if they use the updates from the X11 : XOrg repository. That repository is here:
    Code:
    http://download.opensuse.org/repositories/X11:/XOrg/openSUSE_11.2/
    ... and the rpms that some of us found gave better behaviour are these apps:
    • Mesa
    • xorg-x11-driver-input
    • xorg-x11-driver-video
    • xorg-x11-driver-video-radeonhd

    and possibly ( ? ) others for a 64-bit openSUSE ? .... (I tried them on a 32-bit PC). One caution - that tends to be a cutting edge repository, so there is always a risk it will make things worse when a cutting edge release has a bug.

    Also, note, because that repository is so cutting edge, I recommend it be added, the rpms installed, and the repository removed. Do NOT leave that repository enabled 1 update longer than necessary.

    Some users go to install those rpms in YaST , see that the older Novell versions are installed, get confused, and think they have somehow already installed the updates. So some care is needed and be absolutely certain one has updated those rpms. Please note this image example below where one selects the "repositories" tab, select the repository on the left in the image and then select the "version" tab and in there select the appropriate version(s). Then accept the change.


    After updating, a reboot is necessary to test the effect.

    Please note caution above - this approach may no longer work !
    Last edited by oldcpu; 18-Apr-2010 at 07:52. Reason: added caution this may no longer work

  8. #8
    Join Date
    Jun 2008
    Location
    Charleston, SC, USA
    Posts
    204

    Default Re: openSUSE Graphic Card Practical Theory Guide for Users

    I'd like to say that this post is very nicely written, and it gives a very good run down on the different graphics vendors and the multitude of drivers available for Linux.

    Seeing as you are lacking information about VIA graphics hardware, I'd like to point your attention to the openchrome project. On their About page, they give a run down about all of the driver offerings for VIA hardware, in a very similar manner to what you have written in this post. Perhaps that information can serve as a starting point?

    Anyways, keep up the good work.
    My personal philosophy:
    The only way you won't find something is if you stop looking.

  9. #9
    Join Date
    Mar 2008
    Location
    Europe
    Posts
    25,697
    Blog Entries
    29

    Default Re: openSUSE Graphic Card Practical Theory Guide for Users

    The guide below has now been superceded with a new version here and an updated Via specific post here. The thread below is kept open for comments. Comments / contributions / corrections are welcome.


    VIA's Graphic chipsets and OpenGL ...
    (This contribution from user "consused")

    A brief explanation about drivers for VIA graphic chipsets.

    VIA produce integrated graphic processor (IGP) chipsets for PC's with Intel, AMD, and VIA central processors. Hence an extensive range of multimedia chipsets with product identifiers that can be somewhat daunting. Within these chipsets, we are only concerned here with VIA's S3G UniChrome, UniChrome Pro and Chrome9 IGP cores. Comprehensive product information can be found at VIA's corporate website.

    VIA Graphic chipset practical theory. Note that for Via graphic chipsets, you have some choices for graphic drivers:
    • fbdev - this is the frame buffer driver and it is compatible with many different graphic cards (ati, nvidia, intel ... ). This non-accelerated, 2D-only driver has the slowest performance, but sometimes it will work when all else fails. It typically comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • vesa - this is the vesa driver and it is compatible with many different graphic cards (ati, nvidia, intel ... ). Although a non-accelerated, 2D-only driver, it should be faster than "fbdev" in performance, and pretty robust, but overall it still has slow performance. Chipset compatibility is not the only factor here. Success with this driver will also depend on whether its built-in resolutions and fixed refresh rates support your monitor's requirements. It typically comes packaged with openSUSE as part of xorg-x11-driver-video rpm.
    • unichrome - this is an open source driver developed by the The Unichrome Project. It is packaged with openSUSE as xorg-x11-driver-video-unichrome rpm. The emphasis of this driver's development is on clean code and stability, at the expense of supporting features. It currently supports CLE266, KM400/KM400A/KN400/P4M800, and K8M800/K8N800/K8N800A chipsets. Those are early/mature Unichrome and Unichrome Pro IGP's. There's no support for the later Unichrome Pro/Pro II and more recent Chrome9 IGP's. This driver does basic modesetting, accelerates 2D, 3D and Xv. It lacks accelerated mpeg2 decoding using XvMC.

      To see exactly what hardware and driver options are supported by the "unichrome" driver, one can type
      Code:
      man unichrome
    • openchrome - this is the most advanced open-source driver, developed by the openChrome project. Development focuses on fully utilizing the features of these multimedia chipsets. It is packaged by the openSUSE community as xorg-x11-driver-video-openchrome rpm, that can normally be downloaded from the openSUSE Build Service, In theory, this driver will accelerate 2D, 3D, Xvideo and mpeg2 decoding using XvMC. In practice, 2D should work for all the driver-supported devices, but 3D (direct rendering) is another matter. It may not be implemented for your chipset, e.g. direct rendering is currently disabled for all Chrome9 IGP's, leaving only software rasterizing (too slow) for 3D applications. The list of supported IGP's is long and includes Unichrome, Unichrome Pro, and Chrome 9 chipsets. I refer you to the chipset support matrix, displayed under "Documentation" at the openChrome project's website.
      To see exactly what hardware and driver options are supported by the "openchrome" driver, one can type
      Code:
      man openchrome
    • chrome9 - this is VIA's open-source unified driver for their graphic chipsets. That means it should support all VIA devices listed in the rpm's package description, at least for 2D. This driver should have better performance than the VESA driver. Currently VIA don't package their driver for openSUSE. However, a package is provided by the openSUSE community as xorg-x11-driver-video-chrome9 rpm, that can normally be downloaded from the openSUSE Build Service. Since openSUSE 11.2, the name of this driver module is "via". That name must be used in sax2 commands and in the xorg.conf driver statement, if one exists - see explanation below. If you choose to install this driver, do not install/reinstall the "unichrome" driver afterwards as it will overwrite chrome9's "via" driver files in /usr/lib/xorg/modules/drivers. Installing chrome9 with unichrome already installed doesn't affect the "unichrome" driver files. There is no mpeg acceleration in chrome9, and 3D (direct rendering) hasn't worked so far.


    VIA's Graphic chipsets and OpenGL

    OpenGL support for VIA IGP's is outdated. That will affect your ability to run serious 3D applications and compositing desktops (e.g. Compiz) that require OpenGL. Mesa is the open-source implementation of the OpenGL specification, and it's installed as part of your openSUSE system. The Mesa 3D driver for VIA chips that is already installed on the system is called unichrome_dri.so, and it complements drivers such as the "openchrome" driver in providing 3D through the Direct Rendering Infrastructure (DRI). However, Mesa's 3D driver has suffered from lack of maintenance and needs updating, which adversely affects the 3D capabilities of the openchrome and chrome9 drivers.

    xorg.conf file in Linux

    As of openSUSE-11.2, the need to have an xorg.conf file was removed for many graphic cards. This was because "xorg" who code X window framework are moving away from requiring the xorg.conf file, but rather want to have the card configured automatically without that xorg.conf file. In such a case, the xorg software should automatically use the latest open source driver that is installed (e.g. "unichrome"). However the automatic recognition of graphic cards is still not reliable for all cards in openSUSE-11.2.

    In that case (where automatic graphic card recognition fails) one needs to create an xorg.conf file for the card to force a configuration, for if that xorg.conf file is available, then the xorg software will use it. This may well be the case for many of VIA's chipsets, particularly the Unichrome Pro and Chrome9 IGP's.

    Software to Create xorg.conf file.

    There is software provided by SuSE-GmbH in openSUSE that is used to generate the xorg.conf file for graphic drivers, which is called "sax2". One can run "sax2" with many options (but it must be run with root permissions).

    For example, to check what chip# one's graphic devices are, one can run with root permissions:
    Code:
    sax2 -p
    pay attention to the chip, ... ie chip 0 (typically if only one graphic device) or there may be a chip-0 and a chip-1 (if one has more than one graphic device).

    Run Level 3

    Now typically, when reconfiguring a graphic card, it is best to do this NOT in X window, but rather in the full screen terminal run level 3. One boots to run level 3 by pressing "3" (no quotes) when the initial grub boot menu first appears. By pressing "3" one will see the "3" appear in the options line. Then boot normally. That brings one to a full screen text login. Login as a regular user.

    Creating the xorg.conf file

    After logging in to run level 3, type "su" (no quotes - enter root password) to switch users to the administrator/root. If one wishes to force sax2 to create an xorg.conf file for the openchrome open source graphic driver (called "openchrome"), then one would type in run level 3 (NOT in X window):

    Code:
    sax2 -r -m 0=openchrome
    or
    Code:
    sax2 -r -m 1=openchrome
    where the 0 or 1 depends on what graphic chip one is trying to configure. The "-r" option tells sax2 to ignore any previous created xorg.conf file, and overwrite/replace it.

    or for the slower vesa driver
    Code:
    sax2 -r -m 0=vesa
    or
    Code:
    sax2 -r -m 1=vesa
    where the 0 or 1 depends on what graphic chip one is trying to configure. The "-r" option tells sax2 to ignore any previous created xorg.conf file, and overwrite/replace it.

    Once sax2 is complete, one can restart from run level 3 with root permissions by typing "shutdown -r now" and then let the reboot continue to see if the graphic card configuration worked.

    Hopefully that gives some practical theory so that users can understand the recommendations that have been given in various posts by our forum members.

    Many thanks to consused for his contribution above
    Last edited by oldcpu; 21-Dec-2010 at 02:12. Reason: Post superceded. Highlighted link to replacement post.

  10. #10
    Join Date
    Mar 2008
    Location
    Europe
    Posts
    25,697
    Blog Entries
    29

    Default Re: openSUSE Graphic Card Practical Theory Guide for Users

    Quote Originally Posted by oldcpu View Post
    A brief explanation about drivers for Intel cards
    Its clear to me now that this is not ALL inclusive of the various drivers available for openSUSE-11.2 and there is a glaring omission.

    First a clarification - The "intel" driver in the 'as packaged' openSUSE-11.2 xorg-x11-driver-video rpm is the Intel 2.9.1 driver from this site Intel Linux Graphics plus the xorg-x11-driver-video rpm has some patches to that intel driver version.

    The "intel" driver in the xorg-x11-driver-video rpm (which also needs the latest Mesa on that side plus the other xorg-x11-driver rpms) on the site:
    Code:
    http://download.opensuse.org/repositories/X11:/XOrg/openSUSE_11.2/
    is the 2.10.0 driver (as of today, 13-March-2010). It is a newer driver. I also note reading the documentation for the 2.10.0 Intel driver that Intel recommend one use the 2.6.32 (or newer) kernel with that driver, where openSUSE only comes with the 2.6.31 kernel. Hence one may wish to consider updating their kernel to use the 2.10.0.

    But there is also an IEGD (Intel Embedded Graphic Driver) per this site: Intel Embedded Design Center and one can find rpms packaged for openSUSE from Software.openSUSE.org if one searches for "IEGD" (I note user vlj and also user lkundrak packaged Poulsbo GPU driver rpms) for the openSUSE-11.2 2.6.31.5 and also 2.6.31.12 kernels.

    I do not know enough to succinctly summarize the benefits / differences between the IEGD and the nominal Intel driver, so one will need to read the documentation. I suspect sax2 does NOT suppot the IEGD driver and that one will need to boot with no xorg.conf in place to use the IEGD driver, but again, I do not know at this time.

Page 1 of 7 123 ... LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •