Avatar

Michael's Blog

Home | RSS | Gallery | Stats | About | Comics | Downloads | Links | Scripts | Test Scripts | Wiki |

Building the wl module on linux 3.2

2012-04-02 21:57:00.00 by Michael 1.0 Comments
Tags: linux kernel hardware hacking

After upgrading my netbook kernel to the latest stable version available on backports.org I soon discovered that my wireless interface no longer worked. Trying to rebuild the module resulted in the following error:

/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.c: In function ‘_wl_set_multicast_list’:
/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.c:1435: error: ‘struct net_device’ has no member named ‘mc_list’
/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.c:1435: error: ‘struct net_device’ has no member named ‘mc_count’
/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.c:1436: error: dereferencing pointer to incomplete type
/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.c:1442: error: dereferencing pointer to incomplete type
make[4]: *** [/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.o] Error 1
make[3]: *** [_module_/usr/src/modules/broadcom-sta/amd64] Error 2
make[2]: *** [sub-make] Error 2
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.2.0-0.bpo.2-amd64'
make: *** [all] Error 2
root@netbook:/usr/src/modules/broadcom-sta/amd64#  run "make API=WEXT"
bash: run: command not found
root@netbook:/usr/src/modules/broadcom-sta/amd64# "make API=WEXT"
bash: make API=WEXT: command not found
root@netbook:/usr/src/modules/broadcom-sta/amd64# make API=WEXT
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: Entering directory `/usr/src/linux-headers-3.2.0-0.bpo.2-amd64'
  CC [M]  /usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.o
/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.c: In function ‘_wl_set_multicast_list’:
/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.c:1435: error: ‘struct net_device’ has no member named ‘mc_list’
/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.c:1435: error: ‘struct net_device’ has no member named ‘mc_count’
/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.c:1436: error: dereferencing pointer to incomplete type
/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.c:1442: error: dereferencing pointer to incomplete type
make[4]: *** [/usr/src/modules/broadcom-sta/amd64/src/wl/sys/wl_linux.o] Error 1
make[3]: *** [_module_/usr/src/modules/broadcom-sta/amd64] Error 2
make[2]: *** [sub-make] Error 2
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.2.0-0.bpo.2-amd64'
make: *** [all] Error 2

A bit of googling lead me to a few patches that helped solve the issue. Here is a unified diff of my changes which should allow you to cleanly build and install the wl module using module-assistant.

http://www.watters.ws/broadcom_bcm4313_linux3.2.patch

One thing to note is that the source code needs to be patched BEFORE you run m-a, i.e. cd to /usr/src/modules/broadcom_sta/amd64/src/wl/sys and run patch the patch from there.

I hope that somebody will find this useful.

Memories

2008-05-07 21:58:04.09 by Michael 0.0 Comments
Tags: hacking networking computers nostalgia

This is going to be my longest post in a while and you'll have to excuse me if I ramble a bit.

Lately it seems I have been in a really nostalgic mood, I've started playing around with old network protocols like gopher and telnetting into BBSes, it's not the same as hooking up a phone line and connecting over 2400 baud though, nothing will replace those late nights of dialing in to a BBS while your parents are sleeping, hehe. It's amazing how small the world really has become, 100 years ago nobody would have believed you if you said you could have a video conference with somebody thousands of miles away, they'd probably lock you in the looney bin.

When I look back I'm REALLY glad that I got into computers as a kid, the moment I set hands on my first Apple II I knew what I wanted to be when I grew up. At times I feel like I wasted my youth staying inside and hacking on stuff all the time but it made me into who I am now and I still have that old hacker mentality, I love to tear things apart and figure out how things work, that's what makes me so good at my job I guess.

To supplement my trip down memory lane I downloaded some Atari ROMS along with a 7800 emulator, the graphics are pretty crappy compared to today's standards and some of the games just outright suck, time definitely has not been good to some games. I also installed a Playstation 1 emulator so that I can play the games I have, my PSX died a while ago and I never got around to replacing it.

I really do miss the old days, sure there wasn't as much money to be made (Liquid Web didn't even exist then) but the internet has become filled with so much crap now it's ridiculous, hopefully somebody comes up with a solution soon.