AnsweredAssumed Answered

wifi binding on imx6sl evk based board

Question asked by Zoran Lukic on Apr 23, 2014
Latest reply on Nov 27, 2015 by Arun S

We are having problem with board that is based on imx6sl evk and rtl8192cu (chip on wifi module is RTL8188CTV). The wifi module is on USB interface.
We integrated rtl8192cu driver from another package, we used manual supplied by realtek to integrate there driver into android (from zip file pdf file \android_ref_codes_JB_4.2\Realtek_Wi-Fi_SDK_for_Android_JB_4_2.pdf).

The driver is build as part of the kernel, not module. We used there's wpa_supplicant, that came with realteks package (wpa_supplicant_8_jb_4.2_rtw_r8680.20130821.tar.gz).

Package is from this site:

RTL8192CU for Linux/Android

Firmware is from this link: rtl819x - Linux Wireless

Using serial interface terminal, we tested the wlan0 interface,  we can bring it up, and get ip number:

root@evk_6sl:/ # cat /sys/kernel/debug/usb/devices

T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=480  MxCh= 0

D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1

P:  Vendor=0bda ProdID=8176 Rev= 2.00

S:  Manufacturer=Realtek

S:  Product=802.11n WLAN Adapter

S:  SerialNumber=00e04c000001

C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=500mA

I:* If#= 0 Alt= 0 #EPs= 4 Cls=ff(vend.) Sub=ff Prot=ff Driver=rtl8192cu

E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms

E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms

E:  Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms

E:  Ad=84(I) Atr=03(Int.) MxPS=  64 Ivl=125us

root@evk_6sl:/ # dhcpcd wlan0

dhcpcd[2859]: version 5.5.6 start+871x_drv - drv_open, bup=0

===> FirmwareDownload91C() fw:Rtl819XFwImageArray_UMC_B

FirmwareDownload92C accquire FW from embedded image

fw_ver=v80, fw_subver=0, sig=0x88c0

fw download ok!

Set RF Chip ID to RF_6052 and RF type to 1T1R.


Path A IQK Success!!

Path A IQK Success!!

IQK: final_candidate is 0

IQK: RegE94=103 RegE9C=f RegEA4=fb RegEAC=5 RegEB4=0 RegEBC=0 RegEC4=0 RegECC=0

Path A IQ Calibration Success !

pdmpriv->TxPowerTrackControl = 1

MAC Address from REG_MACID = 44:33:4c:8b:f2:10

rtl8192cu_hal_init in 610ms

MAC Address = 44:33:4c:8b:f2:10

-871x_drv - drv_open, bup=1

ADDRCONF(NETDEV_UP): wlan0: link is not ready

dhcpcd[2859]: wlan0: checking for

dhcpcd[2859]: wlan0: using IPv4LL address

dhcpcd[2859]: forked to background, child pid 2885

root@evk_6sl:/ # ifconfig wlan0

wlan0: ip mask flags [up broadcast running multicast]

root@evk_6sl:/ # netcfg

lo       UP                            0x00000049 00:00:00:00:00:00

eth0     UP                       0x00001043 24:80:00:00:00:00

tunl0    DOWN                            0x00000080 00:00:00:00:00:00

sit0     DOWN                            0x00000080 00:00:00:00:00:00

ip6tnl0  DOWN                            0x00000080 00:00:00:00:00:00

wlan0    UP                     0x00001043 44:33:4c:8b:f2:10

We need to use dhcpcd wlan0 command, the suggested service doesn't work, but thats not the problem.

Our problem is that binding from android ui and kernel isnt working.

When we tried to turn on wifi, from Settings>Wifi in Android UI, the slider button can move and change to On state, but the message on display "To see available networks, turn WiFi on" is still there.

in logcat we get:

D/WifiService( 2363): setWifiEnabled: true pid=2363, uid=1000

After that we can't move slider back.

When we exit that menu and return, the slider is back in Off state.

Using wifi from shell, we can get all the other wifi networks:

root@evk_6sl:/data # ./xbin/iwlist wlan0 scanning

survey done event(18)

wlan0     Scan completed :

         Cell 01 - Address: BC:AE:C5:C4:3B:F7


                   Protocol:IEEE 802.11bg


                   Frequency:2.412 GHz (Channel 1)

                   Encryption key:on

                   Bit Rates:54 Mb/s

                   Quality=59/100  Signal level=-95 dBm

         Cell 02 - Address: 68:7F:74:01:C6:BE


                   Protocol:IEEE 802.11bg


                   Frequency:2.432 GHz (Channel 5)

                   Encryption key:off

                   Bit Rates:54 Mb/s

                   Quality=100/100  Signal level=-55 dBm

         Cell 03 - Address: 20:AA:4B:1B:A1:7C


                   Protocol:IEEE 802.11bgn


                   Frequency:2.437 GHz (Channel 6)

                   Encryption key:off

                   Bit Rates:144 Mb/s

                   IE: Unknown: DD750050F204104A0001101044000102103B0001031047001020AA4B1BA17A20AA4B1BA17A022AC107102100104C696E6B73797320627920436973636F102300085752543136304E4C1024000776312E302E303210420001351054000800060050F2040001101100085752543136304E4C100800020084

                   Quality=100/100  Signal level=-71 dBm

         Cell 04 - Address: 00:1D:7E:BD:10:05


                   Protocol:IEEE 802.11bg


                   Frequency:2.457 GHz (Channel 10)

                   Encryption key:on

                   Bit Rates:54 Mb/s


                   IE: WPA Version 1

                       Group Cipher : TKIP

                       Pairwise Ciphers (1) : TKIP

                       Authentication Suites (1) : PSK

                   Quality=100/100  Signal level=-74 dBm

         Cell 05 - Address: 00:18:F8:3B:F1:0A


                   Protocol:IEEE 802.11bg


                   Frequency:2.462 GHz (Channel 11)

                   Encryption key:on

                   Bit Rates:54 Mb/s

                   Quality=101/100  Signal level=-95 dBm

We also added permissions for wifi in android ..

Please, ask me if you need more details, I kept track of all the changed done in the android and kernel.

Logcat with DBG for classes in wifi is also available.

Does anyone have any idea about this problem? Could you help us, please? We wasted a lot of time on this.