# Getting DRI working with Intel Sonoma (i915GM) chipset

## VinzC

HOWTO: Getting DRI working with Intel Sonoma (i915GM) chipset

Hi all.

For all those who tried to have DRI work on Intel Sonoma chipset here are good news. That chipset is available in many laptops, including Dell Inspiron 6000 and Samsung X20. However the implementation varies quite a lot between brands and even within a brand itself. In fact the i915 supports some features, including high-definition audio. But hardware manufacturers are free to use it... or not. As far as I can tell, there is no HDA in Dell Inspiron 6000 for instance.

But it's not the topic of this thread. If, like me and many other ones, you have an Intel Sonoma chipset (i915GM) and never could get DRI to work properly - or tried and got poor results, this is for you  :Smile: .

The following applies if...

you have a i915 chipset and

you have a recent vanilla-based kernel: >=suspend2-sources-2.6.12-r3, >=vanilla-sources-2.6.12_rc5(*), >=gentoo-sources-2.6.12-r6(*) and

you have kernel support for i915 drm (either built-in or as a module) and

you have selected xorg driver i810 in xorg.conf and

you are not using DRI snapshots

(*) Note: These are the kernels I have made tests with. But I have not applied the patch to those kernels. Suspend2 sources are vanilla-based kernel sources with only patches for suspend-to-disk, framebuffer console, framebuffer splash plus the the inotify functionnality. Gentoo sources contain all the patches from Gentoo kernel developers.

I don't use modelines in my xorg.conf since XOrg >= 6.8.99 supports non-standard modes of i915 chipset. However you'll notice that XOrg is using VESA facilities to setup graphics mode:

```
# grep -i vesa /var/log/Xorg.0.log

(II) I810(0): VESA BIOS detected

(II) I810(0): VESA VBE Version 3.0

(II) I810(0): VESA VBE Total Mem: 7872 kB

(II) I810(0): VESA VBE OEM: Intel(r)915GM/910ML/915MS Graphics Chip Accelerated VGA BIOS

(II) I810(0): VESA VBE OEM Software Rev: 1.0

(II) I810(0): VESA VBE OEM Vendor: Intel Corporation

(II) I810(0): VESA VBE OEM Product: Intel(r)915GM/910ML/915MS Graphics Controller

(II) I810(0): VESA VBE OEM Product Rev: Hardware Version 0.0

(II) I810(0): VESA BIOS detected

(II) I810(0): VESA VBE Version 3.0

(II) I810(0): VESA VBE Total Mem: 12288 kB

(II) I810(0): VESA VBE OEM: Intel(r)915GM/910ML/915MS Graphics Chip Accelerated VGA BIOS

(II) I810(0): VESA VBE OEM Software Rev: 1.0

(II) I810(0): VESA VBE OEM Vendor: Intel Corporation

(II) I810(0): VESA VBE OEM Product: Intel(r)915GM/910ML/915MS Graphics Controller

(II) I810(0): VESA VBE OEM Product Rev: Hardware Version 0.0

(II) I810(0): VESA VBE PanelID read successfully

(II) I810(0): VESA VBE DDC supported

(II) I810(0): VESA VBE DDC Level 2

(II) I810(0): VESA VBE DDC transfer in appr. 1 sec.

(II) I810(0): VESA VBE DDC read successfully

(II) I810(0): VESA BIOS detected

(II) I810(0): VESA VBE Version 3.0

(II) I810(0): VESA VBE Total Mem: 7872 kB

(II) I810(0): VESA VBE OEM: Intel(r)915GM/910ML/915MS Graphics Chip Accelerated VGA BIOS

(II) I810(0): VESA VBE OEM Software Rev: 1.0

(II) I810(0): VESA VBE OEM Vendor: Intel Corporation

(II) I810(0): VESA VBE OEM Product: Intel(r)915GM/910ML/915MS Graphics Controller

(II) I810(0): VESA VBE OEM Product Rev: Hardware Version 0.0
```

It doesn't matter. I hope  :Wink:  ...

A little bit of history

I have a Dell Inspiron 6000 that I immediately installed with Gentoo Linux. I had already installed a couple of machines with Gentoo so I was pretty confident. But when you deal with laptops, things can get terribly difficult, reminding how it's easy under... Window$ (sorry but that's true).

First time I tried xorg 6.8 on my laptop I got a black screen when I started X. I then used unmasked versions of Xorg. I tried 6.8.2 and almost every 6.8.99.xx. There were strange messages with dmesg like

```
# dmesg | grep -i agpgart

Linux agpgart interface v0.101 (c) Dave Jones

agpgart: Detected an Intel 915GM Chipset.

agpgart: Detected 7932K stolen memory.

agpgart: AGP aperture is 256M @ 0xc0000000
```

or even about dri (or was it drm?) being disabled.

I also checked Gentoo forums: Dell Inspiron 6000, started by Sejam and i915 and xorg - how? started by Klavs. Many of us, posters, tried DRI snapshots and that mostly... did not work. (There are people who reported they do on their machine.) For instance checking glxinfo says 

```
$ glxinfo | grep direct

direct rendering: No.
```

XOrg reports only 8 MB of usable RAM - not enough for using DRI - although 128 MB or more are available through shared RAM:

```
(II) I810(0): detected 7932 kB stolen memory.

(II) I810(0): I830CheckAvailableMemory: -545582944 kB available

...

(II) I810(0): 15440 kBytes additional video memory is required to

   enable tiling mode for DRI.

(II) I810(0): 3040 kBytes additional video memory is required to enable DRI.

(II) I810(0): Disabling DRI.
```

All I could get so far was either DRI not working or giving poor performance - around 200 FPS with Glxgears though I saw people with more than 2000. The patch below has given me over 1300 FPS with Glxgears instead of 800 (the best I could ever get).

I have searched for months in forums and Googled the Internet in vain. Yesterday, completely by chance, I saw this article on Gentoo wiki, especially the title "DRI, Xvideo and co.". It's about patching lnx_agp in Xorg source files, which is the topic of this thread.

Alan Hourihane (xorg developer) is tracking down the real reason why DRI may not work with i915 (http://lists.freedesktop.org/pipermail/xorg/2005-July/008735.html). He provided a workaround as a patch. So let me remind you:  *I wrote:*   

> this is just a workaround and not a fix.

 

However the impact on DRI is - let's hope - the same.

The patches

Note: You will be creating patches from scratch. Be careful to replace indent spaces with tabs since this is a standard for ebuild, especially. If you don't replace spaces with tabs, patch may fail with an error message like:

```
patching file xorg-x11-6.8.99.15.ebuild

Hunk #1 FAILED at 33.

Hunk #2 FAILED at 491.

2 out of 2 hunks FAILED -- saving rejects to file xorg-x11-6.8.99.15.ebuild.rej
```

I could have provided a single patch for xorg ebuild but I wanted to go further. In the same time I saw how to install custom ebuilds using an overlay directory. This is the way I followed.

Why? I went a bit frustrated with my fix attempts disappearing after an emerge sync. Don't worry, that's normal. So if you want your changes to pertain even after portage updates, use a portage overlay.

Update (9 oct. 2005): Portage overlays take precedence over official ebuilds in portage hence we're going to use that feature. At the time of this writing I initially renamed Xorg ebuild (xorg-x11-6.8.99.15) but you can simply copy the official ebuild to the portage overlay directory. Note you will have to repeat these steps and patch subsequent Xorg ebuild versions after a sync.

I also defined a USE flag  to control whether the patch will be applied to lnx_agp or not. you must set dri-patch to compile Xorg with the DRI patch applied.

You might object this is a big overhead but if an new ebuild with the same name is released it won't conflict with this one. Finally since I'm working with the original sources I found it convenient to revert to the initial ebuild: just remove the use flag to emerge.

What will we do?

We will first create the overlay structure.

Then we'll save a custom file to patch XOrg's lnx_agp.c.

We'll copy and patch the official xorg ebuild.

We'll sign the new ebuild with the digest.

We'll finally make sure make.conf directs portage to use the new overlay directory.

I'll assume you are now root on your system.

First create the overlay directory, typically /usr/local/portage/. XOrg patches are downloaded and applied in batch. Small patches are put into portage tree in the ./files sub-directory of the ebuild directory. This is where we'll put our custom patch. That directory is mapped to the $FILESDIR variable in ebuilds. Since you'll have to copy the exact structure of the ebuild you want to change hence you create the whole structure in one go:

```
~ # mkdir -p /usr/local/portage/x11-base/xorg-x11/files/
```

Next copy the xorg ebuild you want to change. I'll use xorg-x11-6.8.99.15 but you can copy the one that best suits for you:

```
~ # cp -p /usr/portage/x11-base/xorg-x11/xorg-x11-6.8.99.15.ebuild /usr/local/portage/x11-base/xorg-x11/
```

Save the text that follows the cat instruction below into /usr/local/portage/x11-base/xorg-x11/files/dri-lnx_agp.patch (the original patch can be found there):

```
~ # nano /usr/local/portage/x11-base/xorg-x11/files/dri-lnx_agp.patch

~ # cat /usr/local/portage/x11-base/xorg-x11/files/dri-lnx_agp.patch

Note: This patch has been tweaked by VinzC to be applied using portage

Source: http://www.gentoo-wiki.com/HARDWARE_Samsung_X20#DRI.2C_Xvideo_and_co.

--- xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c   2005-07-03 09:01:32.000000000 +0200

+++ xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c~       2005-07-28 13:26:41.000000000 +0200

@@ -139,6 +139,12 @@

                return NULL;

        }

+       /*

+        * Workaround to get DRI working with i915

+        * (http://www.gentoo-wiki.com/HARDWARE_Samsung_X20#DRI.2C_Xvideo_and_co.)

+        */

+       memset((char*)&agpinf, 0, sizeof(agpinf));

+

        if (ioctl(gartFd, AGPIOC_INFO, &agpinf) != 0) {

                xf86DrvMsg(screenNum, X_ERROR,

                           "xf86GetAGPInfo: AGPIOC_INFO failed (%s)\n",

```

Now we need to change the ebuild so that the patch in the ./files directory is applied to xorg source file lnx_agp.c.

Info: ebuilds are decompressed in a temporary location, /var/tmp/portage/<ebuild-category>/<ebuild-name>/work. They traditionnally apply patches in the ebuild unpack step (see ebuild: A Safer Approach for more information on how ebuilds work). This is where we place the new code to apply our custom patch lnx_agp.c.

Here's a patch (yeah, gimme one more patch!) to change the ebuild but you can change the ebuild manually. To patch the ebuild, save the text that follows the cat instruction below into /root/xorg-ebuild.diff:

```
# nano ~/xorg-ebuild.diff

# cat ~/xorg-ebuild.diff

--- xorg-x11-6.8.99.15.ebuild       2005-07-21 22:05:58.000000000 +0200

+++ xorg-x11-6.8.99.15.ebuild~   2005-07-28 22:35:41.000000000 +0200

@@ -33,7 +33,8 @@

 # IUSE="gatos" disabled because gatos is broken on ~4.4 now (31 Jan 2004)

 IUSE="3dfx bitmap-fonts cjk debug doc font-server insecure-drivers ipv6 minimal

-       nls nocxx opengl pam sdk static truetype-fonts type1-fonts uclibc xprint xv"

+       nls nocxx opengl pam sdk static truetype-fonts type1-fonts uclibc xprint xv

+       dri-patch"

 # IUSE_INPUT_DEVICES="synaptics wacom"

 FILES_VER="0.1"

@@ -490,6 +491,11 @@

        cd ${WORKDIR}

        EPATCH_SUFFIX="patch" \

        epatch ${PATCHDIR}

+

+       # Patch using DRI workaround

+       if use dri-patch; then

+               epatch ${FILESDIR}/dri-lnx_agp.patch

+       fi

        cd ${S}

 }

```

Note the use flag dri-patch added to the IUSE variable. Be careful when saving the above text: lines are indented with tabs, not spaces. You must then replace indent spaces with tabulations before you save the diff file.

Important

The example above uses xorg-x11-6.8.99.15. With subsequent releases of xorg 6.8.99.15 you will have to edit the first two lines in xorg-ebuild.diff so that they match the new ebuild file name.

For example, to patch xorg-x11-6.8.99.15-r4:

```
# head -n 2 ~/xorg-ebuild.diff

--- xorg-x11-6.8.99.15-r4.ebuild       2005-07-21 22:05:58.000000000 +0200

+++ xorg-x11-6.8.99.15-r4.ebuild~   2005-07-28 22:35:41.000000000 +0200
```

Now you must apply the patch to the ebuild from its directory:

```
# cd /usr/local/portage/x11-base/xorg-x11/

xorg-x11 # patch -p0 < ~/xorg-ebuild.diff
```

The lnx_agp patch is applied from the ebuild by a function called do_patch. If the patch does not work, you can still make the changes manually. The ebuild should now look like this:

```
xorg-x11 # egrep -A 12 -B 0 '^do_patch' xorg-x11-6.8.99.15.ebuild

do_patch() {

        # Bulk patching - based on patch name

        # Will create excluded stuff once it's needed

        cd ${WORKDIR}

        EPATCH_SUFFIX="patch" \

        epatch ${PATCHDIR}

        # Patch using DRI workaround

        if use dri-patch; then

                epatch ${FILESDIR}/dri-lnx_agp.patch

        fi

        cd ${S}

}
```

Next you must tell portage you are using an overlay. It must be done before the ebuild is signed. Edit /etc/make.conf with your favorite editor and add PORTDIR_OVERLAY="/usr/local/portage":

```
xorg-x11 # nano /etc/make.conf

xorg-x11 # grep -i -C 1 overlay /etc/make.conf

PORT_DIR=/usr/portage

PORTDIR_OVERLAY="/usr/local/portage"

PORT_LOGDIR=/var/log/portage
```

Right now the ebuild is almost ready for use; sign it with the digest:

```
xorg-x11 # ebuild xorg-x11-6.8.99.15.ebuild digest

>>> Generating digest file...

<<< eurofonts-X11.tar.bz2

<<< xfsft-encodings-0.1.tar.bz2

<<< gentoo-cursors-tad-0.3.1.tar.bz2

<<< gemini-koi8-u.tar.bz2

<<< xorg-x11-6.8.99.15-files-0.1.tar.bz2

<<< xorg-x11-6.8.99.15-patches-0.1.2.tar.bz2

<<< xorg-x11-6.8.99.15.tar.bz2

>>> Generating manifest file...

<<< xorg-x11-6.8.99.15.ebuild

<<< files/dri-lnx_agp.patch

<<< files/digest-xorg-x11-6.8.99.15

>>> Computed message digests.

xorg-x11 # ls -lR

.:

total 60

-rw-rw-r--  1 root portage   213 Jul 28 22:50 Manifest

drwxr-xr-x  2 root root      136 Jul 28 14:17 files

-rw-r--r--  1 root root    54182 Jul 28 22:35 xorg-x11-6.8.99.15.ebuild

./files:

total 8

-rw-rw-r--  1 root portage 516 Jul 28 22:50 digest-xorg-x11-6.8.99.15

-rw-r--r--  1 root root    901 Jul 28 14:14 dri-lnx_agp.patch
```

Note the files that were created: Manifest and digest-xxx. They are required by portage.

Installing the modified XOrg

Now the ebuild is ready and will update your current installation of XOrg with the overlay. Since you're using the same ebuild file name as the official one in portage and you've probably unmasked it, no further step is required. Remember we defined a USE flag to enable the patch on XOrg. Type USE="dri-patch" before the actual emerge instruction:

```
xorg-x11 # USE="dri-patch" emerge -av xorg-x11

These are the packages that I would merge, in order:

Calculating dependencies ...done!

[ebuild     U ] x11-base/xorg-x11-6.8.99.15 [6.8.99.15]  -3dfx +bitmap-fonts -cjk -debug -doc +dri-patch* -font-server -insecure-drivers -ipv6 -minimal +nls -nocxx +opengl +pam -sdk -static +truetype-fonts +type1-fonts (-uclibc) -xprint +xv 0 kB [1]

Total size of downloads: 0 kB

Portage overlays:

 [1] /usr/local/portage

Do you want me to merge these packages? [Yes/No] y

...
```

Since the patch applies to a version of XOrg you already installed, (did you?) there is nothing to download. Restart X and run glxgears in a terminal as a normal user. Before applying the patch glxgears displayed around 800 FPS in 16 bpp mode (i.e. 65536 colors) on my laptop; that's more than a 50% increase! IMHO it's worth reading this [long indeed  :Wink:  ] post:

```
$ glxinfo | head -n 3

name of display: :0.0

display: :0  screen: 0

direct rendering: Yes

$ glxgears

6571 frames in 5.0 seconds = 1314.166 FPS

6509 frames in 5.0 seconds = 1301.620 FPS

6521 frames in 5.0 seconds = 1304.011 FPS

6569 frames in 5.0 seconds = 1313.762 FPS

6572 frames in 5.0 seconds = 1314.397 FPS

6624 frames in 5.0 seconds = 1324.633 FPS

6574 frames in 5.0 seconds = 1314.659 FPS

6492 frames in 5.0 seconds = 1298.331 FPS
```

Enjoy!

Conclusion

You can revert the patch by clearing the use flag on the command line. Note if you don't add it to your /etc/make.conf you'll only have to type emerge xorg to re-emerge the same ebuild but without the lnx_agp patch.

I haven't tested this patch with earlier versions of XOrg. I have successfully applied it to all 6.8.99.xx releases, up to -r4. It might be applied to version 6.8.2 however. It doesn't make sense to apply it to even earlier versions as they don't support i915 chipset [properly].

Acknowledgements

Last but not least: thanks to everyone who posted in these forums (Sejam, Klavs, stormer, lancealtar, PolarXL, et al. Believe me, they are many  :Smile:  ) and of course a big big thank you to Alan Hourihane.

[Some]References

Here are some posts and articles I read that helped me; take your time  :Very Happy:  :

freedesktop.org: i915 uses only 8mb video ram and disables xv, dri

freedesktop.org: i915 driver. Mesa 6.3 implementation error.

Gentoo Forums: Dell Inspiron 6000

Gentoo Forums: [SOLVED]i915: Xorg only detects 8MB RAM

Gentoo wiki: HOWTO Create an Updated Ebuild - Gentoo Linux Wiki

Gentoo documentation: Ebuild HOWTO

Change history

Prepared make.conf before computing the digest

Ebuild patching changed (copy, patch and rename)

Ebuild patch: date/time changed

Patch level in ebuild patch

Leading garbage partly removed from dri patch (Index)

Note about spaces in patches (fix for patch failure)

Removed rename instructions with overlay

Note on recent releases of xorg.

----------

## darkdruid

Thenks for the great howto. I'm trying it out right now. I Ran into a few problems, so far nothing major, but it might be good to point them out. For some reason the ebuild patch dosen't seem to work, which is no big deal I did the editing by hand and it seems fine so far. 

Second problem occurs running the ebuild digest command. The OVERLAY_DIR needs to be added to the /etc/make.conf file before the command is run otherwise it dosen't work.

----------

## VinzC

 *darkdruid wrote:*   

> Thenks for the great howto. I'm trying it out right now. I Ran into a few problems, so far nothing major, but it might be good to point them out. For some reason the ebuild patch dosen't seem to work, which is no big deal I did the editing by hand and it seems fine so far.

 

Thanks for your feedback. In fact I did the patch myself by running diff -Naur against the original file in portage and the modified one. I suspect file dates are taken into account by patch. It might be not as easy to create patches  :Smile:  . I think I'm going to read a couple more HOWTOs on how to make patches...

 *darkdruid wrote:*   

> Second problem occurs running the ebuild digest command. The OVERLAY_DIR needs to be added to the /etc/make.conf file before the command is run otherwise it dosen't work.

 

I'm updating right now.

EDIT: done.

----------

## meulie

Just wondering: Has anyone gotten this to work with a HP Compaq nx6110?   :Question: 

----------

## thomasa88

the ebuild-patch didnt work for me either.. but when I had changed it manually and tried a diff -Naur I get the exact same result as you posted  :Confused: 

and the other patch cant find the file to patch.. maybe it should be the /var/portage/something/work?

----------

## VinzC

 *meulie wrote:*   

> Just wondering: Has anyone gotten this to work with a HP Compaq nx6110?  

 

Nope, I think you're the first one.

----------

## VinzC

 *thomasa88 wrote:*   

> the ebuild-patch didnt work for me either.. but when I had changed it manually and tried a diff -Naur I get the exact same result as you posted 

 

Wierd. Did you copy the original ebuild with cp -p? Did you get an error message about unapplied hunks? Or does patch prompt for a file name?

The ebuild date on my laptop is Jul 21 22:05. I see in my post the date in the ebuild patch differs. I'm changing it.

----------

## thomasa88

I got an error message that 2 of 2 hunks failed with the ebuild-patch

with the other patch I get this error:

```

PATCH COMMAND:  patch -p4 -g0 --no-backup-if-mismatch < /usr/local/portage/x11-base/xorg-x11/files/dri-lnx_agp.patch

=============================

can't find file to patch at input line 9

Perhaps you used the wrong -p or --strip option?

The text leading up to this was:

--------------------------

|Index: lnx_agp.c 

|=================================================================== 

|RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c,v 

|retrieving revision 1.7 

|Note: This patch has been tweaked by VinzC to be applied using portage 

|Source: http://www.gentoo-wiki.com/HARDWARE_Samsung_X20#DRI.2C_Xvideo_and_co. 

|--- xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c   2005-07-03 09:01:32.000000000 +0200 

|+++ xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.new.c   2005-07-28 13:26:41.000000000 +0200 

--------------------------

No file to patch.  Skipping patch.

1 out of 1 hunk ignored

```

it starts with -p0 and ends at -p4

line 9 would be: @@ -139,6 +139,12 @@

----------

## VinzC

 *thomasa88 wrote:*   

> I got an error message that 2 of 2 hunks failed with the ebuild-patch
> 
> with the other patch I get this error:
> 
> ```
> ...

 

Ok, I see my confusion now. I thought you talked about the patch applied to xorg ebuild file.

The lnx_agp patch is a modified version of the initial patch. I think it was generated from CVS. It didn't work as-is on my machine; I changed it so that it could be applied using portage. I reconstructed the header after I changed lnx_agp manually and run diff -Naur too. Strangely enough it worked for me  :Confused:  ...

I see a solution but it's a bit long:

remove the patching line from the ebuild and sign the ebuild again.

run ebuild /usr/local/portage/x11-base/xorg-x11/xorg-x11-6.8.99.15-r1.ebuild unpack

find lnx_agp and cd to that directory (should be /var/tmp/portage/x11-base/xorg-x11/xorg-x11-6.8.99.15-r1/work/xc/programs/Xserver/hw/xfree86/os-support/linux/)

apply the orginial patch (using patch -p0 < <path to initial patch>) or make the changes by hand

run ebuild /usr/local/portage/x11-base/xorg-x11/xorg-x11-6.8.99.15-r1.ebuild compile && ebuild /usr/local/portage/x11-base/xorg-x11/xorg-x11-6.8.99.15-r1.ebuild install && ebuild /usr/local/portage/x11-base/xorg-x11/xorg-x11-6.8.99.15-r1.ebuild qmerge

----------

## thomasa88

I was thinking of that too  :Wink: 

btw, doesnt qmerge do all of the cmds if I dont remember wrong (latest)?

edit.

otherwise I read a sweet thing in a magazine, I could do like this:

ebuild /usr/local/portage/x11-base/xorg-x11/xorg-x11-6.8.99.15-r1.ebuild {compile,install,qmerge}  :Smile: 

edit.

succeded with -F3, im soo lazy  :Razz: 

----------

## VinzC

 *thomasa88 wrote:*   

> btw, doesnt qmerge do all of the cmds if I dont remember wrong (latest)?

 

I have absolutely no idea. I didn't go that far. Not yet  :Wink:  .

 *thomasa88 wrote:*   

> otherwise I read a sweet thing in a magazine, I could do like this:
> 
> ebuild /usr/local/portage/x11-base/xorg-x11/xorg-x11-6.8.99.15-r1.ebuild {compile,install,qmerge} 

 

You mean in one go, on the same line?

 *thomasa88 wrote:*   

> succeded with -F3, im soo lazy 

 

patch -p0 -F3 < <patch file> ?

----------

## thomasa88

 *VinzC wrote:*   

>  *thomasa88 wrote:*   btw, doesnt qmerge do all of the cmds if I dont remember wrong (latest)? 
> 
> I have absolutely no idea. I didn't go that far. Not yet  .

 

checked the man, merge does all, and I think it doesnt unpack if already unpacked.

 *VinzC wrote:*   

> 
> 
>  *thomasa88 wrote:*   otherwise I read a sweet thing in a magazine, I could do like this:
> 
> ebuild /usr/local/portage/x11-base/xorg-x11/xorg-x11-6.8.99.15-r1.ebuild {compile,install,qmerge}  
> ...

 

yes, but I dont know if it does && or ||...

 *VinzC wrote:*   

> 
> 
>  *thomasa88 wrote:*   succeded with -F3, im soo lazy  
> 
> patch -p0 -F3 < <patch file> ?

 

yepp  :Smile: 

edit.

99.15 takes years to compile compared to the others  :Sad: , maybe something with ccache..

----------

## VinzC

 *thomasa88 wrote:*   

>  *VinzC wrote:*    *thomasa88 wrote:*   btw, doesnt qmerge do all of the cmds if I dont remember wrong (latest)? 
> 
> I have absolutely no idea. I didn't go that far. Not yet  . 
> 
> checked the man, merge does all, and I think it doesnt unpack if already unpacked.
> ...

 

Thanks a lot for your feedback, that will serve a troubleshooting section.

----------

## shadowtoo

ok iam not great at gentoo can we get an ebuild or something please

----------

## shadowtoo

i will host the ebuild file

----------

## shadowtoo

patching file xorg-x11-6.8.99.15.ebuild

Hunk #1 FAILED at 33.

Hunk #2 FAILED at 491.

2 out of 2 hunks FAILED -- saving rejects to file xorg-x11-6.8.99.15.ebuild.rej

----------

## VinzC

 *shadowtoo wrote:*   

> ok iam not great at gentoo can we get an ebuild or something please

 

Well, the ebuild is already on your computer, just follow the instructions to the letter as all the fun goes to patching it and using an overlay directory  :Wink:  . You will need an overlay even if you get the ebuild. What do you mean by hosting the file?

----------

## VinzC

 *shadowtoo wrote:*   

> patching file xorg-x11-6.8.99.15.ebuild
> 
> Hunk #1 FAILED at 33.
> 
> Hunk #2 FAILED at 491.
> ...

 

Damn! Despite all my fixing attempts... What version of patch do you have? You can type patch -v.

EDIT: you can also try thomasa88's patch -p0 -F3.

----------

## shadowtoo

patch 2.5.9

----------

## shadowtoo

Hunk #1 FAILED at 33.

Hunk #2 succeeded at 491 with fuzz 3.

1 out of 2 hunks FAILED -- saving rejects to file xorg-x11-6.8.99.15.ebuild.rej

 that was with the -F3

----------

## shadowtoo

no ideal?

----------

## VinzC

 *shadowtoo wrote:*   

> no ideal?

 

Thanks to kallamej, the problem is due to spaces in the patch that people create from this thread. There are tabs in the original ebuild though when text is copied and pasted from here, spaces not tabs are inserted... I'll update the HOWTO ASAP.

----------

## Oak

Thank you very very much VinzC! I can now watch my Simpsons episodes using xine without poor performace.  :Very Happy: 

----------

## shadowtoo

ok 1 question after i did this when i do startx that works GREAT i get 1250FPS on glxgears 

but i cant do atl ctrl f1 and when i exit X my console is screwed BADLY i have to reboot 

if i use the vesa driver insted of i810 everything works great only poor preformance and no DRI

----------

## VinzC

 *shadowtoo wrote:*   

> ok 1 question after i did this when i do startx that works GREAT i get 1250FPS on glxgears 
> 
> but i cant do atl ctrl f1 and when i exit X my console is screwed BADLY i have to reboot 
> 
> if i use the vesa driver insted of i810 everything works great only poor preformance and no DRI

 

Are you using framebuffer splash and vesa-tng?

----------

## VinzC

 *Oak wrote:*   

> Thank you very very much VinzC! I can now watch my Simpsons episodes using xine without poor performace. 

 

Glad I could help. May I suggest you posted the rates you got before and after?

----------

## shadowtoo

iam useing vesa-tng yes and bootsplash but i have done it with and with out boot splash

----------

## VinzC

 *shadowtoo wrote:*   

> iam useing vesa-tng yes and bootsplash but i have done it with and with out boot splash

 

The cause is vesa-tng not bootsplash. Use vesafb instead and you will get a clear screen. In turn you'll probably have to cope with 4/3 screen ratio. I haven't found yet the corresponding video (vga) mode to 1680x1050.

----------

## allex87

Hmm... I get framerates of only ~830 fps...

```
centrino xorg-x11 # lspci

0000:00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)

0000:00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)

0000:00:02.1 Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)

0000:00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 04)

0000:00:1c.1 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (rev 04)

0000:00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 04)

0000:00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 04)

0000:00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 04)

0000:00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 04)

0000:00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 04)

0000:00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d4)

0000:00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 04)

0000:00:1e.3 Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 04)

0000:00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 04)

0000:00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 04)

0000:01:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8036 Fast Ethernet Controller (rev 10)

0000:05:04.0 Network controller: Intel Corporation PRO/Wireless 2915ABG MiniPCI Adapter (rev 05)

0000:05:06.0 CardBus bridge: Texas Instruments Texas Instruments PCIxx21/x515 Cardbus Controller

0000:05:06.2 FireWire (IEEE 1394): Texas Instruments Texas Instruments OHCI Compliant IEEE 1394 Host Controller

0000:05:06.3 Unknown mass storage controller: Texas Instruments Texas Instruments PCIxx21 Integrated FlashMedia Controller

0000:05:06.4 Class 0805: Texas Instruments Texas Instruments PCI6411, PCI6421, PCI6611, PCI6621, PCI7411, PCI7421, PCI7611, PCI7621 Secure Digital (SD)

```

```
centrino xorg-x11 # cat /usr/src/linux/.config | grep I915

CONFIG_DRM_I915=m

```

Not sure how to go about debugging this.

However, here is something interesting in the X log:

```
(WW) I810: No matching Device section for instance (BusID PCI:0:2:1) found

```

Any ideas?

VinzC, could you please post your xorg.conf?

Thanks,

Alex.

----------

## VinzC

 *allex87 wrote:*   

> Hmm... I get framerates of only ~830 fps...

 

What did you have before?

 *allex87 wrote:*   

> 
> 
> ```
> centrino xorg-x11 # lspci
> 
> ...

 

What kind/brand of computer do you have? What is the result of egrep -i 'dr[i|m] /var/log/Xorg.0.log?

 *allex87 wrote:*   

> However, here is something interesting in the X log:
> 
> ```
> (WW) I810: No matching Device section for instance (BusID PCI:0:2:1) found
> ```
> ...

 

As long as the warning doesn't come with something like

```
No devices detected.
```

that's quite normal. See my post about i915. This one also helps.

 *allex87 wrote:*   

> VinzC, could you please post your xorg.conf?

 

You'll find it in Dell Inspiron 6000 thread in this forum, a couple of posts below. You'll also find my kernel config, in cases you need it. Please also read the Dell Inspiron 6000 and i915 and Xorg - how? forums as both contain quite useful information on i915 chipset. They also answer the frequently asked questions about that chipset.

----------

## allex87

 *VinzC wrote:*   

>  *allex87 wrote:*   Hmm... I get framerates of only ~830 fps... 
> 
> What did you have before?
> 
> 

 

Nothing, this is a fresh setup  :Smile: 

 *VinzC wrote:*   

> 
> 
>  *allex87 wrote:*   
> 
> ```
> ...

 

I have a Toshiba M40-JM8 - a beauty IMO  :Smile: . Here is the result of grepping for drm or dri:

```
centrino ~ # grep -i -E "dr[mi]" /var/log/Xorg.0.log

        X.Org Video Driver: 0.7

        X.Org XInput driver : 0.4

        ABI class: X.Org Video Driver, version 0.7

(II) LoadModule: "dri"

(II) Loading /usr/lib/modules/extensions/libdri.so

(II) Module dri: vendor="X.Org Foundation"

(II) Loading sub module "drm"

(II) LoadModule: "drm"

(II) Loading /usr/lib/modules/linux/libdrm.so

(II) Module drm: vendor="X.Org Foundation"

(II) Loading extension XFree86-DRI

(II) Loading /usr/lib/modules/drivers/i810_drv.so

        Module class: X.Org Video Driver

        ABI class: X.Org Video Driver, version 0.7

        Module class: X.Org XInput Driver

        ABI class: X.Org XInput driver, version 0.4

        Module class: XFree86 XInput Driver

        ABI class: XFree86 XInput driver, version 0.3

        Module class: X.Org XInput Driver

        ABI class: X.Org XInput driver, version 0.4

(II) I810: Driver for Intel Integrated Graphics Chipsets: i810, i810-dc100,

        ABI class: X.Org Video Driver, version 0.7

        ABI class: X.Org Video Driver, version 0.7

        ABI class: X.Org Video Driver, version 0.7

        ABI class: X.Org Video Driver, version 0.7

        ABI class: X.Org Video Driver, version 0.7

        ABI class: X.Org Video Driver, version 0.7

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 7, (OK)

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 7, (OK)

drmOpenByBusid: Searching for BusID pci:0000:00:02.0

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 7, (OK)

drmOpenByBusid: drmOpenMinor returns 7

drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0

(II) I810(0): [drm] DRM interface version 1.2

(II) I810(0): [drm] created "i915" driver at busid "pci:0000:00:02.0"

(II) I810(0): [drm] added 8192 byte SAREA at 0xe07fb000

(II) I810(0): [drm] mapped SAREA 0xe07fb000 to 0xb78f4000

(II) I810(0): [drm] framebuffer handle = 0xa0020000

(II) I810(0): [drm] added 1 reserved context for kernel

(II) I810(0): [drm] Registers = 0xd0000000

(II) I810(0): [drm] Back Buffer = 0xaf000000

(II) I810(0): [drm] Depth Buffer = 0xae800000

(II) I810(0): [drm] ring buffer = 0xa0000000

(II) I810(0): [drm] textures = 0xabcf8000

(II) I810(0): [drm] dma control initialized, using IRQ 11

(II) I810(0): [drm] Initialized kernel agp heap manager, 45088768

(II) I810(0): [dri] visual configs initialized

(II) I810(0): [drm] installed DRM signal handler

(II) I810(0): [DRI] installation complete

(II) Synaptics touchpad driver version 0.14.2

```

This seems pretty normal to me I would say...

 *VinzC wrote:*   

> 
> 
>  *allex87 wrote:*   However, here is something interesting in the X log:
> 
> ```
> ...

 

Thanks for the interest showed  :Smile: 

Also (if your laptop has a synaptics touchpad), have you gotten it to work? I got mine to recognize buttons/scrolling but no mouse movement, which is weird...

Alex.

----------

## allex87

Disregard the synaptics thing  :Smile:  the Dell 6000 thread helped  :Smile:  https://forums.gentoo.org/viewtopic-t-306856-highlight-synaptics.html

----------

## seppelrockt

Testing the HowTo atm (just writing this to be informed about new posts in this threat).

----------

## seppelrockt

 *allex87 wrote:*   

> Disregard the synaptics thing  the Dell 6000 thread helped  https://forums.gentoo.org/viewtopic-t-306856-highlight-synaptics.html

 

Does this mean you have improved performance over ~ 830 fps with the patch? If yes please give me a pointer what you have changed, cause I have ~ 850 fps with the patch, too - no 1300 fps, no chance to play Neverwinter Nights.

I had xorg-8.99.13 working with the same performance and working DRI (without patch). Then in 8.99.15 DRI didn't work anymore and performance was ~ 600 fps - the patch made DRI work again but the performance boost is not that great.

I have a Dell I6000 with Pentium-M 1.6Ghz, 512MB RAM and i915GM chipset + Intel Onboard Graphic.

```
$ less /var/log/Xorg.0.log |grep -i dr[im]

        X.Org Video Driver: 0.7

        X.Org XInput driver : 0.4

        ABI class: X.Org Video Driver, version 0.7

(II) LoadModule: "dri"

(II) Loading /usr/lib/modules/extensions/libdri.so

(II) Module dri: vendor="X.Org Foundation"

(II) Loading sub module "drm"

(II) LoadModule: "drm"

(II) Loading /usr/lib/modules/linux/libdrm.so

(II) Module drm: vendor="X.Org Foundation"

(II) Loading extension XFree86-DRI

        Module class: XFree86 XInput Driver

        ABI class: XFree86 XInput driver, version 0.3

        ABI class: X.Org Video Driver, version 0.7

(II) Loading /usr/lib/modules/drivers/i810_drv.so

        Module class: X.Org Video Driver

        ABI class: X.Org Video Driver, version 0.7

        Module class: X.Org XInput Driver

        ABI class: X.Org XInput driver, version 0.4

(II) I810: Driver for Intel Integrated Graphics Chipsets: i810, i810-dc100,

        ABI class: X.Org Video Driver, version 0.7

        ABI class: X.Org Video Driver, version 0.7

        ABI class: X.Org Video Driver, version 0.7

(**) I810(0): Option "DRI" "true"

        ABI class: X.Org Video Driver, version 0.7

        ABI class: X.Org Video Driver, version 0.7

(II) Loading sub module "dri"

(II) LoadModule: "dri"

(II) Reloading /usr/lib/modules/extensions/libdri.so

(II) UnloadModule: "dri"

(II) I810: Failed to load module "dri" (already loaded, 0)

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 7, (OK)

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 7, (OK)

drmOpenByBusid: Searching for BusID pci:0000:00:02.0

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 7, (OK)

drmOpenByBusid: drmOpenMinor returns 7

drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0

(II) I810(0): [drm] DRM interface version 1.2

(II) I810(0): [drm] created "i915" driver at busid "pci:0000:00:02.0"

(II) I810(0): [drm] added 8192 byte SAREA at 0xe11a0000

(II) I810(0): [drm] mapped SAREA 0xe11a0000 to 0xb78fb000

(II) I810(0): [drm] framebuffer handle = 0xc0020000

(II) I810(0): [drm] added 1 reserved context for kernel

(II) I810(0): [drm] Registers = 0xdff00000

(II) I810(0): [drm] Back Buffer = 0xcf000000

(II) I810(0): [drm] Depth Buffer = 0xce800000

(II) I810(0): [drm] ring buffer = 0xc0000000

(II) I810(0): [drm] textures = 0xc0860000

(II) I810(0): [drm] dma control initialized, using IRQ 16

(II) I810(0): [drm] Initialized kernel agp heap manager, 112197632

(II) I810(0): [dri] visual configs initialized

(II) I810(0): [drm] installed DRM signal handler

(II) I810(0): [DRI] installation complete

```

Looks quite OK, despite the line

```
(II) I810(0): [drm] added 8192 byte SAREA at 0xe11a0000
```

I have set VGA RAM to 128MB in xorg.conf

I will try to update my gentoo-sources-2.6.12 to -r6 from -r4 atm, maybe this helps.

----------

## allex87

Umm... "synaptics thing" isn't video... it's the touchpad. So, no, I don't have the video at higher framerate.

----------

## dberkholz

 *VinzC wrote:*   

> I've renamed the official ebuild from xorg-x11-6.8.99.15 to xorg-x11-6.8.99.15-r1 to update Xorg with emerge -av xorg-x11. However Gentoo developers might release an update with the same name. So I went a little step further and defined a use flag to apply the patch on the user's behalf: without the use flag the patch is not applied.
> 
> You might object this is a big overhead but if an new ebuild with the same name is released it won't conflict with this one. Finally since I'm working with the original sources I found it convenient to revert to the initial ebuild: just remove the use flag to emerge.

 

We aren't likely to push out a new revision, FYI. Most of our time is going into preparing the modularized 7.0 for release.

Great work on this!

----------

## conte73

 *meulie wrote:*   

> Just wondering: Has anyone gotten this to work with a HP Compaq nx6110?  

 

Yes, finally I just succeded in make it working on my HP Compaq nx6110.

I had to use vesafb instead of vesa-tng on console.

Thanks to all of you mates!  :Smile: 

----------

## seppelrockt

 *conte73 wrote:*   

>  *meulie wrote:*   Just wondering: Has anyone gotten this to work with a HP Compaq nx6110?   
> 
> Yes, finally I just succeded in make it working on my HP Compaq nx6110.
> 
> I had to use vesafb instead of vesa-tng on console.
> ...

 

Interesting, what where your problems with *vesafb-tng? Was it just slower or didn't it work anyway? I'm asking because I have veasfb-tng and it works but with only ~950 fps.

----------

## VinzC

 *spyderous wrote:*   

>  *VinzC wrote:*   I've renamed the official ebuild from xorg-x11-6.8.99.15 to xorg-x11-6.8.99.15-r1 to update Xorg with emerge -av xorg-x11. However Gentoo developers might release an update with the same name. So I went a little step further and defined a use flag to apply the patch on the user's behalf: without the use flag the patch is not applied.
> 
> You might object this is a big overhead but if an new ebuild with the same name is released it won't conflict with this one. Finally since I'm working with the original sources I found it convenient to revert to the initial ebuild: just remove the use flag to emerge. 
> 
> We aren't likely to push out a new revision, FYI. Most of our time is going into preparing the modularized 7.0 for release.
> ...

 

Thanks and respect.

----------

## allex87

vesafb didn't change much. The only thing is that it allowed me to keep virtual consoles. Before, with vesafb-tng, X would manage to mangle the console's display.

However, I experimented with Composite and it works all right. If I could improve on my framerate, it would work even better....  :Smile: 

----------

## VinzC

 *allex87 wrote:*   

> vesafb didn't change much. The only thing is that it allowed me to keep virtual consoles. Before, with vesafb-tng, X would manage to mangle the console's display.
> 
> However, I experimented with Composite and it works all right. If I could improve on my framerate, it would work even better.... 

 

Note: do you use 16-bit or 32-bit colors in xorg? DRI only works with 16-bit, as per i810 man pages.

----------

## conte73

 *seppelrockt wrote:*   

> 
> 
> Interesting, what where your problems with *vesafb-tng? Was it just slower or didn't it work anyway? I'm asking because I have veasfb-tng and it works but with only ~950 fps.

 

Only problem is that when returning to console after having initialized xorg (ex. by presing Ctrl-Alt-F1 in fluxbox) the console is completely messed up; shutting down xorg doesn't reset the situation, only reboot resolve. After changing vesa driver to vesafb it works fine.

I use 16 bit depth on console ( added vga=0x317 on cmd line of the kernel ) and 24 bit depth on xorg. Perhaps the xorg driver use always 32 bit?

In my xorg.log I read:

```

... 

(**) I810(0): Depth 24, (--) framebuffer bpp 32

...

(==) Depth 24 pixmap format is 32 bpp

```

----------

## seppelrockt

 *VinzC wrote:*   

>  *allex87 wrote:*   vesafb didn't change much. The only thing is that it allowed me to keep virtual consoles. Before, with vesafb-tng, X would manage to mangle the console's display.
> 
> However, I experimented with Composite and it works all right. If I could improve on my framerate, it would work even better....  
> 
> Note: do you use 16-bit or 32-bit colors in xorg? DRI only works with 16-bit, as per i810 man pages.

 

Hmm, thanks for the info, now I have ~ 1300 fps in 16bit - I used 24 bit before. Nevertheless I think the i810 man is wrong / outdated here as I HAD DRI working in 24 bit. Don't you think it's a normal slowdown when performance is ~ 50% after switching from 24 bit to 16 bit - given the limited performance of our "graphic card" (exspecially on the RAM side)?

However compared to Windows there is room for massive performance improvements for i915gm on linux. This will need some more time I think and maybe one day the "second pipe" thing will be properly implemented.

Thanks for all your help!

EDIT: For the vesafb-tng thing: I have it working here without much problems - see my xorg.conf for details.

```

# This xorg.conf is tweaked for the Dell Inspiron 6001 by seppel

# **********************************************************************

# Copyright 2004 The X.Org Foundation

# **********************************************************************

# Refer to the xorg.conf(5x) man page for details about the format of

# this file.

# **********************************************************************

Section "Files"

# Multiple FontPath entries are allowed, they will be concatenated

# According to gentoo wiki, higher entries will have higher priority

  FontPath      "/usr/share/fonts/misc:unscaled"

  FontPath      "/usr/share/fonts/Type1"

  FontPath      "/usr/share/fonts/TTF"

  FontPath      "/usr/share/fonts/100dpi:unscaled"

  FontPath      "/usr/share/fonts/75dpi:unscaled"

  FontPath      "/usr/share/fonts/corefonts"

  #FontPath "/usr/share/fonts/every_newly_installed_font"

# The location of the RGB database (file minus the extension)

# There is normally no need to change the default.

  #RgbPath      "/usr/X11R6/lib/X11/rgb"

# The module search path. The default path is shown here.

# The deprecated path is /usr/lib/X11R6/modules

  #ModulePath "/usr/lib/modules"

EndSection

Section "ServerFlags"

  Option "AllowMouseOpenFail"   "true"

EndSection

Section "Module"

  Load  "dbe"

  Load  "type1"

  Load  "freetype"

  Load  "glx"

  Load  "dri"

  Load  "synaptics"

  Load  "ddc"

  Load "extmod"

    SubSection "extmod"

        Option "omit xfree86-dga"

    EndSubSection

EndSection

Section "InputDevice"

  Identifier    "Keyboard"

  Driver        "kbd"

  Option        "XkbModel" "pc105"

  #Option       "XkbModel" "btc9000"

  Option        "XkbLayout" "de"

  #Option       "XkbVariant" "nodeadkeys"

EndSection

Section "InputDevice"

  Identifier    "Touchpad"

  Driver        "synaptics"

  Option        "Device" "/dev/psaux"

  Option        "Protocol" "auto-dev"

  Option        "LeftEdge" "120"

  Option        "RightEdge" "830"

  Option        "TopEdge" "120"

  Option        "BottomEdge" "650"

  Option        "FingerLow" "14"

  Option        "FingerHigh" "15"

  Option        "MaxTapTime" "180"

  Option        "MaxTapMove" "110"

  Option        "EmulateMidButtonTime" "75"

  Option        "VertScrollDelta" "20"

  Option        "HorizScrollDelta" "20"

  Option        "MinSpeed" "0.3"

  Option        "MaxSpeed" "0.75"

  Option        "AccelFactor" "0.015"

  Option        "EdgeMotionMinSpeed" "200"

  Option        "EdgeMotionMaxSpeed" "200"

  Option        "UpDownScrolling" "1"

  Option        "CircularScrolling" "1"

  Option        "CircScrollDelta" "0.1"

  Option        "CircScrollTrigger" "2"

  Option        "Buttons" "3"

  Option        "Emulate3Buttons"

  #Option       "ZAxisMapping" "4 5"

  #Option       "SHMConfig" "on"

EndSection

Section "InputDevice"

  Identifier    "USB Mouse"

  Driver        "mouse"

  Option        "Protocol" "IMPS/2"

  Option        "Device" "/dev/input/mice"

  Option        "ZAxisMapping" "4 5"

EndSection

Section "Device"

# See manual page of i810 for details

  Identifier    "i915GM"

  Driver        "i810"

  BusID         "0:2:0"

  #VideoRam     65536

  VideoRam      131072

  Option        "NoAccel" "false"

  Option        "DRI" "true"

  Option        "XVideo" "true"

  Option        "VBERestore" "true"

EndSection

Section "Monitor"

  Identifier    "WXGA Display"

EndSection

Section "Screen"

  Identifier    "DELL_TFT"

  Device        "i915GM"

  Monitor       "WXGA Display"

  DefaultDepth  16

  #Option       "NoMTRR"

  #Subsection "Display"

  #  Depth      24

  #  ViewPort   0 0

  #EndSubsection

EndSection

Section "DRI"

  Mode  0666

EndSection

Section "ServerLayout"

  Identifier    "Default Layout"

  Screen        "DELL_TFT"

  InputDevice   "Keyboard" "CoreKeyboard"

  InputDevice   "Touchpad" "CorePointer"

  #InputDevice  "USB Mouse" "AllwaysCore"

EndSection

```

Note the option VBERestore in the device section

----------

## conte73

 *seppelrockt wrote:*   

> 
> 
> Note the option VBERestore in the device section

 

With this option now it works good also with vesafb-tng.

Thank you!!!

----------

## seppelrockt

 *conte73 wrote:*   

>  *seppelrockt wrote:*   
> 
> Note the option VBERestore in the device section 
> 
> With this option now it works good also with vesafb-tng.
> ...

 

Hey, once in a while I can help other people instead of just asking silly questions - that's a good feeling  :Wink: 

Damn, now that I have 1300 fps in 16 bit I have to realize that Neverwinter Nights doesn't run in 16 bit (colors are completely messed up). Think I have to play in WinXP and wait for the things to come in future xorg...

----------

## eis

Hi!

I would try to use your xorg file, but I have a ATI Radeon card instead of onboard graphic. What would there be to change?

I am asking because I want to prevent from more struggeling.  :Wink: 

gr, boris

----------

## allex87

This post is not for you if you have an ATi card. Just install ati-drivers and ati-drivers-extra (optional). Then run fglrxconfig and follow the prompts. You should end up with a working xorg.conf.

Regards,

Alex.

----------

## hoschi

@ Topicstarter:

Why you not just hosting the Patch and the new Ebuild?

I don't find the missing Tab or Space in your patch, and i don't want build an custom ebuild.

Why everyone must read your HowTo, if you have done allready the work for everyone.

Sorry, but i want just a solution, not ten unnecessary problems.

Put the Ebuild and Patch on the Web, say were to store them, or in den Overlay, and everybody is happy.

Thank you

This is an advice, no flame.

Now i merge 6.8.99.14 again, because i don't find the tab or space, and want just a runnig system.

----------

## seppelrockt

 *hoschi wrote:*   

> Can anybody upload the new ebuild and the agp patch please, for downloading?
> 
> 1. No more problems with spaces or tabs, or something other...
> 
> 2. less work for everybody, no more "patch errors" (i don't find the missing tab, or space, or whatever?!?!)
> ...

 

Here they are:

patched_xorg.ebuild

agp_patch

OT: It worked way better for me to copy and past the stuff from the forum into nano instead of my lovely vim.[/url]

----------

## hoschi

Thanks  :Smile: 

Fast service  :Cool: 

----------

## Tr1cH

Hi, I have xorg 6.8.99.15 and vanilla-src-2.6.12.5 but I cant get something under /dev/dri (there's no card0 or anything), the directory appeared when i started xorg for the first time. I want to know what are the options that I have to activate in the kernel.

I have this:

character devices --->

<*> /dev/agpgart (AGP support)

<*> Intel 440LX/.../I8**/... chipset support

<*> Direct Rendering Manager (...)

<M> Intel I810

<M> Intel 830M, 845G, ...

        <M> i915 driver

Graphics support --->

[*] VESA VGA graphics support

<M> Intel 810/815 support

Im loading i915 module at boot, but i dont know what to activate as a module or "build in".  :Confused: 

I applied the patch to xorg succefully and I use i810 module in my xorg.conf, load dri, and the 666 trick for the dri (for permission purposes)

But I dont know how you get something under /dev/dri because witout it, dri doesnt works under xorg.

Maybe you can add it before your how/to on how to patch xorg for i915.

and of course, I have the intel 915GM

thanks alot  :Very Happy: 

----------

## Tr1cH

duh  :Embarassed: 

it's working with this config... loll

sorry, i'm a little bit confused  :Embarassed: 

tanks for the tutorial, i have 1525 fps

----------

## VinzC

 *Tr1cH wrote:*   

> duh 
> 
> it's working with this config... loll
> 
> sorry, i'm a little bit confused 
> ...

 

(tapping gently on the back) Tsss tsss tsss...  :Wink: 

----------

## BigBaaadBob

HP DV4150. Glxgears before: 580, after 1180.  I was hoping for better, but I'll take what I can get.

----------

## Tr1cH

Dell latitude d610

Pentium m 760 2ghz

before: around 700

after: around 1500

EDIT:

by the way...

can you change:

```

echo "=xorg-x11-6.8.99.15-r1 ~x86" >> /etc/portage.package.keyword

```

to 

```

echo "=xorg-x11-6.8.99.15-r1 ~x86" >> /etc/portage/package.keyword

```

 :Wink: 

----------

## Tr1cH

When I play a movie in xine with opengl, the color are ugly

and when I try to play americas army, the color are ugly too...

is it related to this patch? maybe that dri still not have enough memory to work proprely.  :Confused: 

----------

## VinzC

 *BigBaaadBob wrote:*   

> HP DV4150. Glxgears before: 580, after 1180.  I was hoping for better, but I'll take what I can get.

 

Well, after all this is more than 100% increase and I got 50%!... What do you mean by better?

----------

## VinzC

 *Tr1cH wrote:*   

> Dell latitude d610
> 
> Pentium m 760 2ghz
> 
> before: around 700
> ...

 

That's not so bad  :Smile: 

 *Tr1cH wrote:*   

> EDIT:
> 
> by the way...
> 
> can you change:
> ...

 

Woops! done. Thanks.

----------

## VinzC

 *Tr1cH wrote:*   

> When I play a movie in xine with opengl, the color are ugly
> 
> and when I try to play americas army, the color are ugly too...
> 
> is it related to this patch? maybe that dri still not have enough memory to work proprely. 

 

You might want to tell XOrg the amount of RAM must be reserved for the video card. It also depends on the resolution and color depth.

----------

## seppelrockt

 *VinzC wrote:*   

>  *Tr1cH wrote:*   When I play a movie in xine with opengl, the color are ugly
> 
> and when I try to play americas army, the color are ugly too...
> 
> is it related to this patch? maybe that dri still not have enough memory to work proprely.  
> ...

 

As I already wrote I had this color mess too with 16bit when I wanted to play Neverwinter Nights. I checked xine DVD playback with xine + opengl now and indeed it shows bad colors. Using xv in xine shows the DVD just fine (so I never realized this problem before). So maybe yes, one should inform / ask the xorg people if they know what's wrong with opengl here.

----------

## BigBaaadBob

 *VinzC wrote:*   

> Well, after all this is more than 100% increase and I got 50%!... What do you mean by better?

 

I was hoping for about 1500 which is what I would expect from the chipset/specs...  But I'm not complaining!  :Smile: 

----------

## nuxman

i need help, i have a toshiba m45 my video card i915g, i want to apply this patch but i have some erros below 

```
patching file xorg-x11-6.8.99.15.ebuild

Hunk #1 FAILED at 33.

Hunk #2 FAILED at 491.

2 out of 2 hunks FAILED -- saving rejects to file xorg-x11-6.8.99.15.ebuild.rej

```

somebody help me  :Embarassed:  !!! but i copied and don't work !!! how do this?? sorry my english !!!

----------

## thomasa88

one way is that you open the patch and look at what is changed and change the file manually  :Wink: 

----------

## seppelrockt

 *nuxman wrote:*   

> i need help, i have a toshiba m45 my video card i915g, i want to apply this patch but i have some erros below 
> 
> ```
> patching file xorg-x11-6.8.99.15.ebuild
> 
> ...

 

The patch from the thread here will be massed up if you copy & paste cause all the tabulators will be transformed single spaces (sorry, don't know the English word for "Leerzeichen"). I have posted the link to the patches on my FTP somewere - try this ones!

----------

## gentood

Alright... 

I have hp dv4060 and I tried this guide but unfortunately unsuccessful..

my make.conf:

```

 cat /etc/make.conf

# These settings were set by the catalyst build script that automatically built this stage

# Please consult /etc/make.conf.example for a more detailed example

CFLAGS="-O2 -march=pentium-m -fomit-frame-pointer -falign-functions=64 -pipe -mmmx -msse -msse2"

#CFLAGS="-march=pentium-m -fomit-frame-pointer -msse -mmmx"

CHOST="i686-pc-linux-gnu"

CXXFLAGS="${CFLAGS} -fvisibility-inlines-hidden"

MAKEOPTS="-j2"

USE="alsa oss dvd dvdr cdr feh imagemagick mplayer win32codecs mmx mmx2 sse sse2 qt gnome -kde gtk gtk2"

GENTOO_MIRRORS="http://ds.thn.htu.se/linux/gentoo/"

CONSOLE_FONT="lat0-16"

XSESSION="fluxbox"

VIDEOCARDS="i915"

#AUTOCLEAN="yes"

#PORTAGE_NICENESS=3

LDFLAGS="-Wl,-O1"

# Wl, --enable-new-dtags -Wl, --sort-common -s"

PORT_DIR=/usr/portage

PORTDIR_OVERLAY="/usr/local/portage"

PORT_LOGDIR=/var/log/portage

```

```

# cd /usr/local/portage/x11-base/xorg-x11/

(none) xorg-x11 # ls

Manifest  files  xorg-x11-6.8.99.15-r1.ebuild

(none) xorg-x11 # ls -lR 

.:

total 60

-rw-rw-r--  1 root portage   213 Sep  4 04:08 Manifest

drwxr-xr-x  2 root root      136 Sep  4 04:08 files

-rw-r--r--  1 root root    54202 Sep  4 04:07 xorg-x11-6.8.99.15-r1.ebuild

./files:

total 8

-rw-rw-r--  1 root portage 516 Sep  4 04:08 digest-xorg-x11-6.8.99.15-r1

-rw-r--r--  1 root root    715 Sep  4 04:07 dri-lnx_agp.patch

```

This is what I did:

I downloaded the xorg-x11-6.8.99.15-r1 and the dri-lnx_agp.patch from this forum and didnt actually make them myself since I always got some damned error..

I copied them to the correct location as you can se in the code above.

When I try this:

```

 xorg-x11 # USE="dri-patch" emerge -av xorg-x11

--- Invalid atom in /etc/portage/package.keywords: =xorg-x11-6.8.99.15-r1

These are the packages that I would merge, in order:

Calculating dependencies ...done!

[ebuild   R   ] x11-base/xorg-x11-6.8.2-r2  -3dfx -3dnow +bitmap-fonts -cjk -debug -dlloader -dmx -doc -font-server -insecure-drivers +ipv6 -minimal +mmx +nls -nocxx +opengl +pam -sdk +sse -static +truetype-fonts +type1-fonts (-uclibc) -xprint +xv 0 kB 

Total size of downloads: 0 kB

Do you want me to merge these packages? [Yes/No] 

```

Which is wrong...

I was a little confused also, since I had a package.keywords and not a package.keyword as in the guide.. so I renamed mine to package.keyword:

```

xorg-x11 # cat /etc/portage/package.keyword 

~sys-devel/gcc-3.4.4 ~x86

sys-devel/gcc-config ~x86

sys-libs/libstdc++-v3 ~x86

sys-libs/glibc ~x86

=xorg-x11-6.8.99.15-r1 ~x86

```

 please help... I am going insane..

----------

## gentood

just realized my miss.. how tha hell do I install xorg 6.8.99????

I have added x11-base/xorg-x11 ~x86 to package.keywords but no result...

----------

## kottlettstanze

It is not in testing/unstable (~), but masked (-). You will need to put the full package name into a line in /etc/portage/package.unmask.

More info: http://gentoo-wiki.com/Masked

----------

## gentood

alright.. working now. will add the glxgears results when finished compiling[/code], right now its around 700 fps

cheers

----------

## gentood

alright, according to the glxinfo I get direct rendering.. but the glxgears result is silly.. jumped from 730-850 fps.. I know it should be atleast 1600..

ontop of that, now I cant play xjump for some reason, it goes super slow..

damn i810 driver.. its totally broken.. they really should make better support for the i810 driver in xorg..

----------

## kottlettstanze

Are you sure, you are running it with 16bit color depth?

----------

## allex87

Remember, to get full acceleration, use 16-bit colour mode. NOT 24!

i810 driver does not support acceleration (well?) at 24 bit, only at 16.

I run at 16, and I get ~1100-1200 fps from glxgears.

I am running nitro-sources 2.6.12-nitro5 xorg-6.8.9.whatever, the latest one in portage, and latest (as of last night) enlightenment dr17 cvs... to give you an idea of the stuff in the background.

----------

## VinzC

 *nuxman wrote:*   

> i need help, i have a toshiba m45 my video card i915g, i want to apply this patch but i have some erros below 
> 
> ```
> patching file xorg-x11-6.8.99.15.ebuild
> 
> ...

 

Follow seppelrockt's advice. Remember:

 *VinzC wrote:*   

> Note: You will be creating patches from scratch. Be careful to replace indent spaces with tabs since this is a standard for ebuild, especially. If you don't replace spaces with tabs, patch may fail with an error message like:
> 
> ```
> Code:
> 
> ...

 

@gentood:

The file /etc/portage/package.keyword is a typo error (my mistake  :Embarassed: ). It is of course Gentoo's /etc/portage/package.keywords instead.

----------

## meulie

 *allex87 wrote:*   

> Remember, to get full acceleration, use 16-bit colour mode. NOT 24!
> 
> i810 driver does not support acceleration (well?) at 24 bit, only at 16.
> 
> 

 

Not always... On my Compaq nx6110 I get a higher glxgears speed on 24 bit than on 16 bit... Only about 8% faster, but still...    :Cool: 

----------

## VinzC

 *meulie wrote:*   

>  *allex87 wrote:*   ...
> 
> i810 driver does not support acceleration (well?) at 24 bit, only at 16. 
> 
> Not always... On my Compaq nx6110 I get a higher glxgears speed on 24 bit than on 16 bit... Only about 8% faster, but still...   

 

... which could mean the implementation of the i915 chipset (as far as the video is concerned) is better on Compaq/HP laptops than on Dell's...

----------

## meulie

But the problem I do still have is that I get a max of around 550 with glxgears. Shouldn't I be able to get a bit more...?

----------

## kottlettstanze

 *meulie wrote:*   

> But the problem I do still have is that I get a max of around 550 with glxgears. Shouldn't I be able to get a bit more...?

 

Is DRI enabled? Which kernel / xorg version are you using?

glxinfo | grep -i dri ?

----------

## meulie

Hmm, I thought it was enabled, but it seems it's not!

```
  cat /var/log/Xorg.0.log | grep DRI

(II) Loading extension XFree86-DRI

        enable tiling mode for DRI.

(II) I810(0): 4584 kBytes additional video memory is required to enable DRI.

(II) I810(0): Disabling DRI.

```

How do I enable more video memory? I already have the VideoRam set to 131072

----------

## kottlettstanze

 *meulie wrote:*   

> Hmm, I thought it was enabled, but it seems it's not!
> 
> ```
>   cat /var/log/Xorg.0.log | grep DRI
> 
> ...

 

Actually: The patch why this thread was started, is a workaround for exactly this problem! Which xorg and kernel versions are you using?

----------

## meulie

xorg version: 6.8.99.15

kernel version: 2.6.12-suspend2-r6

----------

## syagin

hi after doing: patch -p0 -F3 < ~/xorg-ebuild.diff

i get:

(Patch is indented 1 space.)

patching file xorg-x11-6.8.99.15.ebuild

Hunk #1 FAILED at 33.

Hunk #2 succeeded at 491 with fuzz 3.

1 out of 2 hunks FAILED -- saving rejects to file xorg-x11-6.8.99.15.ebuild.rej

if i got it right it's due to a space where a tab should be. i looked at the original but couldn't figure out where the error is

any hint u could give me?

----------

## VinzC

```
# nano ~/xorg-ebuild.diff

# cat ~/xorg-ebuild.diff

--- xorg-x11-6.8.99.15.ebuild       2005-07-21 22:05:58.000000000 +0200

+++ xorg-x11-6.8.99.15.ebuild~   2005-07-28 22:35:41.000000000 +0200

@@ -33,7 +33,8 @@

 # IUSE="gatos" disabled because gatos is broken on ~4.4 now (31 Jan 2004)

 IUSE="3dfx bitmap-fonts cjk debug doc font-server insecure-drivers ipv6 minimal

-       nls nocxx opengl pam sdk static truetype-fonts type1-fonts uclibc xprint xv"

+       nls nocxx opengl pam sdk static truetype-fonts type1-fonts uclibc xprint xv

+       dri-patch"

 # IUSE_INPUT_DEVICES="synaptics wacom"

 FILES_VER="0.1"

@@ -490,6 +491,11 @@

        cd ${WORKDIR}

        EPATCH_SUFFIX="patch" \

        epatch ${PATCHDIR}

+

+       # Patch using DRI workaround

+       if use dri-patch; then

+               epatch ${FILESDIR}/dri-lnx_agp.patch

+       fi

        cd ${S}

 }
```

should be saved as

```
# nano ~/xorg-ebuild.diff

# cat ~/xorg-ebuild.diff

--- xorg-x11-6.8.99.15.ebuild       2005-07-21 22:05:58.000000000 +0200

+++ xorg-x11-6.8.99.15.ebuild~   2005-07-28 22:35:41.000000000 +0200

@@ -33,7 +33,8 @@

 # IUSE="gatos" disabled because gatos is broken on ~4.4 now (31 Jan 2004)

 IUSE="3dfx bitmap-fonts cjk debug doc font-server insecure-drivers ipv6 minimal

-[tab]nls nocxx opengl pam sdk static truetype-fonts type1-fonts uclibc xprint xv"

+[tab]nls nocxx opengl pam sdk static truetype-fonts type1-fonts uclibc xprint xv

+[tab]dri-patch"

[s]# IUSE_INPUT_DEVICES="synaptics wacom"

[s]FILES_VER="0.1"

@@ -490,6 +491,11 @@

[s][tab]cd ${WORKDIR}

[s][tab]EPATCH_SUFFIX="patch" \

[s][tab]epatch ${PATCHDIR}

+

+[tab]# Patch using DRI workaround

+[tab]if use dri-patch; then

+[tab][tab]epatch ${FILESDIR}/dri-lnx_agp.patch

+[tab]fi

[s][tab]cd ${S}

[s]}
```

[tab] should be replaced with a TABulation, [s] with a single space. The first column in the patch is a single character, i.e. a plus sign, a minus sign or a space.

----------

## syagin

thanx for the reply patching xorg no works still complains bout not got format but doesn't stop or gives an error.

but as i want to emerge xorg it complains about this:

QA Notice: USE Flag 'dri-patch' not in IUSE for x11-base/xorg-x11-6.8.99.15-r1

 * Applying dri-lnx_agp.patch ...

 * Failed Patch: dri-lnx_agp.patch !

 *  ( /usr/local/portage/x11-base/xorg-x11/files/dri-lnx_agp.patch )

 *

 * Include in your bugreport the contents of:

 *

 *   /var/tmp/portage/xorg-x11-6.8.99.15-r1/temp/dri-lnx_agp.patch-11821.out

!!! ERROR: x11-base/xorg-x11-6.8.99.15-r1 failed.

!!! Function epatch, Line 361, Exitcode 0

!!! Failed Patch: dri-lnx_agp.patch!

!!! If you need support, post the topmost build error, NOT this status message.

and in the log it says:

***** dri-lnx_agp.patch *****

=============================

PATCH COMMAND:  patch -p0 -g0 --no-backup-if-mismatch < /usr/local/portage/x11-base/xorg-x11/files/dri-lnx_agp.patch

=============================

(Patch is indented 1 space.)

can't find file to patch at input line 6

Perhaps you used the wrong -p or --strip option?

The text leading up to this was:

--------------------------

|Note: This patch has been tweaked by VinzC to be applied using portage

| Source: http://www.gentoo-wiki.com/HARDWARE_Samsung_X20#DRI.2C_Xvideo_and_co.

| --- xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c   2005-07-03 09:01:32.000000000 +0200

| +++ xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c

|2005-07-28 13:26:41.000000000 +0200

--------------------------

No file to patch.  Skipping patch.

1 out of 1 hunk ignored

=============================

PATCH COMMAND:  patch -p1 -g0 --no-backup-if-mismatch < /usr/local/portage/x11-base/xorg-x11/files/dri-lnx_agp.patch

=============================

(Patch is indented 1 space.)

can't find file to patch at input line 6

Perhaps you used the wrong -p or --strip option?

The text leading up to this was:

--------------------------

|Note: This patch has been tweaked by VinzC to be applied using portage

| Source: http://www.gentoo-wiki.com/HARDWARE_Samsung_X20#DRI.2C_Xvideo_and_co.

| --- xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c   2005-07-03 09:01:32.000000000 +0200

| +++ xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c

|2005-07-28 13:26:41.000000000 +0200

--------------------------

No file to patch.  Skipping patch.

1 out of 1 hunk ignored

=============================

PATCH COMMAND:  patch -p2 -g0 --no-backup-if-mismatch < /usr/local/portage/x11-base/xorg-x11/files/dri-lnx_agp.patch

=============================

(Patch is indented 1 space.)

can't find file to patch at input line 6

Perhaps you used the wrong -p or --strip option?

The text leading up to this was:

--------------------------

|Note: This patch has been tweaked by VinzC to be applied using portage

| Source: http://www.gentoo-wiki.com/HARDWARE_Samsung_X20#DRI.2C_Xvideo_and_co.

| --- xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c   2005-07-03 09:01:32.000000000 +0200

| +++ xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c

|2005-07-28 13:26:41.000000000 +0200

--------------------------

No file to patch.  Skipping patch.

1 out of 1 hunk ignored

=============================

PATCH COMMAND:  patch -p3 -g0 --no-backup-if-mismatch < /usr/local/portage/x11-base/xorg-x11/files/dri-lnx_agp.patch

=============================

(Patch is indented 1 space.)

can't find file to patch at input line 6

Perhaps you used the wrong -p or --strip option?

The text leading up to this was:

--------------------------

|Note: This patch has been tweaked by VinzC to be applied using portage

| Source: http://www.gentoo-wiki.com/HARDWARE_Samsung_X20#DRI.2C_Xvideo_and_co.

| --- xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c   2005-07-03 09:01:32.000000000 +0200

| +++ xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c

|2005-07-28 13:26:41.000000000 +0200

--------------------------

No file to patch.  Skipping patch.

1 out of 1 hunk ignored

=============================

PATCH COMMAND:  patch -p4 -g0 --no-backup-if-mismatch < /usr/local/portage/x11-base/xorg-x11/files/dri-lnx_agp.patch

=============================

(Patch is indented 1 space.)

can't find file to patch at input line 6

Perhaps you used the wrong -p or --strip option?

The text leading up to this was:

--------------------------

|Note: This patch has been tweaked by VinzC to be applied using portage

| Source: http://www.gentoo-wiki.com/HARDWARE_Samsung_X20#DRI.2C_Xvideo_and_co.

| --- xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c   2005-07-03 09:01:32.000000000 +0200

| +++ xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c

|2005-07-28 13:26:41.000000000 +0200

--------------------------

No file to patch.  Skipping patch.

1 out of 1 hunk ignored

sorry i know it's a bit long, but i need help can't even watch dvd. i've got 500 fps with glx gears and i'm going mad.

i've got two options:

1. putting windows on it

2. throwing it out of the window (wich would be the better option, compared working with windows)

so please help

----------

## VinzC

 *syagin wrote:*   

> thanx for the reply patching xorg no works still complains bout not got format but doesn't stop or gives an error.
> 
> [...]

 

Did you try seppelrockt's copies of the patches?

----------

## meulie

 *meulie wrote:*   

> xorg version: 6.8.99.15
> 
> kernel version: 2.6.12-suspend2-r6

 

Did the correct patching & rebuilding, and now I get 1250 from glxgears on my HP Compaq nx6110!    :Smile: 

----------

## syagin

i tried copy and paste from the post but how does it work with the linx given with the patched xorg and the agp patch looks wiered

----------

## BigBaaadBob

Why aren't people simply downloading and using the modified ebuild posted earlier in this thread here?

----------

## gentood

Questions:

```

estergon ~ # cat /var/log/Xorg.0.log | grep EE

Current Operating System: Linux estergon 2.6.13-mm1 #2 SMP PREEMPT Sat Sep 10 02:13:33 CEST 2005 i686

        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.

(EE) Failed to load /usr/lib/modules/extensions/libGLcore.so

(EE) Failed to load module "GLcore" (loader failed, 7)

(II) Loading extension MIT-SCREEN-SAVER

estergon ~ # cat /var/log/Xorg.0.log | grep WW

        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.

(WW) I810: No matching Device section for instance (BusID PCI:0:2:1) found

(WW) I810(0): Bad V_BIOS checksum

(WW) I810(0): Bad V_BIOS checksum

(WW) I810(0): config file hsync range 45.7143-50.5263kHz not within DDC hsync ranges.

(WW) I810(0): Bad V_BIOS checksum

(WW) I810(0): Extended BIOS function 0x5f05 failed.

```

how come it cant load libGLcore or GLcore? 

What is DDC? is it neccessary?

I feel like it takes to long to start X. I have only fluxbox installed and I remember on my other laptop it justed swooshed into X.. 

this is my xorg.conf:

```

Section "ServerLayout"

   Identifier     "X.org Configured"

   Screen      0  "Widescreen"

   InputDevice    "Touchpad" "CorePointer"

   InputDevice    "USBMouse" "SendCoreEvents"

   InputDevice    "Keyboard" "CoreKeyboard"

EndSection

Section "Files"

   RgbPath      "/usr/lib/X11/rgb"

   ModulePath   "/usr/lib/modules"

   FontPath     "/usr/share/fonts/misc/"

   FontPath     "/usr/share/fonts/TTF/"

   FontPath     "/usr/share/fonts/Type1/"

#   FontPath     "/usr/share/fonts/CID/"

   FontPath     "/usr/share/fonts/75dpi/"

   FontPath     "/usr/share/fonts/100dpi/"

EndSection

Section "Module"

   Load  "ddc"

   Load  "GLcore"

   Load  "glx"

   Load  "extmod"

   Load  "xtrap"

   Load  "record"

   Load  "dbe"

   Load  "dri"

   Load  "freetype"

   Load  "type1"

EndSection

Section "InputDevice"

   Identifier  "Keyboard"

   Driver      "kbd"

   Option       "XkbLayout"   "se"

EndSection

Section "InputDevice"

   Identifier "Touchpad"

   Driver "synaptics"

   Option "Emulate3Buttons"          "true"

   Option "SendCoreEvents"             "yes"

   Option "Protocol"                   "auto-dev"

   Option "Device"                     "/dev/input/event2"

   Option "LeftEdge"                   "120"

   Option "RightEdge"                  "830"

   Option "TopEdge"                    "120"

   Option "BottomEdge"                 "650"

   Option "FingerLow"                  "14"

   Option "FingerHigh"                 "15"

   Option "MaxTapTime"                 "130"

   Option "MaxTapMove"                 "5"

   Option "EmulateMidButtonTime"       "75"

   Option "VertScrollDelta"            "20"

   Option "HorizScrollDelta"           "40"

   Option "MinSpeed"                   "0.4"

   Option "MaxSpeed"                   "0.85"

   Option "AccelFactor"                "0.035"

   Option "EdgeMotionMinSpeed"         "200"

   Option "EdgeMotionMaxSpeed"         "200"

   Option "UpDownScrolling"            "1"

   Option "CircularScrolling"          "1"

   Option "CircScrollDelta"            "0.1"

   Option "CircScrollTrigger"          "7"

   Option "TapButton1"                 "1"

   Option "TapButton2"                 "2"

   Option "TapButton3"                 "3"

   Option "LockedDrops"                "1"

EndSection

Section "InputDevice"

   Identifier  "USBMouse"

   Driver      "mouse"

   Option      "Protocol"              "ExplorerPS/2"

   Option      "Device"                "/dev/input/mouse2"

   Option      "Emulate3Buttons"       "false"

   Option      "ZAxisMapping"          "4 5"

EndSection

Section "Monitor"

   Identifier   "WXGA"

#   HorizSync   31.5-100

#   VertRefresh   30-90

   Option      "DPMS"

   UseModes   "16:10"

EndSection

Section "Modes"

   Identifier   "16:10"

   Modeline "1280x800_60.00"  83.46  1280 1344 1480 1680  800 801 804 828 

EndSection

Section "Device"

   Identifier   "i915GM"

   Option      "VBERestore"   "true"

   Option      "XVideo"   "true"

        Option      "NoAccel"   "false"

        Option         "DRI"      "true"

   Driver      "i810"

   VideoRam   131072   

   VendorName   "Intel Corporation"

   BoardName   "Mobile 915GM/GMS/910GML Express Graphics Controller"

   BusID      "PCI:0:2:0"

EndSection

Section "Screen"

   Identifier "Widescreen"

   Device     "i915GM"

   Monitor    "WXGA"

   DefaultDepth 16

   SubSection "Display"

      Viewport   0 0

      Depth      16

      Modes      "1280x800"

   EndSubSection

EndSection

Section "DRI"

   Mode 0666

EndSection

```

Is it possible to implement this fix for dri for dri snapshots that are newer and would giv better performance?

my System info:

```

estergon log # emerge info

Portage 2.0.51.22-r2 (default-linux/x86/2005.1, gcc-3.4.4, glibc-2.3.4.20041102-r1, 2.6.13-mm1 i686)

=================================================================

System uname: 2.6.13-mm1 i686 Intel(R) Pentium(R) M processor 1.73GHz

Gentoo Base System version 1.6.12

dev-lang/python:     2.3.5

sys-apps/sandbox:    1.2.11

sys-devel/autoconf:  2.13, 2.59-r6

sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5

sys-devel/binutils:  2.15.92.0.2-r10

sys-devel/libtool:   1.5.18-r1

virtual/os-headers:  2.6.11-r2

ACCEPT_KEYWORDS="x86 ~x86"

AUTOCLEAN="yes"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-O2 -march=pentium-m -fomit-frame-pointer -falign-functions=64 -pipe -mmmx -msse -msse2"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control"

CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"

CXXFLAGS="-O2 -march=pentium-m -fomit-frame-pointer -falign-functions=64 -pipe -mmmx -msse -msse2 -fvisibility-inlines-hidden"

DISTDIR="/usr/portage/distfiles"

FEATURES="autoconfig distlocks sandbox sfperms strict"

GENTOO_MIRRORS="http://ds.thn.htu.se/linux/gentoo/"

LDFLAGS="-Wl,-O1"

MAKEOPTS="-j2"

PKGDIR="/usr/portage/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY="/usr/local/portage"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="x86 X alsa apm arts avi berkdb bitmap-fonts cdr crypt cups dga dri dvd dvdr eds emboss encode fam feh foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 imagemagick imlib ipv6 jpeg libg++ libwww mad mikmod mmx mmx2 motif mp3 mpeg ncurses nls ogg oggvorbis opengl oss pam pdflib perl png python qt quicktime readline sdl spell sse sse2 ssl svga tcpd tiff truetype truetype-fonts type1-fonts vorbis win32codecs xinerama xml2 xmms xv zlib video_cards_i810 video_cards_i915 userland_GNU kernel_linux elibc_glibc"

Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LINGUAS

```

----------

## kottlettstanze

DDC is a standard for communication over your monitor cable, it is basically used for PnP. You don't need it as long you know the abilities of your monitor. Sometimes it even seems to be neccessary to switch it off (e.g. if it is buggy, some good modes will get disabled otherwise).

X actually doesnt need a long time to load, this is purely a thing of the i810 driver. If you look at the Xorg log, you might see that the initialization is somehow done twice (whyever). I hope this will get better in late kernel versions (the problem still persists in 2.6.13).

I wouldn't recommend the snapshots. There was no advantage for most people, and they can really cause some instability...

----------

## syagin

i got it to work... dri is on 

can watch dvd's no and the cpu runs @ lower rate now

thanx guys... the patched ebuild worx great

----------

## VinzC

 *BigBaaadBob wrote:*   

> Why aren't people simply downloading and using the modified ebuild posted earlier in this thread here?

 

 *Someone who was not me wrote:*   

> Give a man a fish and he will eat for the day. Teach him how to fish and he will eat for the rest of his life.

 

----------

## BigBaaadBob

 *VinzC wrote:*   

>  *BigBaaadBob wrote:*   Why aren't people simply downloading and using the modified ebuild posted earlier in this thread here? 
> 
>  *Someone who was not me wrote:*   Give a man a fish and he will eat for the day. Teach him how to fish and he will eat for the rest of his life. 

 

Riiight....  :Rolling Eyes: 

----------

## bdz

I think I have the same problem as this thread is talking about:

```
(**) |   |-->Device "i810Drv"

# grep  -i i810 /var/log/Xorg.0.log

(II) LoadModule: "i810"

(II) Loading /usr/lib/modules/drivers/i810_drv.so

(II) Module i810: vendor="X.Org Foundation"

(II) I810: Driver for Intel Integrated Graphics Chipsets: i810, i810-dc100,

        i810e, i815, i830M, 845G, 852GM/855GM, 865G, 915G, E7221 (i915),

(WW) I810: No matching Device section for instance (BusID PCI:0:2:1) found

...

(II) I810(0): Integrated Graphics Chipset: Intel(R) 915GM

(--) I810(0): Chipset: "915GM"

...

(II) I810(0): I830CheckAvailableMemory: -545528352 kB available

...

(WW) I810(0): /dev/agpgart is either not available, or no memory is available

(II) I810(0): Monitoring connected displays enabled

(WW) I810(0): VideoRAM reduced to 32508 kByte (limited to available sysmem)

...
```

So I want to give a try to the patch procedure gven in the first post of the thread.

But I don't find the xorg-x11-6.8.99.15.ebuild file. Instead I have a "r2" ebuild: xorg-x11-6.8.99.15-r2.ebuild

Is it safe to apply the patch on this ebuild?

If yes, shoud I still use "r1" for the patched ebuild or shoud I use "r3"?

Edit:

Well I tried it, naming xorg-x11-6.8.99.15-r3.ebuild my patched ebuild and it is working.

Before I had no direct rendring and glxgears performing like this

```
$ glxgears

1569 frames in 5.0 seconds = 313.754 FPS

2257 frames in 5.0 seconds = 451.303 FPS

2931 frames in 5.0 seconds = 586.122 FPS

2906 frames in 5.0 seconds = 581.015 FPS
```

And with the patch I have this:

```
$ glxinfo | grep -i direct

direct rendering: Yes

$ glxgears

5756 frames in 5.0 seconds = 1151.184 FPS

5811 frames in 5.0 seconds = 1162.155 FPS

5651 frames in 5.0 seconds = 1130.108 FPS

5812 frames in 5.0 seconds = 1162.373 FPS
```

I am using 24 bits colors. I tried to switch to 16 bits to see if I can get more FPS but I had similar results. So I went back to 24 bits.

Thank you very much to all of you.   :Smile: 

Edit 2:

The patch made direct rendering working but it caused a problem when switching back to text console mode. The display was completely messed up. I had to reboot.

I tried the VBERestore option, but it did not worked.

I also tried to replace vesafb_tng by the old vesafb. This one is working but only if I keep the ugly 640x380 default resolution.

My flat panel resolution is 1280x800 and I failed to find a way to set this resolution with vesafb

Moreover If I use kernel boot parameters like "video=vesafb vga=788" or "video=vesafb vga=791" to have 800x600 or 1024x768 resolution then I have the "console display messed up" problem again.

Does anyone has an idea of how I could have a frame buffer display at 1280x800 resolution without any problem when switching back from xorg?

----------

## VinzC

Happy to read it worked for you, bdz. Unfortunately the screen corruption with vesa-tng is well known and I'm afraid there is no fix yet for it but cope with 4/3 screen ratio and vesafb.

----------

## bdz

Yes that is what I'm doing. I stay with the default 640x380 resolution on the console. Actually it is not a big problem. I do not use the console mode a lot, only at login and when my xorg is not working because I messed up the configuration  :Wink: 

I have direct rendering working and I can now read DVD with my CPU almost idle and my fan that stay silent. I don't ask for more  :Smile: 

And maybe a future release of vesafb-tng and/or xorg will fix the problem... then I will be able to put a nice bootsplash at 1280x800   :Very Happy: 

And thank you again fo the patch!!!

----------

## soigres

hi

i'm using vesa driver and all works well... the only thing wrong is that when i play divx video with mplayer i can't use xv video output and so i have to use x11 video output... but i see videos in 480x576 aspect ratio... why? does it depend on the driver if i can't use xv video output?

----------

## bdz

I may be wrong but I think that the xv output does not work with the vesa driver.

----------

## soigres

 *bdz wrote:*   

> I may be wrong but I think that the xv output does not work with the vesa driver.

 can i use another driver that is neither vesa nor i810?

hey... and what about the driver downloadable on www.intel.com?

----------

## bdz

I have not tried the driver from Intel. But why don't you want to use the i810 driver?

----------

## VinzC

If I remember correctly the driver from Intel is "incorporated" - i.e. used - in Xorg.

----------

## soigres

 *VinzC wrote:*   

> If I remember correctly the driver from Intel is "incorporated" - i.e. used - in Xorg.

 i found many x.org config files on the internet with the relative .config kernel but in my case still doesn't work... no screens found error comes everytime i try... i'll try again another time

----------

## seppelrockt

@ bdz: I have vesafb (vanilla-sources) working in 1280x800 without messing up the console. This is the line in grub.conf:

```
kernel /linux-2.6.12.5-hdparm-1005 root=/dev/sda6 vga=0x364 splash=silent,fadein

,theme:widescreen quiet CONSOLE=/dev/tty1

```

Last edited by seppelrockt on Sun Oct 30, 2005 10:32 am; edited 1 time in total

----------

## VinzC

 *seppelrockt wrote:*   

> @ bdz: I have vesafb (vanilla-sources) working in 1280x800 without messing up the console. This is the line iun grub.conf:
> 
> ```
> ... vga=0x364 splash=silent,fadein,theme:widescreen...
> ```
> ...

 

Where did you get that video mode??

----------

## seppelrockt

 *VinzC wrote:*   

>  *seppelrockt wrote:*   @ bdz: I have vesafb (vanilla-sources) working in 1280x800 without messing up the console. This is the line iun grub.conf:
> 
> ```
> ... vga=0x364 splash=silent,fadein,theme:widescreen...
> ```
> ...

 

Sorry, I don't know the source anymore. I googled a lot and found it somewhere in the www ...

EDIT: If you ask because of your 1600x1050 (?) resolution, I admit that this resolution was not in the table where I get the video mode for 1280x800. I'm sorry.

----------

## VinzC

 *seppelrockt wrote:*   

> Sorry, I don't know the source anymore. I googled a lot and found it somewhere in the www ...
> 
> EDIT: If you ask because of your 1600x1050 (?) resolution, I admit that this resolution was not in the table where I get the video mode for 1280x800. I'm sorry.

 

No problem, it's far more than nothing at all. If I enable screen scaling with that mode the result is the same as if I had found the mode for 1680x1050. Only the ratio truely matters. I'm going to try ASAP  :Smile: . Thanks.

P.S.: if you happen to get back to the place where you found that mode maybe it's worth asking the author for other resolutions, just in case...

----------

## Dumbkiwi

I've got dri working using the patches/instructions in this thread, however I'm having trouble with the framebuffer.  I've enabled vesafb-tng and just plain vesafb, and I get the same result with both.  When X starts in the boot process, the screen goes black, and that's it - reboot required.  I've tried both framebuffers in 24bit and 16 bit mode.  Can anyone suggest how I might be able to fix this?

Thanks

----------

## VinzC

 *Dumbkiwi wrote:*   

> I've got dri working using the patches/instructions in this thread, however I'm having trouble with the framebuffer.  I've enabled vesafb-tng and just plain vesafb, and I get the same result with both.  When X starts in the boot process, the screen goes black, and that's it - reboot required.  I've tried both framebuffers in 24bit and 16 bit mode.  Can anyone suggest how I might be able to fix this?
> 
> Thanks

 

Have you tried to start X while your kernel had no framebuffer support - i.e. remove framebuffer support from your kernel and start X?

----------

## seppelrockt

 *VinzC wrote:*   

>  *seppelrockt wrote:*   Sorry, I don't know the source anymore. I googled a lot and found it somewhere in the www ...
> 
> EDIT: If you ask because of your 1600x1050 (?) resolution, I admit that this resolution was not in the table where I get the video mode for 1280x800. I'm sorry. 
> 
> No problem, it's far more than nothing at all. If I enable screen scaling with that mode the result is the same as if I had found the mode for 1680x1050. Only the ratio truely matters. I'm going to try ASAP . Thanks.
> ...

 

I remembered that I already wrote the hind down in the Dell I6000 thread and when I reread my post there it turned out that I "stole" the VGA mode from a SuSE Live CD. You can try the following:

Burn a SuSE Live CD. Boot from the Live CD - in the boot menu you can look whether your resolution is supported (1280x800 was). Choose your resolution, than go into grub console mode by pressing "q" and look at the vga mode offered in the kernel boot line (pressing "e").

You don't even have to boot that, well - "other" distro  :Wink: 

----------

## VinzC

 *seppelrockt wrote:*   

> I remembered that I already wrote the hind down in the Dell I6000 thread and when I reread my post there it turned out that I "stole" the VGA mode from a SuSE Live CD. You can try the following:
> 
> Burn a SuSE Live CD. Boot from the Live CD - in the boot menu you can look whether your resolution is supported (1280x800 was). Choose your resolution, than go into grub console mode by pressing "q" and look at the vga mode offered in the kernel boot line (pressing "e").
> 
> You don't even have to boot that, well - "other" distro 

 

Good. There is also another way, much longer I presume: do the same with grub, i.e. edit the line in grub that sets the video mode, vga=xxx and try other video modes. This is what I did to check whether 0x364 worked on my system - and it did.

Since I expect the video mode to be like 0x36[n] or something, one could have a chance to get to the corret video mode for 1680x1050. But I'll try booting with SuSe anyway.

----------

## bdz

 *seppelrockt wrote:*   

> @ bdz: I have vesafb (vanilla-sources) working in 1280x800 without messing up the console. This is the line in grub.conf:
> 
> ```
> kernel /linux-2.6.12.5-hdparm-1005 root=/dev/sda6 vga=0x364 splash=silent,fadein
> 
> ...

 

I tried this vga mode and it is not working on my laptop. I still have the console messed up when I switch back from xorg.

----------

## seppelrockt

 *bdz wrote:*   

>  *seppelrockt wrote:*   @ bdz: I have vesafb (vanilla-sources) working in 1280x800 without messing up the console. This is the line in grub.conf:
> 
> ```
> kernel /linux-2.6.12.5-hdparm-1005 root=/dev/sda6 vga=0x364 splash=silent,fadein
> 
> ...

 

If you have VBERestore in your xorg.conf, then comment it out - it is not needed and messes up the console in this case.

----------

## bdz

@seppelrockt: Thank you very much to remember me that VBERestore option. It made the difference. I played with it some weeks ago and I forgot it was in my xorg.conf.

After more that 20 reboots I also found other working vga modes and some interesting information.

I tried other vga modes in the same range as 0x364. It turns out that I can use any mode from 0x360 to 0x36b. They all give me 120x800 resolution with 8, 16 or 32 color depth.

And after some googling I tried to use vbetest from the sys-libs/lrmi package.

On my laptop its output is the following:

```
quasar ~ # vbetest

VBE Version 3.0

Intel(r)915GM/910ML/915MS Graphics Chip Accelerated VGA BIOS

[352] 1280x800 (256 color palette)

[353] 1280x800 (5:6:5)

[354] 1280x800 (8:8:8)

[355] 1280x800 (256 color palette)

[356] 1280x800 (5:6:5)

[357] 1280x800 (8:8:8)

[358] 1280x800 (256 color palette)

[359] 1280x800 (5:6:5)

[360] 1280x800 (8:8:8)

[361] 1280x800 (256 color palette)

[362] 1280x800 (5:6:5)

[363] 1280x800 (8:8:8)

[261] 1024x768 (256 color palette)

[279] 1024x768 (5:6:5)

[280] 1024x768 (8:8:8)

[274] 640x480 (8:8:8)

[276] 800x600 (5:6:5)

[277] 800x600 (8:8:8)

[257] 640x480 (256 color palette)

[259] 800x600 (256 color palette)

[273] 640x480 (5:6:5)

Type a mode number, or 'q' to quit - q
```

If you take the numbers of the 1280x800 resolutions (352 to 363) and you convert them to hex it gives 0x160 to 0x16b. Add 0x200 to that and you have the vga modes I found by trying all the numbers around 0x364.

Another place where I found my modes is in xorg log:

```
quasar ~ # grep '(1280x800)' /var/log/Xorg.0.log

Mode: 60 (1280x800)

Mode: 61 (1280x800)

*Mode: 62 (1280x800)

Mode: 63 (1280x800)

Mode: 64 (1280x800)

*Mode: 65 (1280x800)

Mode: 66 (1280x800)

Mode: 67 (1280x800)

*Mode: 68 (1280x800)

Mode: 69 (1280x800)

Mode: 6a (1280x800)

*Mode: 6b (1280x800)
```

----------

## Dumbkiwi

 *VinzC wrote:*   

>  *Dumbkiwi wrote:*   I've got dri working using the patches/instructions in this thread, however I'm having trouble with the framebuffer.  I've enabled vesafb-tng and just plain vesafb, and I get the same result with both.  When X starts in the boot process, the screen goes black, and that's it - reboot required.  I've tried both framebuffers in 24bit and 16 bit mode.  Can anyone suggest how I might be able to fix this?
> 
> Thanks 
> 
> Have you tried to start X while your kernel had no framebuffer support - i.e. remove framebuffer support from your kernel and start X?

 

Yes, X works fine with dri and xv if I don't specify fb support in my kernel parameters in grub.conf.  But I'd like to get both fb support and X working.

----------

## VinzC

 *bdz wrote:*   

> @seppelrockt: Thank you very much to remember me that VBERestore option. It made the difference. I played with it some weeks ago and I forgot it was in my xorg.conf.
> 
> After more that 20 reboots I also found other working vga modes and some interesting information.
> 
> I tried other vga modes in the same range as 0x364. It turns out that I can use any mode from 0x360 to 0x36b. They all give me 120x800 resolution with 8, 16 or 32 color depth.
> ...

 

Goddamn! had I known it before I wouldn't have banged my head against the wall for so long!  :Wink: 

You know that just works!? I ran vbetest on my machine and I got these modes:

```
$ sudo vbetest

Password:

VBE Version 3.0

Intel(r)915GM/910ML/915MS Graphics Chip Accelerated VGA BIOS

[352] 1680x1050 (256 color palette)

[353] 1680x1050 (5:6:5)

[354] 1680x1050 (8:8:8)

[355] 1280x800 (256 color palette)

[356] 1280x800 (5:6:5)

[357] 1280x800 (8:8:8)

[263] 1280x1024 (256 color palette)

[282] 1280x1024 (5:6:5)

[283] 1280x1024 (8:8:8)

[261] 1024x768 (256 color palette)

[279] 1024x768 (5:6:5)

[280] 1024x768 (8:8:8)

[274] 640x480 (8:8:8)

[276] 800x600 (5:6:5)

[277] 800x600 (8:8:8)

[257] 640x480 (256 color palette)

[259] 800x600 (256 color palette)

[273] 640x480 (5:6:5)

Type a mode number, or 'q' to quit - q
```

I added 0x200 to the hex value of 353. Why that mode? It corresponds to a 16-bit framebuffer console. So does 0x364 on my machine (i.e. mode 356). I used the mode with my kernel and that did the trick. Thanks a lot for the hint.

EDIT: typo... 353 and not 354!

----------

## bdz

Glad to know it is also working for you.

But isn't your 354 mode 32 bits and not 16 bits?

```
[352] 1680x1050 (256 color palette)

[353] 1680x1050 (5:6:5)

[354] 1680x1050 (8:8:8) 
```

352 : 256 colors = 8 bits palette

353 : 5+6+5 = 16 bits true color

354 : 8+8+8 = 32 bits true color

----------

## VinzC

 *seppelrockt wrote:*   

> Burn a SuSE Live CD.

 

Well, you should have said "Live DVD" for SuSe Live is now available only on DVD; and I have no VDD burner as I chose the CD-writer combo. Nevermind I figured out the video mode anyway.

----------

## VinzC

 *bdz wrote:*   

> Glad to know it is also working for you.
> 
> But isn't your 354 mode 32 bits and not 16 bits?
> 
> ```
> ...

 

 :Embarassed:  typo... I did use 353 indeed.

----------

## Kalmairn

First, I want to thank VinzC for all the effort that was put into this.  I learned something that I really wanted to know how to do - Portage Overlays - and that itself made the effort worthwhile.

Unfortunately, this patch is not working for me.  I have verified that the patch applies correctly (I looked at lnx_agp.c and saw the date was changed and the patchcode was added to the file.  Before I applied the patch I was getting 805-815fps in glxgears, after I'm getting .... 805-815.  Absolutely no change, unfortunately.

I have a Dell D410 with 915GM, running at 1024x768x24 (yes, 24).  When I first built this system I was able to get 1500-ish fps in glxgears 1024x768x24 with only manipulation to Xorg and x11-drm, but then I did an emerge -up world at some point and it all broke.  I've since rebuilt (another story, moving on   :Embarassed:  ), and still have the same problem.

I don't have the laptop here, so I'll pose some questions and ask that if there is specific documentation from the laptop anyone would like to see.  I'll be happy to post tonight.

Some specifics:

Dell D410, 2GB RAM, i915GM Video, using integrated LCD 1024x768.

Profile: 2005.1

Kernel: 2.6.12-gentoo

X: 6.8.99.15-r4

x11-drm: not installed; previously installed but removed

i915 DRM: module, loaded

Misc Modules: agpgart, intel_agp both loaded.

Not running FB, 80x25 standard only.

Prior to trying these steps last night I was getting the same memory problems indicated by others previously: only about 8MB allocated (which I see in the BIOS, but can't change), -5millionsomething memory available (the laptop has 2GB), DRI disabled because of a lack of memory.

a) Has anyone else seen this problem, particularly with a Dell D410 or perhaps the D610?

b) Should I be using x11-drm?  I don't see this in the documentation so I removed it and removed the driver from /lib/modules, depmod -ae.

c) Has anyone tried the 7.00-rc1 (or similar) Xorg package?  It's hard-masked, I've not taken the time to unmask and test it yet.

d) Anything else I should be looking for/at?

Thanks,

Kal.

----------

## VinzC

@Kalmairn:

You should first check whether DRI is enabled or not.

```
grep dr[im] /var/log/Xorg.0.log
```

Post the results and we'll check.

b) x11-drm is only for ATI hence useless here.

c) sepperockt has successfully tried xorg 7. You have to put the same packages in /etc/portage/package.keywords (with ~ARCH flag) and /etc/portage/package.unmask.

----------

## Kalmairn

I'll get the output on the grep this evening, thanks for the reply.

b) x11-drm does have i915 drivers in it - as well as i810 drivers.  I've never compared them to those included in 2.6.12, and I am wondering if the kernel-sources are at least as current as x11-drm.

c) There appears to be a long list of dependencies for Xorg7.  I actually started to add packages to /etc/portage/package.keywords and /etc/portage/package.unmask, but since I'm not smart enough with emerge (and consistently fail to read manpages closely enough  :Smile:  ) I've not managed to produce a full list of masked dependencies with just one command for easy handling, so I run an emerge, add the package to package.keywords and package.unmask, rinse, repeat.

Kal.

----------

## VinzC

 *Kalmairn wrote:*   

> I'll get the output on the grep this evening, thanks for the reply.
> 
> b) x11-drm does have i915 drivers in it - as well as i810 drivers.  I've never compared them to those included in 2.6.12, and I am wondering if the kernel-sources are at least as current as x11-drm.

 

When I read Gentoo DRI guide it was only for ATI. It seems the guide has been updated since then. It was a couple of months ago. Anyway I've looked up at DRI web site and the status of i915 support is unknown as per the FeatureMatrix.

 *Kalmairn wrote:*   

> c) There appears to be a long list of dependencies for Xorg7.  I actually started to add packages to /etc/portage/package.keywords and /etc/portage/package.unmask, but since I'm not smart enough with emerge (and consistently fail to read manpages closely enough  ) I've not managed to produce a full list of masked dependencies with just one command for easy handling, so I run an emerge, add the package to package.keywords and package.unmask, rinse, repeat.

 

Didn't you paste seppelrockt list from his post?

----------

## Kalmairn

First, the good news.  DRI is working on the laptop, I'm getting 1100fps.  Not a huge gain, but DVDs play smoothly now so I'm happy.

This is what the problem appears to have been: /dev/dri/card0 didn't exist.  Unloading/reloading the drm and i915 modules didn't help, so I finally (gasp!) rebooted - and suddenly I saw /dev/dri/card0.  I had uninstalled the x11-drm package, so I wonder if unloading that module b0rk3d things up to the point that the kernel i915 driver couldn't recover.  Whatever the case, life is good.

 *Quote:*   

> When I read Gentoo DRI guide it was only for ATI. It seems the guide has been updated since then.

 

I was using the x11-drm package in my previous install; I'm not sure which version I used, but I did achieve happiness somehow - hence the repeated effort.  Regardless, your instructions actually worked and function today is much more important than some memory of function.  Once again, thanks for your efforts.

 *Quote:*   

> Didn't you paste seppelrockt list from his post?

 

No, I hadn't gone home to try it in that interceding time and hadn't tried to find a list last night when I worked on it.  Now that you've kindly provided the link, I may well upgrade to Xorg7 here over the weekend.  It depends on how brave I am - I'm about to go on travel and need this baby to work!  :Smile: 

Thanks again!

edit:   :Embarassed: 

----------

## seppelrockt

OK, xorg-x11 -7.0.0_RC2 is out (so good time to move  :Wink: ). 

And kernel 2.6.15_rc1 (which is out today) might solve our MTRR error messages:

 *Quote:*   

> [PATCH] vesafb: Disable mtrr as the default
> 
>     vesafb occassionally gets the size wrong when setting the mtrr.  When X or DRI
> 
>     attempts to set the mtrr, it will fail due to range overlap significantly
> ...

 

[OT] Given the fact that KDE 3.5 RC1 is out, too - what a perfect Open Source Weekend!

----------

## VinzC

 *seppelrockt wrote:*   

> ...
> 
> And kernel 2.6.15_rc1 (which is out today) might solve our MTRR error messages:
> 
>  *Quote:*   [PATCH] vesafb: Disable mtrr as the default
> ...

 

Well it might explain why I'm getting so many problems with suspend2-sources-2.6.14, especially with Xorg. No display, black screen, X restarting for ever... PIA! Got back to my good ol' 2.6.12-suspend2-r5.

BTW, seppelrockt, does the modular XOrg still use VESA with i915?

----------

## Burkey

Is this thread still the right way for me to get my Dell D410 to run X right?

I just installed and have no unmasked packages (except ndiswrapper) on and x.Org cannot start with an error "no valid fb address in pci config space".

I am intererested to know if it works right on 2.6.15 and Modular X?

----------

## seppelrockt

 *Burkey wrote:*   

> Is this thread still the right way for me to get my Dell D410 to run X right?
> 
> I just installed and have no unmasked packages (except ndiswrapper) on and x.Org cannot start with an error "no valid fb address in pci config space".
> 
> I am intererested to know if it works right on 2.6.15 and Modular X?

 

Yes, linux-2.6.15-rcX + modular X works here on Dell I6000 without patching. Your error message seams to be caused by slightly wrong kernel config regarding PCI or framebuffer device.

----------

## c_t

Hi guys!

First of all thanks vinz for this great HOWTO! I have followed all described steps, patching and compiling xorg worked without any problems, unfortunately I cannot start the X-Server after compiling xorg with the patch applied.

Here is what I did:

Installed gentoo-sources-2.6.14-r2 with the following options:

```
#

# Ftape, the floppy tape device driver

#

# CONFIG_FTAPE is not set

CONFIG_AGP=y

# CONFIG_AGP_ALI is not set

# CONFIG_AGP_ATI is not set

# CONFIG_AGP_AMD is not set

# CONFIG_AGP_AMD64 is not set

CONFIG_AGP_INTEL=y

# CONFIG_AGP_NVIDIA is not set

# CONFIG_AGP_SIS is not set

# CONFIG_AGP_SWORKS is not set

# CONFIG_AGP_VIA is not set

# CONFIG_AGP_EFFICEON is not set

CONFIG_DRM=y

# CONFIG_DRM_TDFX is not set

# CONFIG_DRM_R128 is not set

# CONFIG_DRM_RADEON is not set

# CONFIG_DRM_I810 is not set

# CONFIG_DRM_I830 is not set

CONFIG_DRM_I915=y

# CONFIG_DRM_MGA is not set

# CONFIG_DRM_SIS is not set

# CONFIG_DRM_VIA is not set

# CONFIG_DRM_SAVAGE is not set

# CONFIG_MWAVE is not set

# CONFIG_RAW_DRIVER is not set

CONFIG_HPET=y

# CONFIG_HPET_RTC_IRQ is not set

CONFIG_HPET_MMAP=y

# CONFIG_HANGCHECK_TIMER is not set
```

Now I've tried to install xorg-x11-6.8.2-r6 and xorg-x11-6.8.99.15-r4 both with the dri-patch applied. In both cases when I try to startx I get the following errorlog (the errormessages are pretty much the same with both xorg-versions!):

```

X Window System Version 6.8.2

Release Date: 9 February 2005

X Protocol Version 11, Revision 0, Release 6.8.2

Build Operating System: Linux 2.6.14-gentoo-r2 i686 [ELF] 

Current Operating System: Linux spock.nemata.lan 2.6.14-gentoo-r2 #19 PREEMPT Thu Dec 1 14:37:56 CET 2005 i686

Build Date: 01 December 2005

   Before reporting problems, check http://wiki.X.Org

   to make sure that you have the latest version.

Module Loader present

Markers: (--) probed, (**) from config file, (==) default setting,

   (++) from command line, (!!) notice, (II) informational,

   (WW) warning, (EE) error, (NI) not implemented, (??) unknown.

(==) Log file: "/var/log/Xorg.0.log", Time: Fri Dec  2 14:15:34 2005

(==) Using config file: "/etc/X11/xorg.conf"

(==) ServerLayout "SingleHeadLayout"

(**) |-->Screen "LaptopScreen" (0)

(**) |   |-->Monitor "LaptopTFT"

(**) |   |-->Device "i915Chipset"

(**) |-->Input Device "LogitechClickPlus"

(**) |-->Input Device "LaptopKeyboard"

(**) FontPath set to "/usr/share/fonts/misc/,/usr/share/fonts/TTF/,/usr/share/fonts/Type1/,/usr/share/fonts/75dpi/,/usr/share/fonts/100dpi/"

(**) RgbPath set to "/usr/lib/X11/rgb"

(**) ModulePath set to "/usr/lib/modules"

(WW) Open APM failed (/dev/apm_bios) (No such file or directory)

(II) Module ABI versions:

   X.Org ANSI C Emulation: 0.2

   X.Org Video Driver: 0.7

   X.Org XInput driver : 0.4

   X.Org Server Extension : 0.2

   X.Org Font Renderer : 0.4

(II) Loader running on linux

(II) LoadModule: "bitmap"

(II) Loading /usr/lib/modules/fonts/libbitmap.a

(II) Module bitmap: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   Module class: X.Org Font Renderer

   ABI class: X.Org Font Renderer, version 0.4

(II) Loading font Bitmap

(II) LoadModule: "pcidata"

(II) Loading /usr/lib/modules/libpcidata.a

(II) Module pcidata: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   ABI class: X.Org Video Driver, version 0.7

Using vt 7

(--) using VT number 7

(II) PCI: PCI scan (all values are in hex)

(II) PCI: 00:00:0: chip 8086,2590 card 144d,c01a rev 03 class 06,00,00 hdr 00

(II) PCI: 00:02:0: chip 8086,2592 card 144d,c01a rev 03 class 03,00,00 hdr 80

(II) PCI: 00:02:1: chip 8086,2792 card 144d,c01a rev 03 class 03,80,00 hdr 80

(II) PCI: 00:1c:0: chip 8086,2660 card 0000,0000 rev 03 class 06,04,00 hdr 81

(II) PCI: 00:1d:0: chip 8086,2658 card 144d,c01a rev 03 class 0c,03,00 hdr 80

(II) PCI: 00:1d:1: chip 8086,2659 card 144d,c01a rev 03 class 0c,03,00 hdr 00

(II) PCI: 00:1d:2: chip 8086,265a card 144d,c01a rev 03 class 0c,03,00 hdr 00

(II) PCI: 00:1d:3: chip 8086,265b card 144d,c01a rev 03 class 0c,03,00 hdr 00

(II) PCI: 00:1d:7: chip 8086,265c card 144d,c01a rev 03 class 0c,03,20 hdr 00

(II) PCI: 00:1e:0: chip 8086,2448 card 0000,0000 rev d3 class 06,04,01 hdr 81

(II) PCI: 00:1e:2: chip 8086,266e card 144d,c01a rev 03 class 04,01,00 hdr 00

(II) PCI: 00:1e:3: chip 8086,266d card 144d,2115 rev 03 class 07,03,00 hdr 00

(II) PCI: 00:1f:0: chip 8086,2641 card 144d,c01a rev 03 class 06,01,00 hdr 80

(II) PCI: 00:1f:1: chip 8086,266f card 144d,c01a rev 03 class 01,01,8a hdr 00

(II) PCI: 00:1f:3: chip 8086,266a card 144d,c01a rev 03 class 0c,05,00 hdr 00

(II) PCI: 06:05:0: chip 14e4,170c card 144d,c01a rev 02 class 02,00,00 hdr 00

(II) PCI: 06:07:0: chip 8086,4220 card 8086,2731 rev 05 class 02,80,00 hdr 00

(II) PCI: 06:09:0: chip 1180,0476 card 4000,0000 rev b3 class 06,07,00 hdr 82

(II) PCI: 06:09:1: chip 1180,0552 card 144d,c01a rev 08 class 0c,00,10 hdr 80

(II) PCI: 06:09:2: chip 1180,0822 card 144d,c01a rev 17 class 08,05,00 hdr 80

(II) PCI: 06:09:3: chip 1180,0592 card 144d,c01a rev 08 class 08,80,00 hdr 80

(II) PCI: End of PCI scan

(II) Host-to-PCI bridge:

(II) Bus 0: bridge is at (0:0:0), (0,0,7), BCTRL: 0x0008 (VGA_EN is set)

(II) Bus 0 I/O range:

   [0] -1   0   0x00000000 - 0x0000ffff (0x10000) IX[B]

(II) Bus 0 non-prefetchable memory range:

   [0] -1   0   0x00000000 - 0xffffffff (0x0) MX[B]

(II) Bus 0 prefetchable memory range:

   [0] -1   0   0x00000000 - 0xffffffff (0x0) MX[B]

(II) PCI-to-PCI bridge:

(II) Bus 2: bridge is at (0:28:0), (0,2,2), BCTRL: 0x0004 (VGA_EN is cleared)

(II) Bus 2 I/O range:

   [0] -1   0   0x00003000 - 0x000030ff (0x100) IX[B]

   [1] -1   0   0x00003400 - 0x000034ff (0x100) IX[B]

   [2] -1   0   0x00003800 - 0x000038ff (0x100) IX[B]

   [3] -1   0   0x00003c00 - 0x00003cff (0x100) IX[B]

(II) Bus 2 non-prefetchable memory range:

   [0] -1   0   0xb4000000 - 0xb7ffffff (0x4000000) MX[B]

(II) Bus 2 prefetchable memory range:

   [0] -1   0   0xd0000000 - 0xd3ffffff (0x4000000) MX[B]

(II) Subtractive PCI-to-PCI bridge:

(II) Bus 6: bridge is at (0:30:0), (0,6,6), BCTRL: 0x0004 (VGA_EN is cleared)

(II) Bus 6 I/O range:

   [0] -1   0   0x00004000 - 0x000040ff (0x100) IX[B]

   [1] -1   0   0x00004400 - 0x000044ff (0x100) IX[B]

   [2] -1   0   0x00004800 - 0x000048ff (0x100) IX[B]

   [3] -1   0   0x00004c00 - 0x00004cff (0x100) IX[B]

(II) Bus 6 non-prefetchable memory range:

   [0] -1   0   0xb8000000 - 0xb80fffff (0x100000) MX[B]

(II) Bus 6 prefetchable memory range:

   [0] -1   0   0x50000000 - 0x52ffffff (0x3000000) MX[B]

(II) PCI-to-ISA bridge:

(II) Bus -1: bridge is at (0:31:0), (0,-1,-1), BCTRL: 0x0008 (VGA_EN is set)

(II) PCI-to-CardBus bridge:

(II) Bus 7: bridge is at (6:9:0), (6,7,10), BCTRL: 0x0700 (VGA_EN is cleared)

(II) Bus 7 I/O range:

   [0] -1   0   0x00004000 - 0x000040ff (0x100) IX[B]

   [1] -1   0   0x00004400 - 0x000044ff (0x100) IX[B]

(II) Bus 7 prefetchable memory range:

   [0] -1   0   0x50000000 - 0x51ffffff (0x2000000) MX[B]

(--) PCI:*(0:2:0) Intel Corp. unknown chipset (0x2592) rev 3, Mem @ 0xb0080000/19, 0xc0000000/28, 0xb0000000/18, I/O @ 0x1800/3

(--) PCI: (0:2:1) Intel Corp. unknown chipset (0x2792) rev 3, Mem @ 0x53000000/19

(II) Addressable bus resource ranges are

   [0] -1   0   0x00000000 - 0xffffffff (0x0) MX[B]

   [1] -1   0   0x00000000 - 0x0000ffff (0x10000) IX[B]

(II) OS-reported resource ranges:

   [0] -1   0   0xffe00000 - 0xffffffff (0x200000) MX[B](B)

   [1] -1   0   0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)

   [2] -1   0   0x000f0000 - 0x000fffff (0x10000) MX[B]

   [3] -1   0   0x000c0000 - 0x000effff (0x30000) MX[B]

   [4] -1   0   0x00000000 - 0x0009ffff (0xa0000) MX[B]

   [5] -1   0   0x0000ffff - 0x0000ffff (0x1) IX[B]

   [6] -1   0   0x00000000 - 0x000000ff (0x100) IX[B]

(II) Active PCI resource ranges:

   [0] -1   0   0xb8003c00 - 0xb8003cff (0x100) MX[B]

   [1] -1   0   0xb8003800 - 0xb80038ff (0x100) MX[B]

   [2] -1   0   0xb8003000 - 0xb80037ff (0x800) MX[B]

   [3] -1   0   0xb8002000 - 0xb8002fff (0x1000) MX[B]

   [4] -1   0   0xb8000000 - 0xb8001fff (0x2000) MX[B]

   [5] -1   0   0xb0040400 - 0xb00404ff (0x100) MX[B]

   [6] -1   0   0xb0040800 - 0xb00409ff (0x200) MX[B]

   [7] -1   0   0xb0040000 - 0xb00403ff (0x400) MX[B]

   [8] -1   0   0xb0000000 - 0xb003ffff (0x40000) MX[B](B)

   [9] -1   0   0xc0000000 - 0xcfffffff (0x10000000) MX[B](B)

   [10] -1   0   0xb0080000 - 0xb00fffff (0x80000) MX[B](B)

   [11] -1   0   0x000018a0 - 0x000018bf (0x20) IX[B]

   [12] -1   0   0x00001810 - 0x0000181f (0x10) IX[B]

   [13] -1   0   0x00002000 - 0x0000207f (0x80) IX[B]

   [14] -1   0   0x00002400 - 0x000024ff (0x100) IX[B]

   [15] -1   0   0x000018c0 - 0x000018ff (0x40) IX[B]

   [16] -1   0   0x00001c00 - 0x00001cff (0x100) IX[B]

   [17] -1   0   0x00001880 - 0x0000189f (0x20) IX[B]

   [18] -1   0   0x00001860 - 0x0000187f (0x20) IX[B]

   [19] -1   0   0x00001840 - 0x0000185f (0x20) IX[B]

   [20] -1   0   0x00001820 - 0x0000183f (0x20) IX[B]

   [21] -1   0   0x00001800 - 0x00001807 (0x8) IX[B](B)

(II) Inactive PCI resource ranges:

   [0] -1   0   0x53000000 - 0x5307ffff (0x80000) MX[B](B)

(II) Active PCI resource ranges after removing overlaps:

   [0] -1   0   0xb8003c00 - 0xb8003cff (0x100) MX[B]

   [1] -1   0   0xb8003800 - 0xb80038ff (0x100) MX[B]

   [2] -1   0   0xb8003000 - 0xb80037ff (0x800) MX[B]

   [3] -1   0   0xb8002000 - 0xb8002fff (0x1000) MX[B]

   [4] -1   0   0xb8000000 - 0xb8001fff (0x2000) MX[B]

   [5] -1   0   0xb0040400 - 0xb00404ff (0x100) MX[B]

   [6] -1   0   0xb0040800 - 0xb00409ff (0x200) MX[B]

   [7] -1   0   0xb0040000 - 0xb00403ff (0x400) MX[B]

   [8] -1   0   0xb0000000 - 0xb003ffff (0x40000) MX[B](B)

   [9] -1   0   0xc0000000 - 0xcfffffff (0x10000000) MX[B](B)

   [10] -1   0   0xb0080000 - 0xb00fffff (0x80000) MX[B](B)

   [11] -1   0   0x000018a0 - 0x000018bf (0x20) IX[B]

   [12] -1   0   0x00001810 - 0x0000181f (0x10) IX[B]

   [13] -1   0   0x00002000 - 0x0000207f (0x80) IX[B]

   [14] -1   0   0x00002400 - 0x000024ff (0x100) IX[B]

   [15] -1   0   0x000018c0 - 0x000018ff (0x40) IX[B]

   [16] -1   0   0x00001c00 - 0x00001cff (0x100) IX[B]

   [17] -1   0   0x00001880 - 0x0000189f (0x20) IX[B]

   [18] -1   0   0x00001860 - 0x0000187f (0x20) IX[B]

   [19] -1   0   0x00001840 - 0x0000185f (0x20) IX[B]

   [20] -1   0   0x00001820 - 0x0000183f (0x20) IX[B]

   [21] -1   0   0x00001800 - 0x00001807 (0x8) IX[B](B)

(II) Inactive PCI resource ranges after removing overlaps:

   [0] -1   0   0x53000000 - 0x5307ffff (0x80000) MX[B](B)

(II) OS-reported resource ranges after removing overlaps with PCI:

   [0] -1   0   0xffe00000 - 0xffffffff (0x200000) MX[B](B)

   [1] -1   0   0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)

   [2] -1   0   0x000f0000 - 0x000fffff (0x10000) MX[B]

   [3] -1   0   0x000c0000 - 0x000effff (0x30000) MX[B]

   [4] -1   0   0x00000000 - 0x0009ffff (0xa0000) MX[B]

   [5] -1   0   0x0000ffff - 0x0000ffff (0x1) IX[B]

   [6] -1   0   0x00000000 - 0x000000ff (0x100) IX[B]

(II) All system resource ranges:

   [0] -1   0   0xffe00000 - 0xffffffff (0x200000) MX[B](B)

   [1] -1   0   0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)

   [2] -1   0   0x000f0000 - 0x000fffff (0x10000) MX[B]

   [3] -1   0   0x000c0000 - 0x000effff (0x30000) MX[B]

   [4] -1   0   0x00000000 - 0x0009ffff (0xa0000) MX[B]

   [5] -1   0   0xb8003c00 - 0xb8003cff (0x100) MX[B]

   [6] -1   0   0xb8003800 - 0xb80038ff (0x100) MX[B]

   [7] -1   0   0xb8003000 - 0xb80037ff (0x800) MX[B]

   [8] -1   0   0xb8002000 - 0xb8002fff (0x1000) MX[B]

   [9] -1   0   0xb8000000 - 0xb8001fff (0x2000) MX[B]

   [10] -1   0   0xb0040400 - 0xb00404ff (0x100) MX[B]

   [11] -1   0   0xb0040800 - 0xb00409ff (0x200) MX[B]

   [12] -1   0   0xb0040000 - 0xb00403ff (0x400) MX[B]

   [13] -1   0   0xb0000000 - 0xb003ffff (0x40000) MX[B](B)

   [14] -1   0   0xc0000000 - 0xcfffffff (0x10000000) MX[B](B)

   [15] -1   0   0xb0080000 - 0xb00fffff (0x80000) MX[B](B)

   [16] -1   0   0x53000000 - 0x5307ffff (0x80000) MX[B](B)

   [17] -1   0   0x0000ffff - 0x0000ffff (0x1) IX[B]

   [18] -1   0   0x00000000 - 0x000000ff (0x100) IX[B]

   [19] -1   0   0x000018a0 - 0x000018bf (0x20) IX[B]

   [20] -1   0   0x00001810 - 0x0000181f (0x10) IX[B]

   [21] -1   0   0x00002000 - 0x0000207f (0x80) IX[B]

   [22] -1   0   0x00002400 - 0x000024ff (0x100) IX[B]

   [23] -1   0   0x000018c0 - 0x000018ff (0x40) IX[B]

   [24] -1   0   0x00001c00 - 0x00001cff (0x100) IX[B]

   [25] -1   0   0x00001880 - 0x0000189f (0x20) IX[B]

   [26] -1   0   0x00001860 - 0x0000187f (0x20) IX[B]

   [27] -1   0   0x00001840 - 0x0000185f (0x20) IX[B]

   [28] -1   0   0x00001820 - 0x0000183f (0x20) IX[B]

   [29] -1   0   0x00001800 - 0x00001807 (0x8) IX[B](B)

(II) LoadModule: "glx"

(II) Loading /usr/lib/modules/extensions/libglx.a

(II) Module glx: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   ABI class: X.Org Server Extension, version 0.2

(II) Loading sub module "GLcore"

(II) LoadModule: "GLcore"

(II) Loading /usr/lib/modules/extensions/libGLcore.a

(II) Module GLcore: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   ABI class: X.Org Server Extension, version 0.2

(II) Loading extension GLX

(II) LoadModule: "extmod"

(II) Loading /usr/lib/modules/extensions/libextmod.a

(II) Module extmod: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   Module class: X.Org Server Extension

   ABI class: X.Org Server Extension, version 0.2

(II) Loading extension SHAPE

(II) Loading extension MIT-SUNDRY-NONSTANDARD

(II) Loading extension BIG-REQUESTS

(II) Loading extension SYNC

(II) Loading extension MIT-SCREEN-SAVER

(II) Loading extension XC-MISC

(II) Loading extension XFree86-VidModeExtension

(II) Loading extension XFree86-Misc

(II) Loading extension XFree86-DGA

(II) Loading extension DPMS

(II) Loading extension TOG-CUP

(II) Loading extension Extended-Visual-Information

(II) Loading extension XVideo

(II) Loading extension XVideo-MotionCompensation

(II) Loading extension X-Resource

(II) LoadModule: "xtrap"

(II) Loading /usr/lib/modules/extensions/libxtrap.a

(II) Module xtrap: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   Module class: X.Org Server Extension

   ABI class: X.Org Server Extension, version 0.2

(II) Loading extension DEC-XTRAP

(II) LoadModule: "record"

(II) Loading /usr/lib/modules/extensions/librecord.a

(II) Module record: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.13.0

   Module class: X.Org Server Extension

   ABI class: X.Org Server Extension, version 0.2

(II) Loading extension RECORD

(II) LoadModule: "dri"

(II) Loading /usr/lib/modules/extensions/libdri.a

(II) Module dri: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   ABI class: X.Org Server Extension, version 0.2

(II) Loading sub module "drm"

(II) LoadModule: "drm"

(II) Loading /usr/lib/modules/linux/libdrm.a

(II) Module drm: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   ABI class: X.Org Server Extension, version 0.2

(II) Loading extension XFree86-DRI

(II) LoadModule: "dbe"

(II) Loading /usr/lib/modules/extensions/libdbe.a

(II) Module dbe: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   Module class: X.Org Server Extension

   ABI class: X.Org Server Extension, version 0.2

(II) Loading extension DOUBLE-BUFFER

(II) LoadModule: "freetype"

(II) Loading /usr/lib/modules/fonts/libfreetype.so

(II) Module freetype: vendor="X.Org Foundation & the After X-TT Project"

   compiled for 6.8.2, module version = 2.1.0

   Module class: X.Org Font Renderer

   ABI class: X.Org Font Renderer, version 0.4

(II) Loading font FreeType

(II) LoadModule: "type1"

(II) Loading /usr/lib/modules/fonts/libtype1.a

(II) Module type1: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.2

   Module class: X.Org Font Renderer

   ABI class: X.Org Font Renderer, version 0.4

(II) Loading font Type1

(II) Loading font CID

(II) LoadModule: "i810"

(II) Loading /usr/lib/modules/drivers/i810_drv.o

(II) Module i810: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.3.0

   Module class: X.Org Video Driver

   ABI class: X.Org Video Driver, version 0.7

(II) LoadModule: "mouse"

(II) Loading /usr/lib/modules/input/mouse_drv.o

(II) Module mouse: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   Module class: X.Org XInput Driver

   ABI class: X.Org XInput driver, version 0.4

(II) LoadModule: "kbd"

(II) Loading /usr/lib/modules/input/kbd_drv.o

(II) Module kbd: vendor="X.Org Foundation"

   compiled for 6.8.2, module version = 1.0.0

   Module class: X.Org XInput Driver

   ABI class: X.Org XInput driver, version 0.4

(II) I810: Driver for Intel Integrated Graphics Chipsets: i810, i810-dc100,

   i810e, i815, i830M, 845G, 852GM/855GM, 865G, 915G

(II) Primary Device is: PCI 00:02:0

(--) Assigning device section with no busID to primary device

(WW) I810: No matching Device section for instance (BusID PCI:0:2:1) found

(EE) No devices detected.

Fatal server error:

no screens found

Please consult the The X.Org Foundation support 

    at http://wiki.X.Org

 for help. 

Please also check the log file at "/var/log/Xorg.0.log" for additional information.
```

My laptop is a Samsung X20 1730 V.

Now here is the strange part: When I simply replace /usr/X11R6/lib/modules/drivers/i810_drv.o with the binary provided by Alan Hourihane you can download at http://www.fairlite.demon.co.uk/intel.html the X-Server starts properly (without DRI though, glxgears gives around 300fps).

Do you have any suggestions what I should try to do? Do you think this is a kernel-side or an x-org-side problem? Has anyone gotten DRI to work an a Samsung X20? Which steps did exactly take and which versions are you using?

Thanks in advance, Christoph

Edit 1:

This could be interesting, too:

```
ct@spock ~ $ dmesg | grep -i agp

Linux agpgart interface v0.101 (c) Dave Jones

agpgart: Detected an Intel 915GM Chipset.

agpgart: Detected 7932K stolen memory.

agpgart: AGP aperture is 256M @ 0xc0000000
```

----------

## VinzC

Hmmm... Strange as that error message is typically from 6.8.2. Under 6.8.99.x you should have

```
X Window System Version 6.8.99.15

Release Date: 16 July 2005 + cvs

X Protocol Version 11, Revision 0, Release 6.8.99.15

```

 instead of

```
X Window System Version 6.8.2

Release Date: 9 February 2005

X Protocol Version 11, Revision 0, Release 6.8.2
```

which means you're actually running 6.8.2.x. Could you just check that?

```
$ equery l xorg-x11

[ Searching for package 'xorg-x11' in all categories among: ]

 * installed packages

[I--] [  ] x11-base/xorg-x11-6.8.99.15-r4 (0)
```

----------

## c_t

Yes your're right: Actually I'm running 6.8.2-r4, since with 6.8.99* replacing the driver with Alans Binary does not work.

But what I wanted to say: No matter whether I had 6.8.2 or 6.8.99 running, the error-messages which led to the server crash were the same! In both cases the server crashes with:

```
(--) Assigning device section with no busID to primary device

(WW) I810: No matching Device section for instance (BusID PCI:0:2:1) found

(EE) No devices detected.

Fatal server error:

no screens found 
```

Edit 1:

I'd be glad if someone could simply mention his combination of kernel-/xorg-versions that currently DO work (including kernel-settings and xorg.conf please)...

----------

## VinzC

Would you mind following the steps for Samsung X20, I think this is exactly what you need. Then post your results.

I also found that link; it is for Debian but can easily be adapted to Gentoo. The link to broadcom drivers for Linux is broken but here it is: http://www.broadcom.com/support/ethernet_nic/downloaddrivers.php .

----------

## liljohn118th

```
localhost brian # glxinfo|grep direct

direct rendering: Yes
```

  :Cool: 

I bow to you, good sir!!! Thank you so much for the help!

----------

## c_t

 *VinzC wrote:*   

> Would you mind following the steps for Samsung X20, I think this is exactly what you need. Then post your results.

 

OK, I now followed once again all steps described in the wiki. I was trying it with the following versions:

Kernel: gentoo-sources-2.6.12-r10

Xorg: xorg-x11-6.8.99.15-r4

My xorg.conf is the one from the wiki. I even completely uninstalled X bevor merging xorg-x11. 

I have patched the xorg-ebuild as described in this howto. When I now startx I get this Xorg.0.log:

Xorg.0.log

All the zeros where X tries to find out the valid modes are a bit strange, arent they?

Can anyone explain this? Thanks, Christoph

Edit 1:

Also without the patch I get similar errors. In any case the server refuses to start with the errormessage

```
Fatal server error:

no screens found
```

The only way I've got X working by now was by emerging xorg-x11-6.8.2-r4 and then replacing /usr/lib/modules/drivers/i810_drv.o with the binary from http://www.fairlite.demon.co.uk/intel.html

----------

## VinzC

 *c_t wrote:*   

> I have patched the xorg-ebuild as described in this howto. When I now startx I get this Xorg.0.log:
> 
> Xorg.0.log
> 
> All the zeros where X tries to find out the valid modes are a bit strange, arent they?

 

These zeroes aren't special nor abnormal. I have them too but Xorg works like a charm indeed. I have no explanation on why it wouldn't on yours. Maybe you can try a newer kernel, e.g. vanilla sources 2.6.15-rc[45]. Maybe it's a hardware/driver issue.

----------

## skroll

Figure I would chime in and say that I too managed to get DRI working with modular Xorg (7.0 rc2).  I know it's a masked package, however, it worked right out of the box (compile) without any work.  I simply had the I915 DRM driver compiled in the kernel, and it worked 100%.

----------

## VinzC

 *skroll wrote:*   

> Figure I would chime in and say that I too managed to get DRI working with modular Xorg (7.0 rc2).  I know it's a masked package, however, it worked right out of the box (compile) without any work.  I simply had the I915 DRM driver compiled in the kernel, and it worked 100%.

 

That indeed sounds promising. Many people have reported it works well. I'll update the howto as soon as Xorg gets unmasked (or I get bored waiting  :Wink:  )

----------

## mr2600

Ok I'm stuck.

I got everything working except direct rendering under glxinfo... very puzzled.

```
penguin ~ # glxinfo

name of display: :0.0

libGL: XF86DRIGetClientDriverName: 1.3.0 i915 (screen 0)

libGL: OpenDriver: trying /usr/lib/modules/dri/i915_dri.so

drmOpenByBusid: Searching for BusID pci:0000:00:02.0

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 4, (OK)

drmOpenByBusid: drmOpenMinor returns 4

drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0

Unrecognized deviceID 2772

display: :0  screen: 0

direct rendering: No

... snip ...

OpenGL vendor string: Mesa project: www.mesa3d.org

OpenGL renderer string: Mesa GLX Indirect

OpenGL version string: 1.2 (1.5 Mesa 6.2.1)

```

```
penguin ~ # cat /var/log/Xorg.0.log | grep drm

(II) Loading sub module "drm"

(II) LoadModule: "drm"

(II) Loading /usr/lib/modules/linux/libdrm.so

(II) Module drm: vendor="X.Org Foundation"

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 6, (OK)

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 6, (OK)

drmOpenByBusid: Searching for BusID pci:0000:00:02.0

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 6, (OK)

drmOpenByBusid: drmOpenMinor returns 6

drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0

(II) I810(0): [drm] DRM interface version 1.2

(II) I810(0): [drm] created "i915" driver at busid "pci:0000:00:02.0"

(II) I810(0): [drm] added 8192 byte SAREA at 0xf939f000

(II) I810(0): [drm] mapped SAREA 0xf939f000 to 0xb7cf4000

(II) I810(0): [drm] framebuffer handle = 0xe0020000

(II) I810(0): [drm] added 1 reserved context for kernel

(II) I810(0): [drm] Registers = 0xfeb00000

(II) I810(0): [drm] Back Buffer = 0xef800000

(II) I810(0): [drm] Depth Buffer = 0xef400000

(II) I810(0): [drm] ring buffer = 0xe0000000

(II) I810(0): [drm] textures = 0xe05a0000

(II) I810(0): [drm] dma control initialized, using IRQ 16

(II) I810(0): [drm] Initialized kernel agp heap manager, 119537664

(II) I810(0): [drm] installed DRM signal handler

```

```
penguin ~ # cat /var/log/Xorg.0.log | grep dri

        X.Org XInput driver : 0.4

(II) Loading /usr/lib/modules/drivers/i810_drv.so

        ABI class: X.Org XInput driver, version 0.4

        ABI class: X.Org XInput driver, version 0.4

(II) Loading sub module "dri"

(II) LoadModule: "dri"

(II) Loading /usr/lib/modules/extensions/libdri.so

(II) Module dri: vendor="X.Org Foundation"

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: node name is /dev/dri/card0

(II) I810(0): [drm] created "i915" driver at busid "pci:0000:00:02.0"

(II) I810(0): [dri] visual configs initialized

```

And finally my xorg.conf...

```

Section "ServerLayout"

        Identifier      "X.org Configured"

        Screen          0  "Screen0" 0 0

        InputDevice     "Mouse0" "CorePointer"

        InputDevice     "Keyboard0" "CoreKeyboard"

EndSection

# **********************************************************************

# Module section -- this  section  is used to specify

# which dynamically loadable modules to load.

# **********************************************************************

#

Section "Module"

# This loads the DBE extension module.

        Load    "dbe"   # Double buffer extension

# This loads the miscellaneous extensions module, and disables

# initialisation of the XFree86-DGA extension within that module.

        Load    "extmod"

        SubSection  "extmod"

                Option    "omit xfree86-dga"   # don't initialise the DGA extension

        EndSubSection

# This loads the font modules

        Load    "type1"

#       Load    "speedo"

        Load    "freetype"

#       Load    "xtt"

# This loads the GLX module

        Load    "glx"

# This loads the DRI module

#       Load    "dri"

#       Load    "drm"

EndSection

... blah blah blah ...

# Section "Monitor"

        #DisplaySize      340   270     # mm

        Identifier      "DELL 1706FPV"

        VendorName      "DELL"

        ModelName       "DELL 1706FPV"

        HorizSync       31.0 - 80.0

        VertRefresh     56.0 - 75.0

        Option          "DPMS"  "true"

EndSection

Section "Device"

        #For troubleshooting

        #Option          "mtrr"          "off"

        Identifier      "GMA 950 DRI"

        Driver          "i810"

        VendorName      "Intel Corp."

        BoardName       "Intel i945 GMA 950 Graphics"

        BusID           "PCI:0:2:0"

        VideoRam        131070

        Option          "NoAccel"       "false"

        Option          "DRI"           "true"

        Option          "XVideo"        "true"

        Option          "VBERestore"    "true" 

        #Option  "AGPMode"               "4"

        #Option  "EnablePageFlip"        "True"

        #Option  "IgnoreEDID"            "off"

EndSection

Section "Device"

        Identifier "GMA 950 VESA"

        Driver "vesa"

        # BusID "PCI:0:2:0"

        # VideoRam 32768

EndSection 

Section "Screen"

        Identifier "Screen0"

        Device     "GMA 950 DRI"

        Monitor    "DELL 1706FPV"

        DefaultDepth 16

        Subsection "Display"

                Depth       16

                Modes       "1280x1024"

                ViewPort    0 0

        EndSubsection

EndSection

Section "DRI"

    Mode 0666

EndSection

```

Yes the dri module is commented out because the log complains its trying to load twice if I have dri loaded there and in the Device section the Option "DRI" "true" also being there.

I really have no idea what I'm doing wrong.  I used to have this work fine on a slightly older computer (with i915 instead of the newer i945) without even needing the drm patch!

EDIT: I dont think this is very good... If I try to run one of those opengl xscreensaver hacks (like say 'queens') I get this error on the console...

```
Unrecognized deviceID 2772
```

[/code]

----------

## VinzC

Try first without the DRI Option (I don't have it), only loading DRI module with Load "dri".

----------

## purple_monkey

Xorg 7 solved all the problems on my Asus Z33A.  I built all the i810 drivers into my kernel (gentoo-sources-2.6.14-r4) including i915 support.

 :Very Happy: 

I installed it by following the instructions at http://gentoo-wiki.com/HOWTO_Modular_Xorg.  It was a simple procedure, taking less than an hour from start to finish (including compile time).

FYI, I had a problem with the synaptics touchpad driver.  X7 looks for it in the wrong place.  This can be solved with the following:

```
# ln -s /usr/lib/modules/input/synaptics_drv.so /usr/lib/xorg/modules/input/synaptics_drv.so
```

[Or by getting a more recent version of the synaptics driver - Thanks c_t]

Good luck!Last edited by purple_monkey on Wed Dec 21, 2005 11:28 pm; edited 1 time in total

----------

## c_t

 *purple_monkey wrote:*   

> Xorg 7 solved all the problems on my Asus Z33A.  I built all the i810 drivers into my kernel (gentoo-sources-2.6.14-r4) including i915 support.
> 
> I installed it by following the instructions at http://gentoo-wiki.com/HOWTO_Modular_Xorg.  It was a simple procedure, taking less than an hour from start to finish including compile time).
> 
> FYI, I had a problem with the synaptics touchpad driver.  X7 looks for it in the wrong place.  This can be solved with the following:
> ...

 

Thanks purple_monkey anall other guys in this Forum! Installing  Modular Xorg (7.0.0_RC4) and the synaptics-symlink solved any problems on my Samsung X20 1730 V. Now I get

```
spock ~ # glxinfo | grep direct

direct rendering: Yes

spock ~ # glxgears

9880 frames in 5.0 seconds = 1975.806 FPS
```

Whoooohaaaw, this rocks! (16 Bits Depth though...)

Edit: @purple_monkey: I know this is OT but simply updating synaptics to the most recent version (0.14.4-r2) makes creating a symlink obsolete since synaptics gets installed to /usr/lib/xorg/modules/input now.

Edit 2: FYI: My kernel is gentoo-sources-2.6.14-r4 with DRM for i915 enabled. With 24 Bits Depth I get 1311.949 FPS.

----------

## portman

thx guyz for this great info I'm getting right now :

portman@thinkpad ~ $ glxinfo | grep direct 

direct rendering: Yes

portman@thinkpad ~ $ glxgears 

8890 frames in 5.0 seconds = 1777.853 FPS

8539 frames in 5.0 seconds = 1707.725 FPS

8550 frames in 5.0 seconds = 1709.916 FPS

8545 frames in 5.0 seconds = 1708.918 FPS

8549 frames in 5.0 seconds = 1709.788 FPS

8545 frames in 5.0 seconds = 1708.987 FPS

8671 frames in 5.0 seconds = 1734.173 FPS

20860 frames in 5.0 seconds = 4171.999 FPS

20878 frames in 5.0 seconds = 4175.529 FPS

10980 frames in 5.0 seconds = 2194.860 FPS

before I just had an ~400 fps :S

now it ROCKS!!!! and finally I can play quake3-western  :Very Happy:  on my ibm thinkpad t43 :>

of course I'm using kernel 2.6.14 vanilla without any patches ;]

----------

## sclark

confirmed that this patch helped on my IBM Z60T laptop as well. 

In 24 color support at least I went from 500fps to 1100fps. 

Thanks for the information and saved debugging time   :Very Happy: 

----------

## VinzC

 *c_t wrote:*   

> ...
> 
> Thanks purple_monkey anall other guys in this Forum! Installing  Modular Xorg (7.0.0_RC4) and the synaptics-symlink solved any problems on my Samsung X20 1730 V. Now I get
> 
> ```
> ...

 

Glad you solved all your issues. Just out of curiosity, could you post the result of this command:

```
grep -i vesa /var/log/Xorg.0.log
```

----------

## AngryLlama

First, Thanks to everyone for the valuable information in this HOWTO.  I also suffer from the i915GM chipset on my Dell B130 laptop.  Following the directions in the original post brought my glxgears from ~400FPS to over 1100FPS.  Unfortunately, that was not my main concern. I would like to take advantage of my wide screen; I'm running 1024x768 on a 1280x800 screen.  I cannot, for the life of me, figure out how to run at my native resolution -- in console or X11 for that matter.

Some information on my setup:

Kernel: gentoo-2.6.14-r5

X: xorg-x11-6.8.99.15-r4

I am running the i915 driver built in to the kernel. 

I have tried both vesa and vesa-tng

my xorg.conf:

```
Section "ServerLayout"

   Identifier     "X.org Configured"

   Screen      0  "Screen0" 0 0

   InputDevice    "Mouse0" "CorePointer"

   InputDevice    "TouchPad" "AlwaysCore"

   InputDevice    "Keyboard0" "CoreKeyboard"

EndSection

Section "Files"

   RgbPath      "/usr/lib/X11/rgb"

   ModulePath   "/usr/lib/modules"

   FontPath     "/usr/share/fonts/misc/"

   FontPath     "/usr/share/fonts/TTF/"

   FontPath     "/usr/share/fonts/Type1/"

   FontPath     "/usr/share/fonts/CID/"

   FontPath     "/usr/share/fonts/75dpi/"

   FontPath     "/usr/share/fonts/100dpi/"

EndSection

Section "Module"

   Load  "record"

   Load  "extmod"

   Load  "dbe"

   Load  "dri"

   Load  "drm"

   Load  "ddc"

   Load  "glx"

   Load  "xtrap"

   Load  "freetype"

   Load  "type1"

   Load  "synaptics"

EndSection

Section "InputDevice"

   Identifier  "Keyboard0"

   Driver      "kbd"

EndSection

Section "InputDevice"

   Identifier  "Mouse0"

   Driver      "mouse"

   Option       "Protocol" "auto"

   Option       "Device" "/dev/input/mouse0"

EndSection

Section "InputDevice"

   Driver      "synaptics"

   Identifier  "TouchPad"

   Option       "Device"     "/dev/input/mouse0"

   Option       "Protocol"   "auto-dev"

   Option       "LeftEdge"      "1700"

   Option       "RightEdge"     "5000"

   Option       "TopEdge"       "1700"

   Option       "BottomEdge"    "4200"

   Option       "FingerLow"      "25"

   Option       "FingerHigh"   "30"

   Option       "MaxTapTime"   "180"

   Option       "MaxTapMove"   "220"

   Option       "VertScrollDelta"    "100"

   Option       "MinSpeed"      "0.09"

   Option       "MaxSpeed"      "0.18"

   Option       "AccelFactor"   "0.0015"

   Option      "PalmMinWidth"    "70"

   Option      "PalmMinZ"       "200"

   Option       "SHMConfig"      "on"

EndSection

Section "Monitor"

   Identifier   "Monitor0"

   VendorName   "Monitor Vendor"

   ModelName    "Monitor Model"

   Option       "FlatPanelProperties" "Scaling=Centered"

   #UseModes     "16:10"

        #ModeLine    "1280x800"  70 1280 1328 1440 1688  800 801 804 842

        #I've tried about 20 other 1280x800 mode lines, with no luck.

EndSection

Section "Device"

        ### Available Driver options are:-

        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",

        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"

        ### [arg]: arg optional

        #Option     "ShadowFB"              # [<bool>]

        #Option     "DefaultRefresh"        # [<bool>]

   Identifier  "Card0"

   Driver      "i810"

   VendorName  "Intel Corp."

   BoardName   "Unknown Board"

   BusID       "PCI:0:2:0"

   Option        "NoAccel" "false"

   Option        "DRI" "true"

        Option        "XVideo" "true"

   Option        "VBERestore" "true" 

   VideoRam      131072    

EndSection

Section "Screen"

   Identifier "Screen0"

   Device     "Card0"

   Monitor    "Monitor0"

   DefaultDepth 16

   

   SubSection "Display"

     Viewport   0 0

     Depth     16

     Modes     "1280x800"

   EndSubSection

EndSection

Section "DRI"

   Mode  0666

EndSection
```

My vbetest doesn't even show the resolution!

```

# vbetest

VBE Version 3.0

Intel(r)915GM/910ML/915MS Graphics Chip Accelerated VGA BIOS

[261] 1024x768 (256 color palette)

[279] 1024x768 (5:6:5)

[280] 1024x768 (8:8:8)

[274] 640x480 (8:8:8)

[276] 800x600 (5:6:5)

[277] 800x600 (8:8:8)

[257] 640x480 (256 color palette)

[259] 800x600 (256 color palette)

[273] 640x480 (5:6:5)
```

Any ideas? Anything I can check? Thanks in advance.

----------

## VinzC

 *AngryLlama wrote:*   

> First, Thanks to everyone for the valuable information in this HOWTO.  I also suffer from the i915GM chipset on my Dell B130 laptop.  Following the directions in the original post brought my glxgears from ~400FPS to over 1100FPS.  Unfortunately, that was not my main concern. I would like to take advantage of my wide screen; I'm running 1024x768 on a 1280x800 screen.  I cannot, for the life of me, figure out how to run at my native resolution -- in console or X11 for that matter.
> 
> ...
> 
> Any ideas? Anything I can check? Thanks in advance.

 

There are a few things you might try:

Upgrade your BIOS - Dell regularly ships new BIOSes with bug fixes aso

Use masked kernels (e.g. vanilla sources 2.6.15.x series)

Here are the modes I have for 1280x800:

```
[355] 1280x800 (256 color palette)

[356] 1280x800 (5:6:5)

[357] 1280x800 (8:8:8)
```

They might not work at all since I trust vbetest to read values returned by your video BIOS.

----------

## AngryLlama

I was really excited about the possibility of the BIOS being the problem. Unfortunately, I have the latest revision. In addition, Windows runs in widescreen just fine.  If I try using a masked kernel, then I will need to reapply the dri patch, correct?  If vbetest reads straight from the BIOS then I don't see how the kernel would fix the problem.  I'll try it out anyways...   :Crying or Very sad: 

----------

## VinzC

 *AngryLlama wrote:*   

> I was really excited about the possibility of the BIOS being the problem. Unfortunately, I have the latest revision.

 

Ow, too bad. Anyway stay tuned for further BIOS revisions.

 *AngryLlama wrote:*   

> In addition, Windows runs in widescreen just fine.

 

That's one of the regular frustrations  :Confused:  . I'm sure Windows uses (what I'd call) native modes of this chipset instead of VESA - which Xorg uses. And this is also why I'm asking so many times people who have tried the latest Xorg versions to see if the new i915 support now still uses Vesa or native modes...

 *AngryLlama wrote:*   

> If I try using a masked kernel, then I will need to reapply the dri patch, correct?

 

No, fortunately. The patch applies to Xorg itself, not the kernel.

 *AngryLlama wrote:*   

> If vbetest reads straight from the BIOS then I don't see how the kernel would fix the problem.  I'll try it out anyways...  

 

Because recent kernels have better support for i915. They might include patches that previous versions didn't. I hope so  :Wink:  .

----------

## AngryLlama

Just setup 2.6.15_rc7. No luck, vbetest shows the same screen modes and X still comes up in 1024x768.  I guess Linux just doesn't support my laptop. Is there anything I can do to expedite support for my cheap laptop?   :Mad: 

Has anyone tried Intel's driver located at: http://downloadfinder.intel.com/scripts-df-external/filter_results.aspx?strTypes=all&ProductID=1862&OSFullName=Linux*&lang=eng&strOSs=39&submit=Go%21

----------

## ExZombie

My BIOS doesn't have correct modes for my screen also. I solved the problem with 855resolution. I simply set it to overwrite an unused resolution with my screen's native resolution and voila - xorg can now use it. I haven't tried framebuffer, but it might work, though not at boot time, since changes 855resolution makes are not permanent.

----------

## VinzC

 *AngryLlama wrote:*   

> Just setup 2.6.15_rc7. No luck, vbetest shows the same screen modes and X still comes up in 1024x768.  I guess Linux just doesn't support my laptop. Is there anything I can do to expedite support for my cheap laptop?  
> 
> Has anyone tried Intel's driver located at: http://downloadfinder.intel.com/scripts-df-external/filter_results.aspx?strTypes=all&ProductID=1862&OSFullName=Linux*&lang=eng&strOSs=39&submit=Go%21

 

Have you tried one of the video modes I indicated? All you could get at worst is an error message "unsupported video mode"...

----------

## AngryLlama

 *VinzC wrote:*   

> Have you tried one of the video modes I indicated? All you could get at worst is an error message "unsupported video mode"...

 

Yes, I tried those modes and I tried converting them to hex and adding 200h to them. They all cause "unsupported video mode". What's even more strange is none of my modes from vbetest work either.  Apparantly the only thing setting my console video mode is the VESA default mode (FB_VESA_DEFAULT_MODE) option in the kernel.  I do have VIDEO_SELECT=y.

----------

## VinzC

 *AngryLlama wrote:*   

> What's even more strange is none of my modes from vbetest work either.  Apparantly the only thing setting my console video mode is the VESA default mode (FB_VESA_DEFAULT_MODE) option in the kernel.  I do have VIDEO_SELECT=y.

 

It looks like you have enabled VESA-TNG instead of VESAFB. Follow the guide http://gentoo-wiki.com/HOWTO_fbsplash again but enable VESAFB instead.

----------

## AngryLlama

 *VinzC wrote:*   

> It looks like you have enabled VESA-TNG instead of VESAFB. Follow the guide http://gentoo-wiki.com/HOWTO_fbsplash again but enable VESAFB instead.

 

I've tried both. I just heard that vesa-tng has better support for uncommon ratios than vesafb has.

 *ExZombie wrote:*   

> My BIOS doesn't have correct modes for my screen also. I solved the problem with 855resolution. I simply set it to overwrite an unused resolution with my screen's native resolution and voila - xorg can now use it. I haven't tried framebuffer, but it might work, though not at boot time, since changes 855resolution makes are not permanent.

 

 :Very Happy:   :Very Happy:   :Very Happy:   :Very Happy:  Hooray!  That fixed it.  I guess I just need to add 855resolution to a rc script.

----------

## VinzC

 *AngryLlama wrote:*   

>  *VinzC wrote:*   It looks like you have enabled VESA-TNG instead of VESAFB. Follow the guide http://gentoo-wiki.com/HOWTO_fbsplash again but enable VESAFB instead. 
> 
> I've tried both. I just heard that vesa-tng has better support for uncommon ratios than vesafb has.

 

In fact not really but you have to find the appropriate code provided your VESA BIOS supports it. This is what I did with my laptop. It has a widescreen resolution; VGA mode 0x361 corresponds to 1680x1050. But then my video BIOS supports that mode and vbetest lists it. Most of all VESAFB is needed because many people - like me - have noticed the console is completely garbled when you switch from X to a framebuffer console.

Fortunately someone found a workaround, which is exposed here or in another i915 related thread.

----------

## AngryLlama

I see.  I do notice that the screen is garbled when switching from X to a framebuffer console. However, the screen cleans itself up within a second or two.  I get better performance with vesa-tng over the normal vesa.  

There is (at least) one strange mishappening. When I unplug the AC, the screen gets garbled for half a second then goes blank. I can use Ctrl+Alt+F2 to find a terminal. Ctrl+Alt+F7 brings me to a blank screen.  When I plug the AC back in, kdm restarts (I think)... I can log in through kdm (again) and kde restarts.

Any Ideas? I have tried using VESA and VESA-TNG 

EDIT: The problem was I only included xdm in the default run-level. I created a battery run-level and didn't add xdm to it.

BTW, 855resolution comes with an rc script: one just needs to add it with rc-update.

----------

## mr2600

No luck still with the GMA950 and the latest 2.6.15 kernel.  Still get "unrecognized device id" when trying 3d apps.  I will try this on a slightly older computer with GMA900 and see if its really the hardware hanging stuff up.

At least 2D acceleration works fine.  Thanks for the helpful guide still!

EDIT: It seems like the GMA950 is simply unsupported, using the useful BlinkEye stage 4 backup guide I copied the install to a machine with the slightly older GMA900 chipset and I got accelerated 3D without having to change anything.  I guess this should be a heads up to anyone thinking of installing Gentoo on a i945 chipset and want onboard 3D!  Maybe it will get support in 2.6.16?

----------

## cynick.young

I finally got the i810 driver compiled and loading properly in Xorg.  I can set my resolution to 1280x800 using 855resolution.  So I know the 2D portion of the driver is fine.  However, 3D DRI is another story.

If I disable DRI I get around 750fps when I test with glxgears.  If I enable DRI, instead of getting higher framerates, it goes down to about 200fps.  Any clues as to why that might be and where I should be looking for problems?

Thanks in advance.  Thanks for the original info VinzC!

----------

## mr2600

Good news for those with GMA950 finally.

```

commit 5457f38e01ae2d296ff49db42254679018f13fa9

Author: Dave Airlie <airlied@starflyer.(none)>

Date:   Wed Jan 25 14:34:33 2006 +1100

    drm: add i945GM PCI ID

    

    From: Charles F. Johnson <charles.f.johnson@intel.com>

    Signed-off-by: Dave Airlie <airlied@linux.ie>

```

From the 2.6.16-rc2 changelog... woo hoo!

----------

## VinzC

 *mr2600 wrote:*   

> Good news for those with GMA950 finally.
> 
> ```
> 
> commit 5457f38e01ae2d296ff49db42254679018f13fa9
> ...

 

 :Cool:  Gonna check that ASAP!

EDIT: kidding of course...

----------

## VinzC

 *cynick.young wrote:*   

> I finally got the i810 driver compiled and loading properly in Xorg.  I can set my resolution to 1280x800 using 855resolution.  So I know the 2D portion of the driver is fine.  However, 3D DRI is another story.
> 
> If I disable DRI I get around 750fps when I test with glxgears.  If I enable DRI, instead of getting higher framerates, it goes down to about 200fps.  Any clues as to why that might be and where I should be looking for problems?

 

Tried Xorg 7? You should give it a try (seppelrockt successfully did) and it seems all problems related to DRI, hw accel. and so on are all gone.

 *cynick.young wrote:*   

> Thanks in advance.  Thanks for the original info VinzC!

 

You're welcome.

----------

## massysett

For us laggards who are still using xorg-x11 version 6.8.99.15-r4 (oh wait, we're not laggards...it's still masked! anyway...) I made a tarball to simplify installation a bit. Check here. (I had tried xorg version 7 earlier, but quite a few other packages still weren't ready for modular X.) Hopefully xorg 7 will solve this problem once and for all.

[edit: file deleted in website reorganization. Try using xorg-x11 version 7.0.]Last edited by massysett on Mon May 29, 2006 10:26 pm; edited 1 time in total

----------

## ^marcs

 *VincZ wrote:*   

> You should give it a try (seppelrockt successfully did) and it seems all problems related to DRI, hw accel. and so on are all gone.

 

You mean, i can now install modular x and all be fine?

edit:

k, ive checked it - it really works fine  :Smile:  thx.

----------

## metalfan

Im currently using: x11-base/xorg-x11-7.0-r1        Samsung X20, i915

but it doesn't work out of the box as described above  :Sad: 

ive posted infos here:

https://forums.gentoo.org/viewtopic-t-462975-highlight-.html

Maybe anybody knows whats going on?

----------

## purple_monkey

I know this thread has been dormant for a while, but it has helped me before so here goes!

Somehow, over many updates and upgrades, I have lost direct rendering on my Asus Z33A--at least that's what glxinfo tells me.

Here's what I know/have:

I have installed: xorg-x11 7.1, x11-drm 20060608, and gentoo-sources 2.6.18-r4.

Relevant sections of xorg.conf

```

Section "Module"

   Load  "extmod"

   Load  "dri"

   Load  "dbe"

   Load  "record"

   Load  "xtrap"

   Load  "glx"

   Load  "type1"

   Load  "freetype"

   Load  "synaptics"

EndSection

Section "Device"

        ### Available Driver options are:-

        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",

        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"

        ### [arg]: arg optional

        #Option     "ShadowFB"              # [<bool>]

        #Option     "DefaultRefresh"        # [<bool>]

   Identifier  "Card0"

   #Driver     "vesa"

   Driver       "i810"

   VendorName  "Intel Corp."

   BoardName   "i915GM"

   BusID       "PCI:0:2:0"

    #The following added Nov. 22/05 in attempt to improve performance

   Option     "SWCursor"   "0"

   Option       "AGPFastWrite"    "True"

   #Option       "ActiveDevice"    "LCD"

   Option       "DRI"       "True"

   ChipSet    "915GM"

   Option       "AGPMode"    "4" 

   Option       "Accel"

   Option      "MonitorLayout"    "CRT,LFP"

   Option      "Clone" "On"

   Option      "CloneRefresh"   "60"

   VideoRam 32768

EndSection

Section "DRI"

   Mode 0666

EndSection

```

Relevant Sections of lspci

```

00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)

00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)

00:02.1 Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)

```

Relevant Sections of lsmod:

```

Module                  Size       Used by

intelfb                   30372   0

fb                          46376   1 intelfb

intel_agp              21212   1

agpgart                32528    3 intelfb,intel_agp

```

Relevant Sections of kernel.conf

```

CONFIG_AGP=m

CONFIG_AGP_INTEL=m

# CONFIG_DRM is not set

CONFIG_FB=m

CONFIG_VIDEO_SELECT=y

CONFIG_FB_I810=m

# CONFIG_FB_I810_GTF is not set

CONFIG_FB_INTEL=m

```

[Note that I had everything (e.g. i915, drm, etc.) built into the kernel for a while, but this wasn't giving me direct rendering so I switched to this configuration with the hope that x11-drm might help me out as described in http://www.gentoo.org/doc/en/dri-howto.xml ].

As an added bonus something wierd is happening with glxgears (perhaps this is the source of all my problems).  When I try and run it I am told that it cannot find libGL.so.1.  I can overcome this by copying libGL from the xorg directory into /usr/lib.  If this is the right think to do (perhaps I should symlink, but to what?) then I still get told I don't have direct rendering.

Any thoughts?

----------

## purple_monkey

I went to http://dri.freedesktop.org/wiki/DriTroubleshooting but things still will not work.  I can make it as far as "Userspace Setup" before things go south.

After rebuilding everything into the kernel (and actually linking libGL.so.1with /usr/lib) I ran glxinfo with the "export LIBGL_DEBUG=verbose"  environment variable set.  This returned the following.

```

name of display: :0.0

libGL: XF86DRIGetClientDriverName: 1.7.3 i915 (screen 0)

libGL: OpenDriver: trying /usr/lib/dri/tls/i915_dri.so

libGL: OpenDriver: trying /usr/lib/dri/i915_dri.so

libGL error: dlopen /usr/lib/dri/i915_dri.so failed (/usr/lib/dri/i915_dri.so: cannot open shared object file: No such file or directory)

libGL error: unable to load driver: i915_dri.so

display: :0  screen: 0

direct rendering: No

server glx vendor string: SGI

server glx version string: 1.2

server glx extensions:

    GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating,

    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_OML_swap_method,

    GLX_SGI_make_current_read, GLX_SGIS_multisample, GLX_SGIX_hyperpipe,

    GLX_SGIX_swap_barrier, GLX_SGIX_fbconfig, GLX_MESA_copy_sub_buffer

client glx vendor string: SGI

client glx version string: 1.4

client glx extensions:

    GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,

    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_allocate_memory,

    GLX_MESA_copy_sub_buffer, GLX_MESA_swap_control,

    GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_OML_sync_control,

    GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync,

    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,

    GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap

GLX version: 1.2

GLX extensions:

    GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,

    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,

    GLX_OML_swap_method, GLX_SGI_make_current_read, GLX_SGIS_multisample,

    GLX_SGIX_fbconfig, GLX_EXT_texture_from_pixmap

OpenGL vendor string: Mesa project: www.mesa3d.org

OpenGL renderer string: Mesa GLX Indirect

OpenGL version string: 1.4 (1.5 Mesa 6.5.2)

OpenGL extensions:

    GL_ARB_depth_texture, GL_ARB_draw_buffers, GL_ARB_fragment_program,

    GL_ARB_imaging, GL_ARB_multisample, GL_ARB_multitexture,

    GL_ARB_occlusion_query, GL_ARB_point_parameters, GL_ARB_point_sprite,

    GL_ARB_shadow, GL_ARB_shadow_ambient, GL_ARB_texture_border_clamp,

    GL_ARB_texture_compression, GL_ARB_texture_cube_map,

    GL_ARB_texture_env_add, GL_ARB_texture_env_combine,

    GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3,

    GL_ARB_texture_mirrored_repeat, GL_ARB_texture_non_power_of_two,

    GL_ARB_texture_rectangle, GL_ARB_transpose_matrix, GL_ARB_vertex_program,

    GL_ARB_window_pos, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color,

    GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate,

    GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract,

    GL_EXT_clip_volume_hint, GL_EXT_copy_texture, GL_EXT_draw_range_elements,

    GL_EXT_fog_coord, GL_EXT_framebuffer_object, GL_EXT_multi_draw_arrays,

    GL_EXT_packed_pixels, GL_EXT_paletted_texture, GL_EXT_point_parameters,

    GL_EXT_polygon_offset, GL_EXT_rescale_normal, GL_EXT_secondary_color,

    GL_EXT_separate_specular_color, GL_EXT_shadow_funcs,

    GL_EXT_shared_texture_palette, GL_EXT_stencil_wrap, GL_EXT_subtexture,

    GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_edge_clamp,

    GL_EXT_texture_env_add, GL_EXT_texture_env_combine,

    GL_EXT_texture_env_dot3, GL_EXT_texture_lod_bias,

    GL_EXT_texture_mirror_clamp, GL_EXT_texture_object,

    GL_EXT_texture_rectangle, GL_EXT_vertex_array, GL_APPLE_packed_pixels,

    GL_ATI_draw_buffers, GL_ATI_texture_env_combine3,

    GL_ATI_texture_mirror_once, GL_ATIX_texture_env_combine3,

    GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate,

    GL_MESA_pack_invert, GL_MESA_ycbcr_texture, GL_NV_blend_square,

    GL_NV_fragment_program, GL_NV_light_max_exponent, GL_NV_point_sprite,

    GL_NV_texgen_reflection, GL_NV_texture_rectangle, GL_NV_vertex_program,

    GL_NV_vertex_program1_1, GL_SGI_color_matrix, GL_SGI_color_table,

    GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp,

    GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod, GL_SGIX_depth_texture,

    GL_SGIX_shadow, GL_SGIX_shadow_ambient, GL_SUN_multi_draw_arrays

   visual  x  bf lv rg d st colorbuffer ax dp st accumbuffer  ms  cav

 id dep cl sp sz l  ci b ro  r  g  b  a bf th cl  r  g  b  a ns b eat

----------------------------------------------------------------------

0x23 24 tc  0 32  0 r  y  .  8  8  8  8  0  0  0  0  0  0  0  0 0 None

0x24 24 tc  0 32  0 r  .  .  8  8  8  8  0  0  0  0  0  0  0  0 0 None

0x25 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x26 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x27 24 tc  0 32  0 r  y  .  8  8  8  8  0  0  0 16 16 16 16  0 0 Slow

0x28 24 tc  0 32  0 r  .  .  8  8  8  8  0  0  0 16 16 16 16  0 0 Slow

0x29 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

0x2a 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

0x2b 24 dc  0 32  0 r  y  .  8  8  8  8  0  0  0  0  0  0  0  0 0 None

0x2c 24 dc  0 32  0 r  .  .  8  8  8  8  0  0  0  0  0  0  0  0 0 None

0x2d 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x2e 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x2f 24 dc  0 32  0 r  y  .  8  8  8  8  0  0  0 16 16 16 16  0 0 Slow

0x30 24 dc  0 32  0 r  .  .  8  8  8  8  0  0  0 16 16 16 16  0 0 Slow

0x31 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

0x32 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

```

It's those top four lines that seem out of place.  Looking around my system I can't seem to find i915_dri.so anywhere.  I don't even have a dri directory to put it in.  I seem to be missing something...

Relevant pieces of the current kernel config are as follows:

```

CONFIG_AGP=y

CONFIG_AGP_INTEL=y

CONFIG_DRM=y

CONFIG_DRM_I810=y

# CONFIG_DRM_I830 is not set

CONFIG_DRM_I915=y

CONFIG_FB=y

CONFIG_FB_I810=y

# CONFIG_FB_I810_GTF is not set

CONFIG_FB_INTEL=m

# CONFIG_FB_INTEL_DEBUG is not set
```

----------

## Gentoovian

Ok, first let me say. Great thread and good info al the way back from 2005. 

Now let me say what i have done so far.

-----------------------------------

1: Installed Gentoo (Kernel 2.6.18 r4)

2: Emerged - xorg-x11 7.0 (NOT 7.1)

3: Emerged - Fluxbox

4: Emerged - GDM

5: exec startfluxbox into the xinit file

6: performed startx

Got this error

-----------------

(WW) I810: No matching Device section for instance (BusID PCI:0:2:1) found

(EE) I810(0): unknown type(0xffffffff)=0xff

(EE) I810(0): VBE initialization failed.

(EE) Screen(s) found, but none have a usable configuration.

Fatal server error:

no screens found

XIO:  fatal IO error 104 (Connection reset by peer) on X server ":0.0"

      after 0 requests (0 known processed) with 0 events remaining.

-----------------

7: Reloaded the intel options in the kernel and performed a re-compile on ther kernel

8: found this thread

9: performed setup for patch

10: ran this command (patch -p0 < ~/xorg-ebuild.diff) <-----I should not i did digest the new ebuild and complete the patch proccess

11: ran the command "startx" 

Got the same error

------------------

(WW) I810: No matching Device section for instance (BusID PCI:0:2:1) found

(EE) I810(0): unknown type(0xffffffff)=0xff

(EE) I810(0): VBE initialization failed.

(EE) Screen(s) found, but none have a usable configuration.

Fatal server error:

no screens found

XIO:  fatal IO error 104 (Connection reset by peer) on X server ":0.0"

      after 0 requests (0 known processed) with 0 events remaining.

-------------------

13: Posted on this thread  :Smile: 

(Side note) - I have had Xorg 7.0 working before on this laptop, the only differance between now and then that i can see is the build of gentoo at the time was 2.6.16 and now im using the exact same setup under the build of 2.6.18. )

Dell D410, 1GB RAM, i915GM Video, using integrated LCD 1024x768. 

Xorg posted below. Mind you the xorg was generated by X -configure and doesnt look right to me. 

If wanted i would be willing to allow somone who knows there stuff to have access to the box.

```

Section "Module"

   Load      "dbe"     # Double buffer extension

   Load   "bitmap"

   Load   "ddc"

#   Load   "dri"

   Load   "extmod"

   Load   "freetype"

   Load   "glx"

   Load   "int10"

   Load   "record"

   Load   "type1"

   Load   "vbe"

   SubSection  "extmod"

      Option    "omit xfree86-dga"   # don't initialise the DGA extension

   EndSubSection

# This loads the font modules

#    Load        "type1"

#    Load        "speedo"

#    Load        "xtt"

EndSection

Section "Files"

   FontPath   "/usr/share/fonts/misc"

   FontPath   "/usr/share/fonts/75dpi"

   FontPath   "/usr/share/fonts/100dpi"

   FontPath   "/usr/share/fonts/Type1"

EndSection

Section "ServerFlags"

EndSection

Section "InputDevice"

   Identifier   "Keyboard1"

   Driver   "kbd"

   Option "AutoRepeat" "500 30"

   Option "XkbRules"   "xorg"

   Option "XkbModel"   "pc104"

   Option "XkbLayout"   "dk"

EndSection

Section "InputDevice"

   Identifier   "Mouse1"

   Driver   "mouse"

   Option "Protocol"    "Auto"   # Auto detect

   Option "Device"      "/dev/input/mice"

   Option "ZAxisMapping"   "4 5 6 7"

   Option "Emulate3Buttons"

EndSection

Section "Monitor"

   Identifier  "My Monitor"

   HorizSync   31.5 - 48.5

   VertRefresh 43-72

EndSection

Section "Device"

   Identifier   "Standard VGA"

   VendorName   "Unknown"

   BoardName   "Unknown"

   Driver      "vga"

EndSection

Section "Device"

  Identifier    "i915GM" 

  Driver        "i810" 

  BusID         "0:2:0" 

  VideoRam     65536 

  #VideoRam      131072 

  Option        "NoAccel" "false" 

  Option        "DRI" "true" 

  Option        "XVideo" "true" 

  Option        "VBERestore" "true" 

EndSection

Section "Screen"

   Identifier  "Screen 1"

   Device      "i915GM"

   Monitor     "My Monitor"

   DefaultDepth 24

   Subsection "Display"

      Depth       8

      Modes       "1024x768" "800x600" "640x480"

      ViewPort    0 0

   EndSubsection

      Subsection "Display"

      Depth       16

      Modes       "1024x768" "800x600" "640x480"

      ViewPort    0 0

   EndSubsection

   

EndSection

Section "ServerLayout"

   Identifier  "Simple Layout"

   Screen "Screen 1"

   InputDevice "Mouse1" "CorePointer"

   InputDevice "Keyboard1" "CoreKeyboard"

EndSection

Section "DRI"

   Mode 0666

EndSection

Section "Extensions"

   Option "Composite" "Enable"

   Option "RENDER" "Enable"

EndSection

```

----------

## purple_monkey

I've had this problem before.  Each time this has happened to me it was a problem with my kernel configuration and NOT my xorg.conf.

Recompile your kernel with settings similar to the ones I have posted here (https://forums.gentoo.org/viewtopic-t-525300-highlight-.html -- No one would help me at this thread so I went elsewhere  :Crying or Very sad:  ) and then try again.

(I'd email you my 18-r4 kernel config, but I'm away from my Gentoo machine for a little while).

----------

## Gentoovian

Well i tried that. Reconfigured the kernel with the said options and now i get the following.

```

localhost ~ # startx

xauth:  creating new authority file /root/.serverauth.5530

X Window System Version 7.0.0

Release Date: 21 December 2005

X Protocol Version 11, Revision 0, Release 7.0

Build Operating System:UNKNOWN

Current Operating System: Linux localhost 2.6.18-gentoo-r4 #1 SMP Tue Dec 19 11:59:29 Local time zone must be set--see zic  i686

Build Date: 21 December 2006

        Before reporting problems, check http://wiki.x.org

        to make sure that you have the latest version.

Module Loader present

Markers: (--) probed, (**) from config file, (==) default setting,

        (++) from command line, (!!) notice, (II) informational,

        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.

(==) Log file: "/var/log/Xorg.0.log", Time: Thu Dec 21 12:44:26 2006

(EE) Unable to locate/open config file

xf86AutoConfig: Primary PCI is 0:2:0

Running "getconfig -X 70000000 -I /etc/X11,/usr/etc/X11,/usr/lib/xorg/modules,/usr/lib/X11/getconfig -v 0x8086 -d 0x2592 -r 0x03 -s 0x1028 -b 0x018f -c 0x0300"

getconfig.pl: Version 1.0.

getconfig.pl: Xorg Version: 7.0.0.0.

getconfig.pl: 23 built-in rules.

getconfig.pl: rules file '/usr/lib/X11/getconfig/xorg.cfg' has version 1.0.

getconfig.pl: 1 rule added from file '/usr/lib/X11/getconfig/xorg.cfg'.

getconfig.pl: Evaluated 24 rules with 0 errors.

getconfig.pl: Weight of result is 500.

New driver is "i810"

(==) Using default built-in configuration (53 lines)

(EE) module ABI major version (1) doesn't match the server's version (0)

(EE) Failed to load module "i810" (module requirement mismatch, 0)

(EE) module ABI major version (1) doesn't match the server's version (0)

(EE) Failed to load module "fbdev" (module requirement mismatch, 0)

(EE) module ABI major version (1) doesn't match the server's version (0)

(EE) Failed to load module "vesa" (module requirement mismatch, 0)

(EE) module ABI major version (1) doesn't match the server's version (0)

(EE) Failed to load module "vga" (module requirement mismatch, 0)

(EE) module ABI minor version (6) is newer than the server's version (5)

(EE) Failed to load module "mouse" (module requirement mismatch, 0)

(EE) module ABI minor version (6) is newer than the server's version (5)

(EE) Failed to load module "kbd" (module requirement mismatch, 0)

(EE) No drivers available.

Fatal server error:

no screens found

XIO:  fatal IO error 104 (Connection reset by peer) on X server ":0.0"

      after 0 requests (0 known processed) with 0 events remaining.

localhost ~ #

```

----------

## purple_monkey

Well that sucks.  I wonder what all those "doesn't match the server's version" messages mean.  In particular, which server?

Still no luck with DRI on my end either.  It will have to wait until I have a more stable Internet connection, likely not until after January 6.

----------

## VinzC

Not sure if this would help but I found a post of a Gentoo user who said you need libdrm 2.2 or greater with mesa 6.5.2. You might want to take a look over there.

EDIT: also please make sure /usr/X11R6 is actually a symlink to ../usr.

----------

## purple_monkey

Good advice.

I checked though and I have libdrm 2.3 and mesa 6.5.2 installed and /usr/X11R6 is a symlink to ../usr.

The problem seems to be that I don't have a file called "i915_dri.so" anywhere.  I have lots of other i915 files kicking around (particularly in /usr/src/linux-2.6.18-gentoo-r4/drivers/char/drm), but not this file.

----------

## VinzC

There may be many reasons why this file is absent from your system. First what's the value of variable VIDEO_CARDS in /etc/make.conf? IIRC It should be at least equal to "i810". You can also add "vesa fbdev".

Then are you running ~ARCH or the stable branch? I know the stable branch - at the time I had my inpiron 6000 - did not suit and I had to unmask some packages. As per my own experience, going the bleeding edge way on a laptop might result in some annoyances (anyway it is not recommended by Gentoo dev's).

You must keep the DRM modules in your kernel configuration. I expect these to be present *before* you compile MESA.

As a final note: don't install DRI snapshots as everyone of us who reported attempting to do so always had to give up. Simply removing them is sometimes not enough. You might have to clean your kernel source tree entirely and recompile. I know I sometimes had to do it that way. BTW DRI snapshots are useless as of Xorg 7.0. You don't need to unmask Xorg anymore.

Hope this helps.

----------

## purple_monkey

Currently, VIDEO_CARDS = "i915".  If I was to add "vesa fbdev" should it then read, VIDEO_CARDS = "i915 vesa fbdev"?

I am, to the best of my knowledge, running a stable branch.  I had to deviate from this before when modular X was still masked, in order to get DRI working the first time, but since then everything should be back where it belongs.

I currently have everything compiled directly into the kernel, but I will recompile everything as modules and try again.

----------

## purple_monkey

Alas, after recompiling everything as modules and then emerging mesa and mesa-progs again I still have the same problems as before.

```
# lsmod

Module                  Size  Used by

i915                   17088  1 

drm                    62804  2 i915

etc.

#export LIBGL_DEBUG=verbose glxinfo

#glxinfo

name of display: :0.0

libGL: XF86DRIGetClientDriverName: 1.7.3 i915 (screen 0)

libGL: OpenDriver: trying /usr/lib/dri/tls/i915_dri.so

libGL: OpenDriver: trying /usr/lib/dri/i915_dri.so

libGL error: dlopen /usr/lib/dri/i915_dri.so failed (/usr/lib/dri/i915_dri.so: cannot open shared object file: No such file or directory)

libGL error: unable to load driver: i915_dri.so

display: :0  screen: 0

direct rendering: No

etc.
```

Perhaps I should chuck "i915" and just use "i810".  Is this possible?

----------

## VinzC

Ah, that's it. There is no use flag video_cards_i915 for xorg-server in fact. Type equery u xorg-server and you'll see. You can keep your VIDEO_CARDS settings but just add i810 and recompile xorg and required dependencies:

```
# grep VIDEO_CARDS /etc/make.conf

VIDEO_CARDS = "i915 i810 vesa fbdev"

# emerge -avuDN xorg-x11
```

Support for i915 is offered through i810 driver (which is the one you put in xorg.conf).

----------

## purple_monkey

Excellent.  I now have direct rendering.  Thank you very much.

I do notice an error when I run glxinfo though, as follows:

```
 # glxinfo

name of display: :0.0

libGL: XF86DRIGetClientDriverName: 1.7.4 i915 (screen 0)

libGL: OpenDriver: trying /usr/lib/dri/tls/i915_dri.so

libGL: OpenDriver: trying /usr/lib/dri/i915_dri.so

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 4, (OK)

drmOpenByBusid: Searching for BusID pci:0000:00:02.0

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 4, (OK)

drmOpenByBusid: drmOpenMinor returns 4

drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0

libGL error: 

Can't open configuration file /etc/drirc: No such file or directory.

libGL error: 

Can't open configuration file /root/.drirc: No such file or directory.

do_wait: drmWaitVBlank returned -1, IRQs don't seem to be working correctly.

Try running with LIBGL_THROTTLE_REFRESH and LIBL_SYNC_REFRESH unset.

display: :0  screen: 0

direct rendering: Yes

...

```

Are these "No such file or directory" notes anything to worry about?

----------

## VinzC

/etc/drirc belongs to driconf, a GTK application that sets various DRI parameters. See if you have it on your system. Otherwise emerge -avq driconf.  :Smile:  Then copy ~/.drirc to /etc/drirc and the message should go away.

----------

## purple_monkey

Fantastic.   :Very Happy: 

No more drirc errors.  Still, there is one error left:

```
# glxinfo

name of display: :0.0

do_wait: drmWaitVBlank returned -1, IRQs don't seem to be working correctly.

Try running with LIBGL_THROTTLE_REFRESH and LIBL_SYNC_REFRESH unset.
```

How might I "unset" these variables or should I just ignore these errors?

----------

## VinzC

Googleing around told me it could be due to version mismatch between kernel module and X driver. Are you using CVS or DRI snapshots?

It also might result from not running the latest MESA packages. But I think you wrote you were using the latest, didn't you?

I also read one could always try "export LIBGL_ALWAYS_INDIRECT=true" but I don't know where to put that instruction exactly. I'd say if hardware acceleration is acceptable for you don't bother with that error message. Otherwise you could as well use Google; can't say how precious it is  :Wink:  ...

----------

