Go Back   Rage3D » Rage3D Discussion Area » Computing Forums » Operating Systems » Linux » Drivers
Rage3D Subscribe Register FAQ Members List Calendar Mark Forums Read

Drivers Discussion forum for Linux drivers.

"
Reply
 
Thread Tools Display Modes
Old Jan 18, 2005, 08:03 AM   #1
Advertisement (Guests Only)

Login or Register to remove this ad
JonSvenJonsson
Radeon HD 6970
 
Join Date: Mar 2004
Posts: 581
JonSvenJonsson is still being judged by the masses


ATI Technologies Patch to add internal agpgart support for fglrx-64

Hi
Ati seems to have forgotten via-chipsets in internal agpgart, this patch adds support for
0000:00:00.0 Host bridge: VIA Technologies, Inc. VT8385 [K8T800 AGP] Host Bridge (rev 01)
as found in MSI-6702 (an KT800 chipset).
support for other chipsets may be easy to add (look at what i did), however i fear that nforce3 support may be difficult (you can look at 2.4 agpgart, as that is what fglrx uses, nforce3 uses some special initialization, and as i dont have such an board i dont have to motiviation to port this to fglrx).
Anyway here is the patch, works for me (TM):
Code:
diff -Nur build_mod/agpgart_be.c fglrx-xorg/agpgart_be.c
--- build_mod/agpgart_be.c 2005-01-18 15:02:14.639429632 +0100
+++ fglrx-xorg/agpgart_be.c	2005-01-18 14:54:34.000000000 +0100
@@ -6167,6 +6167,22 @@
         "Via",
         "Apollo P4M266",
         via_generic_setup },
+
+ { PCI_DEVICE_ID_VIA_8380_0,
+                PCI_VENDOR_ID_VIA,
+                AMD_8151,
+                "AMD",
+                "On-CPU GART",
+                amd_8151_setup },
+
+        { PCI_DEVICE_ID_VIA_8385_0,
+                PCI_VENDOR_ID_VIA,
+                AMD_8151,
+                "AMD",
+                "On-CPU GART",
+                amd_8151_setup },
+
+
     { 0,
         PCI_VENDOR_ID_VIA,
         VIA_GENERIC,
diff -Nur build_mod/agp.h fglrx-xorg/agp.h
--- build_mod/agp.h	2005-01-18 15:02:14.644428872 +0100
+++ fglrx-xorg/agp.h	2005-01-18 14:55:33.000000000 +0100
@@ -202,6 +202,9 @@
     #define SIS_GENERIC             _X(SIS_GENERIC)
     #define AMD_GENERIC             _X(AMD_GENERIC)
     #define AMD_IRONGATE            _X(AMD_IRONGATE)
+    #define PCI_DEVICE_ID_VIA_8380_0        0x0204
+    #define PCI_DEVICE_ID_VIA_8385_0        0x3188
+
 //    #define AMD_IGD4                _X(AMD_IGD4)
 //    #define AMD_IGD4_2P             _X(AMD_IGD4_2P)
     #define AMD_761                 _X(AMD_761)
diff -Nur build_mod/debian/changelog fglrx-xorg/debian/changelog
--- build_mod/debian/changelog	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/changelog	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,303 @@
+fglrx-installer (3.14.6-1) experimental; urgency=low
+
+  * New upstream version. Thanks to Alexandru one more time.
+    - This release introduces hardware support for all currently shipping ATI
+      PCI-Express graphics cards.
+    - Doom 3 works, let's toast those demons!
+  * Patches from Alexandru Fomin:
+    - 06-vm_pcie_nopage:
+      Fix a warning: initialization from incompatible pointer type.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Wed, 10 Nov 2004 16:37:49 +0100
+
+fglrx-installer (3.14.1-2) experimental; urgency=low
+
+  * Add option -nd to wget to make sure it doesn't create directories.
+    Suggested by Thomas Weber.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sat,  9 Oct 2004 12:07:16 +0200
+
+fglrx-installer (3.14.1-1) experimental; urgency=low
+
+  * New upstream version. Thanks to Alexandru Fomin for the patch, again!
+  * Always build the control panel from source.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sat,  2 Oct 2004 16:36:24 +0200
+
+fglrx-installer (3.12.0-2) experimental; urgency=low
+
+  * Clean up package:
+    - add build dependencies on xserver-xfree86 and libqt3-mt-dev;
+    - remove Qt2 control panel because I can't compile it and dependencies are
+      no longer available in testing/unstable anyway;
+    - remove old-* and new-* directories (leftovers from patch works).
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Tue, 14 Sep 2004 00:43:13 +0200
+
+fglrx-installer (3.12.0-1) experimental; urgency=low
+
+  * New upstream version.
+  * The upstream RPM package does not contain any control panel binaries, so
+    I'm building my own. Thanks to Alexandru Fomin for the idea and a patch.
+    - Please note that this introduces dependencies on whichever version of
+      the Qt libraries I'm using today, most likely the one from unstable.
+  * This version of the packaging scripts has been verified to work with
+    upstream versions 3.7.6, 3.9.0, 3.11.1 and 3.12.0; support for previous
+    versions has been removed, but diffs are still available in the source
+    archive in case you want to use them.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sun, 12 Sep 2004 14:09:43 +0200
+
+fglrx-installer (3.11.1-1) experimental; urgency=low
+
+  * New upstream version. Thanks to Alexandru Fomin for the patch.
+    - we finally have a real license
+    - regparm and get_page patches dropped (included upstream)
+    - refreshed patch 00-make.sh to apply cleanly
+  * Older driver versions wouldn't build anymore after the changes in 3.9.0-4;
+    now I've redone the patches so that they work again.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Tue, 10 Aug 2004 00:01:48 +0200
+
+fglrx-installer (3.9.0-5) experimental; urgency=low
+
+  * Clarified the copyright file: my scripts are GNU GPLed, but the ATI
+    driver is not; in fact, there is no clear license that I could find.
+  * Remove module/postinst and module/postrm; bug #248624 has been closed in
+    debhelper 4.2.11, please upgrade.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sat, 26 Jun 2004 11:09:13 +0200
+
+fglrx-installer (3.9.0-4) experimental; urgency=low
+
+  * Changes to the module's make.sh:
+    - restored some sections that I removed in previous versions, so you can
+      use make.sh to build a module for the running kernel;
+    - detect CPU arch and SMP by loading the kernel's .config;
+    - fixed some probing that I can only describe as "brain-damaged".
+  * Changes to the module's Makefile for 2.6.x:
+    - moved out of the 2.6.x directory so it doesn't need to create symlinks.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Thu,  3 Jun 2004 12:17:29 +0200
+
+fglrx-installer (3.9.0-3) experimental; urgency=low
+
+  * Patches from Alexandru Fomin:
+    - 03-fglrx-3.9.0-regparm.patch:
+      Fix compilation with CONFIG_REGPARM -- again. The official fix has been
+      reported to be broken. Thanks Alexandru!
+    - 04-get_page.patch:
+      Resync. I should've done it myself, but I'm lazy. ;)
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sat, 29 May 2004 18:30:31 +0200
+
+fglrx-installer (3.9.0-2) experimental; urgency=low
+
+  * Add module/postinst and module/postrm as a workaround for bug #248624.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sat, 29 May 2004 15:36:49 +0200
+
+fglrx-installer (3.9.0-1) experimental; urgency=low
+
+  * New upstream version.
+  * From the release notes:
+    - Explicit regparm support for newer Redhat, Fedora and SuSE kernels
+    - VIA KT400 motherboard chipsets now recognized properly
+  * Upstream now provides some documentation in HTML format.
+  * Removed support for driver versions before 3.2; cry if you care.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Thu, 27 May 2004 11:54:20 +0200
+
+fglrx-installer (3.7.6-5) experimental; urgency=low
+
+  * Patches from http://rage3d.com/board/showthread.php?threadid=33737573
+    - 01-make.sh-PIPESTATUS.patch:
+      Fix problem with return status from a pipe.
+      (from http://www.kaseorg.com/fglrx-3.7.6-regparm.patch)
+    - 03-fglrx-3.7.6-regparm.patch:
+      Fix compilation with CONFIG_REGPARM.
+      (from http://www.kaseorg.com/fglrx-3.7.6-regparm.patch plus fixes
+       needed to compile 3.7.6 with regparm patch applied and gcc-3.4.0)
+    - 04-get_page.patch:
+      Patch to build 3.7.6 with kernel 2.6.6-mm2 and probably 2.6.7.
+  * debian/rules:
+    - Small fixes to variable assignments.
+  * module/rules:
+    - Fix destdir for dh_builddeb.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Mon, 24 May 2004 17:48:22 +0200
+
+fglrx-installer (3.7.6-4) experimental; urgency=low
+
+  * debian/rules: When the user overrides PVERSION, set the packages' version
+    to driver_version+package_version (f.e. 3.2.8+3.7.6-4) to avoid confusion
+    between older driver versions packaged by different script versions.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sun, 11 Apr 2004 11:15:37 +0200
+
+fglrx-installer (3.7.6-3) experimental; urgency=low
+
+  * module/control.template: Fix kernel module's description.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sun, 28 Mar 2004 10:42:06 +0200
+
+fglrx-installer (3.7.6-2) experimental; urgency=low
+
+  * debian/patches-3.7.*/02-2.6.x_Makefile: Determine GCC version the proper
+    way (suggested by Tristan Seligmann).
+  * debian/rules: The drivers for XFree86 versions 4.1 and 4.2 don't contain
+    the Qt3 control panel (don't ask me why), so don't build its package.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Wed, 24 Mar 2004 23:47:11 +0100
+
+fglrx-installer (3.7.6-1) experimental; urgency=low
+
+  * New upstream version.
+  * debian/rules, debian/control.template: Put control panels in two separate
+    packages, one for Qt2 and another for Qt3; remove the "qtstatic" control
+    panel as it wasn't statically linked after all and was therefore useless.
+  * debian/rules: Fix various missing execute permissions.
+  * debian/rules: Fix diversion bug caused by removing an useful 'sed' run.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Mon, 22 Mar 2004 16:38:38 +0100
+
+fglrx-installer (3.7.0-5) experimental; urgency=low
+
+  * module/rules: Use cat, not cp, to generate control file; works around
+                  possible issues with permissions.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Wed, 25 Feb 2004 23:05:17 +0100
+
+fglrx-installer (3.7.0-4) experimental; urgency=low
+
+  * debian/rules, debian/control.template: Tweak the control file instead of
+    hacking package names during the build; the following fixes are welcome
+    side effects of this much overdue change.
+  * debian/rules: Fixed use of sed -i. Really.
+  * debian/rules: Fixed names of the doc directories.
+  * debian/rules: Put headers and static libraries in a separate package.
+  * debian/rules: Extract RPM with --no-preserve-owner; every file should be
+                  owned by (fake)root.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Tue, 17 Feb 2004 00:39:44 +0100
+
+fglrx-installer (3.7.0-3) experimental; urgency=low
+
+  * debian/rules: Uncomment dh_installchangelogs. Ooops.
+  * fglrx-kernel-src:
+    - tarball renamed to fglrx-<xversion>-<driverversion>.tar.gz
+    - tarball unpacks to /usr/src/modules/fglrx-<xversion>-<driverversion>
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sun,  8 Feb 2004 13:38:37 +0100
+
+fglrx-installer (3.7.0-2) experimental; urgency=low
+
+  * debian/rules: Fixed bashism.
+  * debian/rules: Fixed use of sed -i which doesn't work on woody.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Fri,  6 Feb 2004 11:35:16 +0100
+
+fglrx-installer (3.7.0-1) experimental; urgency=low
+
+  * New upstream version.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sun,  4 Jan 2004 17:40:05 +0100
+
+fglrx-installer (3.2.8-2) experimental; urgency=low
+
+  * Fix "2.6.x/Makefile" to make it work in this environment.
+  * Fix "make.sh" and "firegl_public.c" to make them work with kernel 2.6.
+  * User reports that Radeon 9000 works too; add to description.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Tue, 16 Dec 2003 00:06:47 +0100
+
+fglrx-installer (3.2.8-1) experimental; urgency=low
+
+  * New upstream version.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Sun, 12 Oct 2003 17:07:38 +0200
+
+fglrx-installer (3.2.5-1) experimental; urgency=low
+
+  * New upstream version.
+  * This version officially supports the Radeon products again.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Sat,  4 Oct 2003 12:34:18 +0200
+
+fglrx-installer (2.9.13-3) experimental; urgency=low
+
+  * debian/rules:
+    - Embed the XFree86 version we're building for in the packages' names.
+      TODO: names of the doc directories are wrong, looking for a fix.
+    - Handle multiple versions of the driver properly, i.e. set the packages'
+      version accordingly.
+    - Move LICENSE.* out of usr/X11R6/bin just after unpacking.
+  * debian/control:
+    - Depend on the proper version of xserver-xfree86, just in case.
+  * Switch to debhelper V4.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Thu, 21 Aug 2003 12:53:46 +0200
+
+fglrx-installer (2.9.13-2) experimental; urgency=low
+
+  * debian/rules:
+    - Detect which XFree86 version is installed and download the correct
+      driver and documentation.
+    - Handle multiple versions of the driver (2.5.1, 2.9.6 and 2.9.13).
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Wed, 20 Aug 2003 16:48:54 +0200
+
+fglrx-installer (2.9.13-1) experimental; urgency=low
+
+  * New upstream version.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Fri,  1 Aug 2003 10:28:08 +0200
+
+fglrx-installer (2.9.6-3) experimental; urgency=low
+
+  * ATI moved the files to a different server; URIs changed accordingly.
+  * While I was at it, I put the base URL in a variable.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Fri,  1 Aug 2003 10:00:16 +0200
+
+fglrx-installer (2.9.6-2) experimental; urgency=low
+
+  * Divert libGL.so.1.2 from /usr/X11R6/lib to /usr/share/fglrx/diversions
+    instead of just renaming it, otherwise ldconfig would recreate a symlink
+    to the diverted version.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Wed, 14 May 2003 15:13:17 +0200
+
+fglrx-installer (2.9.6-1) experimental; urgency=low
+
+  * New upstream version.
+  * Source package renamed to "fglrx-installer".
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Mon, 31 Mar 2003 01:16:12 +0200
+
+fglrx-glc22-4.2.0 (2.5.1-2) experimental; urgency=low
+
+  * Recommends: fglrx-driver is set to the proper version during the kernel
+    module build process.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Thu, 13 Mar 2003 22:06:21 +0100
+
+fglrx-glc22-4.2.0 (2.5.1-1) experimental; urgency=low
+
+  * The previous version was missing the changelog in the kernel module sources.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Tue, 14 Jan 2003 20:53:02 +0100
+
+fglrx-glc22-4.2.0 (2.5.1-0) experimental; urgency=low
+
+  * New upstream version. Works with "powered by ATI" cards.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Sat, 30 Nov 2002 11:45:51 +0100
+
+fglrx-glc22-4.2.0 (2.4.3-0) experimental; urgency=low
+
+  * Converted from .rpm format to .deb
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Thu, 28 Nov 2002 02:17:56 +0100
+
+
diff -Nur build_mod/debian/compat fglrx-xorg/debian/compat
--- build_mod/debian/compat	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/compat	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1 @@
+4
diff -Nur build_mod/debian/control fglrx-xorg/debian/control
--- build_mod/debian/control	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/control	2005-01-18 12:59:58.000000000 +0100
@@ -0,0 +1,14 @@
+Source: fglrx-installer
+Section: non-free/x11
+Priority: extra
+Maintainer: Flavio Stanchina <flavio@stanchina.net>
+Build-Depends: debhelper (>= 4.2.11), kernel-package
+
+Package: fglrx-4.3.0-kernel-2.6.10-ck5
+Architecture: i386
+Provides: fglrx-4.3.0-kernel
+Recommends: fglrx-4.3.0-driver (= 3.14.6-1), kernel-image-2.6.10-ck5
+Description: ATI binary kernel module for Linux 2.6.10-ck5
+ Video driver for the ATI Radeon and FireGL graphics accelerators.
+ .
+ This package provides the binary kernel module for Linux 2.6.10-ck5.
diff -Nur build_mod/debian/control.template fglrx-xorg/debian/control.template
--- build_mod/debian/control.template	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/control.template	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,14 @@
+Source: fglrx-installer
+Section: non-free/x11
+Priority: extra
+Maintainer: Flavio Stanchina <flavio@stanchina.net>
+Build-Depends: debhelper (>= 4.2.11), kernel-package
+
+Package: fglrx-4.3.0-kernel-#KVERS#
+Architecture: i386
+Provides: fglrx-4.3.0-kernel
+Recommends: fglrx-4.3.0-driver (= #VERSION#), kernel-image-#KVERS#
+Description: ATI binary kernel module for Linux #KVERS#
+ Video driver for the ATI Radeon and FireGL graphics accelerators.
+ .
+ This package provides the binary kernel module for Linux #KVERS#.
diff -Nur build_mod/debian/copyright fglrx-xorg/debian/copyright
--- build_mod/debian/copyright	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/copyright	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,19 @@
+This package was debianized by Flavio Stanchina (with the help
+of the alien program) by converting a binary .rpm package
+on Thu, 28 Nov 2002 02:17:56 +0100
+
+Copyright:
+  See the file ATI_LICENSE.TXT in the driver package, if they didn't
+  forget to include it in this release. In short, this is definitely
+  not Free Software: use at your own legal risk.
+
+  Versions before 3.11.1 did not come with a complete license,
+  neither on the ATI site nor in the .rpm archive.
+
+Packaging scripts:
+  Copyright (C) 2002-2004 Flavio Stanchina
+  Licensed under the GNU GPL
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL'.
+
diff -Nur build_mod/debian/dirs fglrx-xorg/debian/dirs
--- build_mod/debian/dirs	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/dirs	2005-01-18 12:59:58.000000000 +0100
@@ -0,0 +1 @@
+lib/modules/2.6.10-ck5/misc
diff -Nur build_mod/debian/dirs.template fglrx-xorg/debian/dirs.template
--- build_mod/debian/dirs.template	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/dirs.template	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1 @@
+lib/modules/#KVERS#/misc
diff -Nur build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postinst fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postinst
--- build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postinst	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postinst	2005-01-18 12:59:59.000000000 +0100
@@ -0,0 +1,7 @@
+#!/bin/sh
+set -e
+# Automatically added by dh_installmodules
+if [ "$1" = "configure" ] && [ -x /sbin/update-modules ]; then
+	update-modules >/dev/null
+fi
+# End automatically added section
diff -Nur build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postrm fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postrm
--- build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postrm	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postrm	2005-01-18 12:59:59.000000000 +0100
@@ -0,0 +1,7 @@
+#!/bin/sh
+set -e
+# Automatically added by dh_installmodules
+if [ -x /sbin/update-modules ]; then
+	update-modules >/dev/null
+fi
+# End automatically added section
Binärdateien build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/lib/modules/2.6.10-ck5/misc/fglrx.ko and fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/lib/modules/2.6.10-ck5/misc/fglrx.ko sind verschieden.
Binärdateien build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/changelog.Debian.gz and fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/changelog.Debian.gz sind verschieden.
diff -Nur build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/copyright fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/copyright
--- build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/copyright	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/copyright	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,19 @@
+This package was debianized by Flavio Stanchina (with the help
+of the alien program) by converting a binary .rpm package
+on Thu, 28 Nov 2002 02:17:56 +0100
+
+Copyright:
+  See the file ATI_LICENSE.TXT in the driver package, if they didn't
+  forget to include it in this release. In short, this is definitely
+  not Free Software: use at your own legal risk.
+
+  Versions before 3.11.1 did not come with a complete license,
+  neither on the ATI site nor in the .rpm archive.
+
+Packaging scripts:
+  Copyright (C) 2002-2004 Flavio Stanchina
+  Licensed under the GNU GPL
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL'.
+
diff -Nur build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postinst.debhelper fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postinst.debhelper
--- build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postinst.debhelper	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postinst.debhelper	2005-01-18 12:59:59.000000000 +0100
@@ -0,0 +1,5 @@
+# Automatically added by dh_installmodules
+if [ "$1" = "configure" ] && [ -x /sbin/update-modules ]; then
+	update-modules >/dev/null
+fi
+# End automatically added section
diff -Nur build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postrm.debhelper fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postrm.debhelper
--- build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postrm.debhelper	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postrm.debhelper	2005-01-18 12:59:59.000000000 +0100
@@ -0,0 +1,5 @@
+# Automatically added by dh_installmodules
+if [ -x /sbin/update-modules ]; then
+	update-modules >/dev/null
+fi
+# End automatically added section
diff -Nur build_mod/debian/rules fglrx-xorg/debian/rules
--- build_mod/debian/rules	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/rules	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,129 @@
+#!/usr/bin/make -f
+# Copyright (C) 2002-2004 Flavio Stanchina
+# Adapted from nvidia-kernel-src.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+
+baseepoch=$(shell expr $(KDREV) : '\([0-9]*\):.*' 2>/dev/null )
+ifneq ($(baseepoch),)
+      EPOCH=$(baseepoch):
+endif
+REV=$(shell expr $(KDREV) : '[0-9]*:\(.*\)' 2>/dev/null)
+ifeq ($(REV),)
+     REV=$(KDREV)
+endif
+VERSION=$(shell dpkg-parsechangelog | grep ^Version: | cut -d ' ' -f 2)
+PKG_VERSION=$(EPOCH)$(VERSION)+$(REV)
+
+# if you need to redefine these
+KSRC:=$(KSRC)
+KVERS:=${KVERS}
+
+BASEVERS=$(shell echo $(KVERS) | cut -d. -f-2)
+ifeq ($(BASEVERS),2.6)
+    module=fglrx.ko
+else
+    module=fglrx.o
+endif
+
+
+configure: configure-stamp
+configure-stamp:
+	if [ -f $(CURDIR)/debian/control.template ]; then \
+		cat $(CURDIR)/debian/control.template > $(CURDIR)/debian/control; \
+	fi
+
+	dh_testdir
+	touch configure-stamp
+
+
+build: configure-stamp make.sh
+	dh_testdir
+ifeq ($(BASEVERS),2.6)
+	$(MAKE) -C $(KSRC) SUBDIRS=$(CURDIR) modules
+else
+	KERNEL_PATH=$(KSRC) uname_r=$(KVERS) ./make.sh --nohints
+endif
+
+
+install: build
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+
+	-rm -f $(CURDIR)/debian/control $(CURDIR)/debian/dirs
+	sed -e 's/#KVERS#/$(KVERS)/g' \
+	    -e 's/#VERSION#/$(VERSION)/g' debian/control.template > $(CURDIR)/debian/control
+	sed -e 's/#KVERS#/$(KVERS)/g' debian/dirs.template > $(CURDIR)/debian/dirs
+
+	dh_installdirs
+	dh_install $(module) lib/modules/$(KVERS)/misc
+
+
+binary_modules: build install
+	dh_testdir
+	dh_testroot
+#	dh_installdebconf	
+	dh_installdocs
+#	dh_installexamples
+#	dh_installmanpages
+#	dh_undocumented
+	dh_installmodules
+	dh_installchangelogs 
+	dh_link
+	dh_strip
+	dh_compress
+	dh_fixperms
+# You may want to make some executables suid here.
+#	dh_suidregister
+#	dh_makeshlibs
+	dh_installdeb
+#	dh_shlibdeps
+	dh_gencontrol -- -v$(PKG_VERSION)
+	dh_md5sums
+ifdef KPKG_DEST_DIR
+	dh_builddeb --destdir=$(KPKG_DEST_DIR)
+else
+	dh_builddeb --destdir=$(CURDIR)/../..
+endif
+
+
+clean:
+	dh_testroot
+	-rm -f configure-stamp
+	-rm -f $(module) fglrx.mod.c *.o libfglrx_ip.a
+	-rm -f .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
+	-rm -rf .tmp_versions
+	-rm -rf patch
+
+	-dh_clean
+
+	-rm $(CURDIR)/debian/control
+	-rm $(CURDIR)/debian/dirs
+
+
+# The kdist_configure target is called by make-kpkg modules_config. It
+# should configure the module so it is ready for compilation (mostly
+# useful for calling configure)
+kdist_config: configure
+
+kdist_configure: configure
+
+
+# the kdist_image target is called by make-kpkg modules_image. It is
+# responsible for compiling the module and creating the package. It
+# should also clean up after making the module. Please note we use a
+# seperate binary-modules target to make testing the package building
+# easier
+kdist_image: binary_modules clean
+
+
+# the kdist_clean target is called by make-kpkg modules_clean. It is
+# responsible for cleaning up any changes that have been made by the
+# other kdist_commands (except for the .deb files created).
+kdist_clean: clean
+
+
+.PHONY: configure build install binary_modules clean kdist_config kdist_configure kdist_image kdist_clean
diff -Nur build_mod/fglrx.mod.c fglrx-xorg/fglrx.mod.c
--- build_mod/fglrx.mod.c	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/fglrx.mod.c	2005-01-18 12:59:57.000000000 +0100
@@ -0,0 +1,119 @@
+#include <linux/module.h>
+#include <linux/vermagic.h>
+#include <linux/compiler.h>
+
+MODULE_INFO(vermagic, VERMAGIC_STRING);
+
+#undef unix
+struct module __this_module
+__attribute__((section(".gnu.linkonce.this_module"))) = {
+ .name = __stringify(KBUILD_MODNAME),
+ .init = init_module,
+#ifdef CONFIG_MODULE_UNLOAD
+ .exit = cleanup_module,
+#endif
+};
+
+static const struct modversion_info ____versions[]
+__attribute_used__
+__attribute__((section("__versions"))) = {
+	{ 0xd53dcdcc, "struct_module" },
+	{ 0x3ce4ca6f, "disable_irq" },
+	{ 0x41295ff1, "module_refcount" },
+	{ 0x1d32497b, "pci_bus_read_config_byte" },
+	{ 0x8ce16b3f, "__kmalloc" },
+	{ 0xa8824348, "mem_map" },
+	{ 0xd6ee688f, "vmalloc" },
+	{ 0xb547f62a, "init_level4_pgt" },
+	{ 0x25ec1b28, "strlen" },
+	{ 0x7f2c0f14, "init_mm" },
+	{ 0x4d2b5ffa, "malloc_sizes" },
+	{ 0xd5f562ef, "remove_wait_queue" },
+	{ 0x8ffd2579, "__lock_page" },
+	{ 0x56179c5f, "mtrr_add" },
+	{ 0xab5f0744, "inter_module_register" },
+	{ 0x8764cdc5, "remove_proc_entry" },
+	{ 0xa03d6a57, "__get_user_4" },
+	{ 0x8610f856, "pci_get_class" },
+	{ 0xeae3dfd6, "__const_udelay" },
+	{ 0x2fd1d81c, "vfree" },
+	{ 0x49ea47f7, "pci_bus_write_config_word" },
+	{ 0xa2487e0, "unblock_all_signals" },
+	{ 0x43624965, "change_page_attr" },
+	{ 0x1d26aa98, "sprintf" },
+	{ 0xb3a307c6, "si_meminfo" },
+	{ 0xda02d67, "jiffies" },
+	{ 0xe2d5255a, "strcmp" },
+	{ 0x738cf5ba, "pci_find_slot" },
+	{ 0xba4fe124, "pm_unregister_all" },
+	{ 0x60113423, "default_wake_function" },
+	{ 0xd38a1161, "__alloc_pages" },
+	{ 0x3fa03a97, "memset" },
+	{ 0x208ce54a, "sys_ioctl" },
+	{ 0xdd132261, "printk" },
+	{ 0x3656bf5a, "lock_kernel" },
+	{ 0xec2cd46c, "unregister_ioctl32_conversion" },
+	{ 0x51593801, "pci_find_device" },
+	{ 0xbe499d81, "copy_to_user" },
+	{ 0x7ec9bfbc, "strncpy" },
+	{ 0xb421656f, "dma_free_coherent" },
+	{ 0x85abc85f, "strncmp" },
+	{ 0x354111e6, "pci_bus_write_config_dword" },
+	{ 0x8fe95a80, "register_ioctl32_conversion" },
+	{ 0x43b0c9c3, "preempt_schedule" },
+	{ 0x9eac042a, "__ioremap" },
+	{ 0xefcded7d, "unlock_page" },
+	{ 0xba54631c, "inter_module_put" },
+	{ 0x24b55df8, "contig_page_data" },
+	{ 0xdb734537, "dma_alloc_coherent" },
+	{ 0xb3d2bf12, "find_first_zero_bit" },
+	{ 0x2edb1583, "pci_find_capability" },
+	{ 0xb1f975aa, "unlock_kernel" },
+	{ 0x7dceceac, "capable" },
+	{ 0x3978e242, "kmem_cache_alloc" },
+	{ 0xf1bcfa1b, "__free_pages" },
+	{ 0x3762cb6e, "ioremap_nocache" },
+	{ 0x71004146, "pci_bus_read_config_word" },
+	{ 0x56890535, "pci_bus_read_config_dword" },
+	{ 0x9016dd82, "__get_free_pages" },
+	{ 0x5271af5d, "request_irq" },
+	{ 0x1000e51, "schedule" },
+	{ 0x8a7d1c31, "high_memory" },
+	{ 0x822c6be7, "register_chrdev" },
+	{ 0xd5f924d7, "create_proc_entry" },
+	{ 0xa0b04675, "vmalloc_32" },
+	{ 0x3c62fbfd, "wake_up_process" },
+	{ 0x4edd72f7, "block_all_signals" },
+	{ 0x58295ab2, "inter_module_get" },
+	{ 0x27ebe5e, "pm_register" },
+	{ 0x4302d0eb, "free_pages" },
+	{ 0x2ef22841, "__wake_up" },
+	{ 0xa78610e5, "pci_bus_write_config_byte" },
+	{ 0x78fdc952, "add_wait_queue" },
+	{ 0xfcec0987, "enable_irq" },
+	{ 0x37a0cba, "kfree" },
+	{ 0x10955db2, "remap_pfn_range" },
+	{ 0x6067a146, "memcpy" },
+	{ 0xedc03953, "iounmap" },
+	{ 0x272d394e, "mtrr_del" },
+	{ 0xc192d491, "unregister_chrdev" },
+	{ 0xd9e00379, "put_page" },
+	{ 0x1042cbb5, "__up_wakeup" },
+	{ 0x4888a014, "__get_user_2" },
+	{ 0xc04ae7af, "pci_dev_put" },
+	{ 0x189c5fd1, "out_of_line_bug" },
+	{ 0x7a7ef853, "__down_failed" },
+	{ 0x5d6f9e6b, "pci_enable_device" },
+	{ 0x954cbb26, "vsprintf" },
+	{ 0x945bc6a7, "copy_from_user" },
+	{ 0x9e7d6bd0, "__udelay" },
+	{ 0x4b569905, "inter_module_unregister" },
+	{ 0xf20dabd8, "free_irq" },
+	{ 0xe914e41e, "strcpy" },
+};
+
+static const char __module_depends[]
+__attribute_used__
+__attribute__((section(".modinfo"))) =
+"depends=";
+
Binärdateien build_mod/libfglrx_ip.a and fglrx-xorg/libfglrx_ip.a sind verschieden.
Binärdateien build_mod/libfglrx_ip.a.GCC2 and fglrx-xorg/libfglrx_ip.a.GCC2 sind verschieden.
diff -Nur build_mod/Makefile fglrx-xorg/Makefile
--- build_mod/Makefile	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/Makefile	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,42 @@
+GCC_VER_MAJ      = $(shell gcc -dumpversion | cut -f1 -d.)
+
+obj-m           += fglrx.o
+fglrx-libs      += libfglrx_ip.a.GCC$(GCC_VER_MAJ)
+fglrx-c-objs    += agp3.o nvidia-agp.o agpgart_be.o i7505-agp.o firegl_public.o
+fglrx-objs      += $(fglrx-c-objs) $(fglrx-libs)
+fglrx-hdrs      += agp_backend.h agp.h firegl_public.h
+
+ifeq ($(PAGE_ATTR_FIX),)
+PAGE_ATTR_FIX   =1
+endif
+
+EXTRA_CFLAGS    += \
+                -Idrivers/char/drm/ \
+                -D__AGP__ \
+                -DFGL \
+                -DFGL_LINUX \
+                -DFGL_GART_RESERVED_SLOT \
+                -DFGL_LINUX253P1_VMA_API \
+                -DFIREGL_410 \
+                -DPAGE_ATTR_FIX=$(PAGE_ATTR_FIX) \
+
+ifeq ($(KERNELRELEASE),)
+# on first call from remote location we get into this path
+# whilst on second call all is managed by the embedding kernel makefile
+
+
+fglrx-cfiles    = ${fglrx-c-objs:.o=.c}
+
+# default:: kmod_build
+
+kmod_build:: $(fglrx-libs) $(fglrx-cfiles) $(fglrx-hdrs)
+	$(MAKE) -C $(KDIR) SUBDIRS=$(CURDIR) modules
+
+# distclean:: clean
+
+clean::
+	rm -f *.o *.ko .*.cmd
+
+endif
+
+# ### EOF ###
diff -Nur build_mod/make.log fglrx-xorg/make.log
--- build_mod/make.log	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/make.log	2005-01-17 22:21:29.000000000 +0100
@@ -0,0 +1,80 @@
+ATI module generator V 2.0
+==========================
+initializing...
+build_date =Mo Jan 17 22:18:43 CET 2005
+uname -a =Linux rockerduck 2.6.10-ck4 #1 Fri Jan 14 16:35:20 CET 2005 x86_64 GNU/Linux
+uname -s =Linux
+uname -m =x86_64
+uname -r =2.6.10-ck4
+uname -v =#1 Fri Jan 14 16:35:20 CET 2005
+uid=0(root) gid=0(root) Gruppen=0(root)
+.
+drwxr-xr-x  103 root root 9192 2005-01-17 16:58 /usr/include
+.
+insgesamt 52026
+-rw-r--r--   1 root root   141816 2005-01-13 00:56 i2c.tar.gz
+-rw-r--r--   1 root src   5554042 2005-01-14 16:48 kernel-image-2.6.10-ck4_newck4_amd64.deb
+-rw-r--r--   1 root src   5553716 2005-01-13 11:55 kernel-image-2.6.10-ck_ckdev1.5_amd64.deb
+-rw-r--r--   1 root src   5277812 2005-01-10 20:27 kernel-image-2.6.10-cko3_debian61v1.0_amd64.deb
+-rw-r--r--   1 root root 35813111 2005-01-09 23:53 kernel-source-2.6.10.tar.bz2
+drwxrwxr-x  19  500  500      888 2005-01-17 22:17 linux-2.6.10
+-rw-r--r--   1 root root   872787 2005-01-14 09:22 lm-sensors.tar.gz
+drwxr-xr-x   4 root src       104 2005-01-13 00:55 modules
+drwxr-xr-x   7 root root      168 2005-01-10 16:10 rpm
+.
+file /lib/modules/2.6.10-ck4/build/include/linux/agp_backend.h says: AGP=1
+assuming default: SMP=0
+file /lib/modules/2.6.10-ck4/build/include/linux/autoconf.h says: MODVERSIONS=1
+.
+CC=gcc
+cc_version=
+found major but not minor version match for gcc and the ip-library
+ls -l ./libfglrx_ip.a
+lrwxr-xr-x  1 root root 20 2005-01-17 22:18 ./libfglrx_ip.a -> ./libfglrx_ip.a.GCC3
+.
+cleaning...
+patching 'highmem.h'...
+assuming new VMA API since we do have kernel 2.6.x...
+def_vma_api_version=-DFGL_LINUX253P1_VMA_API
+doing Makefile based build for kernel 2.6.x and higher
+make -C /lib/modules/2.6.10-ck4/build SUBDIRS=/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x modules
+make[1]: Gehe in Verzeichnis »/usr/src/linux-2.6.10«
+  CC [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/agp3.o
+  CC [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/nvidia-agp.o
+  CC [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.o
+  CC [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/i7505-agp.o
+  CC [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »firegl_stub_putminor«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:510: Warnung: `inter_module_put' is deprecated (declared at include/linux/module.h:582)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:512: Warnung: `inter_module_unregister' is deprecated (declared at include/linux/module.h:578)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »firegl_stub_register«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:532: Warnung: `inter_module_register' is deprecated (declared at include/linux/module.h:577)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:563: Warnung: `inter_module_put' is deprecated (declared at include/linux/module.h:582)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »firegl_get_user_ptr«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1072: Warnung: Zuweisung erzeugt Zeiger von Ganzzahl ohne Typkonvertierung
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »firegl_put_user_ptr«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1104: Warnung: cast from pointer to integer of different size
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1104: Warnung: cast from pointer to integer of different size
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1104: Warnung: cast from pointer to integer of different size
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1104: Warnung: cast from pointer to integer of different size
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: Auf höchster Ebene:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2645: Warnung: Initialisierung von inkompatiblem Zeigertyp
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »__ke_vm_map«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2706: Warnung: `remap_page_range' is deprecated (declared at include/linux/mm.h:777)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2773: Warnung: `remap_page_range' is deprecated (declared at include/linux/mm.h:777)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2810: Warnung: `remap_page_range' is deprecated (declared at include/linux/mm.h:777)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »__ke_agp_uninit«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3131: Warnung: `inter_module_put' is deprecated (declared at include/linux/module.h:582)
+  LD [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/fglrx.o
+  Building modules, stage 2.
+  MODPOST
+  CC      /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/fglrx.mod.o
+  LD [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/fglrx.ko
+make[1]: Verlasse Verzeichnis »/usr/src/linux-2.6.10«
+build succeeded with return value 0
+.
+duplicating results into driver repository...
+target location: /home/jan/fglrx/lib/modules/fglrx
+copying fglrx.ko
+copying logfile of build
+*** end of build log ***
diff -Nur build_mod/patch/include/linux/highmem.h fglrx-xorg/patch/include/linux/highmem.h
--- build_mod/patch/include/linux/highmem.h	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/patch/include/linux/highmem.h	2005-01-17 22:21:29.000000000 +0100
@@ -0,0 +1,93 @@
+#ifndef _LINUX_HIGHMEM_H
+#define _LINUX_HIGHMEM_H
+
+#include <linux/config.h>
+#include <linux/fs.h>
+#include <linux/mm.h>
+
+#include <asm/cacheflush.h>
+
+#ifdef CONFIG_HIGHMEM
+
+extern struct page *highmem_start_page;
+
+#include <asm/highmem.h>
+
+/* declarations for linux/mm/highmem.c */
+unsigned int nr_free_highpages(void);
+
+#else /* CONFIG_HIGHMEM */
+
+static inline unsigned int nr_free_highpages(void) { return 0; }
+
+static inline void *kmap(struct page *page)
+{
+	might_sleep();
+	return page_address(page);
+}
+
+#define kunmap(page) do { (void) (page); } while (0)
+
+#define kmap_atomic(page, idx)		page_address(page)
+#define kunmap_atomic(addr, idx)	do { } while (0)
+#define kmap_atomic_to_page(ptr)	virt_to_page(ptr)
+
+#endif /* CONFIG_HIGHMEM */
+
+/* when CONFIG_HIGHMEM is not set these will be plain clear/copy_page */
+static inline void clear_user_highpage(struct page *page, unsigned long vaddr)
+{
+	void *addr = kmap_atomic(page, KM_USER0);
+	clear_user_page(addr, vaddr, page);
+	kunmap_atomic(addr, KM_USER0);
+	/* Make sure this page is cleared on other CPU's too before using it */
+	smp_wmb();
+}
+
+static inline void clear_highpage(struct page *page)
+{
+	void *kaddr = kmap_atomic(page, KM_USER0);
+	clear_page(kaddr);
+	kunmap_atomic(kaddr, KM_USER0);
+}
+
+/*
+ * Same but also flushes aliased cache contents to RAM.
+ */
+static inline void memclear_highpage_flush(struct page *page, unsigned int offset, unsigned int size)
+{
+	void *kaddr;
+
+	BUG_ON(offset + size > PAGE_SIZE);
+
+	kaddr = kmap_atomic(page, KM_USER0);
+	memset((char *)kaddr + offset, 0, size);
+	flush_dcache_page(page);
+	kunmap_atomic(kaddr, KM_USER0);
+}
+
+static inline void copy_user_highpage(struct page *to, struct page *from, unsigned long vaddr)
+{
+	char *vfrom, *vto;
+
+	vfrom = kmap_atomic(from, KM_USER0);
+	vto = kmap_atomic(to, KM_USER1);
+	copy_user_page(vto, vfrom, vaddr, to);
+	kunmap_atomic(vfrom, KM_USER0);
+	kunmap_atomic(vto, KM_USER1);
+	/* Make sure this page is cleared on other CPU's too before using it */
+	smp_wmb();
+}
+
+static inline void copy_highpage(struct page *to, struct page *from)
+{
+ char *vfrom, *vto;
+
+ vfrom = kmap_atomic(from, KM_USER0);
+ vto = kmap_atomic(to, KM_USER1);
+ copy_page(vto, vfrom);
+ kunmap_atomic(vfrom, KM_USER0);
+ kunmap_atomic(vto, KM_USER1);
+}
+
+#endif /* _LINUX_HIGHMEM_H */
Note this adds other useless stuff if you are not in debian (i am too lazy to remove this ), however it should not hurt. The only needed things are agp.h and agpgart.c the rest is from flavios fglrx-package.
Greetings Jon
JonSvenJonsson is offline   Reply With Quote
Old Jan 18, 2005, 08:57 AM   #2
angrypanda
Radeon HD 6670
 
Join Date: Jan 2005
Location: Oxfordshire, UK
Posts: 27
angrypanda is still being judged by the masses


Default Interesting.....

Quote:
Originally Posted by JonSvenJonsson
Hi
Ati seems to have forgotten via-chipsets in internal agpgart, this patch adds support for
0000:00:00.0 Host bridge: VIA Technologies, Inc. VT8385 [K8T800 AGP] Host Bridge (rev 01)
as found in MSI-6702 (an KT800 chipset).
support for other chipsets may be easy to add (look at what i did), however i fear that nforce3 support may be difficult (you can look at 2.4 agpgart, as that is what fglrx uses, nforce3 uses some special initialization, and as i dont have such an board i dont have to motiviation to port this to fglrx).
Anyway here is the patch, works for me (TM):
Code:
diff -Nur build_mod/agpgart_be.c fglrx-xorg/agpgart_be.c
--- build_mod/agpgart_be.c 2005-01-18 15:02:14.639429632 +0100
+++ fglrx-xorg/agpgart_be.c	2005-01-18 14:54:34.000000000 +0100
@@ -6167,6 +6167,22 @@
         "Via",
         "Apollo P4M266",
         via_generic_setup },
+
+ { PCI_DEVICE_ID_VIA_8380_0,
+                PCI_VENDOR_ID_VIA,
+                AMD_8151,
+                "AMD",
+                "On-CPU GART",
+                amd_8151_setup },
+
+        { PCI_DEVICE_ID_VIA_8385_0,
+                PCI_VENDOR_ID_VIA,
+                AMD_8151,
+                "AMD",
+                "On-CPU GART",
+                amd_8151_setup },
+
+
     { 0,
         PCI_VENDOR_ID_VIA,
         VIA_GENERIC,
diff -Nur build_mod/agp.h fglrx-xorg/agp.h
--- build_mod/agp.h	2005-01-18 15:02:14.644428872 +0100
+++ fglrx-xorg/agp.h	2005-01-18 14:55:33.000000000 +0100
@@ -202,6 +202,9 @@
     #define SIS_GENERIC             _X(SIS_GENERIC)
     #define AMD_GENERIC             _X(AMD_GENERIC)
     #define AMD_IRONGATE            _X(AMD_IRONGATE)
+    #define PCI_DEVICE_ID_VIA_8380_0        0x0204
+    #define PCI_DEVICE_ID_VIA_8385_0        0x3188
+
 //    #define AMD_IGD4                _X(AMD_IGD4)
 //    #define AMD_IGD4_2P             _X(AMD_IGD4_2P)
     #define AMD_761                 _X(AMD_761)
diff -Nur build_mod/debian/changelog fglrx-xorg/debian/changelog
--- build_mod/debian/changelog	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/changelog	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,303 @@
+fglrx-installer (3.14.6-1) experimental; urgency=low
+
+  * New upstream version. Thanks to Alexandru one more time.
+    - This release introduces hardware support for all currently shipping ATI
+      PCI-Express graphics cards.
+    - Doom 3 works, let's toast those demons!
+  * Patches from Alexandru Fomin:
+    - 06-vm_pcie_nopage:
+      Fix a warning: initialization from incompatible pointer type.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Wed, 10 Nov 2004 16:37:49 +0100
+
+fglrx-installer (3.14.1-2) experimental; urgency=low
+
+  * Add option -nd to wget to make sure it doesn't create directories.
+    Suggested by Thomas Weber.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sat,  9 Oct 2004 12:07:16 +0200
+
+fglrx-installer (3.14.1-1) experimental; urgency=low
+
+  * New upstream version. Thanks to Alexandru Fomin for the patch, again!
+  * Always build the control panel from source.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sat,  2 Oct 2004 16:36:24 +0200
+
+fglrx-installer (3.12.0-2) experimental; urgency=low
+
+  * Clean up package:
+    - add build dependencies on xserver-xfree86 and libqt3-mt-dev;
+    - remove Qt2 control panel because I can't compile it and dependencies are
+      no longer available in testing/unstable anyway;
+    - remove old-* and new-* directories (leftovers from patch works).
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Tue, 14 Sep 2004 00:43:13 +0200
+
+fglrx-installer (3.12.0-1) experimental; urgency=low
+
+  * New upstream version.
+  * The upstream RPM package does not contain any control panel binaries, so
+    I'm building my own. Thanks to Alexandru Fomin for the idea and a patch.
+    - Please note that this introduces dependencies on whichever version of
+      the Qt libraries I'm using today, most likely the one from unstable.
+  * This version of the packaging scripts has been verified to work with
+    upstream versions 3.7.6, 3.9.0, 3.11.1 and 3.12.0; support for previous
+    versions has been removed, but diffs are still available in the source
+    archive in case you want to use them.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sun, 12 Sep 2004 14:09:43 +0200
+
+fglrx-installer (3.11.1-1) experimental; urgency=low
+
+  * New upstream version. Thanks to Alexandru Fomin for the patch.
+    - we finally have a real license
+    - regparm and get_page patches dropped (included upstream)
+    - refreshed patch 00-make.sh to apply cleanly
+  * Older driver versions wouldn't build anymore after the changes in 3.9.0-4;
+    now I've redone the patches so that they work again.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Tue, 10 Aug 2004 00:01:48 +0200
+
+fglrx-installer (3.9.0-5) experimental; urgency=low
+
+  * Clarified the copyright file: my scripts are GNU GPLed, but the ATI
+    driver is not; in fact, there is no clear license that I could find.
+  * Remove module/postinst and module/postrm; bug #248624 has been closed in
+    debhelper 4.2.11, please upgrade.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sat, 26 Jun 2004 11:09:13 +0200
+
+fglrx-installer (3.9.0-4) experimental; urgency=low
+
+  * Changes to the module's make.sh:
+    - restored some sections that I removed in previous versions, so you can
+      use make.sh to build a module for the running kernel;
+    - detect CPU arch and SMP by loading the kernel's .config;
+    - fixed some probing that I can only describe as "brain-damaged".
+  * Changes to the module's Makefile for 2.6.x:
+    - moved out of the 2.6.x directory so it doesn't need to create symlinks.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Thu,  3 Jun 2004 12:17:29 +0200
+
+fglrx-installer (3.9.0-3) experimental; urgency=low
+
+  * Patches from Alexandru Fomin:
+    - 03-fglrx-3.9.0-regparm.patch:
+      Fix compilation with CONFIG_REGPARM -- again. The official fix has been
+      reported to be broken. Thanks Alexandru!
+    - 04-get_page.patch:
+      Resync. I should've done it myself, but I'm lazy. ;)
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sat, 29 May 2004 18:30:31 +0200
+
+fglrx-installer (3.9.0-2) experimental; urgency=low
+
+  * Add module/postinst and module/postrm as a workaround for bug #248624.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sat, 29 May 2004 15:36:49 +0200
+
+fglrx-installer (3.9.0-1) experimental; urgency=low
+
+  * New upstream version.
+  * From the release notes:
+    - Explicit regparm support for newer Redhat, Fedora and SuSE kernels
+    - VIA KT400 motherboard chipsets now recognized properly
+  * Upstream now provides some documentation in HTML format.
+  * Removed support for driver versions before 3.2; cry if you care.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Thu, 27 May 2004 11:54:20 +0200
+
+fglrx-installer (3.7.6-5) experimental; urgency=low
+
+  * Patches from http://rage3d.com/board/showthread.php?threadid=33737573
+    - 01-make.sh-PIPESTATUS.patch:
+      Fix problem with return status from a pipe.
+      (from http://www.kaseorg.com/fglrx-3.7.6-regparm.patch)
+    - 03-fglrx-3.7.6-regparm.patch:
+      Fix compilation with CONFIG_REGPARM.
+      (from http://www.kaseorg.com/fglrx-3.7.6-regparm.patch plus fixes
+       needed to compile 3.7.6 with regparm patch applied and gcc-3.4.0)
+    - 04-get_page.patch:
+      Patch to build 3.7.6 with kernel 2.6.6-mm2 and probably 2.6.7.
+  * debian/rules:
+    - Small fixes to variable assignments.
+  * module/rules:
+    - Fix destdir for dh_builddeb.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Mon, 24 May 2004 17:48:22 +0200
+
+fglrx-installer (3.7.6-4) experimental; urgency=low
+
+  * debian/rules: When the user overrides PVERSION, set the packages' version
+    to driver_version+package_version (f.e. 3.2.8+3.7.6-4) to avoid confusion
+    between older driver versions packaged by different script versions.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sun, 11 Apr 2004 11:15:37 +0200
+
+fglrx-installer (3.7.6-3) experimental; urgency=low
+
+  * module/control.template: Fix kernel module's description.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sun, 28 Mar 2004 10:42:06 +0200
+
+fglrx-installer (3.7.6-2) experimental; urgency=low
+
+  * debian/patches-3.7.*/02-2.6.x_Makefile: Determine GCC version the proper
+    way (suggested by Tristan Seligmann).
+  * debian/rules: The drivers for XFree86 versions 4.1 and 4.2 don't contain
+    the Qt3 control panel (don't ask me why), so don't build its package.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Wed, 24 Mar 2004 23:47:11 +0100
+
+fglrx-installer (3.7.6-1) experimental; urgency=low
+
+  * New upstream version.
+  * debian/rules, debian/control.template: Put control panels in two separate
+    packages, one for Qt2 and another for Qt3; remove the "qtstatic" control
+    panel as it wasn't statically linked after all and was therefore useless.
+  * debian/rules: Fix various missing execute permissions.
+  * debian/rules: Fix diversion bug caused by removing an useful 'sed' run.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Mon, 22 Mar 2004 16:38:38 +0100
+
+fglrx-installer (3.7.0-5) experimental; urgency=low
+
+  * module/rules: Use cat, not cp, to generate control file; works around
+                  possible issues with permissions.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Wed, 25 Feb 2004 23:05:17 +0100
+
+fglrx-installer (3.7.0-4) experimental; urgency=low
+
+  * debian/rules, debian/control.template: Tweak the control file instead of
+    hacking package names during the build; the following fixes are welcome
+    side effects of this much overdue change.
+  * debian/rules: Fixed use of sed -i. Really.
+  * debian/rules: Fixed names of the doc directories.
+  * debian/rules: Put headers and static libraries in a separate package.
+  * debian/rules: Extract RPM with --no-preserve-owner; every file should be
+                  owned by (fake)root.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Tue, 17 Feb 2004 00:39:44 +0100
+
+fglrx-installer (3.7.0-3) experimental; urgency=low
+
+  * debian/rules: Uncomment dh_installchangelogs. Ooops.
+  * fglrx-kernel-src:
+    - tarball renamed to fglrx-<xversion>-<driverversion>.tar.gz
+    - tarball unpacks to /usr/src/modules/fglrx-<xversion>-<driverversion>
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sun,  8 Feb 2004 13:38:37 +0100
+
+fglrx-installer (3.7.0-2) experimental; urgency=low
+
+  * debian/rules: Fixed bashism.
+  * debian/rules: Fixed use of sed -i which doesn't work on woody.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Fri,  6 Feb 2004 11:35:16 +0100
+
+fglrx-installer (3.7.0-1) experimental; urgency=low
+
+  * New upstream version.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Sun,  4 Jan 2004 17:40:05 +0100
+
+fglrx-installer (3.2.8-2) experimental; urgency=low
+
+  * Fix "2.6.x/Makefile" to make it work in this environment.
+  * Fix "make.sh" and "firegl_public.c" to make them work with kernel 2.6.
+  * User reports that Radeon 9000 works too; add to description.
+
+ -- Flavio Stanchina <flavio@stanchina.net>  Tue, 16 Dec 2003 00:06:47 +0100
+
+fglrx-installer (3.2.8-1) experimental; urgency=low
+
+  * New upstream version.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Sun, 12 Oct 2003 17:07:38 +0200
+
+fglrx-installer (3.2.5-1) experimental; urgency=low
+
+  * New upstream version.
+  * This version officially supports the Radeon products again.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Sat,  4 Oct 2003 12:34:18 +0200
+
+fglrx-installer (2.9.13-3) experimental; urgency=low
+
+  * debian/rules:
+    - Embed the XFree86 version we're building for in the packages' names.
+      TODO: names of the doc directories are wrong, looking for a fix.
+    - Handle multiple versions of the driver properly, i.e. set the packages'
+      version accordingly.
+    - Move LICENSE.* out of usr/X11R6/bin just after unpacking.
+  * debian/control:
+    - Depend on the proper version of xserver-xfree86, just in case.
+  * Switch to debhelper V4.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Thu, 21 Aug 2003 12:53:46 +0200
+
+fglrx-installer (2.9.13-2) experimental; urgency=low
+
+  * debian/rules:
+    - Detect which XFree86 version is installed and download the correct
+      driver and documentation.
+    - Handle multiple versions of the driver (2.5.1, 2.9.6 and 2.9.13).
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Wed, 20 Aug 2003 16:48:54 +0200
+
+fglrx-installer (2.9.13-1) experimental; urgency=low
+
+  * New upstream version.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Fri,  1 Aug 2003 10:28:08 +0200
+
+fglrx-installer (2.9.6-3) experimental; urgency=low
+
+  * ATI moved the files to a different server; URIs changed accordingly.
+  * While I was at it, I put the base URL in a variable.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Fri,  1 Aug 2003 10:00:16 +0200
+
+fglrx-installer (2.9.6-2) experimental; urgency=low
+
+  * Divert libGL.so.1.2 from /usr/X11R6/lib to /usr/share/fglrx/diversions
+    instead of just renaming it, otherwise ldconfig would recreate a symlink
+    to the diverted version.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Wed, 14 May 2003 15:13:17 +0200
+
+fglrx-installer (2.9.6-1) experimental; urgency=low
+
+  * New upstream version.
+  * Source package renamed to "fglrx-installer".
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Mon, 31 Mar 2003 01:16:12 +0200
+
+fglrx-glc22-4.2.0 (2.5.1-2) experimental; urgency=low
+
+  * Recommends: fglrx-driver is set to the proper version during the kernel
+    module build process.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Thu, 13 Mar 2003 22:06:21 +0100
+
+fglrx-glc22-4.2.0 (2.5.1-1) experimental; urgency=low
+
+  * The previous version was missing the changelog in the kernel module sources.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Tue, 14 Jan 2003 20:53:02 +0100
+
+fglrx-glc22-4.2.0 (2.5.1-0) experimental; urgency=low
+
+  * New upstream version. Works with "powered by ATI" cards.
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Sat, 30 Nov 2002 11:45:51 +0100
+
+fglrx-glc22-4.2.0 (2.4.3-0) experimental; urgency=low
+
+  * Converted from .rpm format to .deb
+
+ -- Flavio Stanchina <flavio.stanchina@tin.it>  Thu, 28 Nov 2002 02:17:56 +0100
+
+
diff -Nur build_mod/debian/compat fglrx-xorg/debian/compat
--- build_mod/debian/compat	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/compat	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1 @@
+4
diff -Nur build_mod/debian/control fglrx-xorg/debian/control
--- build_mod/debian/control	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/control	2005-01-18 12:59:58.000000000 +0100
@@ -0,0 +1,14 @@
+Source: fglrx-installer
+Section: non-free/x11
+Priority: extra
+Maintainer: Flavio Stanchina <flavio@stanchina.net>
+Build-Depends: debhelper (>= 4.2.11), kernel-package
+
+Package: fglrx-4.3.0-kernel-2.6.10-ck5
+Architecture: i386
+Provides: fglrx-4.3.0-kernel
+Recommends: fglrx-4.3.0-driver (= 3.14.6-1), kernel-image-2.6.10-ck5
+Description: ATI binary kernel module for Linux 2.6.10-ck5
+ Video driver for the ATI Radeon and FireGL graphics accelerators.
+ .
+ This package provides the binary kernel module for Linux 2.6.10-ck5.
diff -Nur build_mod/debian/control.template fglrx-xorg/debian/control.template
--- build_mod/debian/control.template	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/control.template	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,14 @@
+Source: fglrx-installer
+Section: non-free/x11
+Priority: extra
+Maintainer: Flavio Stanchina <flavio@stanchina.net>
+Build-Depends: debhelper (>= 4.2.11), kernel-package
+
+Package: fglrx-4.3.0-kernel-#KVERS#
+Architecture: i386
+Provides: fglrx-4.3.0-kernel
+Recommends: fglrx-4.3.0-driver (= #VERSION#), kernel-image-#KVERS#
+Description: ATI binary kernel module for Linux #KVERS#
+ Video driver for the ATI Radeon and FireGL graphics accelerators.
+ .
+ This package provides the binary kernel module for Linux #KVERS#.
diff -Nur build_mod/debian/copyright fglrx-xorg/debian/copyright
--- build_mod/debian/copyright	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/copyright	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,19 @@
+This package was debianized by Flavio Stanchina (with the help
+of the alien program) by converting a binary .rpm package
+on Thu, 28 Nov 2002 02:17:56 +0100
+
+Copyright:
+  See the file ATI_LICENSE.TXT in the driver package, if they didn't
+  forget to include it in this release. In short, this is definitely
+  not Free Software: use at your own legal risk.
+
+  Versions before 3.11.1 did not come with a complete license,
+  neither on the ATI site nor in the .rpm archive.
+
+Packaging scripts:
+  Copyright (C) 2002-2004 Flavio Stanchina
+  Licensed under the GNU GPL
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL'.
+
diff -Nur build_mod/debian/dirs fglrx-xorg/debian/dirs
--- build_mod/debian/dirs	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/dirs	2005-01-18 12:59:58.000000000 +0100
@@ -0,0 +1 @@
+lib/modules/2.6.10-ck5/misc
diff -Nur build_mod/debian/dirs.template fglrx-xorg/debian/dirs.template
--- build_mod/debian/dirs.template	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/dirs.template	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1 @@
+lib/modules/#KVERS#/misc
diff -Nur build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postinst fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postinst
--- build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postinst	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postinst	2005-01-18 12:59:59.000000000 +0100
@@ -0,0 +1,7 @@
+#!/bin/sh
+set -e
+# Automatically added by dh_installmodules
+if [ "$1" = "configure" ] && [ -x /sbin/update-modules ]; then
+	update-modules >/dev/null
+fi
+# End automatically added section
diff -Nur build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postrm fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postrm
--- build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postrm	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/DEBIAN/postrm	2005-01-18 12:59:59.000000000 +0100
@@ -0,0 +1,7 @@
+#!/bin/sh
+set -e
+# Automatically added by dh_installmodules
+if [ -x /sbin/update-modules ]; then
+	update-modules >/dev/null
+fi
+# End automatically added section
Binärdateien build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/lib/modules/2.6.10-ck5/misc/fglrx.ko and fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/lib/modules/2.6.10-ck5/misc/fglrx.ko sind verschieden.
Binärdateien build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/changelog.Debian.gz and fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/changelog.Debian.gz sind verschieden.
diff -Nur build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/copyright fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/copyright
--- build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/copyright	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5/usr/share/doc/fglrx-4.3.0-kernel-2.6.10-ck5/copyright	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,19 @@
+This package was debianized by Flavio Stanchina (with the help
+of the alien program) by converting a binary .rpm package
+on Thu, 28 Nov 2002 02:17:56 +0100
+
+Copyright:
+  See the file ATI_LICENSE.TXT in the driver package, if they didn't
+  forget to include it in this release. In short, this is definitely
+  not Free Software: use at your own legal risk.
+
+  Versions before 3.11.1 did not come with a complete license,
+  neither on the ATI site nor in the .rpm archive.
+
+Packaging scripts:
+  Copyright (C) 2002-2004 Flavio Stanchina
+  Licensed under the GNU GPL
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL'.
+
diff -Nur build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postinst.debhelper fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postinst.debhelper
--- build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postinst.debhelper	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postinst.debhelper	2005-01-18 12:59:59.000000000 +0100
@@ -0,0 +1,5 @@
+# Automatically added by dh_installmodules
+if [ "$1" = "configure" ] && [ -x /sbin/update-modules ]; then
+	update-modules >/dev/null
+fi
+# End automatically added section
diff -Nur build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postrm.debhelper fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postrm.debhelper
--- build_mod/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postrm.debhelper	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/fglrx-4.3.0-kernel-2.6.10-ck5.postrm.debhelper	2005-01-18 12:59:59.000000000 +0100
@@ -0,0 +1,5 @@
+# Automatically added by dh_installmodules
+if [ -x /sbin/update-modules ]; then
+	update-modules >/dev/null
+fi
+# End automatically added section
diff -Nur build_mod/debian/rules fglrx-xorg/debian/rules
--- build_mod/debian/rules	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/debian/rules	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,129 @@
+#!/usr/bin/make -f
+# Copyright (C) 2002-2004 Flavio Stanchina
+# Adapted from nvidia-kernel-src.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+
+baseepoch=$(shell expr $(KDREV) : '\([0-9]*\):.*' 2>/dev/null )
+ifneq ($(baseepoch),)
+      EPOCH=$(baseepoch):
+endif
+REV=$(shell expr $(KDREV) : '[0-9]*:\(.*\)' 2>/dev/null)
+ifeq ($(REV),)
+     REV=$(KDREV)
+endif
+VERSION=$(shell dpkg-parsechangelog | grep ^Version: | cut -d ' ' -f 2)
+PKG_VERSION=$(EPOCH)$(VERSION)+$(REV)
+
+# if you need to redefine these
+KSRC:=$(KSRC)
+KVERS:=${KVERS}
+
+BASEVERS=$(shell echo $(KVERS) | cut -d. -f-2)
+ifeq ($(BASEVERS),2.6)
+    module=fglrx.ko
+else
+    module=fglrx.o
+endif
+
+
+configure: configure-stamp
+configure-stamp:
+	if [ -f $(CURDIR)/debian/control.template ]; then \
+		cat $(CURDIR)/debian/control.template > $(CURDIR)/debian/control; \
+	fi
+
+	dh_testdir
+	touch configure-stamp
+
+
+build: configure-stamp make.sh
+	dh_testdir
+ifeq ($(BASEVERS),2.6)
+	$(MAKE) -C $(KSRC) SUBDIRS=$(CURDIR) modules
+else
+	KERNEL_PATH=$(KSRC) uname_r=$(KVERS) ./make.sh --nohints
+endif
+
+
+install: build
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+
+	-rm -f $(CURDIR)/debian/control $(CURDIR)/debian/dirs
+	sed -e 's/#KVERS#/$(KVERS)/g' \
+	    -e 's/#VERSION#/$(VERSION)/g' debian/control.template > $(CURDIR)/debian/control
+	sed -e 's/#KVERS#/$(KVERS)/g' debian/dirs.template > $(CURDIR)/debian/dirs
+
+	dh_installdirs
+	dh_install $(module) lib/modules/$(KVERS)/misc
+
+
+binary_modules: build install
+	dh_testdir
+	dh_testroot
+#	dh_installdebconf	
+	dh_installdocs
+#	dh_installexamples
+#	dh_installmanpages
+#	dh_undocumented
+	dh_installmodules
+	dh_installchangelogs 
+	dh_link
+	dh_strip
+	dh_compress
+	dh_fixperms
+# You may want to make some executables suid here.
+#	dh_suidregister
+#	dh_makeshlibs
+	dh_installdeb
+#	dh_shlibdeps
+	dh_gencontrol -- -v$(PKG_VERSION)
+	dh_md5sums
+ifdef KPKG_DEST_DIR
+	dh_builddeb --destdir=$(KPKG_DEST_DIR)
+else
+	dh_builddeb --destdir=$(CURDIR)/../..
+endif
+
+
+clean:
+	dh_testroot
+	-rm -f configure-stamp
+	-rm -f $(module) fglrx.mod.c *.o libfglrx_ip.a
+	-rm -f .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
+	-rm -rf .tmp_versions
+	-rm -rf patch
+
+	-dh_clean
+
+	-rm $(CURDIR)/debian/control
+	-rm $(CURDIR)/debian/dirs
+
+
+# The kdist_configure target is called by make-kpkg modules_config. It
+# should configure the module so it is ready for compilation (mostly
+# useful for calling configure)
+kdist_config: configure
+
+kdist_configure: configure
+
+
+# the kdist_image target is called by make-kpkg modules_image. It is
+# responsible for compiling the module and creating the package. It
+# should also clean up after making the module. Please note we use a
+# seperate binary-modules target to make testing the package building
+# easier
+kdist_image: binary_modules clean
+
+
+# the kdist_clean target is called by make-kpkg modules_clean. It is
+# responsible for cleaning up any changes that have been made by the
+# other kdist_commands (except for the .deb files created).
+kdist_clean: clean
+
+
+.PHONY: configure build install binary_modules clean kdist_config kdist_configure kdist_image kdist_clean
diff -Nur build_mod/fglrx.mod.c fglrx-xorg/fglrx.mod.c
--- build_mod/fglrx.mod.c	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/fglrx.mod.c	2005-01-18 12:59:57.000000000 +0100
@@ -0,0 +1,119 @@
+#include <linux/module.h>
+#include <linux/vermagic.h>
+#include <linux/compiler.h>
+
+MODULE_INFO(vermagic, VERMAGIC_STRING);
+
+#undef unix
+struct module __this_module
+__attribute__((section(".gnu.linkonce.this_module"))) = {
+ .name = __stringify(KBUILD_MODNAME),
+ .init = init_module,
+#ifdef CONFIG_MODULE_UNLOAD
+ .exit = cleanup_module,
+#endif
+};
+
+static const struct modversion_info ____versions[]
+__attribute_used__
+__attribute__((section("__versions"))) = {
+	{ 0xd53dcdcc, "struct_module" },
+	{ 0x3ce4ca6f, "disable_irq" },
+	{ 0x41295ff1, "module_refcount" },
+	{ 0x1d32497b, "pci_bus_read_config_byte" },
+	{ 0x8ce16b3f, "__kmalloc" },
+	{ 0xa8824348, "mem_map" },
+	{ 0xd6ee688f, "vmalloc" },
+	{ 0xb547f62a, "init_level4_pgt" },
+	{ 0x25ec1b28, "strlen" },
+	{ 0x7f2c0f14, "init_mm" },
+	{ 0x4d2b5ffa, "malloc_sizes" },
+	{ 0xd5f562ef, "remove_wait_queue" },
+	{ 0x8ffd2579, "__lock_page" },
+	{ 0x56179c5f, "mtrr_add" },
+	{ 0xab5f0744, "inter_module_register" },
+	{ 0x8764cdc5, "remove_proc_entry" },
+	{ 0xa03d6a57, "__get_user_4" },
+	{ 0x8610f856, "pci_get_class" },
+	{ 0xeae3dfd6, "__const_udelay" },
+	{ 0x2fd1d81c, "vfree" },
+	{ 0x49ea47f7, "pci_bus_write_config_word" },
+	{ 0xa2487e0, "unblock_all_signals" },
+	{ 0x43624965, "change_page_attr" },
+	{ 0x1d26aa98, "sprintf" },
+	{ 0xb3a307c6, "si_meminfo" },
+	{ 0xda02d67, "jiffies" },
+	{ 0xe2d5255a, "strcmp" },
+	{ 0x738cf5ba, "pci_find_slot" },
+	{ 0xba4fe124, "pm_unregister_all" },
+	{ 0x60113423, "default_wake_function" },
+	{ 0xd38a1161, "__alloc_pages" },
+	{ 0x3fa03a97, "memset" },
+	{ 0x208ce54a, "sys_ioctl" },
+	{ 0xdd132261, "printk" },
+	{ 0x3656bf5a, "lock_kernel" },
+	{ 0xec2cd46c, "unregister_ioctl32_conversion" },
+	{ 0x51593801, "pci_find_device" },
+	{ 0xbe499d81, "copy_to_user" },
+	{ 0x7ec9bfbc, "strncpy" },
+	{ 0xb421656f, "dma_free_coherent" },
+	{ 0x85abc85f, "strncmp" },
+	{ 0x354111e6, "pci_bus_write_config_dword" },
+	{ 0x8fe95a80, "register_ioctl32_conversion" },
+	{ 0x43b0c9c3, "preempt_schedule" },
+	{ 0x9eac042a, "__ioremap" },
+	{ 0xefcded7d, "unlock_page" },
+	{ 0xba54631c, "inter_module_put" },
+	{ 0x24b55df8, "contig_page_data" },
+	{ 0xdb734537, "dma_alloc_coherent" },
+	{ 0xb3d2bf12, "find_first_zero_bit" },
+	{ 0x2edb1583, "pci_find_capability" },
+	{ 0xb1f975aa, "unlock_kernel" },
+	{ 0x7dceceac, "capable" },
+	{ 0x3978e242, "kmem_cache_alloc" },
+	{ 0xf1bcfa1b, "__free_pages" },
+	{ 0x3762cb6e, "ioremap_nocache" },
+	{ 0x71004146, "pci_bus_read_config_word" },
+	{ 0x56890535, "pci_bus_read_config_dword" },
+	{ 0x9016dd82, "__get_free_pages" },
+	{ 0x5271af5d, "request_irq" },
+	{ 0x1000e51, "schedule" },
+	{ 0x8a7d1c31, "high_memory" },
+	{ 0x822c6be7, "register_chrdev" },
+	{ 0xd5f924d7, "create_proc_entry" },
+	{ 0xa0b04675, "vmalloc_32" },
+	{ 0x3c62fbfd, "wake_up_process" },
+	{ 0x4edd72f7, "block_all_signals" },
+	{ 0x58295ab2, "inter_module_get" },
+	{ 0x27ebe5e, "pm_register" },
+	{ 0x4302d0eb, "free_pages" },
+	{ 0x2ef22841, "__wake_up" },
+	{ 0xa78610e5, "pci_bus_write_config_byte" },
+	{ 0x78fdc952, "add_wait_queue" },
+	{ 0xfcec0987, "enable_irq" },
+	{ 0x37a0cba, "kfree" },
+	{ 0x10955db2, "remap_pfn_range" },
+	{ 0x6067a146, "memcpy" },
+	{ 0xedc03953, "iounmap" },
+	{ 0x272d394e, "mtrr_del" },
+	{ 0xc192d491, "unregister_chrdev" },
+	{ 0xd9e00379, "put_page" },
+	{ 0x1042cbb5, "__up_wakeup" },
+	{ 0x4888a014, "__get_user_2" },
+	{ 0xc04ae7af, "pci_dev_put" },
+	{ 0x189c5fd1, "out_of_line_bug" },
+	{ 0x7a7ef853, "__down_failed" },
+	{ 0x5d6f9e6b, "pci_enable_device" },
+	{ 0x954cbb26, "vsprintf" },
+	{ 0x945bc6a7, "copy_from_user" },
+	{ 0x9e7d6bd0, "__udelay" },
+	{ 0x4b569905, "inter_module_unregister" },
+	{ 0xf20dabd8, "free_irq" },
+	{ 0xe914e41e, "strcpy" },
+};
+
+static const char __module_depends[]
+__attribute_used__
+__attribute__((section(".modinfo"))) =
+"depends=";
+
Binärdateien build_mod/libfglrx_ip.a and fglrx-xorg/libfglrx_ip.a sind verschieden.
Binärdateien build_mod/libfglrx_ip.a.GCC2 and fglrx-xorg/libfglrx_ip.a.GCC2 sind verschieden.
diff -Nur build_mod/Makefile fglrx-xorg/Makefile
--- build_mod/Makefile	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/Makefile	2005-01-17 22:21:03.000000000 +0100
@@ -0,0 +1,42 @@
+GCC_VER_MAJ      = $(shell gcc -dumpversion | cut -f1 -d.)
+
+obj-m           += fglrx.o
+fglrx-libs      += libfglrx_ip.a.GCC$(GCC_VER_MAJ)
+fglrx-c-objs    += agp3.o nvidia-agp.o agpgart_be.o i7505-agp.o firegl_public.o
+fglrx-objs      += $(fglrx-c-objs) $(fglrx-libs)
+fglrx-hdrs      += agp_backend.h agp.h firegl_public.h
+
+ifeq ($(PAGE_ATTR_FIX),)
+PAGE_ATTR_FIX   =1
+endif
+
+EXTRA_CFLAGS    += \
+                -Idrivers/char/drm/ \
+                -D__AGP__ \
+                -DFGL \
+                -DFGL_LINUX \
+                -DFGL_GART_RESERVED_SLOT \
+                -DFGL_LINUX253P1_VMA_API \
+                -DFIREGL_410 \
+                -DPAGE_ATTR_FIX=$(PAGE_ATTR_FIX) \
+
+ifeq ($(KERNELRELEASE),)
+# on first call from remote location we get into this path
+# whilst on second call all is managed by the embedding kernel makefile
+
+
+fglrx-cfiles    = ${fglrx-c-objs:.o=.c}
+
+# default:: kmod_build
+
+kmod_build:: $(fglrx-libs) $(fglrx-cfiles) $(fglrx-hdrs)
+	$(MAKE) -C $(KDIR) SUBDIRS=$(CURDIR) modules
+
+# distclean:: clean
+
+clean::
+	rm -f *.o *.ko .*.cmd
+
+endif
+
+# ### EOF ###
diff -Nur build_mod/make.log fglrx-xorg/make.log
--- build_mod/make.log	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/make.log	2005-01-17 22:21:29.000000000 +0100
@@ -0,0 +1,80 @@
+ATI module generator V 2.0
+==========================
+initializing...
+build_date =Mo Jan 17 22:18:43 CET 2005
+uname -a =Linux rockerduck 2.6.10-ck4 #1 Fri Jan 14 16:35:20 CET 2005 x86_64 GNU/Linux
+uname -s =Linux
+uname -m =x86_64
+uname -r =2.6.10-ck4
+uname -v =#1 Fri Jan 14 16:35:20 CET 2005
+uid=0(root) gid=0(root) Gruppen=0(root)
+.
+drwxr-xr-x  103 root root 9192 2005-01-17 16:58 /usr/include
+.
+insgesamt 52026
+-rw-r--r--   1 root root   141816 2005-01-13 00:56 i2c.tar.gz
+-rw-r--r--   1 root src   5554042 2005-01-14 16:48 kernel-image-2.6.10-ck4_newck4_amd64.deb
+-rw-r--r--   1 root src   5553716 2005-01-13 11:55 kernel-image-2.6.10-ck_ckdev1.5_amd64.deb
+-rw-r--r--   1 root src   5277812 2005-01-10 20:27 kernel-image-2.6.10-cko3_debian61v1.0_amd64.deb
+-rw-r--r--   1 root root 35813111 2005-01-09 23:53 kernel-source-2.6.10.tar.bz2
+drwxrwxr-x  19  500  500      888 2005-01-17 22:17 linux-2.6.10
+-rw-r--r--   1 root root   872787 2005-01-14 09:22 lm-sensors.tar.gz
+drwxr-xr-x   4 root src       104 2005-01-13 00:55 modules
+drwxr-xr-x   7 root root      168 2005-01-10 16:10 rpm
+.
+file /lib/modules/2.6.10-ck4/build/include/linux/agp_backend.h says: AGP=1
+assuming default: SMP=0
+file /lib/modules/2.6.10-ck4/build/include/linux/autoconf.h says: MODVERSIONS=1
+.
+CC=gcc
+cc_version=
+found major but not minor version match for gcc and the ip-library
+ls -l ./libfglrx_ip.a
+lrwxr-xr-x  1 root root 20 2005-01-17 22:18 ./libfglrx_ip.a -> ./libfglrx_ip.a.GCC3
+.
+cleaning...
+patching 'highmem.h'...
+assuming new VMA API since we do have kernel 2.6.x...
+def_vma_api_version=-DFGL_LINUX253P1_VMA_API
+doing Makefile based build for kernel 2.6.x and higher
+make -C /lib/modules/2.6.10-ck4/build SUBDIRS=/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x modules
+make[1]: Gehe in Verzeichnis »/usr/src/linux-2.6.10«
+  CC [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/agp3.o
+  CC [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/nvidia-agp.o
+  CC [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.o
+  CC [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/i7505-agp.o
+  CC [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »firegl_stub_putminor«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:510: Warnung: `inter_module_put' is deprecated (declared at include/linux/module.h:582)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:512: Warnung: `inter_module_unregister' is deprecated (declared at include/linux/module.h:578)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »firegl_stub_register«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:532: Warnung: `inter_module_register' is deprecated (declared at include/linux/module.h:577)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:563: Warnung: `inter_module_put' is deprecated (declared at include/linux/module.h:582)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »firegl_get_user_ptr«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1072: Warnung: Zuweisung erzeugt Zeiger von Ganzzahl ohne Typkonvertierung
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »firegl_put_user_ptr«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1104: Warnung: cast from pointer to integer of different size
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1104: Warnung: cast from pointer to integer of different size
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1104: Warnung: cast from pointer to integer of different size
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1104: Warnung: cast from pointer to integer of different size
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: Auf höchster Ebene:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2645: Warnung: Initialisierung von inkompatiblem Zeigertyp
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »__ke_vm_map«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2706: Warnung: `remap_page_range' is deprecated (declared at include/linux/mm.h:777)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2773: Warnung: `remap_page_range' is deprecated (declared at include/linux/mm.h:777)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2810: Warnung: `remap_page_range' is deprecated (declared at include/linux/mm.h:777)
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In Funktion »__ke_agp_uninit«:
+/home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3131: Warnung: `inter_module_put' is deprecated (declared at include/linux/module.h:582)
+  LD [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/fglrx.o
+  Building modules, stage 2.
+  MODPOST
+  CC      /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/fglrx.mod.o
+  LD [M]  /home/jan/fglrx/lib/modules/fglrx/build_mod/2.6.x/fglrx.ko
+make[1]: Verlasse Verzeichnis »/usr/src/linux-2.6.10«
+build succeeded with return value 0
+.
+duplicating results into driver repository...
+target location: /home/jan/fglrx/lib/modules/fglrx
+copying fglrx.ko
+copying logfile of build
+*** end of build log ***
diff -Nur build_mod/patch/include/linux/highmem.h fglrx-xorg/patch/include/linux/highmem.h
--- build_mod/patch/include/linux/highmem.h	1970-01-01 01:00:00.000000000 +0100
+++ fglrx-xorg/patch/include/linux/highmem.h	2005-01-17 22:21:29.000000000 +0100
@@ -0,0 +1,93 @@
+#ifndef _LINUX_HIGHMEM_H
+#define _LINUX_HIGHMEM_H
+
+#include <linux/config.h>
+#include <linux/fs.h>
+#include <linux/mm.h>
+
+#include <asm/cacheflush.h>
+
+#ifdef CONFIG_HIGHMEM
+
+extern struct page *highmem_start_page;
+
+#include <asm/highmem.h>
+
+/* declarations for linux/mm/highmem.c */
+unsigned int nr_free_highpages(void);
+
+#else /* CONFIG_HIGHMEM */
+
+static inline unsigned int nr_free_highpages(void) { return 0; }
+
+static inline void *kmap(struct page *page)
+{
+	might_sleep();
+	return page_address(page);
+}
+
+#define kunmap(page) do { (void) (page); } while (0)
+
+#define kmap_atomic(page, idx)		page_address(page)
+#define kunmap_atomic(addr, idx)	do { } while (0)
+#define kmap_atomic_to_page(ptr)	virt_to_page(ptr)
+
+#endif /* CONFIG_HIGHMEM */
+
+/* when CONFIG_HIGHMEM is not set these will be plain clear/copy_page */
+static inline void clear_user_highpage(struct page *page, unsigned long vaddr)
+{
+	void *addr = kmap_atomic(page, KM_USER0);
+	clear_user_page(addr, vaddr, page);
+	kunmap_atomic(addr, KM_USER0);
+	/* Make sure this page is cleared on other CPU's too before using it */
+	smp_wmb();
+}
+
+static inline void clear_highpage(struct page *page)
+{
+	void *kaddr = kmap_atomic(page, KM_USER0);
+	clear_page(kaddr);
+	kunmap_atomic(kaddr, KM_USER0);
+}
+
+/*
+ * Same but also flushes aliased cache contents to RAM.
+ */
+static inline void memclear_highpage_flush(struct page *page, unsigned int offset, unsigned int size)
+{
+	void *kaddr;
+
+	BUG_ON(offset + size > PAGE_SIZE);
+
+	kaddr = kmap_atomic(page, KM_USER0);
+	memset((char *)kaddr + offset, 0, size);
+	flush_dcache_page(page);
+	kunmap_atomic(kaddr, KM_USER0);
+}
+
+static inline void copy_user_highpage(struct page *to, struct page *from, unsigned long vaddr)
+{
+	char *vfrom, *vto;
+
+	vfrom = kmap_atomic(from, KM_USER0);
+	vto = kmap_atomic(to, KM_USER1);
+	copy_user_page(vto, vfrom, vaddr, to);
+	kunmap_atomic(vfrom, KM_USER0);
+	kunmap_atomic(vto, KM_USER1);
+	/* Make sure this page is cleared on other CPU's too before using it */
+	smp_wmb();
+}
+
+static inline void copy_highpage(struct page *to, struct page *from)
+{
+ char *vfrom, *vto;
+
+ vfrom = kmap_atomic(from, KM_USER0);
+ vto = kmap_atomic(to, KM_USER1);
+ copy_page(vto, vfrom);
+ kunmap_atomic(vfrom, KM_USER0);
+ kunmap_atomic(vto, KM_USER1);
+}
+
+#endif /* _LINUX_HIGHMEM_H */
Note this adds other useless stuff if you are not in debian (i am too lazy to remove this ), however it should not hurt. The only needed things are agp.h and agpgart.c the rest is from flavios fglrx-package.
Greetings Jon
I've just posted something similar to this ("AMD64, SuSE 9.1......") - could you let me know whether a similar patch exists for users running on SiS motherboards? Also, some brief instructions on whether you need to recompile the kernel to include external agp support, and how best to do that would be a huge help.

Cheers, Jon.
angrypanda is offline   Reply With Quote
Old Jan 18, 2005, 09:25 AM   #3
JonSvenJonsson
Radeon HD 6970
 
Join Date: Mar 2004
Posts: 581
JonSvenJonsson is still being judged by the masses


Default

Quote:
Originally Posted by angrypanda
I've just posted something similar to this ("AMD64, SuSE 9.1......") - could you let me know whether a similar patch exists for users running on SiS motherboards? Also, some brief instructions on whether you need to recompile the kernel to include external agp support, and how best to do that would be a huge help.

Cheers, Jon.
No AFAIK there is no similiar patch for sis. However you should take a look at the latest linux-2.4 sources (drivers/char/agp) and search for amd64 and sis. If theres sis-support in the agpgart for amd64-agp you could port it to fglrx (as its agpgart is based on 2.4 agp). You can take a look on my patch to see what i included (in fact for me it was a straight forward copy and paste job from linux-2.4 sources to fglrx-sources), so it shouldn't be much work.
And yes i recompiled my kernel, i disabled io-mmu support, and then i disabled agpgart and amd64 agp. Now i run the fglrx with internal agp and everything is fine .

Greetings Jon
JonSvenJonsson is offline   Reply With Quote
Advertisement (Guests Only)
Login or Register to remove this ad
Old Jan 18, 2005, 12:27 PM   #4
angrypanda
Radeon HD 6670
 
Join Date: Jan 2005
Location: Oxfordshire, UK
Posts: 27
angrypanda is still being judged by the masses


Default

Hi - sorry, but I'm still unclear about this. I have no experience with kernel hacking so would be completely out of my depth with this. I do however know how to follow the recipe for "rolling my own" If say, there is support for SIS in the standard kernel sources, would disabling io-mmu, agpgart and amd64_agp and rebuilding the kernel provide a solution for me?

Also, when I run lsmod should I see anything related to AGP (using the standard radeon driver)? I take it that if I am using the old radeon driver included with Xfree86 4.3.XX, it doesn't instruct the kernel to load these modules? Would a modprobe work?

Sorry for my ignorance of these issues!

Cheers, AngryPanda
angrypanda is offline   Reply With Quote
Old Jan 18, 2005, 01:20 PM   #5
mmclure
Radeon HD 6670
 
Join Date: Apr 2002
Posts: 49
mmclure is still being judged by the masses


Default

Is the internal fglrx AGPGART better/faster/more efficient/? than the kernel AGPGART? I haven't had any problems with the kernel AGPGART - is there any reason why I should switch to the internal one?
__________________
Athlon 64 3500+
MSI K8N Neo2 Platinum
2GB Crucial RAM
EVGA e-GeForce 6800 GS CO
Windows XP SP2/Gentoo Linux x86 dual boot
1 WD 250G SATA
Plextor PX-712A DVD+/-RW Drive
mmclure is offline   Reply With Quote
Old Jan 18, 2005, 02:58 PM   #6
JonSvenJonsson
Radeon HD 6970
 
Join Date: Mar 2004
Posts: 581
JonSvenJonsson is still being judged by the masses


Default

Quote:
Originally Posted by angrypanda
Hi - sorry, but I'm still unclear about this. I have no experience with kernel hacking so would be completely out of my depth with this. I do however know how to follow the recipe for "rolling my own" If say, there is support for SIS in the standard kernel sources, would disabling io-mmu, agpgart and amd64_agp and rebuilding the kernel provide a solution for me?

Also, when I run lsmod should I see anything related to AGP (using the standard radeon driver)? I take it that if I am using the old radeon driver included with Xfree86 4.3.XX, it doesn't instruct the kernel to load these modules? Would a modprobe work?

Sorry for my ignorance of these issues!

Cheers, AngryPanda
Post me the output of lspci, and i will see what i can do .

At mmclure: AFAIK internal agpgart is the only way to avoid the memory-leak in fglrx + nwn, see also:
http://nwn.bioware.com/forums/viewto...05580&forum=72
Besides that i think the driver is build around internal agpgart (eg agp locked pages) and because of that i run it internally, but thats only my humble opinion.

cheers Jon
JonSvenJonsson is offline   Reply With Quote
Old Jan 18, 2005, 03:36 PM   #7
Jerok
Newbie
 
Join Date: Jan 2005
Posts: 12
Jerok is still being judged by the masses


Default Internel agpgart?

Quote:
Originally Posted by mmclure
Is the internal fglrx AGPGART better/faster/more efficient/? than the kernel AGPGART? I haven't had any problems with the kernel AGPGART - is there any reason why I should switch to the internal one?
Yeah is there any advantage like 8x AGP?
Jerok is offline   Reply With Quote
Old Jan 19, 2005, 03:43 PM   #8
angrypanda
Radeon HD 6670
 
Join Date: Jan 2005
Location: Oxfordshire, UK
Posts: 27
angrypanda is still being judged by the masses


Talking Sorry for the delay!!!

Thanks Jon - sorry to be such a dufus about this

anat0018:~ # lspci
0000:00:00.0 Host bridge: Silicon Integrated Systems [SiS]: Unknown device 0760 (rev 02)
0000:00:01.0 PCI bridge: Silicon Integrated Systems [SiS] SG86C202
0000:00:02.0 ISA bridge: Silicon Integrated Systems [SiS]: Unknown device 0964 (rev 36)
0000:00:02.5 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE] (rev 01)
0000:00:02.7 Multimedia audio controller: Silicon Integrated Systems [SiS] Sound Controller (rev a0)
0000:00:03.0 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f)
0000:00:03.1 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f)
0000:00:03.2 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f)
0000:00:03.3 USB Controller: Silicon Integrated Systems [SiS] USB 2.0 Controller
0000:00:04.0 Ethernet controller: Silicon Integrated Systems [SiS] SiS900 10/100 Ethernet (rev 91)
0000:00:05.0 RAID bus controller: Silicon Integrated Systems [SiS]: Unknown device 0180 (rev 01)
0000:00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:01:00.0 VGA compatible controller: ATI Technologies Inc RV350 AP [Radeon 9600]
0000:01:00.1 Display controller: ATI Technologies Inc RV350 AP [Radeon 9600] (Secondary)

Hope this is of some use!

Cheers, AngryPanda
angrypanda is offline   Reply With Quote
Old Jan 19, 2005, 03:55 PM   #9
mmclure
Radeon HD 6670
 
Join Date: Apr 2002
Posts: 49
mmclure is still being judged by the masses


Default

Doesn't

Option "KernelModuleParm" "agplock=0"

resolve the NWN issues?
__________________
Athlon 64 3500+
MSI K8N Neo2 Platinum
2GB Crucial RAM
EVGA e-GeForce 6800 GS CO
Windows XP SP2/Gentoo Linux x86 dual boot
1 WD 250G SATA
Plextor PX-712A DVD+/-RW Drive
mmclure is offline   Reply With Quote
Old Jan 19, 2005, 04:33 PM   #10
angrypanda
Radeon HD 6670
 
Join Date: Jan 2005
Location: Oxfordshire, UK
Posts: 27
angrypanda is still being judged by the masses


Default

Hi! How do you apply those settings - are they meant for modules.conf? Or whatever the hell it is under SuSE So you have a working system right? What do you get for glxgears or the fglrx_gears? Cheers, AngryPanda
angrypanda is offline   Reply With Quote
Old Jan 20, 2005, 04:33 AM   #11
JonSvenJonsson
Radeon HD 6970
 
Join Date: Mar 2004
Posts: 581
JonSvenJonsson is still being judged by the masses


Default

Quote:
Originally Posted by mmclure
Doesn't

Option "KernelModuleParm" "agplock=0"

resolve the NWN issues?
Sometimes it resolves the issues. However for me only using internalagpgart resolved the memeating issue.
See also http://nwn.bioware.com/forums/viewto...05580&forum=72
for an description of the problem.
cheers Jon
JonSvenJonsson is offline   Reply With Quote
Old Jan 20, 2005, 04:34 AM   #12
JonSvenJonsson
Radeon HD 6970
 
Join Date: Mar 2004
Posts: 581
JonSvenJonsson is still being judged by the masses


Default

Quote:
Originally Posted by angrypanda
Thanks Jon - sorry to be such a dufus about this

anat0018:~ # lspci
0000:00:00.0 Host bridge: Silicon Integrated Systems [SiS]: Unknown device 0760 (rev 02)
0000:00:01.0 PCI bridge: Silicon Integrated Systems [SiS] SG86C202
0000:00:02.0 ISA bridge: Silicon Integrated Systems [SiS]: Unknown device 0964 (rev 36)
0000:00:02.5 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE] (rev 01)
0000:00:02.7 Multimedia audio controller: Silicon Integrated Systems [SiS] Sound Controller (rev a0)
0000:00:03.0 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f)
0000:00:03.1 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f)
0000:00:03.2 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f)
0000:00:03.3 USB Controller: Silicon Integrated Systems [SiS] USB 2.0 Controller
0000:00:04.0 Ethernet controller: Silicon Integrated Systems [SiS] SiS900 10/100 Ethernet (rev 91)
0000:00:05.0 RAID bus controller: Silicon Integrated Systems [SiS]: Unknown device 0180 (rev 01)
0000:00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:01:00.0 VGA compatible controller: ATI Technologies Inc RV350 AP [Radeon 9600]
0000:01:00.1 Display controller: ATI Technologies Inc RV350 AP [Radeon 9600] (Secondary)

Hope this is of some use!

Cheers, AngryPanda
Please post also an output of lspci -n (to get the device-ids), as the names doesnt count .

Cheers Jon
JonSvenJonsson is offline   Reply With Quote
Old Jan 20, 2005, 11:30 AM   #13
angrypanda
Radeon HD 6670
 
Join Date: Jan 2005
Location: Oxfordshire, UK
Posts: 27
angrypanda is still being judged by the masses


Default

Hi Jon,

Sorry about that - here you go. I appreciate all the help here.

anat0018:~ # lspci -n
0000:00:00.0 Class 0600: 1039:0760 (rev 02)
0000:00:01.0 Class 0604: 1039:0002
0000:00:02.0 Class 0601: 1039:0964 (rev 36)
0000:00:02.5 Class 0101: 1039:5513 (rev 01)
0000:00:02.7 Class 0401: 1039:7012 (rev a0)
0000:00:03.0 Class 0c03: 1039:7001 (rev 0f)
0000:00:03.1 Class 0c03: 1039:7001 (rev 0f)
0000:00:03.2 Class 0c03: 1039:7001 (rev 0f)
0000:00:03.3 Class 0c03: 1039:7002
0000:00:04.0 Class 0200: 1039:0900 (rev 91)
0000:00:05.0 Class 0104: 1039:0180 (rev 01)
0000:00:18.0 Class 0600: 1022:1100
0000:00:18.1 Class 0600: 1022:1101
0000:00:18.2 Class 0600: 1022:1102
0000:00:18.3 Class 0600: 1022:1103
0000:01:00.0 Class 0300: 1002:4150
0000:01:00.1 Class 0380: 1002:4170

Wish I understood what the hell you're looking for in this output

Cheers, AngryPanda
__________________
AMD64 3000+
1Gb DDR
160Gb SATA
SiS mobo
Radeon 9600 grfx

Last edited by angrypanda : Jan 20, 2005 at 11:35 AM.
angrypanda is offline   Reply With Quote
Old Jan 20, 2005, 01:37 PM   #14
JonSvenJonsson
Radeon HD 6970
 
Join Date: Mar 2004
Posts: 581
JonSvenJonsson is still being judged by the masses


Default

Quote:
Originally Posted by angrypanda
Hi Jon,

Sorry about that - here you go. I appreciate all the help here.

anat0018:~ # lspci -n
0000:00:00.0 Class 0600: 1039:0760 (rev 02)
0000:00:01.0 Class 0604: 1039:0002
0000:00:02.0 Class 0601: 1039:0964 (rev 36)
0000:00:02.5 Class 0101: 1039:5513 (rev 01)
0000:00:02.7 Class 0401: 1039:7012 (rev a0)
0000:00:03.0 Class 0c03: 1039:7001 (rev 0f)
0000:00:03.1 Class 0c03: 1039:7001 (rev 0f)
0000:00:03.2 Class 0c03: 1039:7001 (rev 0f)
0000:00:03.3 Class 0c03: 1039:7002
0000:00:04.0 Class 0200: 1039:0900 (rev 91)
0000:00:05.0 Class 0104: 1039:0180 (rev 01)
0000:00:18.0 Class 0600: 1022:1100
0000:00:18.1 Class 0600: 1022:1101
0000:00:18.2 Class 0600: 1022:1102
0000:00:18.3 Class 0600: 1022:1103
0000:01:00.0 Class 0300: 1002:4150
0000:01:00.1 Class 0380: 1002:4170

Wish I understood what the hell you're looking for in this output

Cheers, AngryPanda
I wanted the output of lspci -n to see which of your chips is the northbridge agpgart (its 0000:00:00.0 Class 0600: 1039:0760 (rev 02)).
Searching the web revealed that the SIS760 has integrated graphics, is this true for your MB ?
I ask this because i am not quite sure how to handle this (no docs from sis). Does external (aka kernel) agpgart work for you ? If so it would be a safer thing to use external agpgart and accept the nwn memleak. I have an idea how to patch fglrx agpgart, however this would be like fishing in the dark. Mean things could happen to you and your computer (like your MB not working anymore or your cat eating your homework ), and i am not quite sure if i would do this.
So if external agpgart works (hint try latest kernel from kernel.org) then use this.

Cheers Jon
JonSvenJonsson is offline   Reply With Quote
Old Jan 20, 2005, 02:14 PM   #15
angrypanda
Radeon HD 6670
 
Join Date: Jan 2005
Location: Oxfordshire, UK
Posts: 27
angrypanda is still being judged by the masses


Default

Thanks! Yes it does have on-board graphics, but I think (!) I disabled it in the BIOS. Not sure if this helps, but the mobo is listed as a Winfast(?foxconn) K8S760MG - G for graphics? SiS 760 Northbridge and SiS 964 south bridge. The on-board graphics are disabled, and init first display set to AGP. The installed kernel is 2.6.5 (I think) whichever the latest one for SuSE 9.1 anyway. Do you think a kernel compile is the only option? If so is there a specific option I need to turn on? Cheers, AP.
__________________
AMD64 3000+
1Gb DDR
160Gb SATA
SiS mobo
Radeon 9600 grfx
angrypanda is offline   Reply With Quote
Old Jan 20, 2005, 02:28 PM   #16
JonSvenJonsson
Radeon HD 6970
 
Join Date: Mar 2004
Posts: 581
JonSvenJonsson is still being judged by the masses


Default

Quote:
Originally Posted by angrypanda
Thanks! Yes it does have on-board graphics, but I think (!) I disabled it in the BIOS. Not sure if this helps, but the mobo is listed as a Winfast(?foxconn) K8S760MG - G for graphics? SiS 760 Northbridge and SiS 964 south bridge. The on-board graphics are disabled, and init first display set to AGP. The installed kernel is 2.6.5 (I think) whichever the latest one for SuSE 9.1 anyway. Do you think a kernel compile is the only option? If so is there a specific option I need to turn on? Cheers, AP.
You could upgrade to SuSe9.2, as the files are on ftp (search for suse mirrors), howver i never did this so i could not say if it goes without glitches.
You could download the latest kernel from kernel.org (2.6.10) and compile it. best would be to copy suses kernel-config (may be in the boot directory, but dont know exactly, maybe a someone other knows), so you dont miss an option. When using external (aka kernel) agpgart suses config should work on newer kernels.
The Problem with sis is that they dont handout docs to developers (and i dont meen me, but people like dave jones), so honestly i would avoid sis boards under linux.
Good luck Jon
P.S.: if you have other questions, trouble feel free to ask.
JonSvenJonsson is offline   Reply With Quote
Old Jan 21, 2005, 10:24 AM   #17
superm1
Radeon HD 6770
 
Join Date: Dec 2004
Location: Raleigh, NC
Posts: 51
superm1 is still being judged by the masses


Default

I applied this patch, but the performance gain seems to be negligable now using the internal agpgart driver versus the kernel agpgart. Are you guys sure that AGP 8x is only active when using the internal driver?
superm1 is offline   Reply With Quote
Old Jan 22, 2005, 03:01 PM   #18
angrypanda
Radeon HD 6670
 
Join Date: Jan 2005
Location: Oxfordshire, UK
Posts: 27
angrypanda is still being judged by the masses


Default

Does anyone have any experience with getting this new (ahem) driver to work with AMD64, SiS motherboards and any flavour of linux? Jon.
__________________
AMD64 3000+
1Gb DDR
160Gb SATA
SiS mobo
Radeon 9600 grfx
angrypanda is offline   Reply With Quote
Old Jan 26, 2005, 11:44 AM   #19
superm1
Radeon HD 6770
 
Join Date: Dec 2004
Location: Raleigh, NC
Posts: 51
superm1 is still being judged by the masses


Default

Quote:
Originally Posted by superm1
I applied this patch, but the performance gain seems to be negligable now using the internal agpgart driver versus the kernel agpgart. Are you guys sure that AGP 8x is only active when using the internal driver?
I just wanted to bump this as I'm curious if anyone has a for sure answer to my question?
superm1 is offline   Reply With Quote
Old Jan 26, 2005, 11:48 AM   #20
JonSvenJonsson
Radeon HD 6970
 
Join Date: Mar 2004
Posts: 581
JonSvenJonsson is still being judged by the masses


Default

Quote:
Originally Posted by superm1
I just wanted to bump this as I'm curious if anyone has a for sure answer to my question?
I did the patch not for performance gains (i am not sure if there are such gains), but to be able to play NWN without that nasty memleak. So if you dont play nwn and have working kernel-agp then dont use this patch.
Cheers Jon
JonSvenJonsson is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
internal agp vs agpgart glfb Drivers 2 Mar 30, 2007 03:03 AM
Patch to add amdk8-agp support to fglrx JonSvenJonsson Drivers 4 Nov 23, 2004 05:18 AM
Fglrx and agpgart loaded, but no used Sidounet Linux 11 Jun 24, 2004 05:10 PM
Problems with linux, agpgart, xfree and ati's drivers: fglrx(0): cannot init AGP Lindset Drivers 8 Sep 1, 2003 08:44 PM
nForce2 AGPGART Patch HydrasunGQ Linux 23 Jun 12, 2003 07:07 PM


All times are GMT -5. The time now is 11:18 PM.



Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
All trademarks used are properties of their respective owners. Copyright ©1998-2011 Rage3D.com
Links monetized by VigLink