Jump to content

How to compile the wifi driver ?


Recommended Posts

Guest # rm -rf /*
Posted (edited)

I compiled the kernel with the source code downloaded here (Thanks to Tom's work!) :

https://github.com/T...ernel_zte_blade

Everything seems to work well except the WiFi , I found that /system/wifi/ar6000.ko could not be loaded .

Is there a solution ? Thanks !

Solved: just modify ar6000.ko with an hex editor like ghex , replace the original version with compiled version(remove "+") , and add "00" after the whole string , the wifi driver now worked well with my kernel

Edited by # rm -rf /*
Guest t0mm13b
Posted

For a start, make sure your kernel is exactly "2.6.35.7-perf+"

If it does not match within the quotes, the wifi driver will refuse to load, as its hard-coded to use that identical/exact version in quotes. Don't ask me why - but I suspect it was pulled from somewhere else and built for that version or that the sources was compiled by TomG for that version.

Guest # rm -rf /*
Posted

The wifi driver need to be recompiled .But , till now I could not find available ar6000 driver source code .

I always get compilation errors .

I also wonder why I got "2.6.35.7-perf" , not "2.6.35.7-perf+".

Guest t0mm13b
Posted

The wifi driver need to be recompiled .But , till now I could not find available ar6000 driver source code .

I always get compilation errors .

I also wonder why I got "2.6.35.7-perf" , not "2.6.35.7-perf+".

There is no known proper source to date that actually compiles and works, a lot of the sources out there are broken and do not build properly. Look for the script in the kernel source setlocalversion that tacks on the + to the end of it.

Guest # rm -rf /*
Posted

It's seems amazing:

http://android.modaco.com/topic/323760-stackbladroid-v02-froyo-rom-for-zte-blade-aka-orange-san-francisco/page__p__1483557#entry1483557

I followed instructions here:

http://armin762.wordpress.com/2010/05/24/nvidia-tegra2-getting-wifiatheros-6002-working/

I executed this:

sed -i -e 's:/system/lib/hw/wlan/:/system/wifi/:g' os/linux/ar6000_drv.c

and copied autoconf.h from my kernel source code directory.

Compilation was successful .But, ar6000.ko didn't work.

There's no proper source, and how to fix the wifi ? Does it mean that I can't compile and use my own kernel?

Guest # rm -rf /*
Posted

I found this in dmesg

<4>[01-18 14:14:50.459975] [690: busybox]ar6000: please compile with -fno-common

so I modified the makefile and added -fno-common to the end of CFLAGS

but the compiled driver still refuse to load , I still find "ar6000: please compile with -fno-common" in dmesg .

What does it meaning ? The source from tegra didn't work at all ?

Guest # rm -rf /*
Posted (edited)

I found modifying Makefile didn't affect anything

so I replaced the arm-none-eabi-gcc with a script (original file renamed to arm-none-eabi-gcct):

#!/bin/sh

/home/chen/arm-2011.03/bin/arm-none-eabi-gcct -fno-common $@

Now the ar6000.ko could be loaded, but still not work

something in my dmesg:

<4>[01-18 15:28:35.289999] [290: WifiService]select 480 (d.process.media), adj 9, size 4868, to kill

<4>[01-18 15:28:35.289999] [290: WifiService]select 642 (.cooliris.media), adj 11, size 4697, to kill

<4>[01-18 15:28:35.289999] [290: WifiService]select 672 (android.vending), adj 12, size 5313, to kill

<4>[01-18 15:28:35.289999] [290: WifiService]send sigkill to 672 (android.vending), adj 12, size 5313

<4>[01-18 15:28:35.460000] [290: WifiService]Normal WIFI mode.

<4>[01-18 15:28:35.470000] [290: WifiService]ar6000_pwr_on --enter

<4>[01-18 15:28:35.470000] [290: WifiService]ar6000_pwr_on --enter

<4>[01-18 15:28:35.470000] [290: WifiService]ar6000_readwrite_file: file /sys/devices/platform/msm_sdcc.2/detect_change filp_open error

<2>[01-18 15:28:37.080000] [4: events/0]TAOS: als_interrupt =20

<2>[01-18 15:28:37.590000] [4: events/0]TAOS: als_interrupt =15

<2>[01-18 15:28:39.760000] [4: events/0]TAOS: als_interrupt =10

<2>[01-18 15:28:54.939999] [4: events/0]TAOS: als_interrupt =5

<2>[01-18 15:28:55.670000] [4: events/0]TAOS: als_interrupt =10

<4>[01-18 15:29:04.549999] [290: WifiService]ar6000_pwr_down --enter

<4>[01-18 15:29:04.549999] [290: WifiService]ar6000_pwr_down --enter

<4>[01-18 15:29:04.549999] [290: WifiService]ar6000_readwrite_file: file /sys/devices/platform/msm_sdcc.2/detect_change filp_open error

<4>[01-18 15:29:04.549999] [290: WifiService]ar6000_cleanup: success

<2>[01-18 15:29:06.830001] [4: events/0]TAOS: als_interrupt =5

I tried cat the file and got this error:

localhost msm_sdcc.2 # cat /sys/devices/platform/msm_sdcc.2/detect_change

cat: read error: I/O error

Edited by # rm -rf /*
Guest # rm -rf /*
Posted

The site seemed to down a few minutes ago...

What happened!?

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.