This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

dhcpcd not working with nl80211 driver?



Hi all,

I am trying to use the p54 wireless driver with my beagleboard, as I have a compliant wifi-dongle.  I have gotten the p54 drivers to work successfully with wireless extensions (wext).  By this, I mean that wpa_supplicant is run with -dwext flag (running with the wireless extensions driver). 

My next step is to use wpa_supplicant with the nl80211 drivers.  The reason for this is I want to use the "iw" tool, part of wireless tools.  The "iw" program requires the use of the nl80211 drivers.  I compiled the operating system and in my BoardConfig.mk, i set the following flags:

WPA_SUPPLICANT_VERSION := VER_0_6_X
BOARD_WPA_SUPPLICANT_DRIVER := NL80211

NL80211 requires libnl, and I used the following link (https://code.georgi-clan.de/p/android-external-wpasupplicant/) which outlines how to compile libnl into the build so that nl80211 works.  Once I build the OS, I turn on WIFI in the gui, and I can see all of the available networks.  I try to connect to one but Android is failing to obtain a DHCP IP address.  Here is the debug output:

usbcore: registered new interface driver p54usb
init: starting 'wpa_supplicant'
init: Created socket '/dev/socket/wpa_wlan0' with mode '660', user '1010', group '1010'
cfg80211: Calling CRDA for country: US
init: starting 'dhcpcd_wlan0'
cfg80211: Calling CRDA to update world regulatory domain
init: service 'dhcpcd_wlan0' is being killed
init: process 'dhcpcd_wlan0', pid 1251 exited
cfg80211: Calling CRDA for country: US
init: starting 'dhcpcd_wlan0'
cfg80211: Calling CRDA to update world regulatory domain
init: service 'dhcpcd_wlan0' is being killed
init: process 'dhcpcd_wlan0', pid 1515 exited

In my init.rc, I start the dhcpcd service with the following line:

service wpa_supplicant /system/bin/wpa_supplicant -dd -Dnl80211 -iwlan0 -c /system/etc/wifi/wpa_supplicant.conf
    socket wpa_wlan0 dgram 660 wifi wifi
    group system wifi inet
    disabled
    oneshot

service dhcpcd_wlan0 /system/bin/dhcpcd -dABKL wlan0
    group system dhcp
    disabled
    oneshot

I can't get dhcpcd to show any debug output either even though I have the -d flag in the service startup command... Any suggestions??

For reference, I have a Beagleboard XM Rev C and am running the DevKit2_3_4 with the 2.6.37 kernel.

Thanks,
Kiran