Updated Intel & VIA kernel modules for k2.6.21.7 and k2.6.25

Problems and successes with specific brands/models of computer video hardware
Post Reply
Message
Author
User avatar
Patriot
Posts: 733
Joined: Thu 15 Jan 2009, 19:04

Updated Intel & VIA kernel modules for k2.6.21.7 and k2.6.25

#1 Post by Patriot »

Hmmm .....

I've done some backporting for the intel-agp & via-agp module initially for kernel 2.6.21.7 and recently for kernel 2.6.25.16 to match kernel 2.6.30. Also, an updated kernel DRM module with compatible drm_pciids is also included.


Who may need this and why ?

If you're (like me) running puppy kernel 2.6.21.7 then xorg doesn't run (read: intialize and configure) properly on newer Intel GMA (IGP) or the VIA P4M900 hardware. This is due to the agp port not being properly recognized. To remedy this, we need updated intel/via agp (and related) kernel module to allow xorg to find, configure and use intel GMA hardware.


Intel AGP support by kernel version

Kernel 2.6.21.7
----------------------------------------
i440LX/BX/GX, i810/E, i815, i820, i830,
i840, i845/G, i850, i855PM/GM, i860,
i865, i875, i7505, i7205, i915G/GM,
i945G/GM, i946GZ, i965G/Q/GM

Kernel 2.6.25.16
----------------------------------------
i440LX/BX/GX, i810/E, i815, i820, i830,
i840, i845/G, i850, i855PM/GM, i860,
i865, i875, i7505, i7205, i7221,
i915G/GM, i945G/GM/GME, i946GZ, G31,
i965G/Q/GM/GME, G35, Q33, Q35, GM45

Kernel 2.6.30
----------------------------------------
i440LX/BX/GX, i810/E, i815, i820, i830,
i840, i845/G, i850, i854, i855PM/GM,
i860, i865, i875, i7505, i7205, i7221,
i915G/GM, i945G/GM/GME, i946GZ, G31,
i965G/Q/GM/GME, G33, G35, G41, G45,
GM45, Q33, Q35, Q45


The updated intel-agp modules (available below as pet & archive) have been updated to include all of kernel 2.6.30 intel agp chipset IDs minus i854 and also updated for VIA P4M900. When possible, updated code logic is also backported. If some code logic is not backported, it is due to non-supported functions/features in the current kernel (or workaround is not yet implemented).


How to use them ?

For Kernel 2.6.21.7:
----------------------------------------
1. find /lib/modules/2.6.21.7/kernel/drivers/char/agp folder.
2. make a copy of agpgart.ko, intel-agp.ko & via-agp.ko (just rename them).

3. find /lib/modules/2.6.21.7/kernel/drivers/char/drm folder. (note 1)
4. make a copy of drm.ko, i915.ko & via.ko (just rename them).

5. use the pet package below to install the updated modules
6. open a terminal and type 'depmod -a'

7. reboot
8. run xorgwizard


For Kernel 2.6.25.16:
----------------------------------------
1. find /lib/modules/2.6.25.16/kernel/drivers/char/agp folder.
2. make a copy of agpgart.ko, intel-agp.ko & via-agp.ko (just rename them).

3. find /lib/modules/2.6.25.16/kernel/drivers/char/drm folder. (note 1)
4. make a copy of drm.ko, i915.ko & via.ko (just rename them).

5. use the pet package below to install the updated modules
6. open a terminal and type 'depmod -a'

7. reboot
8. run xorgwizard

note 1: updated drm module is required if you want DRI.


For VIA P4M900 machines:
----------------------------------------
1. Perform kernel module update as appropriate and stop at step 7.
2. Install the openchrome pet before rebooting.
3. After openchrome drivers is installed, proceed to reboot and run xorgwizard.


Source Code

I've provided below the patched source code for anyone who wants to tinker. It can be compiled as an external module or added into the source tree.

Compiling the agp modules is straight forward. Unpack the archive somewhere. Go into the appropriate folder and type make to compile.

Compiling the drm is a little bit more involved. You'll have to copy over the updated drm_pciids.h to the kernel source tree. Open a terminal and do:

# cd /usr/src/linux
# mkdir .tmp_versions
# make drivers/char/drm/drm.ko
# make drivers/char/drm/i915.ko
# make drivers/char/drm/via.ko

Of course, the pre-requisite basic ingredient for compiling the modules would be:
1. the appropriate devx sfs
2. the approriate kernel source sfs


Known Issues

- I admit that I'm lame with C.
- The Intel kernel modules has backported codes that is not fully/extensively/properly tested.


Disclaimer

I am liable for absolutely nothing to anyone using this piece of modified software. Use them at your own peril.

These were made in the hope that it may be useful. However, I do not own intel hardware above i810 and the only tests that I was able to run was on a loaned i945GZ and G45 machines with a 17" CRT monitor (no, I have no LCDs). I've done what I can within my ability to ensure that the backported codes works as intended.

So, if smoke comes out of your machine or all your mp3 songs suddenly vanished then you have been warned.


Rgds



.=.
Attachments
intel-via-agpdrm-upd-2.6.21.7-i486.pet
Intel & VIA agp kernel module update pet for kernel 2.6.21.7
(117.88 KiB) Downloaded 2480 times
intel-via-agpdrm-upd-2.6.25.16-i486.pet
Intel & VIA agp kernel module update pet for kernel 2.6.25.16
(121.65 KiB) Downloaded 2699 times
intel-via-agp-drm-upd-src.tar.gz
Intel & VIA agp kernel modules updated source codes for kernel 2.6.21.7 and 2.6.25.16
(82.19 KiB) Downloaded 2508 times
openchrome-0.2.903-i486.pet
xorg openchrome stable release drivers for P4M900 (Unichrome/HC/HC9)
(152.57 KiB) Downloaded 2411 times

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#2 Post by tempestuous »

Very cool, Patriot.
I will mention this post to others who are trying to get 3D working on newer Intel graphics devices.

Regarding Openchrome, sadly they still haven't implemented the promised MPEG4 hardware acceleration feature.
http://www.openchrome.org/trac/wiki/SupportedHardware
If they do, relatively low-powered computers with onboard Unichrome graphics will become prime candidates for High-Definition media centre units.

User avatar
Patriot
Posts: 733
Joined: Thu 15 Jan 2009, 19:04

xf86-video-intel driver pets (v2.6.0 & v2.7.0)

#3 Post by Patriot »

Hmmm .....

I'm under the impression that xorg intel drivers beginning v2.7.1 and above will require xorg-server 1.6.1 and support for older xorg-server versions may be dropped. Probably due to newer kernel requirements , DRI2 and UXA ... whatever that is ...

I've made a quick compile with intel driver v2.6.0 and v2.7.0 versions. I'm able to make a clean compile for v2.6.0 by adding just one missing def header. I'm also able to make a clean compile for v2.7.0 by commenting out one unused subroutine.

Please find both xf86-video-intel driver pets for xorg versions 2.6.0 and 2.7.0 below. Both are compiled against xorg-server-1.3.0 currently in use by puppy 4.x. Also, an updated libdrm-2.4.9 pet is included as required by these two new drivers.

intel v.2.6.0/v2.7.0 chipset support as described in its man page
------------------------------------------------------------------------------
i810, i810-DC100, i810e, i815, i830M, 845G, 852GM, 855GM,
865G, 915G, 915GM, 945G, 945GM, 965G, 965Q, 946GZ, 965GM,
945GME, G33, Q33, Q35, G35, GM45, G45, Q45, G43 and G41

I'm unable to recommend which driver versions to use as I've no actual hardware to test them against right now. I hope to be able to do actual tests on real hardware in the near future.
tempestuous wrote:.....Regarding Openchrome, sadly they still haven't implemented the promised MPEG4 hardware acceleration feature. .....
Yes, it would be great to have h/w mpeg4 acceleration. I'm hoping that with Harald Welte's assistance this will become a reality in the coming months. I was given the impression that the h/w mpeg4 acceleration contains technology licensed from elsewhere. Openchrome developers will have to workaround those NDAs if it's true ...

I'm actually more interested to see 3D/GL fully working right now ...

Rgds


.=.
Attachments
libdrm-2.4.9-i486.pet
xf86 libdrm-2.4.9 pet update
(112.37 KiB) Downloaded 2617 times

User avatar
scabz
Posts: 364
Joined: Thu 30 Apr 2009, 18:14
Location: Tallahassee FL US
Contact:

#4 Post by scabz »

So has any one tested this on a eee pc?

User avatar
charlie6
Posts: 1230
Joined: Mon 30 Jun 2008, 04:03
Location: Saint-Gérard / Walloon part of Belgium

#5 Post by charlie6 »

Hi Patriot,
thanks for your time !
...The updated intel-agp modules (available below as pet & archive) have been updated to include all of kernel 2.6.30 intel agp chipset IDs minus i854 and also updated...
May the given pets be used with pup4.3.1 k2.6.30.5?

I am looking to get OpenGL working on the latest kernel, on a PC with 845G intel onboard.
Cheers, charlie

User avatar
deniros
Posts: 50
Joined: Tue 20 Jun 2006, 22:46
Location: Belgium
Contact:

Re: xf86-video-intel driver pets (v2.6.0 & v2.7.0)

#6 Post by deniros »

Hi patriot,

Thanks for your effort. I'll try your work this afternoon, when i come home from work, to try this on my acer aspire one 110 atom based netbook. (which has Intel 945GME Express integrated graphics)

And report if it 'll work.

Patriot wrote:Hmmm .....

I'm under the impression that xorg intel drivers beginning v2.7.1 and above will require xorg-server 1.6.1 and support for older xorg-server versions may be dropped. Probably due to newer kernel requirements , DRI2 and UXA ... whatever that is ...

I've made a quick compile with intel driver v2.6.0 and v2.7.0 versions. I'm able to make a clean compile for v2.6.0 by adding just one missing def header. I'm also able to make a clean compile for v2.7.0 by commenting out one unused subroutine.

Please find both xf86-video-intel driver pets for xorg versions 2.6.0 and 2.7.0 below. Both are compiled against xorg-server-1.3.0 currently in use by puppy 4.x. Also, an updated libdrm-2.4.9 pet is included as required by these two new drivers.

intel v.2.6.0/v2.7.0 chipset support as described in its man page
------------------------------------------------------------------------------
i810, i810-DC100, i810e, i815, i830M, 845G, 852GM, 855GM,
865G, 915G, 915GM, 945G, 945GM, 965G, 965Q, 946GZ, 965GM,
945GME, G33, Q33, Q35, G35, GM45, G45, Q45, G43 and G41

I'm unable to recommend which driver versions to use as I've no actual hardware to test them against right now. I hope to be able to do actual tests on real hardware in the near future.
tempestuous wrote:.....Regarding Openchrome, sadly they still haven't implemented the promised MPEG4 hardware acceleration feature. .....
Yes, it would be great to have h/w mpeg4 acceleration. I'm hoping that with Harald Welte's assistance this will become a reality in the coming months. I was given the impression that the h/w mpeg4 acceleration contains technology licensed from elsewhere. Openchrome developers will have to workaround those NDAs if it's true ...

I'm actually more interested to see 3D/GL fully working right now ...

Rgds


.=.

User avatar
Patriot
Posts: 733
Joined: Thu 15 Jan 2009, 19:04

Re: xf86-video-intel driver & libdrm pets

#7 Post by Patriot »

Hmmm .....

@charlie6
Yes, the xorg drivers and libdrm pets can be used on p430 k26305 as it still uses the same xorg server. The kernel modules can also be used for puppy430 but only for the appropriate kernel version.

For OpenGL, you'll need the mesa3d stuffs ... the xorg_dri-7.3-1.pet has them. Get it using the pet manager or puppy pet repository ...


@deniros
It just so happens that I was given an opportunity to play with a loaned netbook (for a couple of days of troubleshooting) that has a 945GME too ... I'm experiencing minor intermittent display corruption with drivers v2.60 and 2.70 ... So, I built a few previous versions to make some tests and the intermittent display corruption is resolved by using v2.4.3 - v2.5.1 (YMMV)..... I've also made libdrm binaries for making some tests but couldn't proceed further as the netbook needs to be returned. The latest libdrm-2.4.15 borked during compile, so the last binary would be 2.4.14 ...

Grab them if anyone wishes for it ...


Rgds

._.
Attachments
libdrm-2.4.11-i486.pet
xf86 libdrm-2.4.11 pet update
(113.47 KiB) Downloaded 2129 times
libdrm-2.4.12-i486.pet
xf86 libdrm-2.4.12 pet update
(105.42 KiB) Downloaded 2025 times
libdrm-2.4.13-i486.pet
xf86 libdrm-2.4.13 pet update
(104.89 KiB) Downloaded 2054 times
libdrm-2.4.14-i486.pet
xf86 libdrm-2.4.14 pet update
(104.72 KiB) Downloaded 2246 times

User avatar
battleshooter
Posts: 1378
Joined: Wed 14 May 2008, 05:10
Location: Australia

#8 Post by battleshooter »

Hey Patriot,

Really appreciate all the trouble you went to to compile all this, it's fantastic! I haven't been able to use the mainstream Puppy for ages, but now I finally have high res! Sweet as man. Thank you also for your clear post with the how to. Makes it easier :)

Battleshooter
[url=http://www.murga-linux.com/puppy/viewtopic.php?t=94580]LMMS 1.0.2[/url], [url=http://www.murga-linux.com/puppy/viewtopic.php?t=94593]Ardour 3.5.389[/url], [url=http://www.murga-linux.com/puppy/viewtopic.php?t=94629]Kdenlive 0.9.8[/url]

User avatar
Patriot
Posts: 733
Joined: Thu 15 Jan 2009, 19:04

#9 Post by Patriot »

Hmmm ...

Hey there battleshooter,
battleshooter wrote:........ I haven't been able to use the mainstream Puppy for ages, but now I finally have high res! ........
Glad to know they helped with the high res ..... now, let's have some more fun with puppy ....


Rgds

User avatar
chrome307
Posts: 708
Joined: Thu 15 Jan 2009, 11:00

#10 Post by chrome307 »

Hi there

Can someone give me some advice regarding my Intel 945G drivers?

This is my current OS:

BrowserLinux 354

Base: PuppyLinux 4.3.1, kernel 2.6.30.5 (SMP)

I would like to have OpenGL support, but am unsure how or which files to download/test this.

Some help would be appreciated!

I can see the Xorg driver in puppy package manager, but I don't understand which other files to grab as none of the refer to my kernel build ( same question as Charlie earlier in the thread ).

User avatar
Anniekin
Posts: 246
Joined: Wed 25 Feb 2009, 00:15

Aspire One Puppy?

#11 Post by Anniekin »

Patriot,

I'm trying to get 3D / opengl to work Aspire One Puppy (AAO).

Do you have any words of wisdom to shed on the subject?

mikethompsonuk82
Posts: 1
Joined: Thu 08 Dec 2011, 15:40

Now this was helpful!

#12 Post by mikethompsonuk82 »

Hey Patriot, really found this a big help, thank the Google gods I found this post! lol. Penis advantage is a nice one.

gemera
Posts: 14
Joined: Fri 17 Feb 2012, 19:19

#13 Post by gemera »

hi still learning linux basics

i'm trying to get puppy 4.3.1 ( I really like the GUI ) to recognise my intel 82845G/GL integrated card which i believe is part of the 845G chipset.

currently only get 640 by 480

am i right in thinking that the xorg drivers provided here should do the job?

and it would just be a question of trying each to see if it works?

i've tried simply loading the drivers and lib via PET to what seems no apparent effect

is there something else i need to do bar rebooting the computer?


any help appreciated.

Post Reply