Enabling WiFi on android-x86

25,691 views
Skip to first unread message

saeen

unread,
Jul 22, 2009, 7:34:55 AM7/22/09
to Android-x86
Hi,

Can anyone help me with enabling WiFi on the ported x86. A brief how-
to would help me a lot.

Thanks

beyounn

unread,
Jul 22, 2009, 5:21:54 PM7/22/09
to Android-x86
Are you using our release or not? I need to know the code base and the
targeted platform you are using so that we can help

saeen

unread,
Jul 23, 2009, 2:26:45 AM7/23/09
to Android-x86
Sorry for the incomplete information. I am following the instructions
at the page

http://code.google.com/p/patch-hosting-for-android-x86-support/wiki/BuildAndroidForX86Platforms

I am running from a live-USB. I have read about using atk5k and atk9k,
but dont know how to use it. Kindly help.

Thanks :)

beyounn

unread,
Jul 23, 2009, 12:01:02 PM7/23/09
to Android-x86
First, please join the group, otherwise I have to approve your message
everytime.

The patch hosting project is stopped. Now, we moved to android-x86.
You should check out and build from the android-x86 git tree. So that
we can have a common baseline to discuss problems. I'm going to test
the wifi patch today. If it work, then I will commit the code so you
can get it.
Yi


On Jul 22, 11:26 pm, saeen <abdul.a...@gmail.com> wrote:
> Sorry for the incomplete information. I am following the instructions
> at the page
>
> http://code.google.com/p/patch-hosting-for-android-x86-support/wiki/B...

beyounn

unread,
Jul 24, 2009, 8:24:43 PM7/24/09
to Android-x86
I have created the first patch release for wifi support on android-
x86. I have tested the patch with both ath5k and ath9k. They both work
fine. I can enabled/disable wifi from the gui. The support for the
devices that need download firmware is still not enabled. I will
enable it after I test it with a right device. You can find the patch
in http://android-x86.tarot.com.tw/staging_patch/.
How it works?
Well,if everything works as expected then you don't really need to do
anything if you have a EeePC with ath5k and ath9k (the other platforms
and (none firmware) devices should work too). But, normally, the
things are not happen that way, so I post how the wifi working on
android-x86 here. So that you can also debug the problems you found:
1. init script installs WIFI driver for the wifi devices with auto
detection
2. init script updates the init.rc to export correct driver file path
to wlan.modpath system property. Init script also updates init.rc to
make wpa_supplicant and dhcpcd to work with right wifi device.
3. when user enable wifi from ui, the check_driver_loaded function in
wifi.c will be called, and it will check whether a wifi driver is
loaded, what is the wifi network device interface and what is the
module name of the wifi device. If a valid wifi driver is detect (I
don't support more than one wifi device at the moment), then the
system properties wlan.interface, wlan.modname and wlan.driver.status
will be set to correct value, wpa_supplicant will be called to init
wifi device and initiate wifi scan.
4.when user disables the wifi from gui, the wifi_unload_driver
function in wifi.c will be called. And it uses wlan.modname to remove
the module. It will also update the driver status
5. if user re-enables the wifi from gui again, then wifi_load_driver
function will be called again. At this time, check_driver_loaded in
wifi function will not be able to find any installed wifi module from
the sysfs. So the module installation process will be triggered. It
looks up wlan.modpath system property to find right driver to install.
6. after the new driver is installed, the wlan.modname, wlan.interface
and wlan.driver.status will be updated and wpa_supplicant will be
called to init wifi device and initiate wifi scan.

I also changed code in the frameworks/base directories. I'm not the
original creator of that code, the original code change is made by a
guy whose name I can not remember (maybe he is called Michael or
something). If you are the author and happen to read this note,
please send me an e-mail so that I can add you to the credit list


Thanks
Yi

saeen

unread,
Jul 24, 2009, 5:50:38 AM7/24/09
to Android-x86
I think i am already a member. Can you check that plz.

saeen (you)
Member - joined Jul 22

Abdul Aziz

beyounn

unread,
Jul 26, 2009, 12:46:07 AM7/26/09
to Android-x86
No. you are not. I have to approve your post every time you post a
message.

saeen

unread,
Aug 10, 2009, 7:20:41 AM8/10/09
to Android-x86
Thanks for the earlier help Yi, but unfortuantely it didnt work. I
have applied the patch, and also used the newer v0.9. Both resulting
into the same thing. I will try to debug and let you know thw exact
cause. Meanwhile, please tell me if i need some additional settings
for the Ethernet or it should be just plug and play.

Thanks

On Jul 25, 5:24 am, beyounn <beyo...@gmail.com> wrote:
> I have created the first patch release forwifisupport on android-
> x86. I have tested the patch with both ath5k and ath9k. They both work
> fine.  I can enabled/disablewififrom the gui. The support for the
> devices that need download firmware is still not enabled. I will
> enable it after I test it with a right device. You can find the patch
> inhttp://android-x86.tarot.com.tw/staging_patch/.
> How it works?
> Well,if everything works as expected then you don't really need to do
> anything if you have a EeePC with ath5k and ath9k (the other platforms
> and (none firmware) devices should work too). But, normally, the
> things are not happen that way, so I post how thewifiworking on
> android-x86 here. So that you can also debug the problems you found:
> 1. init script installsWIFIdriver for thewifidevices with auto
> detection
> 2. init script updates the init.rc to export correct driver file path
> to wlan.modpath system property. Init script also updates init.rc to
> make wpa_supplicant and dhcpcd to work with rightwifidevice.
> 3. when user enablewififrom ui, the check_driver_loaded function inwifi.c will be called, and it will check whether awifidriver is
> loaded, what is thewifinetwork device interface and what is the
> module name of thewifidevice. If a validwifidriver is detect (I
> don't support more than onewifidevice at the moment), then the
> system properties wlan.interface, wlan.modname and wlan.driver.status
> will be set to correct value, wpa_supplicant will be called to initwifidevice and initiatewifiscan.
> 4.when user disables thewififrom gui, the wifi_unload_driver
> function inwifi.c will be called. And it uses wlan.modname to remove
> the module. It will also update the driver status
> 5. if user re-enables thewififrom gui again, then wifi_load_driver
> function will be called again. At this time, check_driver_loaded inwififunction will not be able to find any installedwifimodule from
> the sysfs. So the module installation process will be triggered. It
> looks up wlan.modpath system property to find right driver to install.
> 6. after the new driver is installed, the wlan.modname, wlan.interface
> and wlan.driver.status will be updated and wpa_supplicant will be
> called to initwifidevice and initiatewifiscan.
>
> I also changed code in the frameworks/base directories. I'm not the
> original creator of that code, the original code change is made by a
> guy whose name I can not remember (maybe he is called Michael or
> something). If you are the author and happen to read this note,
> please  send me an e-mail so that I can add you to the credit list
>
> Thanks
> Yi
>
> On Jul 23, 9:01 am, beyounn <beyo...@gmail.com> wrote:
>
> > First, please join the group, otherwise I have to approve your message
> > everytime.
>
> > The patch hosting project is stopped. Now, we moved to android-x86.
> > You should check out and build from the android-x86 git tree. So that
> > we can have a common baseline to discuss problems. I'm going to test
> > thewifipatch today. If it work, then I will commit the code so you
> > can get it.
> > Yi
>
> > On Jul 22, 11:26 pm, saeen <abdul.a...@gmail.com> wrote:
>
> > > Sorry for the incomplete information. I am following the instructions
> > > at the page
>
> > >http://code.google.com/p/patch-hosting-for-android-x86-support/wiki/B...
>
> > > I am running from a live-USB. I have read about using atk5k and atk9k,
> > > but dont know how to use it. Kindly help.
>
> > > Thanks :)
>
> > > On Jul 23, 2:21 am, beyounn <beyo...@gmail.com> wrote:
>
> > > > Are you using our release or not? I need to know the code base and the
> > > > targeted platform you are using so that we can help
>
> > > > On Jul 22, 4:34 am, saeen <abdul.a...@gmail.com> wrote:
>
> > > > > Hi,
>
> > > > > Can anyone help me with enablingWiFion the ported x86. A brief how-

Yi Sun

unread,
Aug 10, 2009, 12:25:37 PM8/10/09
to andro...@googlegroups.com
Before you tell me nothing works, could you tell me what kind of device (pc and wifi) are you using? We have tested the ath5k,ath9k and ipw2x00, they all work.
The patch for the 0.9 known having bug. And you may not be able to do dhcp after your device connect to AP.  To fix it, add
setprop wlan.inteface <device name> into init.rc. You _do not_ need this for the latest build.
Yi

ashughes

unread,
Aug 13, 2009, 11:48:51 PM8/13/09
to Android-x86
Hello,

I've been working with the android-x86 stuff here and there for the
past few months on my lenovo thinkpad x61 tablet. I'm currently trying
to get wifi working on it and I know it isn't one of the drivers that
has been tested yet. It has an intel 4965 AG wireless card in it which
uses the "iwlagn" driver (which depends on iwlcore, dfg80211, and
mac80211). I haven't really done anything kernel stuff before this, so
it is all new to me...though I'm trying to learn and figure this type
of stuff out.

I am using the android-x86 repository. I loaded the android-
x86_defconfig in make menuconfig and enabled iwlagn, iwlwifi, iwlcore
as modules (and associated features). I then recompiled using my new
kernel configuration (make -j2 iso_img TARGET_PRODUCT=eeepc
TARGET_PREBUILT_KERNEL=android-x86_iwlagn) expecting a new folder to
appear in out/target/eeepc/system/lib/modules/2.6.29-android-x86/
kernel/drivers/net/wireless called iwlwifi with the drivers in it, but
no such luck. Nothing appears to have changed at all due to my new
kernel

Is there more that I need to do get my wireless drivers installed to
that path? I tried looking through the files in vendor to see if the
four drivers you guys have working were mentioned specifically
anywhere that I might just have to add mine to the list, but I
couldn't find anything. I don't understand why just enabling them in
the kernel configuration did not add them. Thanks in advance for any
help.

Andrew

On Aug 10, 9:25 am, Yi Sun <beyo...@gmail.com> wrote:
> Before you tell me nothing works, could you tell me what kind of device (pc
> and wifi) are you using? We have tested the ath5k,ath9k and ipw2x00, they
> all work.
> The patch for the 0.9 known having bug. And you may not be able to do dhcp
> after your device connect to AP.  To fix it, add
> setprop wlan.inteface <device name> into init.rc. You _do not_ need this for
> the latest build.
> Yi
>

Yi Sun

unread,
Aug 14, 2009, 12:01:10 AM8/14/09
to andro...@googlegroups.com
Andrew,
To trigger the rebuilding of kernel, you can just edit android-x86_defconfig directly by change the corresponding entries to "Y" and then rebuild the iso_img.

If you still see the problem, please send me the .config file.
Yi
--
Android-x86
http://code.google.com/p/android-x86/

ashughes

unread,
Aug 14, 2009, 1:45:12 AM8/14/09
to Android-x86
I don't think the problem is that it didn't rebuild the kernel. I'm
pretty sure it used my new kernel configuration file (the first time I
ran it, it told me I need to go into kernel and run make mrproper to
delete the previous kernel configurations). I will try just editing
the android-x86_defconfig directly instead of using my file generated
from make menuconfig (when I diff my configuration and the defconfig
there are more changes than just the drivers I enabled, though not
many). Is there a way to attach files in the google group? or how
should I send you the config file?

Andrew

Yi Sun

unread,
Aug 14, 2009, 2:28:35 AM8/14/09
to andro...@googlegroups.com
On Thu, Aug 13, 2009 at 10:45 PM, ashughes <ashu...@gmail.com> wrote:

I don't think the problem is that it didn't rebuild the kernel. I'm
pretty sure it used my new kernel configuration file (the first time I
ran it, it told me I need to go into kernel and run make mrproper to
delete the previous kernel configurations). I will try just editing
the android-x86_defconfig directly instead of using my file generated
from make menuconfig (when I diff my configuration and the defconfig
there are more changes than just the drivers I enabled, though not
many). Is there a way to attach files in the google group? or how
should I send you the config file?
Change the only part you should change and ignore the other parts. Based on my experience, you should be ok after that. You can also added showcommand=1 to the build command line so that we can see all the compile steps
Use an e-mail client to send the e-mail to the group and attach you .config



--
Android-x86
http://code.google.com/p/android-x86/

ashughes

unread,
Aug 14, 2009, 3:19:45 AM8/14/09
to Android-x86
Okay so it did work to just to modify the android-x86_defconfig. I
just set iwlcore=m and iwlagn=m and it compiled and added the iwlwifi
folder with iwlagn.ko and iwlcore.ko in it. I don't quite understand
why it didn't work before, perhaps it was those other settings that
make menuconfig seemed to change (btw, for anyone following along, in
my first post I noticed there is a typo: "TARGET_PREBUILT_KERNEL"
should be "TARGET_KERNEL_CONFIG"). Now I need to figure out how to get
these modules to actually load/work on my thinkpad. I've been trying
to look at your wifi patches to get a clue how you get the current
ones to work. Any suggestions? Thanks a lot for your help so far.

Andrew

On Aug 13, 11:28 pm, Yi Sun <beyo...@gmail.com> wrote:

Yi Sun

unread,
Aug 14, 2009, 3:24:19 AM8/14/09
to andro...@googlegroups.com
look at build/core/kernel.mk for the compiling stuff

And forget my patches in the stagging directory. The latest code is in the tree already. You don't need to patch anything.
To understand how the system load drivers in the first place, you need to look into the files in bootloader/newinstaller/initrd/scripts
--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 4:43:43 AM8/14/09
to andro...@googlegroups.com
Thanks a lot for all your help! I added a hardware profile for my lenovo laptop to the 0-auto-detect script and set the corresponding lan and wifi drivers and they loaded on boot!! Now the android gui for turning on the wifi still did not work...and I checked netcfg and it only lists lo and eth0 (i'm assuming a wlan0 should be there but I could be wrong). But I was successfully able to plug in an ethernet cable and run "netcfg eth0 dhcp". Any suggestions of where I should look to get wlan0 to show up (or somewhere else I should look)?

On a side note, I'm not sure if this is something that happens on the eeepcs, but on my thinkpad when I type in the virtual console, everything I type gets sent to the gui as well...so I usually have to set the gui on some kind of static page so that I don't do a bunch of things I don't mean to when typing in the terminal. Is this a problem that's being fixed or am I the only one experiencing this?

Thanks!

Andrew

m1k3l3

unread,
Aug 14, 2009, 6:08:24 AM8/14/09
to Android-x86
> On a side note, I'm not sure if this is something that happens on the
> eeepcs, but on my thinkpad when I type in the virtual console, everything I
> type gets sent to the gui as well...so I usually have to set the gui on some
> kind of static page so that I don't do a bunch of things I don't mean to
> when typing in the terminal. Is this a problem that's being fixed or am I
> the only one experiencing this?

i've this problem too, both with real hardware (dell d610) and in
vmware/virtualbox. very horrible... if you don't open some... all you
type in shell is searched in google!

For the wifi... try to load manually the module.

Yi Sun

unread,
Aug 14, 2009, 11:51:41 AM8/14/09
to andro...@googlegroups.com
M1k3l3,
Could you let us know how to use terminal app to solve this issue?


Yi
--
Android-x86
http://code.google.com/p/android-x86/

Yi Sun

unread,
Aug 14, 2009, 11:55:22 AM8/14/09
to andro...@googlegroups.com
On Fri, Aug 14, 2009 at 1:43 AM, Andrew Hughes <ashu...@gmail.com> wrote:
Thanks a lot for all your help! I added a hardware profile for my lenovo laptop to the 0-auto-detect script and set the corresponding lan and wifi drivers and they loaded on boot!! Now the android gui for turning on the wifi still did not work...and I checked netcfg and it only lists lo and eth0 (i'm assuming a wlan0 should be there but I could be wrong). But I was successfully able to plug in an ethernet cable and run "netcfg eth0 dhcp". Any suggestions of where I should look to get wlan0 to show up (or somewhere else I should look)?
Before you go that far, could you do a lsmod to see if your module is loaded?.  Also, this module requires a firmware, have your installed it. If you did not, see vendor/asus/eeepc/AndroidBoard.mk about how to build it in. And you can find the firmware from http://packages.debian.org/firmware-iwlwifi.

I should really write a wiki page for this. BTW-- you may not need to add you device type to auto-detect script. For the most time, auto-detect should be able to detect your devices and load the moudle. Could you try it? I really want to know whether it works well or not.



--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 1:38:04 PM8/14/09
to andro...@googlegroups.com
Yes, lsmod shows the iwlagn and iwlcore modules as loaded (along the the e1000e module for my lan card). I will look into the firmware next as you suggested.

As for the auto-detect script, the way I understand it is in the detect_hardware() routine it checks for the appropriate vendor and sets the corresponding module variables to what they need to be for that computer. So, since there is no check for LENOVO currently, I added that to detect_hardware() as well as the corresponding get_lenovo_info() that sets the FB0DEV, LANDEV, and WIFDEV to the correct drivers (i915, e1000e, and iwlagn respectively). This seemed to work great and I don't see how it would detect that those specific modules need to be loaded any other way (I thought that was the point of the script, to tell it what modules should be used based on what hardware is detected...)

Andrew

Yi Sun

unread,
Aug 14, 2009, 1:44:46 PM8/14/09
to andro...@googlegroups.com
On Fri, Aug 14, 2009 at 10:38 AM, Andrew Hughes <ashu...@gmail.com> wrote:
Yes, lsmod shows the iwlagn and iwlcore modules as loaded (along the the e1000e module for my lan card). I will look into the firmware next as you suggested.

As for the auto-detect script, the way I understand it is in the detect_hardware() routine it checks for the appropriate vendor and sets the corresponding module variables to what they need to be for that computer. So, since there is no check for LENOVO currently, I added that to detect_hardware() as well as the corresponding get_lenovo_info() that sets the FB0DEV, LANDEV, and WIFDEV to the correct drivers (i915, e1000e, and iwlagn respectively). This seemed to work great and I don't see how it would detect that those specific modules need to be loaded any other way (I thought that was the point of the script, to tell it what modules should be used based on what hardware is detected...)
The point for the script is that user should not do any change on the script in the normal cases. The script should be able to detect all the hardwares based on the sysfs on user's device and install the modules for them. The reason we have other path for the specific devices is because we are seeing some devices failed with the auto_detect path. Take a look on the auto_detect part in the script. I hope that your driver should be installed by auto_detect correctly. So that you don't need to change anything at all.



--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 4:05:48 PM8/14/09
to andro...@googlegroups.com
Okay, I understand now how the script performs autodetection. The script does not correctly detect and load the iwlagn module, though, because the only thing in modules.alias having to do with it is "alias iwl4965 iwlagn" instead of alias pci:v00008086d0000... which is what it is looking for. I see now though that the e1000e driver for the lan card is correctly autodetected and loaded :) It seems though that if I create a manual entry for it in detect_hardware(), it doesn't do the auto_detect() is that right? I think this because when I put in my lenovo entry and set the WIFDEV=iwlagn, I didn't set the LANDEV because it autodetects it correctly, but then it didn't load it on boot up...

Also I added the firmware to the folder and studied AndroidBoard.mk. The firmwares are getting added to the shared library, but the wifi still does not work and no wlan0 is listed in netcfg. Any more suggestions?

Thanks,
Andrew

Yi Sun

unread,
Aug 14, 2009, 4:13:11 PM8/14/09
to andro...@googlegroups.com
On Fri, Aug 14, 2009 at 1:05 PM, Andrew Hughes <ashu...@gmail.com> wrote:
Okay, I understand now how the script performs autodetection. The script does not correctly detect and load the iwlagn module, though, because the only thing in modules.alias having to do with it is "alias iwl4965 iwlagn" instead of alias pci:v00008086d0000... which is what it is looking for. I see now though that the e1000e driver for the lan card is correctly autodetected and loaded :) It seems though that if I create a manual entry for it in detect_hardware(), it doesn't do the auto_detect() is that right? I think this because when I put in my lenovo entry and set the WIFDEV=iwlagn, I didn't set the LANDEV because it autodetects it correctly, but then it didn't load it on boot up...
Ok, in that case, you will need to add the detect function for your platform. I will take with CW to see how we can fix this.


Also I added the firmware to the folder and studied AndroidBoard.mk. The firmwares are getting added to the shared library, but the wifi still does not work and no wlan0 is listed in netcfg. Any more suggestions?
Could you tell how did you change the AndroidBoard.mk?
Can you also do logcat and dmesg to see if there are any errors?
 



--
Android-x86
http://code.google.com/p/android-x86/

Yi Sun

unread,
Aug 14, 2009, 4:17:36 PM8/14/09
to andro...@googlegroups.com
On Fri, Aug 14, 2009 at 1:13 PM, Yi Sun <bey...@gmail.com> wrote:


On Fri, Aug 14, 2009 at 1:05 PM, Andrew Hughes <ashu...@gmail.com> wrote:
Okay, I understand now how the script performs autodetection. The script does not correctly detect and load the iwlagn module, though, because the only thing in modules.alias having to do with it is "alias iwl4965 iwlagn" instead of alias pci:v00008086d0000... which is what it is looking for. I see now though that the e1000e driver for the lan card is correctly autodetected and loaded :) It seems though that if I create a manual entry for it in detect_hardware(), it doesn't do the auto_detect() is that right? I think this because when I put in my lenovo entry and set the WIFDEV=iwlagn, I didn't set the LANDEV because it autodetects it correctly, but then it didn't load it on boot up...
Ok, in that case, you will need to add the detect function for your platform. I will take with CW to see how we can fix this.


Also I added the firmware to the folder and studied AndroidBoard.mk. The firmwares are getting added to the shared library, but the wifi still does not work and no wlan0 is listed in netcfg. Any more suggestions?
Could you tell how did you change the AndroidBoard.mk?
Can you also do logcat and dmesg to see if there are any errors?

BTW-- I assume that you have turned on wifi from the ui, right?



--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 4:27:06 PM8/14/09
to andro...@googlegroups.com
Yes, I have tried turning on the wifi from the ui. As for AndroidBoard.mk, I didn't change anything, I thought the two lines about ALL_FIRMWARES took care of everything. The way I understood it, I added the firmware files to the firmwares folder, and the foreach in the AndroidBoard.mk goes through each of the firmware files and adds it to a shared library. Is there more that I need to do to reference the firmwares to my wireless card or anything?

I will do a logcat and dmesg and see if I notice anything.

Andrew

Yi Sun

unread,
Aug 14, 2009, 4:29:45 PM8/14/09
to andro...@googlegroups.com
On Fri, Aug 14, 2009 at 1:27 PM, Andrew Hughes <ashu...@gmail.com> wrote:
Yes, I have tried turning on the wifi from the ui. As for AndroidBoard.mk, I didn't change anything, I thought the two lines about ALL_FIRMWARES took care of everything. The way I understood it, I added the firmware files to the firmwares folder, and the foreach in the AndroidBoard.mk goes through each of the firmware files and adds it to a shared library. Is there more that I need to do to reference the firmwares to my wireless card or anything?
You are correct, even though it does not really create a shared library but copy to /system/lib/firmware directory

I will do a logcat and dmesg and see if I notice anything.

One more thing, could you also send output of ls /sys/class/net 



--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 4:51:06 PM8/14/09
to andro...@googlegroups.com
/sys/class/net:
eth0 lo

I've attached a copy of the logcat output. The errors I noticed in it are (these are obviously when I'm clicking on on the enable wifi in the gui):

E/WifiService( 2338): Failed to load Wi-Fi driver.
D/SettingsWifiEnabler( 2499): Received wifi state changed from Disabled to Enabling
D/SettingsWifiEnabler( 2499): Received wifi state changed from Enabling to Unknown
E/WifiHW  ( 2338): Unable to open connection to supplicant on "sta": No such file or directory
I/wpa_supplicant( 2510): CTRL-EVENT-STATE-CHANGE id=-1 state=0
E/wpa_supplicant( 2510): Failed to disable WPA in the driver.
D/SettingsWifiEnabler( 2499): Received wifi state changed from Enabling to Enabled
D/WifiService( 2338): ACTION_BATTERY_CHANGED pluggedType: 0
E/WifiHW  ( 2338): Supplicant not running, cannot connect
E/SettingsWifiLayer( 2499): Unable to scan for networks
E/WifiHW  ( 2338): Supplicant not running, cannot connect
E/SettingsWifiLayer( 2499): Unable to scan for networks
E/WifiHW  ( 2338): Supplicant not running, cannot connect
V/WifiStateTracker( 2338): Supplicant died unexpectedly
E/WifiService( 2338): Failed to unload Wi-Fi driver.
D/SettingsWifiEnabler( 2499): Received wifi state changed from Enabled to Disabling
D/SettingsWifiEnabler( 2499): Received wifi state changed from Disabling to Unknown
D/SettingsWifiEnabler( 2499): Received wifi state changed from Disabling to Unknown

I didn't notice anything interesting in the dmesg output, but I attached it as well.

Andrew
logcat.log
dmesg.log

Yi Sun

unread,
Aug 14, 2009, 5:01:17 PM8/14/09
to andro...@googlegroups.com
I'm not sure if your driver is installed correctly. If a wifi driver is installed correctly, there should be a device node in /sys/class/net/, for example, my ath5k shows /sys/class/net/wlan0. Since my code is looking for this device from the sysfs and can not find it, it will assume the driver is not installed.

Do you have a normal Linux with the same device? So that we can check to see if the driver is installed correctly.
Yi
--
Android-x86
http://code.google.com/p/android-x86/

Yi Sun

unread,
Aug 14, 2009, 5:06:04 PM8/14/09
to andro...@googlegroups.com
BTW- could you also send me lsmod output?
--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 5:06:27 PM8/14/09
to andro...@googlegroups.com
Sure do. I've got ubuntu running on the same laptop. The only difference I've noticed is that there is an additional driver "mac80211" that is is loaded in ubuntu (i don't see anything else that has to do with the card when I do an lsmod in ubuntu).

Andrew

Andrew Hughes

unread,
Aug 14, 2009, 5:06:57 PM8/14/09
to andro...@googlegroups.com
lsmod output in android or in ubuntu?

Yi Sun

unread,
Aug 14, 2009, 5:09:26 PM8/14/09
to andro...@googlegroups.com
android, basically, I'm looking following drivers, they are required by your device:
iwlcore.ko
led-class.ko
mac80211.ko
cfg80211.ko

Andrew Hughes

unread,
Aug 14, 2009, 5:16:23 PM8/14/09
to andro...@googlegroups.com
Right, okay, so I have iwlcore and iwlagn, but not the other three. I wasn't sure if those were required or not...I tried getting the mac80211 module to install but I couldn't find anything else to enable in the kernel configuration. The only things that had to do with mac80211 that were not enabled in the kernel config had to do with debugging, so I haven't enabled those. I did notice that there's mac80211 source and compiled objects in the out/ folder, however still no module, so I didn't get that.

Yi Sun

unread,
Aug 14, 2009, 5:24:17 PM8/14/09
to andro...@googlegroups.com
I just checked that the *80211 are staticlly linked. So you should be ok. In the Ubuntu, are you see ing /sys/class/net/wlan0 is created for your device?
--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 5:39:34 PM8/14/09
to andro...@googlegroups.com
Yes, in ubuntu /sys/class/net shows:
eth0  lo  pan0  wlan0  wmaster0

Yi Sun

unread,
Aug 14, 2009, 5:43:30 PM8/14/09
to andro...@googlegroups.com
Ok, you have to find out why the driver is not loaded correctly. What you can do is to add some printk in the module_init function of your driver and start from there to debug it.
--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 8:10:22 PM8/14/09
to andro...@googlegroups.com
Okay, so I started adding printk's and in the process noticed that there was an ifdef for CONFIG_IWL4965 and then some device identifying code. I noticed there also are a lot of ifdef's for CONFIG_IWLWIFI_DEBUG so I enabled both of those config options in the kernel config along with a few others I found in the source. After recompiling it seems that the driver is being fully loaded now! There is a wlan0 in /sys/class/net ! When I start the gui however the bootgraphic just sits there and never enters the gui. I checked the logcat output and it's stuck at doing something with DHCP. I coudn't figure out what to kill to just let it finish the loading the gui.

Since now I'm allowing the iwl4965 device code to be included, I thought that the auto-detection might work. I checked in the modules.alias and there is now the correct pci device listed next to the iwlagn driver, so I took out my lenovo device code in the script and I'm recompiling to allow it to do strictly autodetection.

Andrew Hughes

unread,
Aug 14, 2009, 8:20:12 PM8/14/09
to andro...@googlegroups.com
Works! I took out some extra kernal configurations that I had added from looking inside the source code (I just left the ones having to do with the leds and the 4965). As I said I also took out my specific lenovo detection, so the auto_detect works great! Thanks!

Andrew

Yi Sun

unread,
Aug 14, 2009, 8:43:27 PM8/14/09
to andro...@googlegroups.com
It is really nice to see it works for you. Thanks for try out this. I'm currently working on the support for the ethernet device as well. After that, we will go even further to create new gui so that it fit into netbook better.
Yi
PS: For sure I will need to write some sort of wifi how to :-)
--
Android-x86
http://code.google.com/p/android-x86/

Yi Sun

unread,
Aug 14, 2009, 8:47:21 PM8/14/09
to andro...@googlegroups.com
Andrew,
Could you post your hardware spec? So that we can post it on the project page?
Thanks
Yi
--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 9:32:42 PM8/14/09
to andro...@googlegroups.com
IBM Lenovo ThinkPad x61 Tablet:
Intel Mobile GM965/GL960 Integrated Graphics
Intel 82566MM Gigabit Ethernet
Intel 82801H (ICH8 Family) HD Audio Controller (I haven't tried playing any audio yet...)
Intel Pro/Wireless 4965 AG
Ricoh R5C822 SD Adapter (haven't tried)

Is there anything else you would like to know?

My goal is actually to get the Wacom tablet interface in my laptop screen working in android. I was trying to get the wifi working as a way to kind of start learning about android kernel and module stuff and how to get drivers to work (and it's also nice to have wifi).

Would you like me to submit the changes I've made somehow (commiting to the git repo or creating patches and sending them to you or something)? It all boiled down to a few changed/added lines in android-x86_defconfig and a few added files to vendor/asus/eeepc/firmware.

Thanks again for your help!
Andrew

Yi Sun

unread,
Aug 14, 2009, 11:02:51 PM8/14/09
to andro...@googlegroups.com
Andrew,
Thank you for your info. It would be very nice if you can send us a patch. We will integrated it under your name
Thanks
Yi
--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 11:15:37 PM8/14/09
to andro...@googlegroups.com
Cool, thanks. What's the correct way to create a patch? Can I just do "diff -aur [file1] [file2]"? Also, should I include only the parts that I know work for my laptop? or should I include all the cards supported by the iwlwifi driver(s) (so the kernel config options for the 3945 and 5000 cards and associated firmwares as well)?

Andrew

Yi Sun

unread,
Aug 14, 2009, 11:33:49 PM8/14/09
to andro...@googlegroups.com
The right way to do this is:
1. cd kernel
2. git add arch/x86/config/android-x86_defconfig
3. git commit
4. add some logs when asked
5. git format-patch x86/master
 or  a simpler way but not the good way to do it.
git diff arch/x86/config/android-x86_defconfig | tee <patch name>

Please only enable the part you know it works. Please also send us the firmware you are using.

Thanks
Yi
--
Android-x86
http://code.google.com/p/android-x86/

Yi Sun

unread,
Aug 14, 2009, 11:36:57 PM8/14/09
to andro...@googlegroups.com
BTW-- If you can , please join our IRC channel. Wifi is a very important piece for us. You maybe able to help others to solve similar issues.
--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 14, 2009, 11:56:49 PM8/14/09
to andro...@googlegroups.com
I got to step 5 of your instructions, and it doesn't show an x86/master. Should I choose x86/android-2.6.29? Also am I still going to be emailing you a patch, or does this actually commit it to the android-x86 repository? And should I do the same steps for the firmware (in terms of adding the files using git and committing) or should I just email them?

Thanks,
Andrew

Yi Sun

unread,
Aug 15, 2009, 12:00:30 AM8/15/09
to andro...@googlegroups.com
My bad, yes for kernel it is x86/android-2.6.29
After step 5, you will see a file generated in current directory. You can just send me the file. For the firmware, you can send me the firmware file and I have added
Thanks
Yi
--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 15, 2009, 12:25:39 AM8/15/09
to andro...@googlegroups.com
That's pretty neat. Okay, everything's attached.

Thanks,
Andrew
0001-Added-iwlwifi-modules-to-kernel-config-for-use-with.patch
iwlwifi-4965-1.ucode
iwlwifi-4965-2.ucode
LICENSE.iwlwifi

Yi Sun

unread,
Aug 15, 2009, 12:37:20 AM8/15/09
to andro...@googlegroups.com

Thanks Andrew,
I will push it in Monday morning
Yi

On Aug 14, 2009 9:26 PM, "Andrew Hughes" <ashu...@gmail.com> wrote:

That's pretty neat. Okay, everything's attached.

Thanks,
Andrew

On Fri, Aug 14, 2009 at 9:00 PM, Yi Sun <bey...@gmail.com> wrote: > > My bad, yes for kernel it i...

阿偉

unread,
Aug 15, 2009, 4:52:17 AM8/15/09
to Android-x86
A nice discussion and glad to see it works.

By the way, I plan to enable most drivers(wifi, sound, ethernet, usb)
in the kernel config
in the next release so that more devices can be detected.
But it will silently increase the image size 3-5MB, and increase the
compiling time.

How do you think about it?

Yi Sun

unread,
Aug 15, 2009, 1:24:44 PM8/15/09
to andro...@googlegroups.com
Our image size is around 180MB. I think another 5MB should be ok.

Yi
--
Android-x86
http://code.google.com/p/android-x86/

m1k3l3

unread,
Aug 16, 2009, 5:31:11 AM8/16/09
to Android-x86
the terminal app is unusable for root command/actions/things.

I have to use the tty, that hang up or restart the gui, over that all
typed is searched in gui.

offtopic.... how to have more terminal in normal mode?? Also... have
you noticed that in busybox reboot command does not work???

On Aug 14, 5:51 pm, Yi Sun <beyo...@gmail.com> wrote:
> M1k3l3,
> Could you let us know how to use terminal app to solve this issue?
>
> Yi
>
>
>
> On Fri, Aug 14, 2009 at 3:08 AM, m1k3l3 <totaromichel...@gmail.com> wrote:
>
> > > On a side note, I'm not sure if this is something that happens on the
> > > eeepcs, but on my thinkpad when I type in the virtual console, everything
> > I
> > > type gets sent to the gui as well...so I usually have to set the gui on
> > some
> > > kind of static page so that I don't do a bunch of things I don't mean to
> > > when typing in the terminal. Is this a problem that's being fixed or am I
> > > the only one experiencing this?
>
> > i've this problem too, both with real hardware (dell d610) and in
> > vmware/virtualbox. very horrible... if you don't open some... all you
> > type in shell is searched in google!
>
> > For the wifi... try to load manually the module.
>
> --
> Android-x86http://code.google.com/p/android-x86/

m1k3l3

unread,
Aug 16, 2009, 5:37:22 AM8/16/09
to Android-x86
great choise!
personally I prefer a few more mb with the various drivers, that small
and less hardware support iso.

阿偉

unread,
Aug 16, 2009, 11:38:00 AM8/16/09
to Android-x86
On 8月16日, 下午5時31分, m1k3l3 <totaromichel...@gmail.com> wrote:
> offtopic.... how to have more terminal in normal mode?? Also... have

openvt

> you noticed that in busybox reboot command does not work???

reboot -f

Yi Sun

unread,
Aug 16, 2009, 10:27:59 PM8/16/09
to andro...@googlegroups.com
oh, I thought you have already find out solutions with SU. Anyway, let me give it a try too.
THanks
Yi
--
Android-x86
http://code.google.com/p/android-x86/

Yi Sun

unread,
Aug 17, 2009, 12:24:22 PM8/17/09
to andro...@googlegroups.com
Andrew,
I have committed the firmware files for you under your name. I also added your name to the credit list. Please let me know if I made any mistakes.
BTW-- CW has enabled all the drivers (not only the wifi) to make autodetect to fully work,  I did not check in anything to the kernel configuration files
Thanks
Yi
--
Android-x86
http://code.google.com/p/android-x86/

saeen

unread,
Aug 21, 2009, 6:44:33 AM8/21/09
to Android-x86
Hi Yi,

As you can tell from the posts, i am very new to Android porting and
hence incomplete information, which i am sorry about. I was following
the subsequent threads closely and tried the steps which Andrew has
outlined, but failed. I am trying to run the latest release android on
Hp netbook with BCM4321 Wifi. Following is the information from the
lsmod

uvesafb
cn
uvcvideo
videodev
pcspkr
sky2
snd_hda_codec_idt
snd_hda_intel
snd_hda_codec
snd_hwdep
snd_pcm
snd_timer
snd_page_alloc
snd_timer
intelfb
i2c_algo_bit
wmi

On Ubuntu for the same device, there is one extra module wl, According
to the little knowledge i have b43 and b43legacy drivers should work
but the auto_detect script is not catching it. In the configuration
file they are enabled and they get compiled as i can see the output
binaries. I don't know if there are any firmware or other files needed
for this device. when i do netcfg i get lo and eth0 interfaces.

Please help.



On Aug 10, 9:25 pm, Yi Sun <beyo...@gmail.com> wrote:
> Before you tell me nothing works, could you tell me what kind of device (pc
> and wifi) are you using? We have tested the ath5k,ath9k and ipw2x00, they
> all work.
> The patch for the 0.9 known having bug. And you may not be able to do dhcp
> after your device connect to AP.  To fix it, add
> setprop wlan.inteface <device name> into init.rc. You _do not_ need this for
> the latest build.
> Yi
>
> On Mon, Aug 10, 2009 at 4:20 AM, saeen <abdul.a...@gmail.com> wrote:
>
> > Thanks for the earlier help Yi, but unfortuantely it didnt work. I
> > have applied the patch, and also used the newer v0.9. Both resulting
> > into the same thing. I will try to debug and let you know thw exact
> > cause. Meanwhile, please tell me if i need some additional settings
> > for the Ethernet or it should be just plug and play.
>
> > Thanks

Yi Sun

unread,
Aug 21, 2009, 12:02:20 PM8/21/09
to andro...@googlegroups.com
Based on Debian wiki, for BCM4321, you need a non-free driver called wi. Here is what I copied from debian wifi:

Some Broadcom wireless LAN chipsets are unsupported by the reverse-engineered b43 and b43legacy drivers at this time, including:

  • BCM4312 low-power variant (PCI-ID: 14E4:4315)

  • BCM4321 (PCI-IDs: 14E4:4328, 14E4:4329)
  • BCM4322 (PCI-ID: 14E4:432B)
Support of these chipsets is possible using a driver (wl) made available by the vendor, which includes a binary-only component targeted for the x86 or x86-64 architecture.

You need to find a wl driver binary for 2.6.29
--
Android-x86
http://code.google.com/p/android-x86/

Andrew Hughes

unread,
Aug 21, 2009, 1:11:43 PM8/21/09
to andro...@googlegroups.com
I've been away a few days so I was just able to do a repo sync and everything seems to work great :) Thanks Yi.

I do have some questions about repo though. Is there a good resource on how to use it properly? I was trying to look at google's android website for help, but I couldn't find anything too informative. I want to know the proper way to download the latest changes from the repo when I have local changes on my system. For example, this last time I did a repo sync, I had changed my android-x86_defconig, so repo sync was complaining that my version of the file was different. The only way I could figure out how to get it to stop complaining and get the latest version is to back it up and delete it (or rename it). Repo sync was also complaining about the three iwlwifi files in the firmware folder that I had (which should have been identical to the ones it wanted to download), but I had to delete those too to get it to finish syncing. So is there a proper way to merge? And to just say "get the latest file even if it overwrites the current changes"?

Also, in the latest sync, libncurses was removed, which I was using with a wacom utility to test my tablet in android. How do you use repo to pull a file from an older revision?

Thanks!
Andrew

Yi Sun

unread,
Aug 21, 2009, 1:19:30 PM8/21/09
to andro...@googlegroups.com
For the repo stuff, CW is the expert, I don't want to confuse you with my limited knowledge on it. If you can , please wait for CW to come back online, he may be able to answer you questions.

Yi
PS: CW put some comments in http://code.google.com/p/android-x86/wiki/GetSourceCode. Not sure if it helps
--
Android-x86
http://code.google.com/p/android-x86/

saeen

unread,
Aug 21, 2009, 2:37:22 PM8/21/09
to Android-x86
Yi,

the drivers for wl boradcom are available at

http://www.broadcom.com/support/802.11/linux_sta.php

Can you help me in how to integrate these drivers into android ? like
needed files (firmware?), files to be modified and where to place
these files ?

Thanx :)

On Aug 21, 9:02 pm, Yi Sun <beyo...@gmail.com> wrote:
> Based on Debian wiki, for BCM4321, you need a non-free driver called wi.
> Here is what I copied from debian wifi:
>
> Some Broadcom wireless LAN chipsets are unsupported by the
> reverse-engineered b43 <http://wiki.debian.org/bcm43xx#b43-b43legacy> and
> b43legacy <http://wiki.debian.org/bcm43xx#b43-b43legacy> drivers at this
> time, including:
>
>    -
>
>    BCM4312 low-power variant (PCI-ID: *14E4:4315*)
>    - BCM4321 (PCI-IDs: 14E4:4328, 14E4:4329)
>    - BCM4322 (PCI-ID: 14E4:432B)

beyounn

unread,
Aug 21, 2009, 2:53:07 PM8/21/09
to Android-x86
1. please join the group. I have to manually post your message
everytime
2. the shortest way to solve you problem is to patch the kernel by
using the patch in the link you mentioned. And rebuild the kernel with
wl as a module, Then you should ok.

阿偉

unread,
Aug 23, 2009, 11:51:29 PM8/23/09
to Android-x86
On Aug 22, 1:11 am, Andrew Hughes <ashug...@gmail.com> wrote:
> I've been away a few days so I was just able to do a repo sync and
> everything seems to work great :) Thanks Yi.

Oh, I'm not expert. In fact I'm still struggling with it...
Anyway, my suggestions are
* repo is just a git wrapper. You should try to get familiar with git.
* If you'd like to throw away your modifications,
just revert the files you modified or delete added files before repo
sync.
To revert a modified file, just git checkout it, like
cd kernel; git checkout arch/x86/configs/android-x86_defconfig
* If you hope to keep your modifications, I suggest you create
another branch to hold them, then switch back to the original branch
and do repo sync.

$ cd kernel
$ git branch myconfig
$ git checkout myconfig
M arch/x86/configs/android-x86_defconfig
Switched to branch 'myconfig'
$ git commit -am 'my config'
[myconfig 6501651] my config
1 files changed, 1 insertions(+), 1 deletions(-)
$ git checkout x86/android-2.6.29
$ cd ..; repo sync kernel

> Also, in the latest sync, libncurses was removed, which I was using with a
> wacom utility to test my tablet in android. How do you use repo to pull a
> file from an older revision?

Do you mean the libncursesw.so.5 in initrd.img?
It's not removed, but moved to install.img. (the install/ dir of the
tree)
You will see if when you run the installer.

Anytime you can get the old revision by git ckecout the commit id.
Use git log to see the commit history.

Yi Sun

unread,
Aug 23, 2009, 11:54:39 PM8/23/09
to andro...@googlegroups.com
Andrew,
One more question for you. What kind of the wacom device are you using? Does it come with a pen? 
Yi

On Fri, Aug 21, 2009 at 10:11 AM, Andrew Hughes <ashu...@gmail.com> wrote:

Andrew Hughes

unread,
Aug 24, 2009, 10:44:49 PM8/24/09
to andro...@googlegroups.com
Thanks for the repo advice, I'll play around with your suggestions and see what I can learn about git. I knew repo was a wrapper for git...but when I tried any git commands it told me there was no git repository...then later I realized that was because I was in the root directory of the source and I needed to be in one of the project folders.

The wacom device I'm using is the one built into my screen on my Lenovo x61 Tablet, and yes it has a pen (that's all it does, it's not a touchscreen). I've found two drivers for wacom devices in the kernel config, "wacom" and "wacom_w8001". I've been trying to figure out what the difference between the two drivers is, but I cannot. Both drivers seem to work fine with my tablet, giving me access to the tablet data in android on /dev/ttyS0 (it's a serial device). I also got a wacom utility to run called wacdump that's a part of the Wacom Linux Project that outputs all the useful information from the pen (like position, pressure, eraser being used, etc), which is what I needed libncurses for. I'm in the process of writing my own utility to parse just the position information and I want to interface it with the mouse driver (which I haven't looked at yet...). I haven't had much time lately, so it's pretty slow moving.

Andrew

Yi Sun

unread,
Aug 24, 2009, 10:51:17 PM8/24/09
to andro...@googlegroups.com
On Mon, Aug 24, 2009 at 7:44 PM, Andrew Hughes <ashu...@gmail.com> wrote:
Thanks for the repo advice, I'll play around with your suggestions and see what I can learn about git. I knew repo was a wrapper for git...but when I tried any git commands it told me there was no git repository...then later I realized that was because I was in the root directory of the source and I needed to be in one of the project folders.

The wacom device I'm using is the one built into my screen on my Lenovo x61 Tablet, and yes it has a pen (that's all it does, it's not a touchscreen). I've found two drivers for wacom devices in the kernel config, "wacom" and "wacom_w8001". I've been trying to figure out what the difference between the two drivers is, but I cannot. Both drivers seem to work fine with my tablet, giving me access to the tablet data in android on /dev/ttyS0 (it's a serial device). I also got a wacom utility to run called wacdump that's a part of the Wacom Linux Project that outputs all the useful information from the pen (like position, pressure, eraser being used, etc), which is what I needed libncurses for. I'm in the process of writing my own utility to parse just the position information and I want to interface it with the mouse driver (which I haven't looked at yet...). I haven't had much time lately, so it's pretty slow moving.
If it is a serail device, then you don't need to worry about the driver at all. The device is just a serial device. The only problem you have is how to hook up into the EventHub.cpp



--
Android-x86
http://code.google.com/p/android-x86/

saeen

unread,
Aug 30, 2009, 7:02:23 AM8/30/09
to Android-x86
The patch available at the site needs the file wl_iw.c, but i could'nt
find the file the in the current release. Also i have found the
following two git repositories that address the broadcom issue.

http://github.com/android/platform_external_wpa_supplicant/tree/master
http://android.git.kernel.org/?p=platform/system/wlan/broadcom.git;a=summary

How can i incorporate these in your current release ?

Thanks

shameus_burp

unread,
Sep 2, 2009, 6:00:01 AM9/2/09
to Android-x86
First of all, great job so far porting Android to x86 machines.

I just built the latest as of Sept 1st and ran it on the EeePC 1000H.
Wifi seems to turn on and scan results are displayed but there is no
connection established when trying to connect to an AP. After a few
seconds the scan results disappear. After turning on and off the wifi
results in the same behavior.

Running lsmod shows the 2860 module is loaded.

Any suggestions how to establish connection?

Yi Sun

unread,
Sep 2, 2009, 12:13:38 PM9/2/09
to andro...@googlegroups.com
2860 driver is known having problems.
--
Android-x86
http://www.android-x86.org

Yi Sun

unread,
Sep 2, 2009, 12:21:07 PM9/2/09
to andro...@googlegroups.com
I guess what you can do is:

1. add the broadcom staff into manifest.xml and do a repo sync
2. use the wpa below to replace the wpa in the android-x86 tree
3. try to build it.  if the broadcom stuff generate kernel modules, then update the make file in vendor directory to include it into right place.
4. update the auto-detect script to install the kernel modules during the boot up.
--
Android-x86
http://www.android-x86.org

shameus_burp

unread,
Sep 3, 2009, 9:11:33 AM9/3/09
to Android-x86
An alternative I have tried is using a Dlink DWL-G132 usb stick which
has a ath5x chipset. I took out the RaLink PCIexpress card out the
1000h and booted with the Dlink in the USB port but it was never
recognized. I checked menuconfig and the driver was built but the
stick is not recognized at runtime. Is there something I need to do
manually to enable the USB Wlan stick to be recognized?

Yi Sun

unread,
Sep 3, 2009, 1:35:59 PM9/3/09
to andro...@googlegroups.com
Plug in your stick before you boot the machine
--
Android-x86
http://www.android-x86.org

shameus_burp

unread,
Sep 4, 2009, 2:35:51 PM9/4/09
to Android-x86
Several boots with stick attached. I should have mentioned that in my
post. I'm booting from a usb stick, could that be a problem?

Yi Sun

unread,
Sep 4, 2009, 2:40:05 PM9/4/09
to andro...@googlegroups.com
On Fri, Sep 4, 2009 at 11:35 AM, shameus_burp <shameu...@gmail.com> wrote:

Several boots with stick attached. I should have mentioned that in my
post. I'm booting from a usb stick, could that be a problem?

No it should not be a problem
Could you do a lsmod and ls /sys/class/net ?




shameus_burp

unread,
Sep 7, 2009, 3:41:02 AM9/7/09
to Android-x86
When doing a lsmod the rt2860sta module is loaded, no sign of the
ath5x module even though I have physically pulled the rt2860 card out
of the machine.

ls /sys/class/net shows lo, eth0



On Sep 4, 8:40 pm, Yi Sun <beyo...@gmail.com> wrote:

Yi Sun

unread,
Sep 7, 2009, 3:44:19 AM9/7/09
to andro...@googlegroups.com
I think you have a wrong driver. The Ath5K driver is for the one on the PCI bus not from the usb. You need to find the right driver for this device and enable it
--
Android-x86
http://www.android-x86.org

shameus_burp

unread,
Sep 7, 2009, 4:53:20 AM9/7/09
to Android-x86
FYI: just as a sanity check, the Dlink device works fine under Ubuntu.

Meant to type ath5k not ath5x in last post.

On Sep 4, 8:40 pm, Yi Sun <beyo...@gmail.com> wrote:

trojan

unread,
Sep 9, 2009, 7:01:18 PM9/9/09
to Android-x86
I am new to android-x86 and have quite a good progress with all your
guys' help. I start to try the wireless network on the ePC 900.
The driver loads ok as I can see ath5k in lsmod output. /sys/class/
net
shows lo, eth0, wmaster0, and wlan0.

When I turn on the Wi-fi from the GUI, it works well. After I pick up
the Wifi network, enter the security password, and click Connect,
the entire system hangs when it starts to 'Obtaining IP address'.
The system freezes completely, neither the GUI nor the command line
(ALT+F1) responds.

What could possibly go wrong? I have followed the complete postings
of this thread, but no similar symptoms.

Is there a way to start the wifi manually in the command mode like
iwconfig?

Yi Sun

unread,
Sep 9, 2009, 7:22:26 PM9/9/09
to andro...@googlegroups.com
I believe that wifi code has a dead lock and to it more happens during disabling of the network.  I don't have time to work on this. I only hope that I could clean up my hand earlier so that I can look into this. At the meanwhile, what you can do is:
mount a partition as /sdcard.
1.  add "disabled" at the end of app_process section in init.rc
2. boot into the debug mode
3. in the f1 console, run logcat -f /sdcard/log &
4. in the f2 console, run while [ 1 ] do dmesg > /sdcard/dmesg; sleep 1 done
5. reproduce the issue
6. to see if you can get some thing out of either dmsg or logcat first. And then we can start from there.
--
Android-x86
http://www.android-x86.org

trojan

unread,
Sep 10, 2009, 2:08:23 AM9/10/09
to Android-x86
The system hang problem is more difficult to debug. I found another
problem in ath5k driver. The default Wi-Fi mode is off. When I turn
on, off, and on the Wi-Fi again, the second turn-on fails. lsmod
shows
that ath5k is no longer running. I can no longer insmod the driver
manually.

Is this something related to the Wi-Fi causing the system to
crash when it starts to 'Obtaining IP address'?

I will dig out more.

Yi Sun

unread,
Sep 10, 2009, 2:14:48 AM9/10/09
to andro...@googlegroups.com
CW has told me something similar. I will have to dig it later cause I'm trying to wrap up the ethernet support. I will look into this right after that. 
One question, when you do lsmod, you are not seeing 5k driver in the installed list at all, right? Could you send me you logcat as well? I have some debug messages in the fault path

trojan

unread,
Sep 10, 2009, 2:45:55 PM9/10/09
to Android-x86
With more testing, the ath5k driver seems to crash during Wifi turn-
on.
A step-by-step inspection is done as follows (none related log lines
are
removed).

- After boot up:

# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
eth0 UP 10.1.1.222 255.255.255.0 0x00001043
wmaster0 DOWN 0.0.0.0 0.0.0.0 0x00001002
wlan0 DOWN 0.0.0.0 0.0.0.0 0x00001002
# lsmod
ath5k 97104 0 - Live 0xf823f000
atl2 23000 0 - Live 0xf8042000

- After turn-on the Wifi in GUI:
- ath5k driver already disappears in lsmod, probably crashed
- the GUI shows Wifi with green check mark, a false indicator

# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
eth0 UP 10.1.1.222 255.255.255.0 0x00001043
wmaster0 UP 0.0.0.0 0.0.0.0 0x00001043
wlan0 UP 0.0.0.0 0.0.0.0 0x00001003
# lsmod
atl2 23000 0 - Live 0xf8042000

- After turn-off the Wifi in GUI:

# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
eth0 UP 10.1.1.222 255.255.255.0 0x00001043
# lsmod
atl2 23000 0 - Live 0xf8042000

- After turn=on the Wifi in GUI second time:

- same as above

- Go to /system/lib/modules/.../ath5k to do insmod ath5k.ko manually:

# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
eth0 UP 10.1.1.222 255.255.255.0 0x00001043
wmaster0 DOWN 0.0.0.0 0.0.0.0 0x00001002
wlan0 DOWN 0.0.0.0 0.0.0.0 0x00001002
# lsmod
ath5k 97104 0 - Live 0xf823f000
atl2 23000 0 - Live 0xf8042000

- After turn-on the Wifi in GUI:

- Wifi network line still grays out in GUI.
- ath5k driver disappears/crashes same as above

-------------------- dmesg (trimed):

<6>[ 23.344507] i2c-adapter i2c-2: unable to read EDID block.
<6>[ 23.420106] pci 0000:00:02.0: LVDS-1: no EDID data
<6>[ 23.594506] i2c-adapter i2c-1: unable to read EDID block.
<6>[ 23.670106] pci 0000:00:02.0: VGA-1: no EDID data
<6>[ 23.814502] i2c-adapter i2c-2: unable to read EDID block.
<6>[ 23.890104] pci 0000:00:02.0: LVDS-1: no EDID data
<6>[ 24.168789] [drm] TV-11: set mode NTSC 480i 0
<0>[ 24.272100] allocated 1024x600 fb: 0x007df000, bo f68b7dc0
<0>[ 24.276413] Console: switching to colour frame buffer device
128x37
<6>[ 24.337508] [drm] LVDS-8: set mode 1024x600 13
<6>[ 24.594760] fb0: inteldrmfb frame buffer device
<6>[ 24.594764] registered panic notifier
<6>[ 24.594772] [drm] Initialized i915 1.6.0 20080730 on minor 0
<6>[ 24.982148] Atheros(R) L2 Ethernet Driver - version 2.2.3
<6>[ 24.982155] Copyright (c) 2007 Atheros Corporation.
<6>[ 24.982208] atl2 0000:03:00.0: PCI INT A -> GSI 17 (level, low) -
> IRQ 17
<7>[ 24.982222] atl2 0000:03:00.0: setting latency timer to 64
<6>[ 25.765262] ath5k 0000:01:00.0: PCI INT A -> GSI 18 (level, low)
-> IRQ 18<7>[ 25.765278] ath5k 0000:01:00.0: setting latency timer
to 64
<6>[ 25.765360] ath5k 0000:01:00.0: registered as 'phy0'
<6>[ 25.832036] wmaster0 (ath5k): not using net_device_ops yet
<7>[ 25.833667] phy0: Selected rate control algorithm 'minstrel'
<6>[ 26.259974] wlan0 (ath5k): not using net_device_ops yet
<6>[ 26.261845] ath5k phy0: Atheros AR2425 chip found (MAC: 0xe2,
PHY: 0x70)
<6>[ 26.287470] HDA Intel 0000:00:1b.0: PCI INT A -> GSI 16 (level,
low) -> IRQ 16
<7>[ 26.287533] HDA Intel 0000:00:1b.0: setting latency timer to 64
<6>[ 26.984462] Linux video capture interface: v2.00
<6>[ 27.210608] usbcore: registered new interface driver uvcvideo
<6>[ 27.210622] USB Video Class driver (v0.1.0)
<6>[ 27.521750] vivi: V4L2 device registered as /dev/video0
<6>[ 27.521757] Video Technology Magazine Virtual Video Capture
Board ver 0.5.0 successfully loaded.
<6>[ 28.318343] kjournald starting. Commit interval 5 seconds
<6>[ 28.531288] EXT3 FS on sdb2, internal journal
<6>[ 28.531295] EXT3-fs: recovery complete.
<6>[ 28.736290] EXT3-fs: mounted filesystem with ordered data mode.
<7>[ 29.920102] power_supply BAT0: uevent
<7>[ 29.920109] power_supply BAT0: POWER_SUPPLY_NAME=BAT0
<7>[ 29.920118] power_supply BAT0: Static prop TYPE=Battery
<7>[ 29.920123] power_supply BAT0: 12 dynamic props
<7>[ 30.010444] power_supply BAT0: prop STATUS=Charging
<7>[ 30.010453] power_supply BAT0: prop PRESENT=1
<7>[ 30.010460] power_supply BAT0: prop TECHNOLOGY=Li-ion
<7>[ 30.010466] power_supply BAT0: prop VOLTAGE_MIN_DESIGN=8400000
<7>[ 30.010472] power_supply BAT0: prop VOLTAGE_NOW=8344000
<7>[ 30.010478] power_supply BAT0: prop CURRENT_NOW=-1000
<7>[ 30.010484] power_supply BAT0: prop CHARGE_FULL_DESIGN=5200000
<7>[ 30.010490] power_supply BAT0: prop CHARGE_FULL=100000
<7>[ 30.010496] power_supply BAT0: prop CHARGE_NOW=80000
<7>[ 30.010501] power_supply BAT0: prop MODEL_NAME=900
<7>[ 30.010507] power_supply BAT0: prop MANUFACTURER=ASUS
<7>[ 30.010513] power_supply BAT0: prop SERIAL_NUMBER=
<7>[ 30.013658] power_supply AC0: uevent
<7>[ 30.013664] power_supply AC0: POWER_SUPPLY_NAME=AC0
<7>[ 30.013672] power_supply AC0: Static prop TYPE=Mains
<7>[ 30.013677] power_supply AC0: 1 dynamic props
<7>[ 30.013683] power_supply AC0: prop ONLINE=1
<3>[ 30.283489] init: cannot open '/initlogo.rle'
<6>[ 59.341557] warning: `app_process' uses 32-bit capabilities
(legacy support in use)
<6>[ 72.233918] request_suspend_state: wakeup (3->0) at 72233910619
(2009-09-09 23:00:25.686982553 UTC)
<7>[ 74.541300] atl2 0000:03:00.0: irq 27 for MSI/MSI-X
<6>[ 74.770211] atl2: eth0 NIC Link is Up<100 Mbps Full Duplex>
<6>[ 86.510751] request_suspend_state: wakeup (0->0) at 86510742944
(2009-09-09 23:00:39.963814878 UTC)
<3>[ 86.510823] init: untracked pid 2324 exited
<3>[ 86.510881] init: untracked pid 2329 exited
<3>[ 86.510917] init: untracked pid 2395 exited
<3>[ 86.510934] init: untracked pid 2412 exited
<3>[ 86.510972] init: untracked pid 2423 exited
<3>[ 86.511005] init: untracked pid 2438 exited
<3>[ 86.511034] init: untracked pid 2454 exited
<3>[ 86.525018] init: untracked pid 2492 exited
<6>[ 87.521595] request_suspend_state: wakeup (0->0) at 87521586639
(2009-09-09 23:00:40.974658574 UTC)
<6>[ 88.692513] binder: 2250:2250 transaction failed 29189,
size168-0
<6>[ 122.752004] ath5k 0000:01:00.0: PCI INT A disabled
<3>[ 133.334723] init: sys_prop: mis-match msg size recieved: 0
expected: 224
<6>[ 133.351155] request_suspend_state: wakeup (0->0) at 133351144922
(2009-09-09 23:01:26.804216926 UTC)
<3>[ 133.351228] init: untracked pid 2590 exited
<3>[ 133.351286] init: untracked pid 2595 exited
<3>[ 133.351317] init: untracked pid 2640 exited
<3>[ 133.351338] init: untracked pid 2661 exited
<3>[ 133.351376] init: untracked pid 2670 exited
<3>[ 133.351422] init: untracked pid 2682 exited
<3>[ 133.351459] init: untracked pid 2695 exited
<3>[ 133.351510] init: untracked pid 2711 exited
<3>[ 133.364420] init: untracked pid 2767 exited
<6>[ 134.358837] request_suspend_state: wakeup (0->0) at 134358832016
(2009-09-09 23:01:27.811903950 UTC)
<6>[ 135.531387] binder: 2250:2250 transaction failed 29189,
size168-0

----------- logcat output (trimed):

I/ServiceManager( 2246): service 'ethernet' died
I/ethernet( 3457): Loading ethernet jni class
V/ConnectivityService( 3467): Starting Wifi Service.
I/WifiService( 3467): WifiService starting up with Wi-Fi disabled
I/ethernet( 3467): ==>android_net_ethernet_initEthernetNative
I/ethernet( 3467): interface eth0:2 found
E/ethernet( 3467): android_net_ethernet_initEthernetNative exited with
success
I/ethernet( 3467): User ask for device name on 0, list:81F0490, total:
1
I/ethernet( 3467): Found :eth0
I/EthernetService( 3467): Trigger the ethernet monitor
I/ethernet( 3467): Poll events from ethernet devices
I/EthernetStateTracker( 3467): start to monitor the ethernet devices
I/ServiceManager( 2246): service 'ethernet' died
I/ethernet( 3702): Loading ethernet jni class
V/ConnectivityService( 3712): Starting Wifi Service.
I/WifiService( 3712): WifiService starting up with Wi-Fi disabled
I/ethernet( 3712): ==>android_net_ethernet_initEthernetNative
I/ethernet( 3712): interface eth0:2 found
E/ethernet( 3712): android_net_ethernet_initEthernetNative exited with
success
I/ethernet( 3712): User ask for device name on 0, list:81F0480, total:
1
I/ethernet( 3712): Found :eth0
I/EthernetService( 3712): Trigger the ethernet monitor
I/ethernet( 3712): Poll events from ethernet devices
I/EthernetStateTracker( 3712): start to monitor the ethernet devices
D/WifiService( 3712): ACTION_BATTERY_CHANGED pluggedType: 1
E/WifiHW ( 3712): Unable to open connection to supplicant on "wlan0":
No such file or directory
D/SettingsWifiEnabler( 3897): Received wifi state changed from
Disabled to Enabling
D/SettingsWifiEnabler( 3897): Received wifi state changed from
Enabling to Enabled
I/ethernet( 3712): event :16 found
I/ethernet( 3712): poll state :, left:4096
I/ethernet( 3712): Poll events from ethernet devices
I/ethernet( 3712): event :16 found
I/ethernet( 3712): poll state :, left:4096
I/ethernet( 3712): Poll events from ethernet devices
I/ethernet( 3712): event :16 found
I/ethernet( 3712): poll state :, left:4096
I/ethernet( 3712): Poll events from ethernet devices
I/ethernet( 3712): event :16 found
I/ethernet( 3712): poll state :, left:4096
I/ethernet( 3712): Poll events from ethernet devices
I/ethernet( 3712): event :16 found
I/ethernet( 3712): poll state :, left:4096
I/ethernet( 3712): Poll events from ethernet devices
V/WifiStateTracker( 3712): Connection to supplicant established,
state=SCANNING
V/WifiMonitor( 3712): Event [CTRL-EVENT-STATE-CHANGE id=-1 state=1]
V/WifiStateTracker( 3712): Changing supplicant state: SCANNING ==>
INACTIVE
V/WifiMonitor( 3712): Event [CTRL-EVENT-TERMINATING - signal 15
received]
V/WifiStateTracker( 3712): Connection to supplicant lost
D/SettingsWifiEnabler( 3897): Received wifi state changed from Enabled
to Disabling
I/ethernet( 3712): event :16 found
I/ethernet( 3712): poll state :, left:4096
I/ethernet( 3712): Poll events from ethernet devices
I/ethernet( 3712): event :16 found
I/ethernet( 3712): poll state :, left:4096
I/ethernet( 3712): Poll events from ethernet devices
I/ethernet( 3712): event :17 found
I/ethernet( 3712): poll state :, left:4096
I/ethernet( 3712): Poll events from ethernet devices
I/ethernet( 3712): event :17 found
I/ethernet( 3712): poll state :, left:4096
I/ethernet( 3712): Poll events from ethernet devices
D/SettingsWifiEnabler( 3897): Received wifi state changed from
Disabling to Disabled
E/WifiService( 3712): Failed to load Wi-Fi driver.
D/SettingsWifiEnabler( 3897): Received wifi state changed from
Disabled to Enabling
D/SettingsWifiEnabler( 3897): Received wifi state changed from
Enabling to Unknown
E/WifiService( 3712): Failed to load Wi-Fi driver.
D/SettingsWifiEnabler( 3897): Received wifi state changed from Unknown
to Enabling
D/SettingsWifiEnabler( 3897): Received wifi state changed from
Enabling to Unknown
E/WifiService( 3712): Failed to load Wi-Fi driver.
D/SettingsWifiEnabler( 3897): Received wifi state changed from Unknown
to Enabling
D/SettingsWifiEnabler( 3897): Received wifi state changed from
Enabling to Unknown

Yi Sun

unread,
Sep 10, 2009, 4:44:38 PM9/10/09
to andro...@googlegroups.com
What happen if you turn off the ethernet connection first? By default, wifi and ethernet can not run together on your image yet.
Yi
--
Android-x86
http://www.android-x86.org

Yi Sun

unread,
Sep 10, 2009, 4:45:46 PM9/10/09
to andro...@googlegroups.com
BTW-- the ath5k driver is not crash, but wifi process may crashed. could you also get ps output before and after the turnning on wifi?
Thanks
Yi
--
Android-x86
http://www.android-x86.org

trojan

unread,
Sep 10, 2009, 7:21:31 PM9/10/09
to Android-x86
> What happen if you turn off the ethernet connection first? By default, wifi
> and ethernet can not run together on your image yet.

Try the following two scenarios:

# netcfg eth0 down
- Turn on Wifi on GUI

# netcfg eth0 down
# rmmod atl2
- Turn on Wifi on GUI

Both cases have ath5k disappear with lsmod command. The system still
hangs after selecting the network and entering the WEP password.

> BTW-- the ath5k driver is not crash, but wifi process may crashed. could you
> also get ps output before and after the turnning on wifi?

If lsmod has the driver missing, does it still run in the kernel
space? The ps
outputs only show two differences:

< root 1353 2 0 0 c01355c6 00000000 S phy0

> system 6610 6385 461924 18736 ffffffff 80110ec2 S com.android.settings

Complete outputs are attached for your investigation.

---------------- ps before turn on Wifi -------------------------
USER PID PPID VSIZE RSS WCHAN PC NAME
root 1 0 324 252 c01770bd 0804f7d6 S /init
root 2 0 0 0 c013819e 00000000 S kthreadd
root 3 2 0 0 c01252b6 00000000 S migration/0
root 4 2 0 0 c012c81c 00000000 S ksoftirqd/0
root 5 2 0 0 c014b7ba 00000000 S watchdog/0
root 6 2 0 0 00000000 00000000 R events/0
root 7 2 0 0 c01355c6 00000000 S work_on_cpu/0
root 8 2 0 0 c01355c6 00000000 S khelper
root 14 2 0 0 c01355c6 00000000 S suspend
root 145 2 0 0 c01355c6 00000000 S kblockd/0
root 147 2 0 0 c01355c6 00000000 S kacpid
root 148 2 0 0 c01355c6 00000000 S kacpi_notify
root 217 2 0 0 c01355c6 00000000 S ata/0
root 218 2 0 0 c01355c6 00000000 S ata_aux
root 219 2 0 0 c01355c6 00000000 S ksuspend_usbd
root 225 2 0 0 c029d841 00000000 S khubd
root 228 2 0 0 c02ba913 00000000 S kseriod
root 234 2 0 0 c01355c6 00000000 S kmmcd
root 288 2 0 0 c015651e 00000000 S pdflush
root 289 2 0 0 c015651e 00000000 S pdflush
root 290 2 0 0 c01594b8 00000000 S kswapd0
root 292 2 0 0 c01355c6 00000000 S aio/0
root 988 2 0 0 c027508c 00000000 S scsi_eh_0
root 991 2 0 0 c027508c 00000000 S scsi_eh_1
root 1060 2 0 0 c01355c6 00000000 S kpsmoused
root 1078 2 0 0 c01355c6 00000000 S kondemand/0
root 1094 2 0 0 c01355c6 00000000 S hid_compat
root 1151 2 0 0 c027508c 00000000 S scsi_eh_2
root 1152 2 0 0 c02b5b73 00000000 S usb-storage
root 1163 2 0 0 c027508c 00000000 S scsi_eh_3
root 1164 2 0 0 c02b5b73 00000000 S usb-storage
root 1273 2 0 0 c01c4207 00000000 S kjournald
root 1278 2 0 0 c026e726 00000000 S loop0
root 1280 2 0 0 c026e726 00000000 S loop1
root 1353 2 0 0 c01355c6 00000000 S phy0
root 1364 2 0 0 c01355c6 00000000 S hd-audio0
root 1401 2 0 0 c01c4207 00000000 S kjournald
root 2305 1 800 392 c012ac2f 80010be7 S /system/bin/sh
root 2307 1 1340 180 ffffffff 0805251c S /sbin/adbd
system 2310 1 844 324 c02eb816 8010fb6a S /system/bin/
servicemanager
root 2312 1 1908 384 ffffffff 8010f7ba S /system/bin/
mountd
media 2314 1 21008 5636 ffffffff 8020fb6a S /system/bin/
mediaserver
root 2316 1 860 356 c033ca24 8010f7ba S /system/bin/
installd
root 5803 1 303768 13120 c01770bd 8010fd00 S zygote
system 5811 5803 544292 31264 ffffffff 8010fb6a S system_server
radio 5860 5803 468020 15508 ffffffff 80110ec2 S
com.android.phone
app_3 5865 5803 496824 25276 ffffffff 80110ec2 S
android.process.acore
app_1 5910 5803 452356 13208 ffffffff 80110ec2 S com.android.mms
app_3 5930 5803 445808 13736 ffffffff 80110ec2 S
com.android.inputmethod.la
tin
app_17 5939 5803 479840 28572 ffffffff 80110ec2 S
com.android.browser
app_7 5958 5803 447216 16012 ffffffff 80110ec2 S
com.android.calendar
app_11 5972 5803 463176 15588 ffffffff 80110ec2 S
android.process.media
app_20 5998 5803 457088 13020 ffffffff 80110ec2 S
com.android.alarmclock
root 6029 2305 972 384 00000000 8010f7ba R ps

---------------- ps output after turning on the Wifi
--------------------------
USER PID PPID VSIZE RSS WCHAN PC NAME
root 1 0 324 252 c01770bd 0804f7d6 S /init
root 2 0 0 0 c013819e 00000000 S kthreadd
root 3 2 0 0 c01252b6 00000000 S migration/0
root 4 2 0 0 c012c81c 00000000 S ksoftirqd/0
root 5 2 0 0 c014b7ba 00000000 S watchdog/0
root 6 2 0 0 00000000 00000000 R events/0
root 7 2 0 0 c01355c6 00000000 S work_on_cpu/0
root 8 2 0 0 c01355c6 00000000 S khelper
root 14 2 0 0 c01355c6 00000000 S suspend
root 145 2 0 0 c01355c6 00000000 S kblockd/0
root 147 2 0 0 c01355c6 00000000 S kacpid
root 148 2 0 0 c01355c6 00000000 S kacpi_notify
root 217 2 0 0 c01355c6 00000000 S ata/0
root 218 2 0 0 c01355c6 00000000 S ata_aux
root 219 2 0 0 c01355c6 00000000 S ksuspend_usbd
root 225 2 0 0 c029d841 00000000 S khubd
root 228 2 0 0 c02ba913 00000000 S kseriod
root 234 2 0 0 c01355c6 00000000 S kmmcd
root 288 2 0 0 c015651e 00000000 S pdflush
root 289 2 0 0 c015651e 00000000 S pdflush
root 290 2 0 0 c01594b8 00000000 S kswapd0
root 292 2 0 0 c01355c6 00000000 S aio/0
root 988 2 0 0 c027508c 00000000 S scsi_eh_0
root 991 2 0 0 c027508c 00000000 S scsi_eh_1
root 1060 2 0 0 c01355c6 00000000 S kpsmoused
root 1078 2 0 0 c01355c6 00000000 S kondemand/0
root 1094 2 0 0 c01355c6 00000000 S hid_compat
root 1151 2 0 0 c027508c 00000000 S scsi_eh_2
root 1152 2 0 0 c02b5b73 00000000 S usb-storage
root 1163 2 0 0 c027508c 00000000 S scsi_eh_3
root 1164 2 0 0 c02b5b73 00000000 S usb-storage
root 1273 2 0 0 c01c4207 00000000 S kjournald
root 1278 2 0 0 c026e726 00000000 S loop0
root 1280 2 0 0 c026e726 00000000 S loop1
root 1364 2 0 0 c01355c6 00000000 S hd-audio0
root 1401 2 0 0 c01c4207 00000000 S kjournald
root 2305 1 800 392 00000000 8000f154 R /system/bin/sh
root 2307 1 1344 184 ffffffff 0805251c S /sbin/adbd
system 2310 1 844 324 c02eb816 8010fb6a S /system/bin/
servicemanager
root 2312 1 1908 384 ffffffff 8010f7ba S /system/bin/
mountd
media 2314 1 21008 5636 ffffffff 8020fb6a S /system/bin/
mediaserver
root 2316 1 860 356 c033ca24 8010f7ba S /system/bin/
installd
root 6385 1 303768 13124 c01770bd 8010fd00 S zygote
system 6393 6385 545500 31148 ffffffff 8010fb6a S system_server
radio 6442 6385 469060 15528 ffffffff 80110ec2 S
com.android.phone
app_3 6447 6385 474036 24372 ffffffff 80110ec2 S
android.process.acore
app_1 6494 6385 451320 13204 ffffffff 80110ec2 S com.android.mms
app_3 6513 6385 444772 13748 ffffffff 80110ec2 S
com.android.inputmethod.la
tin
app_7 6548 6385 447228 16016 ffffffff 80110ec2 S
com.android.calendar
app_11 6565 6385 463176 15592 ffffffff 80110ec2 S
android.process.media
app_20 6592 6385 442536 12860 ffffffff 80110ec2 S
com.android.alarmclock
system 6610 6385 461924 18736 ffffffff 80110ec2 S
com.android.settings
root 6631 2305 972 388 00000000 8010f7ba R ps

Yi Sun

unread,
Sep 10, 2009, 7:38:03 PM9/10/09
to andro...@googlegroups.com
What happen is that your android crashed when you are doing certain operation. I think what could happen is that we have a bug somewhere after disabled the wifi driver. when did you checked out your source code?
Yi
--
Android-x86
http://www.android-x86.org

trojan

unread,
Sep 10, 2009, 7:54:58 PM9/10/09
to Android-x86
> when did you checked out your source code?

22:30 9/7/2009 US time

Yi Sun

unread,
Sep 10, 2009, 7:56:49 PM9/10/09
to andro...@googlegroups.com
Ok, try this:
1. boot up the machine,
2. go to setting and disable the etherent from the UI not from the alt-f1.
3. Reboot the machine (should not be required, it seems to be necessary for now).
4. turn on the wifi


On Thu, Sep 10, 2009 at 4:54 PM, trojan <lung...@gmail.com> wrote:

> when did you checked out your source code?

22:30 9/7/2009 US time





--
Android-x86
http://www.android-x86.org

trojan

unread,
Sep 10, 2009, 8:19:41 PM9/10/09
to Android-x86
> 1. boot up the machine,
> 2. go to setting and disable the etherent from the UI not from the alt-f1.
> 3. Reboot the machine (should not be required, it seems to be necessary for
> now).
> 4. turn on the wifi

Turning on the Wifi shows a green check mark on Wifi. This can be a
false
indicator as my previous posting. However, the system still crashes
after
entering the WEP password.

Do you suggest to do repo sync again?

Yi Sun

unread,
Sep 10, 2009, 8:23:25 PM9/10/09
to andro...@googlegroups.com
On Thu, Sep 10, 2009 at 5:19 PM, trojan <lung...@gmail.com> wrote:

> 1. boot up the machine,
> 2. go to setting and disable the etherent from the UI not from the alt-f1.
> 3. Reboot the machine (should not be required, it seems to be necessary for
> now).
> 4. turn on the wifi

Turning on the Wifi shows a green check mark on Wifi.  This can be a
false
indicator as my previous posting.
No, it tells you that user has enabled wifi.
 
 However, the system still crashes
after
entering the WEP password.

I don't understand this part. Anyway, I will look into this as soon as I can.

Do you suggest to do repo sync again?

Not really. CW is also testing the wifi. He is seeing some issue too. I guess I may break the wifi with my recent etherenet changes.





--
Android-x86
http://www.android-x86.org

clark_mi

unread,
Sep 10, 2009, 11:03:32 PM9/10/09
to Android-x86
Hi, everyone!

I get the android-x86 source code, and rebuild it. after installed to
eeepc701sd, I find the wifi can't work well.
if turning on the wifi from UI, the rtl8187se card can succeed to scan
networks, but can not connect with AP.
I find the reason is the dhcpcd sevice is terminated unexpectedly
after the connection with AP, the rtl8187se
can't get the IP address. In fact, the association with AP has already
established, after running the "dhcpcd wlan0"
manually in virtual console, IP address can be obtained and rtl8187se
can succeed to connect with AP.

I study the "log" message, I think the message "WifiStateTracker
(2255): Deconfiguring interface and stopping DHCP"
may be associated with problem. but I can not find the deeper
details.
And I want to output the "logcat" message to a file, but told the "
can't open output file ,Read Only file system". why?

Any suggestions?

Yi Sun

unread,
Sep 10, 2009, 11:33:42 PM9/10/09
to andro...@googlegroups.com
To continue your debug, you can do following things:
1. in bootable/newinstaller/initrd/script/0-autodetect file, find following line in find_network_dev_name function
service dhcpcd$netdev /system/bin/dhcpcd $netdev
and change it to 
service dhcpcd$netdev /system/bin/logwrapper /system/bin/dhcpcd -d $netdev

2. edit init.rc to add disabled at the end of following lines
service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server
    socket zygote stream 666
    onrestart write /sys/android_power/request_state wake
    onrestart write /sys/power/state on
3. rebuild your image
4. boot your image to debug mode and you will see the boot stops at shell prompt with an error about tty. 
5. run "logcat -f /sdcard/log &"
6. run "start zygote"
7. you will see the gui and now you can reproduce the issue. And you should be able to see all the logs in /sdcard/log

Yi  

clark_mi

unread,
Sep 11, 2009, 1:45:17 AM9/11/09
to Android-x86
thank you for your suggestions!

but I can't find the find_network_dev_name function in 0-auto-detect
file, I can only find the find_wifi_dev_name function.
and step 1's change is to get more detailed debugging messages, is
right?

Yi Sun

unread,
Sep 11, 2009, 1:47:46 AM9/11/09
to andro...@googlegroups.com
Ha, your try is very old then. And for your tree, you can go ahead to add logwrapper and -d to the init.rc. At the very end of it, you will see the dhcpcd entry
--
Android-x86
http://www.android-x86.org

clark_mi

unread,
Sep 11, 2009, 2:14:07 AM9/11/09
to Android-x86
OK, I will try, thank you!

Yi Sun

unread,
Sep 11, 2009, 1:43:01 PM9/11/09
to andro...@googlegroups.com
Ok, I can reproduce issues with my 1000HD that has 5K on it. Start to dig into it now
--
Android-x86
http://www.android-x86.org

beyounn

unread,
Sep 11, 2009, 8:49:56 PM9/11/09
to Android-x86
Ok, I have committed a fix in the system/core/init/property_service.c.
And it should fix the init crash after the dhcp complete the
negotiation. Now, I can switch between wifi and ethernet. Keep in
mind, you need to manually disable to ethernet from UI before you
enabled wifi.

Please let me know if it fixes your problems.
Yi

clark_mi

unread,
Sep 18, 2009, 5:34:36 AM9/18/09
to Android-x86
The rtl8187se diver which kernel 2.6.29 contains has two bugs for
android-x86. I fixed them, and checked it with the latest source code
on eeepc701. Now the rtl8187se can work well, it can succeed to
associate with AP and switch among mang APs from UI.

the patchs is here:

//ieee80211_softmac.c.patch

--- b/kernel/drivers/staging/rtl8187se_new/ieee80211/
ieee80211_softmac.c 2009-09-02 21:34:33.000000000 +0800
+++ b/kernel/drivers/staging/rtl8187se_new/ieee80211/
ieee80211_softmac.c 2009-09-18 16:47:19.000000000 +0800
@@ -3156,8 +3156,10 @@
#endif
ieee->state = IEEE80211_NOLINK;
ieee->link_change(ieee->dev);
- notify_wx_assoc_event(ieee);

+#ifndef FOR_ANDROID_X86
+ notify_wx_assoc_event(ieee);
+#endif
}
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20))
void ieee80211_associate_retry_wq(struct work_struct *work)
@@ -3293,7 +3295,9 @@
cancel_delayed_work(&ieee->start_ibss_wq);
ieee80211_stop_scan(ieee);

- ieee80211_disassociate(ieee);
+ if(ieee->state == IEEE80211_LINKED){
+ ieee80211_disassociate(ieee);
+ }
}

void ieee80211_softmac_start_protocol(struct ieee80211_device *ieee)


//Makefile.patch

--- a/kernel/drivers/staging/rtl8187se/Makefile 2009-09-02
21:34:33.000000000 +0800
+++ b/kernel/drivers/staging/rtl8187se/Makefile 2009-09-18
16:52:54.000000000 +0800
@@ -22,7 +22,7 @@

#enable it for legacy power save, disable it for leisure power save
EXTRA_CFLAGS += -DENABLE_LPS
-
+EXTRA_CFLAGS += -DFOR_ANDROID_X86

#EXTRA_CFLAGS += -mhard-float -DCONFIG_FORCE_HARD_FLOAT=y




> - Show quoted text -

Yi Sun

unread,
Sep 18, 2009, 12:30:24 PM9/18/09
to Android-x86

Thanks Clark,  Just want to clarify it, you are using 701SD, right?
Yi
--
Android-x86
http://www.android-x86.org

Chih-Wei

unread,
Sep 20, 2009, 10:48:06 PM9/20/09
to Android-x86
Thank you, Clark.

But could you explain why to define FOR_ANDROID_X86?

Is it a general fix for rtl8187se driver?
Or it just works on android-x86? (but why?)
It is loading more messages.
0 new messages