The time now is Wed 19 Jun 2013, 23:24
All times are UTC - 4 |
| Author |
Message |
playdayz

Joined: 25 Apr 2008 Posts: 3705
|
Posted: Mon 15 Nov 2010, 19:11 Post subject:
How to build ATI Catalyst driver in Lucid? Subject description: Please ask for anything else you might need |
|
The ATI Catalyst Display Driver will build, install, and run in Karmic Puppy (upup-432), but it will not build in Lucid Puppy. I did an experiment and built a Karmic Puppy (upup-433) with the 2.6.33.2 kernel that is used in Lucid, and then I compared upup-432 (kernel 2.6.30.5) with upup-433 (2.6.33.2). ATI Catalyst did *not* build in upup-433. Further, the error log is *exactly* the same as the error log I get trying to build Catalyst in Luci-237 (from which I conclude that the kernel sources might be the problem, rather than the difference between Xorg 7.4 and 7.5?).
So perhaps I have enough information for someone who knows kernels and drivers inside out to figure out how we could build Catalyst in Lucid Puppy. I would be most grateful for assistance. BTW, we have been using the open-source 'radeon' and 'radeonhd' drivers which function well and provide hardware acceleration. However, by my testing the ATI Catalyst fglrx driver provides about twice the framerate of the radeon driver. In addition we have not been able to make Compiz function with the radeon driver and I suspect it might work with the ATI fglrx driver. Thank you.
I see the post http://www.murga-linux.com/puppy/viewtopic.php?t=62000
ati-driver-installer-10-8-x86.x86_64.run
(install the devx and kernel sources, set the permissions on the ati driver installer, and run it in a terminal.)
http://support.amd.com/us/gpudownload/linux/Pages/radeon_linux.aspx?type=2.4.1&product=2.4.1.3.42&lang=English
upup-432 -> http://diddywahdiddy.net/Puppy400/upup-432.iso
upup_devx_432 -> http://diddywahdiddy.net/Puppy400/upup_devx_432.sfs
kernel sources 2.6.30.5 -> http://bkhome.org/sources/kernel-2.6.30.5/kernel_src-2.6.30.5-patched.sfs4.sfs
fglrx install log - success
upup-433 -> http://diddywahdiddy.net/Puppy400/upup-433.iso
upup_devx_433 -> http://diddywahdiddy.net/Puppy400/upup_devx_433.sfs
kernel sources 2.6.33.2 -> http://bkhome.org/sources/kernel-2.6.33.2/kernel_src-2.6.33.2-patched.sfs
fglrx install log - failure
luci-237 -> http://diddywahdiddy.net/Puppy500/luci-237-SCSI.iso
luci_devx_237 -> http://diddywahdiddy.net/Puppy500/luci_devx_237.sfs
upup 432 (2.6.30.5) fglrx install log - success
| Quote: |
[Message] Kernel Module : Trying to install a precompiled kernel module.
[Message] Kernel Module : Precompiled kernel module version mismatched.
[Message] Kernel Module : Found kernel module build environment, generating kernel module now.
AMD kernel module generator version 2.1
doing Makefile based build for kernel 2.6.x and higher
rm -rf *.c *.h *.o *.ko *.GCC* .??* *.symvers
make -C /lib/modules/2.6.30.5/build SUBDIRS=/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-2.6.30.5'
CC [M] /lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
In file included from /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:451:
/lib/modules/fglrx/build_mod/2.6.x/drm_proc.h: In function 'FGLDRM__vma_info':
/lib/modules/fglrx/build_mod/2.6.x/drm_proc.h:497: warning: format '%08lx' expects type 'long unsigned int', but argument 5 has type 'phys_addr_t'
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function 'KCL_MapPageToPfn':
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1636: warning: unused variable 'bus_addr'
CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_acpi.o
CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_agp.o
CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_debug.o
/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.c: In function 'KCL_DEBUG_Print':
/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.c:96: warning: format not a string literal and no format arguments
/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.c: In function '__ke_printk':
/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.c:157: warning: format not a string literal and no format arguments
/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.c: At top level:
/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.c:65: warning: 'kcl_debug_sysrq_op' defined but not used
/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.c:72: warning: 'kcl_debug_sysrq_dump_op' defined but not used
CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_ioctl.o
CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_io.o
CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_pci.o
CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_str.o
CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_wait.o
LD [M] /lib/modules/fglrx/build_mod/2.6.x/fglrx.o
Building modules, stage 2.
MODPOST 1 modules
CC /lib/modules/fglrx/build_mod/2.6.x/fglrx.mod.o
LD [M] /lib/modules/fglrx/build_mod/2.6.x/fglrx.ko
make[1]: Leaving directory `/usr/src/linux-2.6.30.5'
build succeeded with return value 0
duplicating results into driver repository...
done.
You must change your working directory to /lib/modules/fglrx
and then call ./make_install.sh in order to install the built module.
- recreating module dependency list
- trying a sample load of the kernel modules
done.
[Message] Kernel Module : update initramfs not required |
upup-433 (2.6.33.2) fglrx install log - failure
same as luci-237 fglrx install log - failure
| Quote: | [Message] Kernel Module : Trying to install a precompiled kernel module.
[Message] Kernel Module : Precompiled kernel module version mismatched.
[Message] Kernel Module : Found kernel module build environment, generating kernel module now.
AMD kernel module generator version 2.1
doing Makefile based build for kernel 2.6.x and higher
rm -rf *.c *.h *.o *.ko *.GCC* .??* *.symvers
make -C /lib/modules/2.6.33.2/build SUBDIRS=/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-2.6.33.2'
CC [M] /lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
In file included from include/linux/gfp.h:4,
from include/linux/kmod.h:22,
from include/linux/module.h:13,
from /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:107:
include/linux/mmzone.h:18:30: error: generated/bounds.h: No such file or directory
include/linux/mmzone.h:258:5: warning: "MAX_NR_ZONES" is not defined
include/linux/mmzone.h:260:7: warning: "MAX_NR_ZONES" is not defined
include/linux/mmzone.h:262:7: warning: "MAX_NR_ZONES" is not defined
In file included from include/linux/gfp.h:4,
from include/linux/kmod.h:22,
from include/linux/module.h:13,
from /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:107:
include/linux/mmzone.h:300: error: 'MAX_NR_ZONES' undeclared here (not in a function)
In file included from /usr/src/linux-2.6.33.2/arch/x86/include/asm/pci.h:4,
from include/linux/pci.h:1140,
from /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:114:
include/linux/mm.h:454:63: warning: "NR_PAGEFLAGS" is not defined
include/linux/mm.h:502:62: warning: "NR_PAGEFLAGS" is not defined
In file included from /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:451:
/lib/modules/fglrx/build_mod/2.6.x/drm_proc.h: In function 'FGLDRM__vma_info':
/lib/modules/fglrx/build_mod/2.6.x/drm_proc.h:497: warning: format '%08lx' expects type 'long unsigned int', but argument 5 has type 'phys_addr_t'
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function 'KCL_MapPageToPfn':
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1636: warning: unused variable 'bus_addr'
make[2]: *** [/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o] Error 1
make[1]: *** [_module_/lib/modules/fglrx/build_mod/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.33.2'
make: *** [kmod_build] Error 2
build failed with return value 2
[Error] Kernel Module : Failed to compile kernel module - please consult readme. |
|
|
Back to top
|
|
 |
Karl Godt

Joined: 20 Jun 2010 Posts: 2736 Location: Kiel,Germany
|
Posted: Mon 15 Nov 2010, 21:41 Post subject:
|
|
http://packages.ubuntu.com/search?suite=lucid§ion=all&arch=i386&searchon=contents&keywords=bounds.h
http://packages.ubuntu.com/search?suite=maverick§ion=all&arch=i386&searchon=contents&keywords=%2Fgenerated%2Fbounds.h
http://packages.ubuntu.com/search?suite=lucid&arch=i386&searchon=contents&keywords=include%2Flinux%2Fmmzone.h
431:
81 : #define MAX_NR_ZONES 3 /* Sync this with ZONES_SHIFT */
I am running 431 ATM and cannot find bounds.h for now and mm.h hasn't defined NR_PAGEFLAGS either here AIS
I used pfind Search Text in Files at /usr/include
(pfind turns out disgusting when using it many times)
also possible :
| Code: | # grep MAX_NR_ZONES /usr/include/*
# grep MAX_NR_ZONES /usr/include/linux/*
/usr/include/linux/gfp.h: * This zone list contains a maximum of MAXNODES*MAX_NR_ZONES zones.
/usr/include/linux/mm.h: * We'll have up to (MAX_NUMNODES * MAX_NR_ZONES) zones total,
/usr/include/linux/mmzone.h:#define MAX_NR_ZONES 3 /* Sync this with ZONES_SHIFT */
/usr/include/linux/mmzone.h:#define ZONES_SHIFT 2 /* ceil(log2(MAX_NR_ZONES)) */
/usr/include/linux/mmzone.h: unsigned long protection[MAX_NR_ZONES];
/usr/include/linux/mmzone.h: struct zone *zones[MAX_NUMNODES * MAX_NR_ZONES + 1]; // NULL delimited
/usr/include/linux/mmzone.h: struct zone node_zones[MAX_NR_ZONES];
/usr/include/linux/mmzone.h: if (zone - pgdat->node_zones < MAX_NR_ZONES - 1)
/usr/include/linux/mmzone.h: * for (i = 0; i < MAX_NR_ZONES; ++i) {
# |
{EDIT}
MacpupF3 might be 430 and looking at MacpupO2 I found no mmzone.h and no mm.h
I might have installed some additional .h packages for compiling
|
|
Back to top
|
|
 |
playdayz

Joined: 25 Apr 2008 Posts: 3705
|
Posted: Mon 15 Nov 2010, 22:53 Post subject:
|
|
Hey Karl, Guess what. I built a luci with kernel 2.6.33.5 (not 2.6.33.2 as we have always used) and with that luci I was able to build ATI catalyst, which installed and ran.
Now there are two possibilities. I can use that luci to build a package that will work on our regular kernel 2.6.33.2, or, we can start to build luci with 2.6.33.5. It has been a long day. Thank you for your help.
|
|
Back to top
|
|
 |
Nym1
Joined: 12 Oct 2005 Posts: 12
|
Posted: Mon 15 Nov 2010, 23:26 Post subject:
|
|
Hello,
Kernel_src-2.6.33.2-LHP.sfs has worked for me with fewer problems than kernel_src-2.6.33.2-patched.sfs. I don't have a machine with an ATI adapter but decided to try to compile the driver in luci-237 out of curiosity. Luci_devx_237.sfs and Kernel_src-2.6.33.2-LHP were added.
I used the "generate distribution specific package driver option" and chose to "build package for detected OS: Slackware/All" (at the bottom of the list of choices). The fglrx-install.log is shown below:
| Quote: | AMD kernel module generator version 2.1
doing Makefile based build for kernel 2.6.x and higher
rm -rf *.c *.h *.o *.ko *.GCC* .??* *.symvers
make -C /lib/modules/2.6.33.2/build SUBDIRS=/initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-2.6.33.2'
CC [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
/initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function 'KCL_MapPageToPfn':
/initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1636: warning: unused variable 'bus_addr'
CC [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/kcl_acpi.o
CC [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/kcl_agp.o
CC [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.o
/initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.c:65: warning: 'kcl_debug_sysrq_op' defined but not used
/initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.c:72: warning: 'kcl_debug_sysrq_dump_op' defined but not used
CC [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/kcl_ioctl.o
CC [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/kcl_io.o
CC [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/kcl_pci.o
CC [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/kcl_str.o
CC [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/kcl_wait.o
LD [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/fglrx.o
Building modules, stage 2.
MODPOST 1 modules
CC /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/fglrx.mod.o
LD [M] /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx/build_mod/2.6.x/fglrx.ko
make[1]: Leaving directory `/usr/src/linux-2.6.33.2'
build succeeded with return value 0
duplicating results into driver repository...
done.
You must change your working directory to /initrd/mnt/dev_save/dl/ati-driver/fglrx-install.iyYZRX/common/lib/modules/fglrx
and then call ./make_install.sh in order to install the built module. |
I didn't proceed to call make_install.sh but the process appears to have worked up to that point at least when Kernel_src-2.6.33.2-LHP was used.
Good Luck,
Nym1
|
|
Back to top
|
|
 |
01micko

Joined: 11 Oct 2008 Posts: 7037 Location: qld
|
Posted: Tue 16 Nov 2010, 08:11 Post subject:
|
|
um.. important I think...
When I compiled the kernel I did make a kernel source sfs and upoloaded to smkey01,com, however I didn't make clean that src and it was massive .
I did fix it and there is, and has been for quite awhile now this package.. http://www.smokey01.com/01micko/lupu_kernel/kernel_src_L4-2.6.33.2-patched.sfs.. I thought you knew, there is a link on my dev page.
Cheers, and lets hope tomorrow is more fruitful.
_________________ keep the faith .. 
|
|
Back to top
|
|
 |
01micko

Joined: 11 Oct 2008 Posts: 7037 Location: qld
|
Posted: Tue 16 Nov 2010, 08:11 Post subject:
|
|
double
_________________ keep the faith .. 
|
|
Back to top
|
|
 |
mories
Joined: 21 Dec 2009 Posts: 30
|
Posted: Tue 16 Nov 2010, 17:29 Post subject:
make modules_prepare |
|
I think the problem is that needs to be done previously 'make modules_prepare' for prepare the kernel for building external modules.
|
|
Back to top
|
|
 |
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|