• Home
  • Help
  • Search
  • Login
  • Register
Pages: [1]
Author Topic: error in patchfiles for wifi client fix?  (Read 3528 times)
bad_gui
Jr. Member
**

Karma: 0
Posts: 50


View Profile
« on: January 11, 2011, 10:09:55 PM »

I'm following the instructions here to build a custom kernel so that I can use
my guruplug server plus as a wifi client
http://www.openplug.org/plugwiki/index.php/Setting_GuruPlug_to_be_a_stable_WiFi_Client

I followed the instructions to cross compile a 2.6.33.7 kernel with the fixes but I get an error
when trying to build the modules

Quote
 
CC [M]  drivers/net/wireless/libertas_uap/uap_main.o
 CC [M]  drivers/net/wireless/libertas_uap/uap_sdio_mmc.o
 CC [M]  drivers/net/wireless/libertas_uap/uap_proc.o
drivers/net/wireless/libertas_uap/uap_proc.c: In function 'uap_proc_read':
drivers/net/wireless/libertas_uap/uap_proc.c:83:5: error: implicit declaration of function 'netdev_for_each_mc_addr'
drivers/net/wireless/libertas_uap/uap_proc.c:83:41: error: expected ';' before '{' token
drivers/net/wireless/libertas_uap/uap_proc.c:92:41: error: expected ';' before '{' token
make[4]: *** [drivers/net/wireless/libertas_uap/uap_proc.o] Error 1
make[3]: *** [drivers/net/wireless/libertas_uap] Error 2
make[2]: *** [drivers/net/wireless] Error 2
make[1]: *** [drivers/net] Error 2
make: *** [drivers] Error 2

When I look at the lines 83 to 92 of the kernel sources file drivers/net/wireless/libertas_uap/uap_proc.c
Code:
    netdev_for_each_mc_addr(ha, netdev) {
        ++i;
    }
    p += sprintf(p, "MCCount=\"%d\"\n", i);

    /*
     * Put out the multicast list
     */
    i = 0;
    netdev_for_each_mc_addr(ha, netdev) {

Is it just missing a ; before the {

I can blindly make the change but perhaps someone with knowledge of C could give me a pointer?
Logged

birdman
Sr. Member
****

Karma: 4
Posts: 440


View Profile WWW
« Reply #1 on: January 12, 2011, 06:47:27 PM »

When I look at the lines 83 to 92 of the kernel sources file drivers/net/wireless/libertas_uap/uap_proc.c
Where does the libertas_uap code come from? It's not in the standard tree, and I can't see any links around that point to the source.
But...
Quote
Is it just missing a ; before the {

I can blindly make the change but perhaps someone with knowledge of C could give me a pointer?
No!
The "netdev_for_each_mc_addr" should be a macro that expands to a loop header construct  The fact that your compilation complains about an implicit function declaration for it means that it's missing the macro definition.  It's not defined anywhere in the standard 2.6.33.7 sources.
Logged

Fletch
Jr. Member
**

Karma: 1
Posts: 61


View Profile
« Reply #2 on: January 12, 2011, 09:46:39 PM »

It would be very cool if this new driver really solved the kernel crashes.  I haven't tried to build it yet.
Logged

bad_gui
Jr. Member
**

Karma: 0
Posts: 50


View Profile
« Reply #3 on: January 14, 2011, 06:09:53 PM »

I followed the kernel building instructions here

http://www.openplug.org/plugwiki/index.php/Re-building_the_kernel_and_U-Boot

except I used the 2.6.37 kernel source from here http://sheeva.with-linux.com/sheeva/
and I applied the patchset from here http://www.openplug.org/plugwiki/images/c/c6/Guruplug-patchset-2.6.33.2.tar.bz2

The libertas_uap code is in the patchset

The netdev_for_each_mc_addr macro seems to be part of recent kernel sources
http://tomoyo.sourceforge.jp/cgi-bin/lxr/ident?i=netdev_for_each_mc_addr
but I don't know if the author of the wificlient fix wikipage used another version of
kernel 2.6.33.7.  I haven't checked the Marvell git repository version of 2.6.33.7 yet.


Logged

strav
Newbie
*

Karma: 0
Posts: 2


View Profile
« Reply #4 on: March 05, 2011, 06:59:04 PM »

Hi, (I'm the one who wrote the wiki page for the stable wifi config). For compiling the kernel, I used a vanilla 2.6.33.7 kernel from kernel.org, the error you guys are mentioning appears on every kernel above this. Since this is now spring break, I'll see if I can manage to find some time and try to patch this, it might be interesting.

Meanwhile, good luck with this!
Logged

richard
Newbie
*

Karma: 0
Posts: 12


View Profile
« Reply #5 on: March 09, 2011, 03:42:30 AM »

Hi,

I would also like to get hold of a wifi driver for newer kernel versions.

Is there any reason my the Stable Wifi drive can not be included in the main kernel as opposed to a patch, so it just works?

Thanks for your work!

Rich
Logged

sfzhi
Jr. Member
**

Karma: 1
Posts: 83


View Profile
« Reply #6 on: March 10, 2011, 05:02:17 AM »

Is there any reason my the Stable Wifi drive can not be included in the main kernel as opposed to a patch, so it just works?

For one thing, some of the code is released under "Marvell Proprietary" license (without further clarification what exactly that means) rather than GPL.
Logged

Lack of knowledge is not such a big problem, unwillingness to learn is.

Pages: [1]
Print
Jump to: