Building firmware drivers fglrx & ipw3945

Asked by 28dmx3939sjwhgrz

I am trying to build fglrx 8.34 (latest version from ati.amd.com) and ipw3945 1.2.0, however, neither one builds correctly.

Firstly, fglrx. I downloaded the source package, ran the executable and installed fglrx-kernel-source. I than ran module-assistant prepare,update then m-a build,install. This last step fails, the build log is full of errors 700 lines long. I'd like to know how the Ubuntu team managed to build this i.e. what packages am I missing (do I need a later version of libc6-dev?).

Secondly, ipw3945 doesn't build. I run the following commands: make IEEE80211_INC=../ieee80211 IEEE80211_PATH=../ieee80211 IEEE80211_IGNORE_DUPLICATE=y which point to a valid ieee80211 subsystem from sf.net, the same error occurs using the ubuntu linux-source or kernel.org source. Below is the somewhat shorter error message:

  CC [M] ~/Downloads/kernel/ipw3945-1.2.0/ipw3945.o
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:4455:20: error: operator '>=' has no left operand
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c: In function ‘ipw_start_association’:
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:4466: error: too few arguments to function ‘ieee80211_tx_frame’
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:4943:20: error: operator '>=' has no left operand
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c: In function ‘ipw_bg_daemon_cmd’:
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:4950: error: too few arguments to function ‘ieee80211_tx_frame’
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9425:20: error: operator '>=' has no left operand
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c: In function ‘ipw_send_association_req’:
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9430: error: too few arguments to function ‘ieee80211_tx_frame’
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9477:20: error: operator '<' has no left operand
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9492:20: error: operator '>=' has no left operand
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c: In function ‘ipw_bg_auth_work’:
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9515: error: ‘crypt’ undeclared (first use in this function)
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9515: error: (Each undeclared identifier is reported only once
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9515: error: for each function it appears in.)
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9521: error: ‘skb_auth’ undeclared (first use in this function)
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9531: error: ‘auth2’ undeclared (first use in this function)
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9537: error: ‘auth_frame’ undeclared (first use in this function)
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9565: error: too few arguments to function ‘ieee80211_tx_frame’
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9678:20: error: operator '>=' has no left operand
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c: In function ‘ipw_handle_probe_request’:
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:9681: error: too few arguments to function ‘ieee80211_tx_frame’
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:15544:20: error: operator '>=' has no left operand
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c: In function ‘ipw_bg_assoc_state_retry’:
~/Downloads/kernel/ipw3945-1.2.0/ipw3945.c:15551: error: too few arguments to function ‘ieee80211_tx_frame’
make[2]: *** [~/Downloads/kernel/ipw3945-1.2.0/ipw3945.o] Error 1

I have tried community forums and can find no answers there. The versions from the ubuntu edgy repositories work just fine, but then these are pre-compiled.

All help appreciated,

AV

Question information

Language:
English Edit question
Status:
Solved
For:
Ubuntu Edit question
Assignee:
No assignee Edit question
Solved by:
28dmx3939sjwhgrz
Solved:
Last query:
Last reply:
Revision history for this message
28dmx3939sjwhgrz (28dmx3939sjwhgrz-deactivatedaccount) said :
#1

In terms of ipw3945 I have the microcode already, ipw3945.ucode, and a copy of the latest daemon - running this doesn't work as it can't find the kernel module.

AV

Revision history for this message
28dmx3939sjwhgrz (28dmx3939sjwhgrz-deactivatedaccount) said :
#2

I still can't solve this problem so I shall ask a different question:

What versions are built in the linux-restricted-modules package? What modifications are made to the Ubuntu kernel in order to facilitate these builds/what do I need by way of development files in order for a successful build to occur?

Revision history for this message
28dmx3939sjwhgrz (28dmx3939sjwhgrz-deactivatedaccount) said :
#3

I have now managed to build the latest fglrx with suitable patches.

Problem remains for ipw3945.

Revision history for this message
Best 28dmx3939sjwhgrz (28dmx3939sjwhgrz-deactivatedaccount) said :
#4

There are a number of patches required to solve my problem, for both fglrx and ipw3945 - thanks to the guys at the Gentoo Wiki for their help.

If anyone wants to find out how this is done check out the master kernel thread on Ubuntuforums.org.