Murata SN8000/imx6ul Board can not connect to network

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Murata SN8000/imx6ul Board can not connect to network

6,128 Views
ryanshuttlewort
Contributor IV

Hello all. 

 

Sorry, I'm new to this so please bear with me.  I am trying to bring up an SN8000 on a custom i.MX Linux board based on the imx6ul EVK design. I am able to partially bring up the module, scan for (and detect) networks using iw as well as wpa_cli but I can not connect to open or secured networks. Has anyone had experience with the i.mx 6 and SN8000 that can give me advice on bringing up the SN8000 as well as how to better diagnose these connection issues?

 

Below are examples of boot messages and connection error messages and I have also attached a full trace from the driver using dhd_msg_level=0x2fff

 

Thanks.

 

Boot messages

=============

 

Power-up adapter 'DHD generic adapter'

wifi_platform_bus_enumerate device present 1

F1 signature OK, socitype:0x1 chip:0xa962 rev:0x1 pkg:0x9

DHD: dongle ram size is set to 245760(orig 245760) at 0x0

wifi_platform_get_mac_addr

CFG80211-ERROR) wl_setup_wiphy : Registering Vendor80211)

wl_create_event_handler(): thread:wl_event_handler:d6 started

CFG80211-ERROR) wl_event_handler : tsk Enter, tsk = 0x88a4141c

dhd_attach(): thread:dhd_watchdog_thread:d7 started

dhd_attach(): thread:dhd_dpc:d8 started

dhd_deferred_work_init: work queue initialized

dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded.

dhd_bus_init: enable 0x06, ready 0x06 (waited 0us)

wifi_platform_get_mac_addr

Firmware up: op_mode=0x0005, MAC=00:0b:6c:41:9b:cd

dhd_preinit_ioctls buf_key_b4_m4 set failed -23

Firmware version = wl0: Apr 22 2013 14:50:00 version 5.90.195.89.6 FWID 01-b30a427d

dhd_preinit_ioctls wl ampdu_hostreorder failed -23

dhd_wlfc_init(): successfully enabled bdcv2 tlv signaling, 79

dhd_wlfc_init(): wlfc_mode=0x0, ret=-23

 

Dongle Host Driver, version 1.141.72 (r)

Compiled from

Register interface [wlan0]  MAC: 00:0b:6c:41:9b:cd

 

CFG80211-ERROR) wl_cfg80211_connect : error (-14)

CFG80211-ERROR) wl_cfg80211_connect : Connectting withff:ff:ff:ff:ff:ff channel (0) ssid "OUR_SSID", len (17)

 

CFG80211-ERROR) wl_cfg80211_connect : error (-14)

CFG80211-ERROR) wl_cfg80211_connect : Connectting withff:ff:ff:ff:ff:ff channel (0) ssid "OUR_SSID", len (17)

 

CFG80211-ERROR) wl_cfg80211_connect : error (-14)

CFG80211-ERROR) wl_cfg80211_connect : Connectting withff:ff:ff:ff:ff:ff channel (0) ssid "OUR_SSID", len (17)

 

 

Note

====

 

I have also seen the following with tracing on i.e. dhd_msg_level=0x2fff

 

nl80211: Driver does not support authentication/association or connect commands

Original Attachment has been moved to: wifi-driver-trace.zip

Labels (3)
21 Replies

2,851 Views
dhvanil_patel1
Senior Contributor I

Hi Ryan,

We are using SN8000UL module. These error are generated due to wireless extension (WEXT) support is not able in kernel

driver. You have to enable WEXT support in kernel configuration

////

CONFIG_WIRELESS=y

CONFIG_WIRELESS_EXT=y

CONFIG_WEXT_CORE=y

CONFIG_WEXT_PROC=y

CONFIG_WEXT_PRIV=y

CONFIG_CFG80211=y

# CONFIG_NL80211_TESTMODE is not set

# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set

# CONFIG_CFG80211_REG_DEBUG is not set

# CONFIG_CFG80211_CERTIFICATION_ONUS is not set

CONFIG_CFG80211_DEFAULT_PS=y

# CONFIG_CFG80211_DEBUGFS is not set

# CONFIG_CFG80211_INTERNAL_REGDB is not set

CONFIG_CFG80211_WEXT=y

-

Thanks & Regards,

Dhvanil Patel

2,851 Views
ryanshuttlewort
Contributor IV

Hello Dhvanil.  A while back you helped me out with getting the SN8000 WiFi module running on Linux/imx.  At that time you mentioned that the SN8000 would only work with the wext driver.  I was wondering if you could tell me where you found this information and also if you know of any attempts to get the SN8000 running with the nl80211 driver.  I am encountering some limitations with the wext driver and have read that it is outdated and apparently deprecated.

​Thanks.

0 Kudos

2,851 Views
taruntejkanakam
Contributor III

Hi Dhvanil and Ryan,

I am working to bring up WiFi on a custom board made out of IMX6UL. It has the WiFi module SN8000 connected to USDHC2, two GPIOs, each connected to RST_N and VDD_3V3_EN of the WiFi module. VDD_BAT  is coming from external regulator and VDD_IO is coming from the source. Using kernel 4.1.15.

I have inserted bcmdhd module and it successfully enables wlan0 interface as below:

#insmod /lib/modules/4.1.15-1.1.1+g1881fb8/kernel/drivers/net/wireless/bcmdhd/bcmdhd.ko \

firmware_path=/lib/firmware/brcm/brcmfmac43362-sdio.bin \

nvram_path=/lib/firmware/brcm/brcmfmac43362-sdio.txt

dhd_module_init in

Power-up adapter 'DHD generic adapter'

wifi_platform_bus_enumerate device present 1

mmc1: queuing unknown CIS tuple 0x80 (7 bytes)

mmc1: queuing unknown CIS tuple 0x80 (6 bytes)

mmc1: queuing unknown CIS tuple 0x80 (8 bytes)

mmc1: queuing unknown CIS tuple 0x80 (2 bytes)

mmc1: queuing unknown CIS tuple 0x80 (7 bytes)

mmc1: queuing unknown CIS tuple 0x80 (5 bytes)

mmc1: new high speed SDIO card at address 0001

F1 signature OK, socitype:0x1 chip:0xa962 rev:0x1 pkg:0x9

DHD: dongle ram size is set to 245760(orig 245760) at 0x0

wifi_platform_get_mac_addr

CFG80211-ERROR) wl_setup_wiphy : Registering Vendor80211)

wl_create_event_handler(): thread:wl_event_handler:264 started

CFG80211-ERROR) wl_event_handler : tsk Enter, tsk = 0x88d4143c

dhd_attach(): thread:dhd_watchdog_thread:265 started

dhd_attach(): thread:dhd_dpc:266 started

dhd_deferred_work_init: work queue initialized

dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded.

dhd_bus_init: enable 0x06, ready 0x06 (waited 0us)

wifi_platform_get_mac_addr

Firmware up: op_mode=0x0005, MAC=00:0b:6c:41:e8:e2

dhd_preinit_ioctls buf_key_b4_m4 set failed -23

Firmware version = wl0: Apr 22 2013 14:50:00 version 5.90.195.89.6 FWID 01-b30a427d

dhd_preinit_ioctls wl ampdu_hostreorder failed -23

dhd_wlfc_init(): successfully enabled bdcv2 tlv signaling, 79

dhd_wlfc_init(): wlfc_mode=0x0, ret=-23

Dongle Host Driver, version 1.141.88 (r)

Compiled from

Register interface [wlan0]  MAC: 00:0b:6c:41:e8:e2


When I do 'ifconfig' at this point, I don't find 'wlan0' in the list as the interface is down.

'ip link' command displays the following output:

#ip link

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: can0: <NOARP40000> mtu 16 qdisc noop qlen 10

    link/[280]

3: can1: <NOARP40000> mtu 16 qdisc noop qlen 10

    link/[280]

4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000

    link/ether d8:80:39:60:72:f2 brd ff:ff:ff:ff:ff:ff

5: sit0@NONE: <NOARP> mtu 1480 qdisc noop

    link/sit 0.0.0.0 brd 0.0.0.0

6: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop qlen 1000

    link/ether 00:0b:6c:41:e8:e2 brd ff:ff:ff:ff:ff:ff

As you suggested I've enabled wext (and also nl80211) support drivers.

After adding the ssid and psk to /etc/wpa_supplicant, when I the run the command of wpa_supplicant, the output is

#wpa_supplicant -B -D wext -i wlan0 -c /etc/wpa_supplicant.conf

Successfully initialized wpa_supplicant

rfkill: Cannot open RFKILL control device

CFG80211-ERROR) wl_update_wiphybands : error reading vhtmode (-23)

root@imx6ulevk:~# skbuff: skb_under_panic: text:7f054b40 len:12 put:12 head:885e121c data:885e1210 tail:0x885e1214 end:0x885e1214 dev:

------------[ cut here ]------------

Kernel BUG at 805f812c [verbose debug info unavailable]

Internal error: Oops - BUG: 0 [#1] PREEMPT SMP ARM

Modules linked in: bcmdhd

CPU: 0 PID: 614 Comm: dhd_dpc Not tainted 4.1.15-1.1.1+g1881fb8 #113

Hardware name: Freescale i.MX6 Ultralite (Device Tree)

task: 88277900 ti: 88d32000 task.ti: 88d32000

PC is at skb_panic+0x60/0x64

LR is at skb_panic+0x60/0x64

pc : [<805f812c>]    lr : [<805f812c>]    psr: 600f0013

sp : 88d33c98  ip : 00000000  fp : 00000001

r10: 88d20000  r9 : 0000000c  r8 : 88408060

r7 : 80840384  r6 : 885e1210  r5 : 885e1214  r4 : 80a0c13c

r3 : 00000000  r2 : 00000000  r1 : 809cd4a8  r0 : 00000074

Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel

Control: 10c53c7d  Table: 88acc06a  DAC: 00000015

Process dhd_dpc (pid: 614, stack limit = 0x88d32210)

Stack: (0x88d33c98 to 0x88d34000)

3c80:                                                       0000000c 885e121c

3ca0: 885e1210 885e1214 885e1214 807b5c00 00000000 805fa1ac 00000000 88408000

3cc0: 885e1180 7f054b40 880f6274 7fffffff 00000000 88d33df8 00000048 0000000c

3ce0: 00000000 00000000 00000000 88c31300 7f0768e0 00000001 00000000 00000000

3d00: 00000200 88d33df8 88c31300 88d33df4 00000000 88c31380 00000000 8050a834

3d20: 88d33d74 88397000 00000000 00000000 00000001 8050a944 00000000 88d33d74

3d40: 00000000 00000000 00000000 00030003 88d33d50 88d33d50 8050a0b0 00000000

3d60: 12001c00 88397000 88d33dd7 8051478c 880f6274 00000034 12001c00 000010d0

3d80: 00000000 00000000 00000000 8839722c 600f0013 00000000 00000003 00000001

3da0: 0001000e 00000000 00000014 800635f8 00000000 200f0013 88397000 00000000

3dc0: 00000001 88408000 88d33df8 88408060 00000000 88d20000 00000001 7f05565c

3de0: 000000ff 00000014 18002000 7f0768e0 00000007 80b0a594 885e1180 8bb35840

3e00: 88276b08 00000000 88c31380 00000001 0001000e 88d33e60 88c31380 00000000

3e20: 00000014 7f046cf0 88d33e3f 88d20000 00000201 00000000 00000000 80037bf0

3e40: 88d20000 00000000 00000000 7f0096f0 88d20000 7f04c99c 88d239a0 a00f0093

3e60: 00000014 807a3e08 00000014 807a4188 88d20000 a00f0013 88d23000 000007d0

3e80: 88c31380 7f00f378 7f0768e0 00000000 00000014 807a4188 7f0768e0 88408000

3ea0: 7f0768e0 7f07b19c 00000000 88c31380 00000000 00000000 00000014 7f0578c8

3ec0: 00000000 60060113 88d238bc 00000032 ffffd001 88d23000 80bba140 80b05800

3ee0: 01000000 0b030000 80bba140 80052b28 88d23858 ffffd001 00000000 807a4188

3f00: 88d23858 8007a8cc 00000000 a00f0093 88d20000 a00f0013 88d23000 88d20000

3f20: 88d238a8 88d238e0 00000000 600f0013 88d238bc 00000000 00000000 7f00f528

3f40: 88d238a8 00000001 00000000 00000000 88c31740 88d238a8 7f00f440 00000000

3f60: 00000000 8004cdf8 00000000 00000000 00000000 88d238a8 00000000 00000000

3f80: 88d33f80 88d33f80 00000000 00000000 88d33f90 88d33f90 88d33fac 88c31740

3fa0: 8004cd1c 00000000 00000000 8000f528 00000000 00000000 00000000 00000000

3fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

3fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000

[<805f812c>] (skb_panic) from [<805fa1ac>] (skb_push+0x40/0x44)

[<805fa1ac>] (skb_push) from [<7f054b40>] (dhdsdio_txpkt.constprop.8+0xf0/0xaa4 [bcmdhd])

[<7f054b40>] (dhdsdio_txpkt.constprop.8 [bcmdhd]) from [<7f05565c>] (dhdsdio_sendfromq+0x168/0x3e4 [bcmdhd])

[<7f05565c>] (dhdsdio_sendfromq [bcmdhd]) from [<7f0578c8>] (dhdsdio_dpc+0x2d4/0x1024 [bcmdhd])

[<7f0578c8>] (dhdsdio_dpc [bcmdhd]) from [<7f00f528>] (dhd_dpc_thread+0xe8/0x130 [bcmdhd])

[<7f00f528>] (dhd_dpc_thread [bcmdhd]) from [<8004cdf8>] (kthread+0xdc/0xf4)

[<8004cdf8>] (kthread) from [<8000f528>] (ret_from_fork+0x14/0x2c)

Code: e58de014 e58d500c e58dc010 eb068fd2 (e7f001f2)

---[ end trace 19f61a58d41c39c5 ]---

CFG80211-ERROR) wl_scan_timeout : timer expired

CFG80211-ERROR) wl_escan_handler : WLC_E_STATUS_TIMEOUT : scan_request[884bea80]

CFG80211-ERROR) wl_escan_handler : reason[0xffffffff]

There is a Kernel panic and scan gets timed out anf failed.

Then..

#ip link

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: can0: <NOARP40000> mtu 16 qdisc noop qlen 10
    link/[280]
3: can1: <NOARP40000> mtu 16 qdisc noop qlen 10
    link/[280]
4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether d8:80:39:60:72:f2 brd ff:ff:ff:ff:ff:ff
5: sit0@NONE: <NOARP> mtu 1480 qdisc noop
    link/sit 0.0.0.0 brd 0.0.0.0
6: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:0b:6c:41:e8:e2 brd ff:ff:ff:ff:ff:ff

#ifconfig

wlan0 Link encap:Ethernet HWaddr 00:0B:6C:41:E8:E2

   inet6 addr: fe80::20b:6cff:fe41:e8e2/64 Scope:Link

   UP BROADCAST MULTICAST MTU:1500 Metric:1

   RX packets:0 errors:0 dropped:0 overruns:0 frame:0

   TX packets:8 errors:0 dropped:0 overruns:0 carrier:0

   collisions:0 txqueuelen:1000

   RX bytes:0 (0.0 B) TX bytes:648 (648.0 B)

ifconfig shows the wlan0 interface but does not get connected to the internet. The Access Point with the given ssid is very much working and other devices get connected to it.

I am trying to understand what is causing the Kernel panic, but could not resolve the issue so far. Could you check the above sequence of commands and tell me if I am to do anything else. Let me know if you have any questions.

Thanks,

Tarun

0 Kudos

2,851 Views
ryanshuttlewort
Contributor IV

Hello Tarun.  We are regularly having the same kernel panic issue, however, the wifi usually recovers and eventually connects.  We are also experiencing complete OS lockups that appear to be due in part to wifi given that the system is able to run for hours without wifi enabled.  At this point we have not found a solution or workaround but I will let you know if we find anything.

Regards.  

0 Kudos

2,851 Views
taruntejkanakam
Contributor III

Hello Ryan,

Thanks for replying.

You are right, there is an OS lock up issue as well when working with Wifi enabled. I did not mention it above because it is very inconsistent and I am still not sure of what all steps are causing the lockup.

You mentioned that the Wifi usually recovers and gets connected. How long does it take for the wifi to get connected? In my case I did not wait very long but it never shows any sign of discovering the ssid's around nor getting connected to the given ssid.

Do you perform any other command after the Kernel panic or is it expected to get the connection after "wpa_supplicant" command itself?

Which Kernel version are you working on?

Thanks,

Tarun

0 Kudos

2,851 Views
ryanshuttlewort
Contributor IV

Hey Tarun, our Linux version is 3.14.52-1.1.1.  Connection times can vary a great deal, it can be anywhere from seconds to minutes, it seems to depend on overall traffic to a given router but PCs are not having the same issues connecting to the same routers.  After the kernel panics the wifi usually retries and seems to eventually connect.  There have been situations where it will not reconnect without a reboot.

Regards.

0 Kudos

2,851 Views
taruntejkanakam
Contributor III

Ok. Sometimes kernel panic is followed by 'sending discover' for three attempts and then forks to backgorund. I had never got it connected so far.

Do you think nvram parameters .txt file has something to do in this? I am using the same values as SN8000 section in the doc below:

PDF | Murata Manufacturing

Is your nvram file same as this?

Tarun

0 Kudos

2,851 Views
ryanshuttlewort
Contributor IV

Hey Tarun, I used the drivers and nvram settings from this site: https://community.broadcom.com/docs/DOC-2661

0 Kudos

2,851 Views
taruntejkanakam
Contributor III

Hi Ryan,

I could resolve the issue and now I am able to connect to the network using WiFi module.

The firmware file from the 'bcm_imx_04_15_2016\bcm_imx\43362' at the location https://community.broadcom.com/docs/DOC-2661  seems to be the right one for the module BCMDHD I am inserting.

Earlier I was using 'brcmfmac43362-sdio.bin' which is present as a part of linux-firmware package recipe in the yocto build. Looks like this is not compatible with bcmdhd.

I still found the kernel panic and OS lockup a couple of times and but not seen it recently. I will let you know I face any further issues.

Thanks a lot for your help.

Cheers

Tarun

0 Kudos

2,851 Views
fulinux
Contributor IV

Hi tarun,

would you add  bcm_imx_04_15_2016 package in attachment,i can't find that, and https://community.broadcom.com/docs/DOC-2661 this connect has losed.

Cheers.

fulinux.

0 Kudos

2,841 Views
taruntejkanakam
Contributor III

Hi,

Try this link instead.

https://community.cypress.com/docs/DOC-2661

Also there is latest firmware available now(8/12/2016)

Tarun

0 Kudos

2,840 Views
fulinux
Contributor IV

thank you, you are a good man. 0.0

0 Kudos

2,851 Views
ryanshuttlewort
Contributor IV

Ok, all working now.  Thanks again!

0 Kudos

2,851 Views
ryanshuttlewort
Contributor IV

Thanks Dhvanil, this was at least part of the issue!  Its working on the EVK, we now have to debug our custom board....

0 Kudos

2,851 Views
dhvanil_patel1
Senior Contributor I

Hi Ryan,

Thank for response.

Today I am successfully able to run SN8000 module on i.mx6ul evk with wpa_supplicant with wpa-psk, wpa2psk security.

The only thing is to change the driver used in wpa_supplicat application input. By default wpa_supplicant uses  driver support of nl80211 but SN8000 driver needs wext driver support.

So change the wpa_supplicant utility command with below mention line

Command :

#wpa_supplicant -B -D wext -i wlan0 -c /etc/wpa_supplicant.conf

wpa_supplicant.conf file contains

network={

        ssid="test"

        #psk="12345678"

        psk=fe727aa8b64ac9b3f54c72432da14faed933ea511ecab15bbc6c52e7522f709a

}

To generate conf file conf use wpa_passphrase utility

# wpa_passphrase test >> /etc/wpa_supplicant.conf

12345678

I hope this will help you.

-

Dhvanil Patel

0 Kudos

2,851 Views
ryanshuttlewort
Contributor IV

Hello Dhvanil.  Thanks for the update but unfortunately this isn't working for me.  I get the error messages below.

P.S. which radio firmware are you using?

Successfully initialized wpa_supplicant

rfkill: Cannot open RFKILL control device

ioctl[SIOCSIWPMKSA]: Invalid argument

ioctl[SIOCSIWMODE]: Invalid argument

ioctl[SIOCGIWRANGE]: Invalid argument

ioctl[SIOCGIWMODE]: Invalid argument

ioctl[SIOCSIWAP]: Invalid argument

ioctl[SIOCSIWESSID]: Invalid argument

ioctl[SIOCSIWENCODEEXT]: Invalid argument

ioctl[SIOCSIWENCODEEXT]: Invalid argument

ioctl[SIOCSIWENCODEEXT]: Invalid argument

ioctl[SIOCSIWENCODEEXT]: Invalid argument

ioctl[SIOCSIWPMKSA]: Invalid argument

root@imx6ulevk-koala:~# udhcpc -i wlan0

udhcpc (v1.23.1) started

Sending discover...

Sending discover...

Sending discover...

Sending discover...

0 Kudos

2,851 Views
dhvanil_patel1
Senior Contributor I

Hi Ryan,

I am also facing same issue which you have mentioned above.

CFG80211-ERROR) wl_cfg80211_connect : error (-14)

CFG80211-ERROR) wl_cfg80211_connect : Connectting withff:ff:ff:ff:ff:ff channel (0) ssid "test", len (4)

Can you please help us to resolve this issue if you have fix this ?

-

Dhvanil Patel

0 Kudos

2,851 Views
ryanshuttlewort
Contributor IV

Hello Dhvanil.

I haven't found a solution yet, but I'll let you know if I do. 

0 Kudos

2,851 Views
igorpadykov
NXP Employee
NXP Employee

Hi Ryan

had you installed firmware on

BCMDHD-L3.14.38

also suggested to post on myMurata support portal

Wi-Fi Bluetooth for NXP i.MX | RF Modules | Wireless Products | Murata Manufacturing

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 Kudos

2,851 Views
ryanshuttlewort
Contributor IV

Hello Igor, thanks for the reply.  I am using this layer, but it appears that I am using a newer version of the recipe, firmware-bcmdhd_1.0.2.bb.  Are you suggesting a downgrade?  I have also tried newer bcm43362 FW from Broadcom with the same results.  I have tried posting at the Broadcom site and will try MuRata as well.

Regards.

0 Kudos