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.

Linux/WL1837MOD: wlcore: ERROR SW watchdog interrupt received! starting recovery

Part Number: WL1837MOD
Other Parts Discussed in Thread: WL1837

Tool/software: Linux

Hi all,

I am working on bring up the wl1837 in the P2P -Go configuration. I used the 

R8.7_SP1 built utilities to build the wpa tools, firmware and tools.

The firmware is being loaded and I can see the wlan0 interface coming up. Please see the below command and my wpa_supplicant.conf file I am using. The issue I am facing is that when ever I try to connect my laptop or phone to my cutom board running TI WILINK it gives me the below error and does not connect : I have also attached my wpa_supplicant.conf file for your reference.

wlcore: ERROR SW watchdog interrupt received! starting recovery.
wlcore: Hardware recovery in progress. FW ver: Rev 8.9.0.0.70
wlcore: pc: 0x119e22, hint_sts: 0x00000000 count: 1
wlcore: down
wlcore: down
wlcore: down
ieee80211 phy0: Hardware restart was requested
wlcore: PHY firmware version: Rev 8.2.0.0.237
wlcore: firmware booted (Rev 8.9.0.0.70)
wlcore: ERROR SW watchdog interrupt received! starting recovery.
wlcore: Hardware recovery in progress. FW ver: Rev 8.9.0.0.70
wlcore: pc: 0x119e22, hint_sts: 0x00000000 count: 2
wlcore: down
wlcore: down
wlcore: down

WPA_SUPPLICANT.conf file looks like this :

ctrl_interface=/var/run/wpa_supplicant
driver_param=use_multi_chan_concurrent=1 use_p2p_group_interface=1
update_config=1
device_name=testsb
device_type=1-0050F204-1
config_methods=virtual_push_button physical_display keypad
p2p_listen_reg_class=81
p2p_listen_channel=1
p2p_oper_reg_class=81
p2p_oper_channel=1
p2p_go_intent=15
p2p_go_ht40=1

network={
ssid="DIRECT-SB"
bssid=38:d2:69:b7:a6:76
psk="12345678"
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP
auth_alg=OPEN
mode=3
disabled=2
}

 

Steps I followed  to bring up the wlan0 using wpa_supplicant. tHe version of wpa_supplicant with this release is wpa_supplicant v2.6-devel-R8.7_SP1.

ifconfig wlan0 up
wpa_supplicant -Dnl80211 -c /home/root/wpa_supplicant-p2p.conf -i wlan0 -dt -B
wpa_cli p2p_group_add persistent=0 ht40

sysctl -w net.ipv4.ip_forward=1
# or
# echo 1 > /proc/sys/net/ipv4/ip_forward

ifconfig p2p-wlan0-0 192.168.49.1 up
udhcpd /home/root/udhcpd.conf

Output

wlcore: PHY firmware version: Rev 8.2.0.0.237
wlcore: firmware booted (Rev 8.9.0.0.70)
IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
1508219482.857862: wpa_supplicant v2.6-devel-R8.7_SP1
1508219482.858368: random: Trying to read entropy from /dev/random
1508219482.858685: Successfully initialized wpa_supplicant
1508219482.858716: Initializing interface 'wlan0' conf '/home/root/wpa_supplicant-p2p.conf' driver 'nl80211' ctrl_inter'
1508219482.858750: Configuration file '/home/root/wpa_supplicant-p2p.conf' -> '/home/root/wpa_supplicant-p2p.conf'
1508219482.858783: Reading configuration file '/home/root/wpa_supplicant-p2p.conf'
1508219482.858900: ctrl_interface='/var/run/wpa_supplicant'
1508219482.858936: driver_param='use_multi_chan_concurrent=1 use_p2p_group_interface=1'
1508219482.858965: update_config=1
1508219482.858991: device_name='testsb'
1508219482.859193: config_methods='virtual_push_button physical_display keypad'
1508219482.859229: p2p_listen_reg_class=81
1508219482.859257: p2p_listen_channel=1
1508219482.859283: p2p_oper_reg_class=81
1508219482.859308: p2p_oper_channel=1
1508219482.859334: p2p_go_intent=15
1508219482.859361: p2p_go_ht40=1
1508219483.369835: Priority group 0
1508219483.369883:    id=0 ssid='DIRECT-VH'
1508219483.369913:    id=1 ssid='DIRECT-VH'
1508219483.369931:    id=2 ssid='DIRECT-VH'
1508219483.369949:    id=3 ssid='DIRECT-VH'
1508219483.369966:    id=4 ssid='DIRECT-VH'
1508219483.369983:    id=5 ssid='DIRECT-VH'
1508219483.372197: nl80211: Supported cipher 00-0f-ac:1
1508219483.372243: nl80211: Supported cipher 00-0f-ac:5
1508219483.372265: nl80211: Supported cipher 00-0f-ac:2
1508219483.372283: nl80211: Supported cipher 00-0f-ac:4
1508219483.372302: nl80211: Supported cipher 00-14-72:1
1508219483.372320: nl80211: Supports Probe Response offload in AP mode
1508219483.372552: nl80211: Using driver-based off-channel TX
1508219483.372608: nl80211: Supported vendor command: vendor_id=0x80028 subcmd=0
1508219483.372628: nl80211: Supported vendor command: vendor_id=0x80028 subcmd=1
1508219483.372647: nl80211: Supported vendor command: vendor_id=0x80028 subcmd=2
1508219483.372664: nl80211: Supported vendor event: vendor_id=0x80028 subcmd=0
1508219483.372681: nl80211: Supported vendor event: vendor_id=0x80028 subcmd=1
1508219483.372724: nl80211: Use separate P2P group interface (driver advertised support)
1508219483.372745: nl80211: Enable multi-channel concurrent (driver advertised support)
1508219483.372761: nl80211: use P2P_DEVICE support
1508219483.372778: nl80211: interface wlan0 in phy phy0
1508219483.372858: nl80211: Set mode ifindex 3 iftype 2 (STATION)
1508219483.372954: nl80211: Subscribe to mgmt frames with non-AP handle 0x3eea28
1508219483.373001: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=0104
1508219483.373078: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=040a
1508219483.373149: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=040b
1508219483.373218: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=040c
1508219483.373284: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=040d
1508219483.373351: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=090a
1508219483.373417: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=090b
1508219483.373485: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=090c
1508219483.373550: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=090d
1508219483.373621: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=0409506f9a09
1508219483.373692: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=7f506f9a09
1508219483.373760: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=0801
1508219483.373826: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=06
1508219483.373892: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=0a07
1508219483.373959: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=0a11
1508219483.374026: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=0a1a
1508219483.374093: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=1101
1508219483.374159: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=1102
1508219483.374226: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x3eea28 match=0505
1508219483.375041: rfkill: initial event: idx=0 type=1 op=0 soft=0 hard=0
1508219483.375152: netlink: Operstate: ifindex=3 linkmode=1 (userspace-control), operstate=5 (IF_OPER_DORMANT)
1508219483.375868: nl80211: driver param='use_multi_chan_concurrent=1 use_p2p_group_interface=1'
1508219483.375915: nl80211: Use separate P2P group interface
1508219483.375943: Add interface wlan0 to a new radio phy0
1508219483.376733: nl80211: Regulatory information - country=00
1508219483.376766: nl80211: 2402-2472 @ 40 MHz 20 mBm
1508219483.376798: nl80211: 2457-2482 @ 20 MHz 20 mBm (no IR)
1508219483.376823: nl80211: 2474-2494 @ 20 MHz 20 mBm (no OFDM) (no IR)
1508219483.710171: nl80211: 5170-5250 @ 80 MHz 20 mBm (no IR)
1508219483.710210: nl80211: 5250-5330 @ 80 MHz 20 mBm (DFS) (no IR)
1508219483.710240: nl80211: 5490-5730 @ 160 MHz 20 mBm (DFS) (no IR)
1508219483.710268: nl80211: 5735-5835 @ 80 MHz 20 mBm (no IR)
1508219483.710295: nl80211: 57240-63720 @ 2160 MHz 0 mBm
1508219483.710396: nl80211: Added 802.11b mode based on 802.11g information
1508219483.737525: wlan0: Own MAC address: 38:d2:69:b7:a6:76
1508219483.737607: wpa_driver_nl80211_set_key: ifindex=3 (wlan0) alg=0 addr=(nil) key_idx=0 set_tx=0 seq_len=0 key_len=0
1508219483.737744: wpa_driver_nl80211_set_key: ifindex=3 (wlan0) alg=0 addr=(nil) key_idx=1 set_tx=0 seq_len=0 key_len=0
1508219483.737849: wpa_driver_nl80211_set_key: ifindex=3 (wlan0) alg=0 addr=(nil) key_idx=2 set_tx=0 seq_len=0 key_len=0
1508219483.737950: wpa_driver_nl80211_set_key: ifindex=3 (wlan0) alg=0 addr=(nil) key_idx=3 set_tx=0 seq_len=0 key_len=0
1508219483.738050: wpa_driver_nl80211_set_key: ifindex=3 (wlan0) alg=0 addr=(nil) key_idx=4 set_tx=0 seq_len=0 key_len=0
1508219483.738149: wpa_driver_nl80211_set_key: ifindex=3 (wlan0) alg=0 addr=(nil) key_idx=5 set_tx=0 seq_len=0 key_len=0
1508219483.738228: wlan0: RSN: flushing PMKID list in the driver
1508219483.738250: nl80211: Flush PMKIDs
1508219483.738319: wlan0: No enabled networks (6 disabled networks)
1508219483.738349: wlan0: State: DISCONNECTED -> INACTIVE
1508219483.767502: TDLS: TDLS operation not supported by driver
1508219483.767535: TDLS: Driver uses internal link setup
1508219483.767553: TDLS: Driver does not support TDLS channel switching
1508219483.767641: wlan0: WPS: UUID based on MAC address: 0b1c6273-4310-592e-8987-080831f3d278
1508219483.777743: ENGINE: Loading dynamic engine
1508219483.778352: ENGINE: Loading dynamic engine
1508219483.778647: EAPOL: SUPP_PAE entering state DISCONNECTED
1508219483.778674: EAPOL: Supplicant port status: Unauthorized
1508219483.778693: nl80211: Skip set_supp_port(unauthorized) while not associated
1508219483.778711: EAPOL: KEY_RX entering state NO_KEY_RECEIVE
1508219483.778727: EAPOL: SUPP_BE entering state INITIALIZE
1508219483.778745: EAP: EAP entering state DISABLED
1508219483.778946: wlan0: Added interface wlan0
1508219483.778998: wlan0: State: INACTIVE -> DISCONNECTED
1508219483.779023: nl80211: Set wlan0 operstate 0->0 (DORMANT)
1508219483.779046: netlink: Operstate: ifindex=3 linkmode=-1 (no change), operstate=5 (IF_OPER_DORMANT)
1508219483.779100: nl80211: Create interface iftype 10 (P2P_DEVICE)
1508219483.779241: nl80211: New P2P Device interface p2p-dev-wlan0 (0x2) created
1508219483.779278: Initializing interface 'p2p-dev-wlan0' conf '/home/root/wpa_supplicant-p2p.conf' driver 'nl80211' ct'
1508219483.779307: Configuration file '/home/root/wpa_supplicant-p2p.conf' -> '/home/root/wpa_supplicant-p2p.conf'
1508219483.779329: Reading configuration file '/home/root/wpa_supplicant-p2p.conf'
1508219483.779430: ctrl_interface='/var/run/wpa_supplicant'
1508219483.779467: driver_param='use_multi_chan_concurrent=1 use_p2p_group_interface=1'
1508219483.779497: update_config=1
1508219483.779522: device_name='VaveHealth'
1508219483.779562: config_methods='virtual_push_button physical_display keypad'
1508219483.779591: p2p_listen_reg_class=81
1508219483.779617: p2p_listen_channel=1
1508219483.779642: p2p_oper_reg_class=81
1508219483.779668: p2p_oper_channel=1
1508219483.779693: p2p_go_intent=15
1508219483.779721: p2p_go_ht40=1
1508219484.288611: Priority group 0
1508219484.288656:    id=0 ssid='DIRECT-VH'
1508219484.288686:    id=1 ssid='DIRECT-VH'
1508219484.288704:    id=2 ssid='DIRECT-VH'
1508219484.288722:    id=3 ssid='DIRECT-VH'
1508219484.288740:    id=4 ssid='DIRECT-VH'
1508219484.288757:    id=5 ssid='DIRECT-VH'
1508219484.297436: nl80211: Supported cipher 00-0f-ac:1
1508219484.297556: nl80211: Supported cipher 00-0f-ac:5
1508219484.297580: nl80211: Supported cipher 00-0f-ac:2
1508219484.297599: nl80211: Supported cipher 00-0f-ac:4
1508219484.297617: nl80211: Supported cipher 00-14-72:1
1508219484.297635: nl80211: Supports Probe Response offload in AP mode
1508219484.297836: nl80211: Using driver-based off-channel TX
1508219484.297891: nl80211: Supported vendor command: vendor_id=0x80028 subcmd=0
1508219484.297913: nl80211: Supported vendor command: vendor_id=0x80028 subcmd=1
1508219484.297932: nl80211: Supported vendor command: vendor_id=0x80028 subcmd=2
1508219484.297949: nl80211: Supported vendor event: vendor_id=0x80028 subcmd=0
1508219484.297966: nl80211: Supported vendor event: vendor_id=0x80028 subcmd=1
1508219484.298011: nl80211: Use separate P2P group interface (driver advertised support)
1508219484.298032: nl80211: Enable multi-channel concurrent (driver advertised support)
1508219484.298048: nl80211: use P2P_DEVICE support
1508219484.298065: nl80211: interface p2p-dev-wlan0 in phy phy0
1508219484.298202: nl80211: Set mode ifindex 0 iftype 10 (P2P_DEVICE)
1508219484.298277: nl80211: Failed to set interface 0 to mode 10: -22 (Invalid argument)
1508219484.298401: nl80211: Subscribe to mgmt frames with non-AP handle 0x406000
1508219484.298435: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=0104
1508219484.298512: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=040a
1508219484.298584: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=040b
1508219484.298656: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=040c
1508219484.298727: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=040d
1508219484.298797: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=090a
1508219484.298867: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=090b
1508219484.298937: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=090c
1508219484.299006: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=090d
1508219484.299080: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=0409506f9a09
1508219484.299153: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=7f506f9a09
1508219484.299224: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=0801
1508219484.299291: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=06
1508219484.299361: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=0a07
1508219484.299431: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=0a11
1508219484.299502: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=0a1a
1508219484.299572: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=1101
1508219484.299646: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=1102
1508219484.299717: nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x406000 match=0505
1508219484.299869: nl80211: Use (wlan0) to initialize P2P Device rfkill
1508219484.300557: rfkill: initial event: idx=0 type=1 op=0 soft=0 hard=0
1508219484.304283: nl80211: Start P2P Device p2p-dev-wlan0 (0x2): Success
1508219484.305014: nl80211: driver param='use_multi_chan_concurrent=1 use_p2p_group_interface=1'
1508219484.305052: nl80211: Use separate P2P group interface
1508219484.305081: Add interface p2p-dev-wlan0 to existing radio phy0
1508219484.305783: nl80211: Regulatory information - country=00
1508219484.305818: nl80211: 2402-2472 @ 40 MHz 20 mBm
1508219484.305851: nl80211: 2457-2482 @ 20 MHz 20 mBm (no IR)
1508219484.305878: nl80211: 2474-2494 @ 20 MHz 20 mBm (no OFDM) (no IR)
1508219484.639189: nl80211: 5170-5250 @ 80 MHz 20 mBm (no IR)
1508219484.639233: nl80211: 525IPv6: ADDRCONF(NETDEV_UP): p2p-wlan0-0: link is not ready
0-5330 @ 80 MHz 20 mBm (DFS) (no IR)
1508219484.639265: nl80211: 5490-5730 @ 160 MHz 20 mBm (DFS) (no IR)
1508219484.639294: nl80211: 5735-5835 @ 80 MHz 20 mBm (no IR)
1508219484.639322: nl80211: 57240-63720 @ 2160 MHz 0 mBm
1508219484.639426: nl80211: Added 802.11b mode based on 802.11g information
1508219484.639470: p2p-dev-wlan0: Own MAC address: 38:d2:69:b7:a6:77
1508219484.639501: p2p-dev-wlan0: RSN: flushing PMKID list in the driver
1508219484.639522: nl80211: Flush PMKIDs
1508219484.639602: p2p-dev-wlan0: State: DISCONNECTED -> INACTIVE
1508219484.639681: p2p-dev-wlan0: WPS: UUID from the first interface: 0b1c6273-4310-592e-8987-080831f3d278
1508219484.640067: ENGINE: Loading dynamic engine
1508219484.640670: ENGINE: Loading dynamic engine
1508219484.640961: EAPOL: SUPP_PAE entering state DISCONNECTED
1508219484.640987: EAPOL: Supplicant port status: Unauthorized
1508219484.641008: nl80211: Skip set_supp_port(unauthorized) while not associated
1508219484.641025: EAPOL: KEY_RXIPv6: ADDRCONF(NETDEV_CHANGE): p2p-wlan0-0: link becomes ready
entering state NO_KEY_RECEIVE
1508219484.641042: EAPOL: SUPP_BE entering state INITIALIZE
1508219484.641061: EAP: EAP entering state DISABLED
1508219484.641133: Using existing control interface directory.
1508219484.641270: P2P: Add operating class 81
1508219484.641305: P2P: Channels - hexdump(len=11): 01 02 03 04 05 06 07 08 09 0a 0b
1508219484.641464: P2P: Own listen channel: 81:1
1508219484.641483: P2P: Configured operating channel: 81:1
1508219484.643818: P2P: initialized
1508219484.643887: P2P: channels: 81:1,2,3,4,5,6,7,8,9,10,11
1508219484.643917: P2P: cli_channels:
1508219484.643952: p2p-dev-wlan0: Added interface p2p-dev-wlan0
1508219484.643983: p2p-dev-wlan0: State: INACTIVE -> DISCONNECTED
1508219484.644006: nl80211: Set p2p-dev-wlan0 operstate 0->0 (DORMANT)
1508219484.644029: netlink: Operstate: ifindex=0 linkmode=-1 (no change), operstate=5 (IF_OPER_DORMANT)
1508219484.644089: p2p-dev-wlan0: Determining shared radio frequencies (max len 2)
1508219484.644125: p2p-dev-wlan0: Shared frequencies (len=0): completed iteration
1508219484.644151: P2P: Add operating class 81
1508219484.644177: P2P: Channels - hexdump(len=11): 01 02 03 04 05 06 07 08 09 0a 0b
1508219484.644337: P2P: Update channel list
1508219484.644381: P2P: channels: 81:1,2,3,4,5,6,7,8,9,10,11
1508219484.644410: P2P: cli_channels:
1508219484.644434: Daemonize..
Selected interface 'p2p-dev-wlan0'
OK

Thanks in advance!! 

Surby

  • root@plnx_arm:~# ifconfig
    lo Link encap:Local Loopback
    inet addr:127.0.0.1 Mask:255.0.0.0
    inet6 addr: ::1%768432/128 Scope:Host
    UP LOOPBACK RUNNING MTU:65536 Metric:1
    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1
    RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

    p2p-wlan0-0 Link encap:Ethernet HWaddr 3A:D2:69:B7:A6:76
    inet addr:192.168.49.1 Bcast:192.168.49.255 Mask:255.255.255.0
    inet6 addr: fe80::38d2:69ff:feb7:a676%768432/64 Scope:Link
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    RX packets:0 errors:0 dropped:1 overruns:0 frame:0
    TX packets:56 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:0 (0.0 B) TX bytes:14952 (14.6 KiB)

    wlan0 Link encap:Ethernet HWaddr 38:D2:69:B7:A6:76
    UP BROADCAST MULTICAST MTU:1500 Metric:1
    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:0 (0.0 B) TX bytes:0 (0.0
  • Surby,

    We have assigned your post to the relevant engineer and will get back to you.
  • Thank you. Looking forward to hear from someone soon.

  • Are, you using in P2P mode? Did, you follow the steps outlined at for P2P connection?

    processors.wiki.ti.com/.../WiLink8_WLAN_Demo:_Linux

    Any case, also try with disabling ULP mode...
  • I believe I am using P2P, please see the output above from wpa_supplicant.
    Can you also please let me know how I can verify that I am using P2P mode?
    How can I disable ULP mode ?
    Thanks,
    Surabhi
  • I ran the ./ap_start.sh for testing the ap mode, the chip resets even for that. can you please send me some documentation or examples to make sure that I am using the correct setup.
    In what cases does the chip resets ?
    I would appreciate your help.
    Thanks.
  • please see my dts file  and kernel config changes attached.

    8357.dts.txt
    /dts-v1/;
    
    / {
    	#address-cells = <0x1>;
    	#size-cells = <0x1>;
    	compatible = "xlnx,zynq-7000";
    	model = "testfw";
    
    	chosen {
    		bootargs = "console=ttyPS0,115200 earlyprintk";
    		stdout-path = "serial0:115200ns";
    	};
    
    	aliases {
    		serial0 = "/amba/serial@e0001000";
    		spi0 = "/amba/spi@e000d000";
    	};
    
    	memory {
    		device_type = "memory";
    		reg = <0x0 0x40000000>;
    	};
    
    	cpus {
    		#address-cells = <0x1>;
    		#size-cells = <0x0>;
    
    		cpu@0 {
    			compatible = "arm,cortex-a9";
    			device_type = "cpu";
    			reg = <0x0>;
    			clocks = <0x1 0x3>;
    			clock-latency = <0x3e8>;
    			cpu0-supply = <0x2>;
    			operating-points = <0xa2c2a 0xf4240 0x51615 0xf4240>;
    		};
    
    		cpu@1 {
    			compatible = "arm,cortex-a9";
    			device_type = "cpu";
    			reg = <0x1>;
    			clocks = <0x1 0x3>;
    		};
    	};
    
    	pmu {
    		compatible = "arm,cortex-a9-pmu";
    		interrupts = <0x0 0x5 0x4 0x0 0x6 0x4>;
    		interrupt-parent = <0x3>;
    		reg = <0xf8891000 0x1000 0xf8893000 0x1000>;
    	};
    
    
        wlan_en: fixedregulator@2 {
            compatible = "regulator-fixed";
            regulator-name = "wlan-en-regulator";
            regulator-min-microvolt = <0x325aa0>;
            regulator-max-microvolt = <0x325aa0>;
            gpio = <0x5 0x9 0x4>; 
            startup-delay-us = <0x11170>;
            enable-active-high;
        };
    
    	fixedregulator@0 {
    		compatible = "regulator-fixed";
    		regulator-name = "VCCPINT";
    		regulator-min-microvolt = <0xf4240>;
    		regulator-max-microvolt = <0xf4240>;
    		regulator-boot-on;
    		regulator-always-on;
    		linux,phandle = <0x2>;
    		phandle = <0x2>;
    	};
    
    	amba {
    		compatible = "simple-bus";
    		#address-cells = <0x1>;
    		#size-cells = <0x1>;
    		interrupt-parent = <0x3>;
    		ranges;
    
    		adc@f8007100 {
    			compatible = "xlnx,zynq-xadc-1.00.a";
    			reg = <0xf8007100 0x20>;
    			interrupts = <0x0 0x7 0x4>;
    			interrupt-parent = <0x3>;
    			clocks = <0x1 0xc>;
    		};
    
    		can@e0008000 {
    			compatible = "xlnx,zynq-can-1.0";
    			status = "disabled";
    			clocks = <0x1 0x13 0x1 0x24>;
    			clock-names = "can_clk", "pclk";
    			reg = <0xe0008000 0x1000>;
    			interrupts = <0x0 0x1c 0x4>;
    			interrupt-parent = <0x3>;
    			tx-fifo-depth = <0x40>;
    			rx-fifo-depth = <0x40>;
    		};
    
    		can@e0009000 {
    			compatible = "xlnx,zynq-can-1.0";
    			status = "disabled";
    			clocks = <0x1 0x14 0x1 0x25>;
    			clock-names = "can_clk", "pclk";
    			reg = <0xe0009000 0x1000>;
    			interrupts = <0x0 0x33 0x4>;
    			interrupt-parent = <0x3>;
    			tx-fifo-depth = <0x40>;
    			rx-fifo-depth = <0x40>;
    		};
    
    		gpio@e000a000 {
    			compatible = "xlnx,zynq-gpio-1.0";
    			#gpio-cells = <0x2>;
    			clocks = <0x1 0x2a>;
    			gpio-controller;
    			interrupt-controller;
    			#interrupt-cells = <0x2>;
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x14 0x4>;
    			reg = <0xe000a000 0x1000>;
    			emio-gpio-width = <0x40>;
    			gpio-mask-high = <0x0>;
    			gpio-mask-low = <0x5600>;
    			linux,phandle = <0x5>;
    			phandle = <0x5>;
    		};
    
    		i2c@e0004000 {
    			compatible = "cdns,i2c-r1p10";
    			status = "disabled";
    			clocks = <0x1 0x26>;
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x19 0x4>;
    			reg = <0xe0004000 0x1000>;
    			#address-cells = <0x1>;
    			#size-cells = <0x0>;
    		};
    
    		i2c@e0005000 {
    			compatible = "cdns,i2c-r1p10";
    			status = "disabled";
    			clocks = <0x1 0x27>;
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x30 0x4>;
    			reg = <0xe0005000 0x1000>;
    			#address-cells = <0x1>;
    			#size-cells = <0x0>;
    		};
    
    		interrupt-controller@f8f01000 {
    			compatible = "arm,cortex-a9-gic";
    			#interrupt-cells = <0x3>;
    			interrupt-controller;
    			reg = <0xf8f01000 0x1000 0xf8f00100 0x100>;
    			num_cpus = <0x2>;
    			num_interrupts = <0x60>;
    			linux,phandle = <0x3>;
    			phandle = <0x3>;
    		};
    
    		cache-controller@f8f02000 {
    			compatible = "arm,pl310-cache";
    			reg = <0xf8f02000 0x1000>;
    			interrupts = <0x0 0x2 0x4>;
    			arm,data-latency = <0x3 0x2 0x2>;
    			arm,tag-latency = <0x2 0x2 0x2>;
    			cache-unified;
    			cache-level = <0x2>;
    		};
    
    		memory-controller@f8006000 {
    			compatible = "xlnx,zynq-ddrc-a05";
    			reg = <0xf8006000 0x1000>;
    		};
    
    		ocmc@f800c000 {
    			compatible = "xlnx,zynq-ocmc-1.0";
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x3 0x4>;
    			reg = <0xf800c000 0x1000>;
    		};
    
    		serial@e0000000 {
    			compatible = "xlnx,xuartps", "cdns,uart-r1p8";
    			status = "disabled";
    			clocks = <0x1 0x17 0x1 0x28>;
    			clock-names = "uart_clk", "pclk";
    			reg = <0xe0000000 0x1000>;
    			interrupts = <0x0 0x1b 0x4>;
    		};
    
    		serial@e0001000 {
    			compatible = "xlnx,xuartps", "cdns,uart-r1p8";
    			status = "okay";
    			clocks = <0x1 0x18 0x1 0x29>;
    			clock-names = "uart_clk", "pclk";
    			reg = <0xe0001000 0x1000>;
    			interrupts = <0x0 0x32 0x4>;
    			device_type = "serial";
    			port-number = <0x0>;
    		};
    
    		spi@e0006000 {
    			compatible = "xlnx,zynq-spi-r1p6";
    			reg = <0xe0006000 0x1000>;
    			status = "okay";
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x1a 0x4>;
    			clocks = <0x1 0x19 0x1 0x22>;
    			clock-names = "ref_clk", "pclk";
    			#address-cells = <0x1>;
    			#size-cells = <0x0>;
    			is-decoded-cs = <0x0>;
    			num-cs = <0x3>;
    			spidev_0: spidev@0 {
    				compatible = "spidev";
    				reg = <0>;
    				spi-max-frequency = <25000000>;
    			};
    		};
    
    		spi@e0007000 {
    			compatible = "xlnx,zynq-spi-r1p6";
    			reg = <0xe0007000 0x1000>;
    			status = "okay";
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x31 0x4>;
    			clocks = <0x1 0x1a 0x1 0x23>;
    			clock-names = "ref_clk", "pclk";
    			#address-cells = <0x1>;
    			#size-cells = <0x0>;
    			is-decoded-cs = <0x0>;
    			num-cs = <0x3>;
    			spidev_1: spidev@1 {
    				compatible = "spidev";
    				reg = <0>;
    				spi-max-frequency = <25000000>;
    			};
    		};
    
    		spi@e000d000 {
    			clock-names = "ref_clk", "pclk";
    			clocks = <0x1 0xa 0x1 0x2b>;
    			compatible = "xlnx,zynq-qspi-1.0";
    			status = "okay";
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x13 0x4>;
    			reg = <0xe000d000 0x1000>;
    			#address-cells = <0x1>;
    			#size-cells = <0x0>;
    			is-dual = <0x0>;
    			num-cs = <0x1>;
    
    			flash@0 {
    				compatible = "micron,m25p80";
    				reg = <0x0>;
    				#address-cells = <0x1>;
    				#size-cells = <0x1>;
    				spi-max-frequency = <0x2faf080>;
    
    				partition@0x00000000 {
    					label = "boot";
    					reg = <0x0 0x500000>;
    				};
    
    				partition@0x00500000 {
    					label = "bootenv";
    					reg = <0x500000 0x20000>;
    				};
    
    				partition@0x00520000 {
    					label = "kernel";
    					reg = <0x520000 0x1a00000>;
    				};
    
    				partition@0x01f20000 {
    					label = "spare";
    					reg = <0x1f20000 0xe0000>;
    				};
    			};
    		};
    
    		memory-controller@e000e000 {
    			#address-cells = <0x1>;
    			#size-cells = <0x1>;
    			status = "disabled";
    			clock-names = "memclk", "aclk";
    			clocks = <0x1 0xb 0x1 0x2c>;
    			compatible = "arm,pl353-smc-r2p1";
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x12 0x4>;
    			ranges;
    			reg = <0xe000e000 0x1000>;
    
    			flash@e1000000 {
    				status = "disabled";
    				compatible = "arm,pl353-nand-r2p1";
    				reg = <0xe1000000 0x1000000>;
    				#address-cells = <0x1>;
    				#size-cells = <0x1>;
    			};
    
    			flash@e2000000 {
    				status = "disabled";
    				compatible = "cfi-flash";
    				reg = <0xe2000000 0x2000000>;
    				#address-cells = <0x1>;
    				#size-cells = <0x1>;
    			};
    		};
    
    		ethernet@e000b000 {
    			compatible = "cdns,zynq-gem", "cdns,gem";
    			reg = <0xe000b000 0x1000>;
    			status = "disabled";
    			interrupts = <0x0 0x16 0x4>;
    			clocks = <0x1 0x1e 0x1 0x1e 0x1 0xd>;
    			clock-names = "pclk", "hclk", "tx_clk";
    			#address-cells = <0x1>;
    			#size-cells = <0x0>;
    		};
    
    		ethernet@e000c000 {
    			compatible = "cdns,zynq-gem", "cdns,gem";
    			reg = <0xe000c000 0x1000>;
    			status = "disabled";
    			interrupts = <0x0 0x2d 0x4>;
    			clocks = <0x1 0x1f 0x1 0x1f 0x1 0xe>;
    			clock-names = "pclk", "hclk", "tx_clk";
    			#address-cells = <0x1>;
    			#size-cells = <0x0>;
    		};
    
    
    		sdhci@e0100000 {
    			compatible = "arasan,sdhci-8.9a";
    			status = "okay";
    			clock-names = "clk_xin", "clk_ahb";
    			clocks = <0x1 0x15 0x1 0x20>;
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x18 0x4>;
    			reg = <0xe0100000 0x1000>;
    			broken-adma2;
    			xlnx,has-cd = <0x1>;
    			xlnx,has-power = <0x0>;
    			xlnx,has-wp = <0x1>;
    		};
    
    
    		sdhci1: sdhci@e0101000 {
    			compatible = "arasan,sdhci-8.9a";
    			status = "okay";
    			clock-names = "clk_xin", "clk_ahb";
    			clocks = <0x1 22>, <0x1 33>;
    			interrupt-parent = <0x3>;
    			interrupts = <0 47 4>;
    			reg = <0xe0101000 0x1000>;
    			broken-adma2;
            	xlnx,has-cd = <0x1>;
            	xlnx,has-power = <0x0>;
            	xlnx,has-wp = <0x0>;
                vmmc-supply = <&wlan_en>;
                bus-width = <4>;
                ti,non-removable;
                ti,needs-special-hs-handling;
                cap-power-off-card;
                keep-power-in-suspend;
                #address-cells = <1>;
                #size-cells = <0>;
                wlcore: wlcore@0 {
                   compatible = "ti,wl1837";
                   interrupt-parent = <0x5>;
                   interrupts = <0 4>; 
                   reg = <2>;
                   platform-quirks = <0x1>;
                   board-ref-clock = <0x4>;
                };
    
    		};
    
    		slcr@f8000000 {
    			#address-cells = <0x1>;
    			#size-cells = <0x1>;
    			compatible = "xlnx,zynq-slcr", "syscon", "simple-mfd";
    			reg = <0xf8000000 0x1000>;
    			ranges;
    			linux,phandle = <0x4>;
    			phandle = <0x4>;
    
    			clkc@100 {
    				#clock-cells = <0x1>;
    				compatible = "xlnx,ps7-clkc";
    				fclk-enable = <0x1>;
    				clock-output-names = "armpll", "ddrpll", "iopll", "cpu_6or4x", "cpu_3or2x", "cpu_2x", "cpu_1x", "ddr2x", "ddr3x", "dci", "lqspi", "smc", "pcap", "gem0", "gem1", "fclk0", "fclk1", "fclk2", "fclk3", "can0", "can1", "sdio0", "sdio1", "uart0", "uart1", "spi0", "spi1", "dma", "usb0_aper", "usb1_aper", "gem0_aper", "gem1_aper", "sdio0_aper", "sdio1_aper", "spi0_aper", "spi1_aper", "can0_aper", "can1_aper", "i2c0_aper", "i2c1_aper", "uart0_aper", "uart1_aper", "gpio_aper", "lqspi_aper", "smc_aper", "swdt", "dbg_trc", "dbg_apb";
    				reg = <0x100 0x100>;
    				ps-clk-frequency = <0x1fca055>;
    				linux,phandle = <0x1>;
    				phandle = <0x1>;
    			};
    
    			rstc@200 {
    				compatible = "xlnx,zynq-reset";
    				reg = <0x200 0x48>;
    				#reset-cells = <0x1>;
    				syscon = <0x4>;
    			};
    
    			pinctrl@700 {
    				compatible = "xlnx,pinctrl-zynq";
    				reg = <0x700 0x200>;
    				syscon = <0x4>;
    			};
    		};
    
    		dmac@f8003000 {
    			compatible = "arm,pl330", "arm,primecell";
    			reg = <0xf8003000 0x1000>;
    			interrupt-parent = <0x3>;
    			interrupt-names = "abort", "dma0", "dma1", "dma2", "dma3", "dma4", "dma5", "dma6", "dma7";
    			interrupts = <0x0 0xd 0x4 0x0 0xe 0x4 0x0 0xf 0x4 0x0 0x10 0x4 0x0 0x11 0x4 0x0 0x28 0x4 0x0 0x29 0x4 0x0 0x2a 0x4 0x0 0x2b 0x4>;
    			#dma-cells = <0x1>;
    			#dma-channels = <0x8>;
    			#dma-requests = <0x4>;
    			clocks = <0x1 0x1b>;
    			clock-names = "apb_pclk";
    		};
    
    		devcfg@f8007000 {
    			compatible = "xlnx,zynq-devcfg-1.0";
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x8 0x4>;
    			reg = <0xf8007000 0x100>;
    			clocks = <0x1 0xc 0x1 0xf 0x1 0x10 0x1 0x11 0x1 0x12>;
    			clock-names = "ref_clk", "fclk0", "fclk1", "fclk2", "fclk3";
    			syscon = <0x4>;
    		};
    
    		efuse@f800d000 {
    			compatible = "xlnx,zynq-efuse";
    			reg = <0xf800d000 0x20>;
    		};
    
    		timer@f8f00200 {
    			compatible = "arm,cortex-a9-global-timer";
    			reg = <0xf8f00200 0x20>;
    			interrupts = <0x1 0xb 0x301>;
    			interrupt-parent = <0x3>;
    			clocks = <0x1 0x4>;
    		};
    
    		timer@f8001000 {
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0xa 0x4 0x0 0xb 0x4 0x0 0xc 0x4>;
    			compatible = "cdns,ttc";
    			clocks = <0x1 0x6>;
    			reg = <0xf8001000 0x1000>;
    		};
    
    		timer@f8002000 {
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x25 0x4 0x0 0x26 0x4 0x0 0x27 0x4>;
    			compatible = "cdns,ttc";
    			clocks = <0x1 0x6>;
    			reg = <0xf8002000 0x1000>;
    		};
    
    		timer@f8f00600 {
    			interrupt-parent = <0x3>;
    			interrupts = <0x1 0xd 0x301>;
    			compatible = "arm,cortex-a9-twd-timer";
    			reg = <0xf8f00600 0x20>;
    			clocks = <0x1 0x4>;
    		};
    
    		usb_phy0: usb_phy@0 {
    			compatible = "ulpi-phy";
    			#phy-cells = <0>;
    			reg = <0xe0002000 0x1000>;
    			view-port = <0x170>;
    			drv-vbus;
    		};
    
    		usb@e0002000 {
    			compatible = "xlnx,zynq-usb-2.20a", "chipidea,usb2";
    			status = "okay";
    			clocks = <0x1 0x1c>;
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x15 0x4>;
    			reg = <0xe0002000 0x1000>;
    			usb-phy = <&usb_phy0>;
    			dr_mode = "host";
    			usb-reset = <0x5 0x7 0x0>;
    		};
    
    		usb@e0003000 {
    			compatible = "xlnx,zynq-usb-2.20a", "chipidea,usb2";
    			status = "disabled";
    			clocks = <0x1 0x1d>;
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x2c 0x4>;
    			reg = <0xe0003000 0x1000>;
    			phy_type = "ulpi";
    		};
    
    		watchdog@f8005000 {
    			clocks = <0x1 0x2d>;
    			compatible = "cdns,wdt-r1p2";
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x9 0x1>;
    			reg = <0xf8005000 0x1000>;
    			timeout-sec = <0xa>;
    		};
    	};
    
    	amba_pl {
    		#address-cells = <0x1>;
    		#size-cells = <0x1>;
    		compatible = "simple-bus";
    		ranges;
    		dmatest_0: dmatest@0 {
    			compatible ="xlnx,axi-dma-test-1.00.a";
    			dmas = <&axi_dma_0 0>;
    			dma-names = "axidma0";
    		} ;
    
    		axi_dma_0: dma@40400000 {
    			#dma-cells = <0x1>;
    			clock-names = "s_axi_lite_aclk", "m_axi_sg_aclk", "m_axi_s2mm_aclk";
    			clocks = <0x1 0xf 0x1 0xf 0x1 0xf>;
    			compatible = "xlnx,axi-dma-1.00.a";
    			interrupt-parent = <0x3>;
    			interrupts = <0x0 0x1d 0x4>;
    			reg = <0x40400000 0x10000>;
    			xlnx,addrwidth = <0x20>;
    			linux,phandle = <0x6>;
    			phandle = <0x6>;
    
    			dma-channel@40400030 {
    				compatible = "xlnx,axi-dma-s2mm-channel";
    				dma-channels = <0x1>;
    				interrupts = <0x0 0x1d 0x4>;
    				xlnx,datawidth = <0x20>;
    				xlnx,device-id = <0x0>;
    			};
    		};
    
    		gpio@41200000 {
    			#gpio-cells = <0x2>;
    			compatible = "xlnx,xps-gpio-1.00.a";
    			gpio-controller;
    			reg = <0x41200000 0x10000>;
    			xlnx,all-inputs = <0x0>;
    			xlnx,all-inputs-2 = <0x0>;
    			xlnx,all-outputs = <0x0>;
    			xlnx,all-outputs-2 = <0x0>;
    			xlnx,dout-default = <0x0>;
    			xlnx,dout-default-2 = <0x0>;
    			xlnx,gpio-width = <0x20>;
    			xlnx,gpio2-width = <0x20>;
    			xlnx,interrupt-present = <0x0>;
    			xlnx,is-dual = <0x0>;
    			xlnx,tri-default = <0xffffffff>;
    			xlnx,tri-default-2 = <0xffffffff>;
    		};
    	};
    };
    
    
    
    
    
    
    
    
    
    
    
    
    6685.kernelconfig changes.txt
    # CONFIG_BLK_DEV_INITRD is not set
    # CONFIG_IRQ_DOMAIN_DEBUG is not set
    CONFIG_RELAY=y
    # CONFIG_GCOV_KERNEL is not set
    # CONFIG_CMA_DEBUGFS is not set
    # CONFIG_CAN is not set
    CONFIG_WEXT_CORE=y
    CONFIG_WEXT_PROC=y
    CONFIG_CFG80211=y
    # CONFIG_NL80211_TESTMODE is not set
    # CONFIG_CFG80211_DEVELOPER_WARNINGS 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=y
    CONFIG_CFG80211_CRDA_SUPPORT=y
    CONFIG_CFG80211_WEXT=y
    CONFIG_MAC80211=y
    CONFIG_MAC80211_HAS_RC=y
    CONFIG_MAC80211_RC_MINSTREL=y
    CONFIG_MAC80211_RC_MINSTREL_HT=y
    # CONFIG_MAC80211_RC_MINSTREL_VHT is not set
    CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
    CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
    # CONFIG_MAC80211_MESH is not set
    CONFIG_MAC80211_LEDS=y
    CONFIG_MAC80211_DEBUGFS=y
    # CONFIG_MAC80211_MESSAGE_TRACING is not set
    # CONFIG_MAC80211_DEBUG_MENU is not set
    CONFIG_RFKILL=y
    CONFIG_RFKILL_LEDS=y
    CONFIG_RFKILL_INPUT=y
    CONFIG_RFKILL_REGULATOR=y
    CONFIG_RFKILL_GPIO=y
    # CONFIG_USB_HSO is not set
    # CONFIG_ADM8211 is not set
    CONFIG_ATH_COMMON=y
    CONFIG_ATH_DEBUG=y
    # CONFIG_ATH5K is not set
    CONFIG_ATH9K_HW=y
    CONFIG_ATH9K_COMMON=y
    CONFIG_ATH9K_BTCOEX_SUPPORT=y
    CONFIG_ATH9K=y
    CONFIG_ATH9K_PCI=y
    CONFIG_ATH9K_AHB=y
    CONFIG_ATH9K_DEBUGFS=y
    CONFIG_ATH9K_STATION_STATISTICS=y
    # CONFIG_ATH9K_DYNACK is not set
    # CONFIG_ATH9K_WOW is not set
    CONFIG_ATH9K_RFKILL=y
    # CONFIG_ATH9K_CHANNEL_CONTEXT is not set
    CONFIG_ATH9K_PCOEM=y
    CONFIG_ATH9K_HTC=y
    CONFIG_ATH9K_HTC_DEBUGFS=y
    # CONFIG_CARL9170 is not set
    # CONFIG_ATH6KL is not set
    # CONFIG_AR5523 is not set
    # CONFIG_WIL6210 is not set
    CONFIG_ATH10K=m
    # CONFIG_ATH10K_PCI is not set
    # CONFIG_ATH10K_DEBUG is not set
    # CONFIG_ATH10K_DEBUGFS is not set
    # CONFIG_WCN36XX is not set
    # CONFIG_ATMEL is not set
    # CONFIG_AT76C50X_USB is not set
    # CONFIG_B43 is not set
    # CONFIG_B43LEGACY is not set
    # CONFIG_BRCMSMAC is not set
    # CONFIG_BRCMFMAC is not set
    # CONFIG_IPW2100 is not set
    # CONFIG_IPW2200 is not set
    # CONFIG_IWL4965 is not set
    # CONFIG_IWL3945 is not set
    # CONFIG_IWLWIFI is not set
    # CONFIG_HERMES is not set
    # CONFIG_P54_COMMON is not set
    # CONFIG_LIBERTAS is not set
    # CONFIG_LIBERTAS_THINFIRM is not set
    # CONFIG_MWIFIEX is not set
    # CONFIG_MWL8K is not set
    # CONFIG_MT7601U is not set
    # CONFIG_RT2X00 is not set
    # CONFIG_RTL8180 is not set
    # CONFIG_RTL8187 is not set
    CONFIG_RTL_CARDS=y
    # CONFIG_RTL8192CE is not set
    # CONFIG_RTL8192SE is not set
    # CONFIG_RTL8192DE is not set
    # CONFIG_RTL8723AE is not set
    # CONFIG_RTL8723BE is not set
    # CONFIG_RTL8188EE is not set
    # CONFIG_RTL8192EE is not set
    # CONFIG_RTL8821AE is not set
    # CONFIG_RTL8192CU is not set
    # CONFIG_RTL8XXXU is not set
    # CONFIG_RSI_91X is not set
    # CONFIG_CW1200 is not set
    # CONFIG_WL1251 is not set
    # CONFIG_WL12XX is not set
    # CONFIG_WL18XX is not set
    # CONFIG_WLCORE is not set
    # CONFIG_USB_ZD1201 is not set
    # CONFIG_ZD1211RW is not set
    # CONFIG_MAC80211_HWSIM is not set
    # CONFIG_USB_NET_RNDIS_WLAN is not set
    CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
    CONFIG_USB_ULPI_BUS=y
    CONFIG_USB_WDM=y
    # CONFIG_USB_GADGET_DEBUG_FS is not set
    # CONFIG_PHY_TUSB1210 is not set
    # CONFIG_DYNAMIC_DEBUG is not set
    CONFIG_DEBUG_FS=y
    # CONFIG_LKDTM is not set
    CONFIG_CRYPTO_AEAD=y
    CONFIG_CRYPTO_BLKCIPHER=y
    CONFIG_CRYPTO_RNG=y
    CONFIG_CRYPTO_RNG_DEFAULT=y
    CONFIG_CRYPTO_MANAGER=y
    CONFIG_CRYPTO_GF128MUL=y
    CONFIG_CRYPTO_NULL=y
    CONFIG_CRYPTO_CCM=y
    CONFIG_CRYPTO_GCM=y
    CONFIG_CRYPTO_SEQIV=y
    CONFIG_CRYPTO_CTR=y
    CONFIG_CRYPTO_HMAC=y
    CONFIG_CRYPTO_GHASH=y
    CONFIG_CRYPTO_SHA256=y
    CONFIG_CRYPTO_ARC4=y
    CONFIG_CRYPTO_DRBG_MENU=y
    CONFIG_CRYPTO_DRBG=y
    CONFIG_CRYPTO_JITTERENTROPY=y
    CONFIG_EXTRA_FIRMWARE="htc_9271-1.4.0.fw"
    CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware/ath9k_htc"
    CONFIG_FW_LOADER_USER_HELPER=y
    CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
    CONFIG_SPI_ZYNQ_QSPI=y
    CONFIG_SPI_SPIDEV=y
    CONFIG_SPI_SPIDEV=m
    CONFIG_DMADEVICES_DEBUG=y
    CONFIG_DMADEVICES_VDEBUG=y
    CONFIG_XILINX_DMA=m
    CONFIG_BLK_DEV_INITRD=y
    CONFIG_INITRAMFS_SOURCE=""
    CONFIG_RD_GZIP=y
    CONFIG_RD_BZIP2=y
    CONFIG_RD_LZMA=y
    CONFIG_RD_XZ=y
    CONFIG_RD_LZO=y
    CONFIG_RD_LZ4=y
    CONFIG_LZ4_DECOMPRESS=y
    CONFIG_XZ_DEC=y
    CONFIG_XZ_DEC_X86=y
    CONFIG_XZ_DEC_POWERPC=y
    CONFIG_XZ_DEC_IA64=y
    CONFIG_XZ_DEC_ARM=y
    CONFIG_XZ_DEC_ARMTHUMB=y
    CONFIG_XZ_DEC_SPARC=y
    CONFIG_XZ_DEC_BCJ=y
    # CONFIG_XZ_DEC_TEST is not set
    CONFIG_DECOMPRESS_GZIP=y
    CONFIG_DECOMPRESS_BZIP2=y
    CONFIG_DECOMPRESS_LZMA=y
    CONFIG_DECOMPRESS_XZ=y
    CONFIG_DECOMPRESS_LZO=y
    CONFIG_DECOMPRESS_LZ4=y
    CONFIG_NET_IP_TUNNEL=m
    CONFIG_INET_TUNNEL=m
    CONFIG_INET_XFRM_MODE_TRANSPORT=m
    CONFIG_INET_XFRM_MODE_TUNNEL=m
    CONFIG_INET_XFRM_MODE_BEET=m
    CONFIG_INET_UDP_DIAG=m
    CONFIG_IPV6=m
    CONFIG_INET6_XFRM_MODE_TRANSPORT=m
    CONFIG_INET6_XFRM_MODE_TUNNEL=m
    CONFIG_INET6_XFRM_MODE_BEET=m
    CONFIG_IPV6_SIT=m
    # CONFIG_BRIDGE is not set
    CONFIG_WL18XX=y
    CONFIG_WLCORE=y
    # CONFIG_WLCORE_SPI is not set
    CONFIG_WLCORE_SDIO=y
    CONFIG_WILINK_PLATFORM_DATA=y
    CONFIG_BLK_DEV_INITRD=y
    CONFIG_INITRAMFS_SOURCE=""
    CONFIG_RD_GZIP=y
    CONFIG_RD_BZIP2=y
    CONFIG_RD_LZMA=y
    CONFIG_RD_XZ=y
    CONFIG_RD_LZO=y
    CONFIG_RD_LZ4=y
    CONFIG_LZ4_DECOMPRESS=y
    CONFIG_DECOMPRESS_GZIP=y
    CONFIG_DECOMPRESS_BZIP2=y
    CONFIG_DECOMPRESS_LZMA=y
    CONFIG_DECOMPRESS_XZ=y
    CONFIG_DECOMPRESS_LZO=y
    CONFIG_DECOMPRESS_LZ4=y
    
    

  • The error I get when i run the ap_start.sh is
    wlan1: STA 00:cd:fe:c7:89:cb IEEE 802.11: did not acknowledge autieee80211 phy0: Hardware restart was requested
    hentication response
    wlcore: PHY firmware version: Rev 8.2.0.0.240
    wlcore: firmware booted (Rev 8.9.0.0.75)
    HT: Forty MHz Intolerant is set by STA 00:cd:fe:c7:89:cb in Association Request
    wlcore: ERROR SW watchdog interrupt received! starting recovery.
    wlcore: Hardware recovery in progress. FW ver: Rev 8.9.0.0.75
    wlcore: pc: 0x119e1e, hint_sts: 0x00000000 count: 12
    wlcore: down
    ieee80211 phy0: Hardware restart was requested
    wlcore: PHY firmware version: Rev 8.2.0.0.240
    wlcore: firmware booted (Rev 8.9.0.0.75)
  • What is your system configuration? Are you using TI AM3x or some other vendor host processor? If, you are using TIAM processor, use TISDK3.3 or 4.0 and it should work out of the box..
  • I am using a dual core zynq 7000 chip. It is a custom board using zynq 7000 (arm+FPGA). On my custom unit I have ti wilink 1837 chip for wifi.

    How can I check that I am using the correct configuration? Can you please help me configure it ?

    Please see my device tree info for more details. I am bring up the image from QSPI to connect to wifi on ti wilink from laptop or phone.  I have attached the wl18xx_conf.bin I am using. 

    /dts-v1/;

    / {
    #address-cells = <0x1>;
    #size-cells = <0x1>;
    compatible = "xlnx,zynq-7000";
    model = "vavefw";

    chosen {
    bootargs = "console=ttyPS0,115200 earlyprintk";
    stdout-path = "serial0:115200ns";
    };

    aliases {
    serial0 = "/amba/serial@e0001000";
    spi0 = "/amba/spi@e000d000";
    };

    memory {
    device_type = "memory";
    reg = <0x0 0x40000000>;
    };

    cpus {
    #address-cells = <0x1>;
    #size-cells = <0x0>;

    cpu@0 {
    compatible = "arm,cortex-a9";
    device_type = "cpu";
    reg = <0x0>;
    clocks = <0x1 0x3>;
    clock-latency = <0x3e8>;
    cpu0-supply = <0x2>;
    operating-points = <0xa2c2a 0xf4240 0x51615 0xf4240>;
    };

    cpu@1 {
    compatible = "arm,cortex-a9";
    device_type = "cpu";
    reg = <0x1>;
    clocks = <0x1 0x3>;
    };
    };

    pmu {
    compatible = "arm,cortex-a9-pmu";
    interrupts = <0x0 0x5 0x4 0x0 0x6 0x4>;
    interrupt-parent = <0x3>;
    reg = <0xf8891000 0x1000 0xf8893000 0x1000>;
    };


    wlan_en: fixedregulator@2 {
    compatible = "regulator-fixed";
    regulator-name = "wlan-en-regulator";
    regulator-min-microvolt = <0x325aa0>;
    regulator-max-microvolt = <0x325aa0>;
    gpio = <0x5 0x9 0x4>;
    startup-delay-us = <0x11170>;
    enable-active-high;
    };

    fixedregulator@0 {
    compatible = "regulator-fixed";
    regulator-name = "VCCPINT";
    regulator-min-microvolt = <0xf4240>;
    regulator-max-microvolt = <0xf4240>;
    regulator-boot-on;
    regulator-always-on;
    linux,phandle = <0x2>;
    phandle = <0x2>;
    };

    amba {
    compatible = "simple-bus";
    #address-cells = <0x1>;
    #size-cells = <0x1>;
    interrupt-parent = <0x3>;
    ranges;

    adc@f8007100 {
    compatible = "xlnx,zynq-xadc-1.00.a";
    reg = <0xf8007100 0x20>;
    interrupts = <0x0 0x7 0x4>;
    interrupt-parent = <0x3>;
    clocks = <0x1 0xc>;
    };

    can@e0008000 {
    compatible = "xlnx,zynq-can-1.0";
    status = "disabled";
    clocks = <0x1 0x13 0x1 0x24>;
    clock-names = "can_clk", "pclk";
    reg = <0xe0008000 0x1000>;
    interrupts = <0x0 0x1c 0x4>;
    interrupt-parent = <0x3>;
    tx-fifo-depth = <0x40>;
    rx-fifo-depth = <0x40>;
    };

    can@e0009000 {
    compatible = "xlnx,zynq-can-1.0";
    status = "disabled";
    clocks = <0x1 0x14 0x1 0x25>;
    clock-names = "can_clk", "pclk";
    reg = <0xe0009000 0x1000>;
    interrupts = <0x0 0x33 0x4>;
    interrupt-parent = <0x3>;
    tx-fifo-depth = <0x40>;
    rx-fifo-depth = <0x40>;
    };

    gpio@e000a000 {
    compatible = "xlnx,zynq-gpio-1.0";
    #gpio-cells = <0x2>;
    clocks = <0x1 0x2a>;
    gpio-controller;
    interrupt-controller;
    #interrupt-cells = <0x2>;
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x14 0x4>;
    reg = <0xe000a000 0x1000>;
    emio-gpio-width = <0x40>;
    gpio-mask-high = <0x0>;
    gpio-mask-low = <0x5600>;
    linux,phandle = <0x5>;
    phandle = <0x5>;
    };

    i2c@e0004000 {
    compatible = "cdns,i2c-r1p10";
    status = "disabled";
    clocks = <0x1 0x26>;
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x19 0x4>;
    reg = <0xe0004000 0x1000>;
    #address-cells = <0x1>;
    #size-cells = <0x0>;
    };

    i2c@e0005000 {
    compatible = "cdns,i2c-r1p10";
    status = "disabled";
    clocks = <0x1 0x27>;
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x30 0x4>;
    reg = <0xe0005000 0x1000>;
    #address-cells = <0x1>;
    #size-cells = <0x0>;
    };

    interrupt-controller@f8f01000 {
    compatible = "arm,cortex-a9-gic";
    #interrupt-cells = <0x3>;
    interrupt-controller;
    reg = <0xf8f01000 0x1000 0xf8f00100 0x100>;
    num_cpus = <0x2>;
    num_interrupts = <0x60>;
    linux,phandle = <0x3>;
    phandle = <0x3>;
    };

    cache-controller@f8f02000 {
    compatible = "arm,pl310-cache";
    reg = <0xf8f02000 0x1000>;
    interrupts = <0x0 0x2 0x4>;
    arm,data-latency = <0x3 0x2 0x2>;
    arm,tag-latency = <0x2 0x2 0x2>;
    cache-unified;
    cache-level = <0x2>;
    };

    memory-controller@f8006000 {
    compatible = "xlnx,zynq-ddrc-a05";
    reg = <0xf8006000 0x1000>;
    };

    ocmc@f800c000 {
    compatible = "xlnx,zynq-ocmc-1.0";
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x3 0x4>;
    reg = <0xf800c000 0x1000>;
    };

    serial@e0000000 {
    compatible = "xlnx,xuartps", "cdns,uart-r1p8";
    status = "disabled";
    clocks = <0x1 0x17 0x1 0x28>;
    clock-names = "uart_clk", "pclk";
    reg = <0xe0000000 0x1000>;
    interrupts = <0x0 0x1b 0x4>;
    };

    serial@e0001000 {
    compatible = "xlnx,xuartps", "cdns,uart-r1p8";
    status = "okay";
    clocks = <0x1 0x18 0x1 0x29>;
    clock-names = "uart_clk", "pclk";
    reg = <0xe0001000 0x1000>;
    interrupts = <0x0 0x32 0x4>;
    device_type = "serial";
    port-number = <0x0>;
    };

    spi@e0006000 {
    compatible = "xlnx,zynq-spi-r1p6";
    reg = <0xe0006000 0x1000>;
    status = "okay";
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x1a 0x4>;
    clocks = <0x1 0x19 0x1 0x22>;
    clock-names = "ref_clk", "pclk";
    #address-cells = <0x1>;
    #size-cells = <0x0>;
    is-decoded-cs = <0x0>;
    num-cs = <0x3>;
    spidev_0: spidev@0 {
    compatible = "spidev";
    reg = <0>;
    spi-max-frequency = <25000000>;
    };
    };

    spi@e0007000 {
    compatible = "xlnx,zynq-spi-r1p6";
    reg = <0xe0007000 0x1000>;
    status = "okay";
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x31 0x4>;
    clocks = <0x1 0x1a 0x1 0x23>;
    clock-names = "ref_clk", "pclk";
    #address-cells = <0x1>;
    #size-cells = <0x0>;
    is-decoded-cs = <0x0>;
    num-cs = <0x3>;
    spidev_1: spidev@1 {
    compatible = "spidev";
    reg = <0>;
    spi-max-frequency = <25000000>;
    };
    };

    spi@e000d000 {
    clock-names = "ref_clk", "pclk";
    clocks = <0x1 0xa 0x1 0x2b>;
    compatible = "xlnx,zynq-qspi-1.0";
    status = "okay";
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x13 0x4>;
    reg = <0xe000d000 0x1000>;
    #address-cells = <0x1>;
    #size-cells = <0x0>;
    is-dual = <0x0>;
    num-cs = <0x1>;

    flash@0 {
    compatible = "micron,m25p80";
    reg = <0x0>;
    #address-cells = <0x1>;
    #size-cells = <0x1>;
    spi-max-frequency = <0x2faf080>;

    partition@0x00000000 {
    label = "boot";
    reg = <0x0 0x500000>;
    };

    partition@0x00500000 {
    label = "bootenv";
    reg = <0x500000 0x20000>;
    };

    partition@0x00520000 {
    label = "kernel";
    reg = <0x520000 0xa80000>;
    };

    partition@0x00fa0000 {
    label = "spare";
    reg = <0xfa0000 0x0>;
    };
    };
    };

    memory-controller@e000e000 {
    #address-cells = <0x1>;
    #size-cells = <0x1>;
    status = "disabled";
    clock-names = "memclk", "aclk";
    clocks = <0x1 0xb 0x1 0x2c>;
    compatible = "arm,pl353-smc-r2p1";
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x12 0x4>;
    ranges;
    reg = <0xe000e000 0x1000>;

    flash@e1000000 {
    status = "disabled";
    compatible = "arm,pl353-nand-r2p1";
    reg = <0xe1000000 0x1000000>;
    #address-cells = <0x1>;
    #size-cells = <0x1>;
    };

    flash@e2000000 {
    status = "disabled";
    compatible = "cfi-flash";
    reg = <0xe2000000 0x2000000>;
    #address-cells = <0x1>;
    #size-cells = <0x1>;
    };
    };

    ethernet@e000b000 {
    compatible = "cdns,zynq-gem", "cdns,gem";
    reg = <0xe000b000 0x1000>;
    status = "disabled";
    interrupts = <0x0 0x16 0x4>;
    clocks = <0x1 0x1e 0x1 0x1e 0x1 0xd>;
    clock-names = "pclk", "hclk", "tx_clk";
    #address-cells = <0x1>;
    #size-cells = <0x0>;
    };

    ethernet@e000c000 {
    compatible = "cdns,zynq-gem", "cdns,gem";
    reg = <0xe000c000 0x1000>;
    status = "disabled";
    interrupts = <0x0 0x2d 0x4>;
    clocks = <0x1 0x1f 0x1 0x1f 0x1 0xe>;
    clock-names = "pclk", "hclk", "tx_clk";
    #address-cells = <0x1>;
    #size-cells = <0x0>;
    };


    sdhci@e0100000 {
    compatible = "arasan,sdhci-8.9a";
    status = "okay";
    clock-names = "clk_xin", "clk_ahb";
    clocks = <0x1 0x15 0x1 0x20>;
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x18 0x4>;
    reg = <0xe0100000 0x1000>;
    broken-adma2;
    xlnx,has-cd = <0x1>;
    xlnx,has-power = <0x0>;
    xlnx,has-wp = <0x1>;
    };


    sdhci1: sdhci@e0101000 {
    compatible = "arasan,sdhci-8.9a";
    status = "okay";
    clock-names = "clk_xin", "clk_ahb";
    clocks = <0x1 22>, <0x1 33>;
    interrupt-parent = <0x3>;
    interrupts = <0 47 4>;
    reg = <0xe0101000 0x1000>;
    broken-adma2;
    xlnx,has-cd = <0x1>;
    xlnx,has-power = <0x0>;
    xlnx,has-wp = <0x0>;
    vmmc-supply = <&wlan_en>;
    bus-width = <4>;
    ti,non-removable;
    ti,needs-special-hs-handling;
    cap-power-off-card;
    keep-power-in-suspend;
    #address-cells = <1>;
    #size-cells = <0>;
    wlcore: wlcore@0 {
    compatible = "ti,wl1837";
    interrupt-parent = <0x5>;
    interrupts = <0 4>;
    reg = <2>;
    platform-quirks = <0x1>;
    board-ref-clock = <0x4>;
    };

    };

    slcr@f8000000 {
    #address-cells = <0x1>;
    #size-cells = <0x1>;
    compatible = "xlnx,zynq-slcr", "syscon", "simple-mfd";
    reg = <0xf8000000 0x1000>;
    ranges;
    linux,phandle = <0x4>;
    phandle = <0x4>;

    clkc@100 {
    #clock-cells = <0x1>;
    compatible = "xlnx,ps7-clkc";
    fclk-enable = <0x1>;
    clock-output-names = "armpll", "ddrpll", "iopll", "cpu_6or4x", "cpu_3or2x", "cpu_2x", "cpu_1x", "ddr2x", "ddr3x", "dci", "lqspi", "smc", "pcap", "gem0", "gem1", "fclk0", "fclk1", "fclk2", "fclk3", "can0", "can1", "sdio0", "sdio1", "uart0", "uart1", "spi0", "spi1", "dma", "usb0_aper", "usb1_aper", "gem0_aper", "gem1_aper", "sdio0_aper", "sdio1_aper", "spi0_aper", "spi1_aper", "can0_aper", "can1_aper", "i2c0_aper", "i2c1_aper", "uart0_aper", "uart1_aper", "gpio_aper", "lqspi_aper", "smc_aper", "swdt", "dbg_trc", "dbg_apb";
    reg = <0x100 0x100>;
    ps-clk-frequency = <0x1fca055>;
    linux,phandle = <0x1>;
    phandle = <0x1>;
    };

    rstc@200 {
    compatible = "xlnx,zynq-reset";
    reg = <0x200 0x48>;
    #reset-cells = <0x1>;
    syscon = <0x4>;
    };

    pinctrl@700 {
    compatible = "xlnx,pinctrl-zynq";
    reg = <0x700 0x200>;
    syscon = <0x4>;
    };
    };

    dmac@f8003000 {
    compatible = "arm,pl330", "arm,primecell";
    reg = <0xf8003000 0x1000>;
    interrupt-parent = <0x3>;
    interrupt-names = "abort", "dma0", "dma1", "dma2", "dma3", "dma4", "dma5", "dma6", "dma7";
    interrupts = <0x0 0xd 0x4 0x0 0xe 0x4 0x0 0xf 0x4 0x0 0x10 0x4 0x0 0x11 0x4 0x0 0x28 0x4 0x0 0x29 0x4 0x0 0x2a 0x4 0x0 0x2b 0x4>;
    #dma-cells = <0x1>;
    #dma-channels = <0x8>;
    #dma-requests = <0x4>;
    clocks = <0x1 0x1b>;
    clock-names = "apb_pclk";
    };

    devcfg@f8007000 {
    compatible = "xlnx,zynq-devcfg-1.0";
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x8 0x4>;
    reg = <0xf8007000 0x100>;
    clocks = <0x1 0xc 0x1 0xf 0x1 0x10 0x1 0x11 0x1 0x12>;
    clock-names = "ref_clk", "fclk0", "fclk1", "fclk2", "fclk3";
    syscon = <0x4>;
    };

    efuse@f800d000 {
    compatible = "xlnx,zynq-efuse";
    reg = <0xf800d000 0x20>;
    };

    timer@f8f00200 {
    compatible = "arm,cortex-a9-global-timer";
    reg = <0xf8f00200 0x20>;
    interrupts = <0x1 0xb 0x301>;
    interrupt-parent = <0x3>;
    clocks = <0x1 0x4>;
    };

    timer@f8001000 {
    interrupt-parent = <0x3>;
    interrupts = <0x0 0xa 0x4 0x0 0xb 0x4 0x0 0xc 0x4>;
    compatible = "cdns,ttc";
    clocks = <0x1 0x6>;
    reg = <0xf8001000 0x1000>;
    };

    timer@f8002000 {
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x25 0x4 0x0 0x26 0x4 0x0 0x27 0x4>;
    compatible = "cdns,ttc";
    clocks = <0x1 0x6>;
    reg = <0xf8002000 0x1000>;
    };

    timer@f8f00600 {
    interrupt-parent = <0x3>;
    interrupts = <0x1 0xd 0x301>;
    compatible = "arm,cortex-a9-twd-timer";
    reg = <0xf8f00600 0x20>;
    clocks = <0x1 0x4>;
    };

    usb_phy0: usb_phy@0 {
    compatible = "ulpi-phy";
    #phy-cells = <0>;
    reg = <0xe0002000 0x1000>;
    view-port = <0x170>;
    drv-vbus;
    };

    usb@e0002000 {
    compatible = "xlnx,zynq-usb-2.20a", "chipidea,usb2";
    status = "okay";
    clocks = <0x1 0x1c>;
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x15 0x4>;
    reg = <0xe0002000 0x1000>;
    usb-phy = <&usb_phy0>;
    dr_mode = "host";
    usb-reset = <0x5 0x7 0x0>;
    };

    usb@e0003000 {
    compatible = "xlnx,zynq-usb-2.20a", "chipidea,usb2";
    status = "disabled";
    clocks = <0x1 0x1d>;
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x2c 0x4>;
    reg = <0xe0003000 0x1000>;
    phy_type = "ulpi";
    };

    watchdog@f8005000 {
    clocks = <0x1 0x2d>;
    compatible = "cdns,wdt-r1p2";
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x9 0x1>;
    reg = <0xf8005000 0x1000>;
    timeout-sec = <0xa>;
    };
    };

    amba_pl {
    #address-cells = <0x1>;
    #size-cells = <0x1>;
    compatible = "simple-bus";
    ranges;
    dmatest_0: dmatest@0 {
    compatible ="xlnx,axi-dma-test-1.00.a";
    dmas = <&axi_dma_0 0>;
    dma-names = "axidma0";
    } ;

    axi_dma_0: dma@40400000 {
    #dma-cells = <0x1>;
    clock-names = "s_axi_lite_aclk", "m_axi_sg_aclk", "m_axi_s2mm_aclk";
    clocks = <0x1 0xf 0x1 0xf 0x1 0xf>;
    compatible = "xlnx,axi-dma-1.00.a";
    interrupt-parent = <0x3>;
    interrupts = <0x0 0x1d 0x4>;
    reg = <0x40400000 0x10000>;
    xlnx,addrwidth = <0x20>;
    linux,phandle = <0x6>;
    phandle = <0x6>;

    dma-channel@40400030 {
    compatible = "xlnx,axi-dma-s2mm-channel";
    dma-channels = <0x1>;
    interrupts = <0x0 0x1d 0x4>;
    xlnx,datawidth = <0x20>;
    xlnx,device-id = <0x0>;
    };
    };

    gpio@41200000 {
    #gpio-cells = <0x2>;
    compatible = "xlnx,xps-gpio-1.00.a";
    gpio-controller;
    reg = <0x41200000 0x10000>;
    xlnx,all-inputs = <0x0>;
    xlnx,all-inputs-2 = <0x0>;
    xlnx,all-outputs = <0x0>;
    xlnx,all-outputs-2 = <0x0>;
    xlnx,dout-default = <0x0>;
    xlnx,dout-default-2 = <0x0>;
    xlnx,gpio-width = <0x20>;
    xlnx,gpio2-width = <0x20>;
    xlnx,interrupt-present = <0x0>;
    xlnx,is-dual = <0x0>;
    xlnx,tri-default = <0xffffffff>;
    xlnx,tri-default-2 = <0xffffffff>;
    };
    };
    };

    Thank you so much for your help!!

    Surabhi

    3010.wl18xx-conf.txt
    ���	�2d ��<���
    
    
    �1	��X
    
    ???�?�d,0	^
    
    
    �%=*�' N
    2����P��
    
    L0u�aP����IP�L�W�^���I�
    0u @'?((-�������������} �
    
    
    x��x��x��x��x�x��x��x��x��x��x��x��x������������������������������""����""�������������D��D��""�""�DD�DD��������������������U�DU����3"�3"�ff�Df������U�������d@0@������

  • You may try couple of things -
    a) Reduce the SDIO speed, to say 1MHZ.
    b) Disable the ELP mode in controller, soon after it is booted and firmware downloaded...
    echo 0 > /sys/kernel/debug/ieee80211/phy0/wlcore/sleep_auth


    Thanks
  • Hi Hari,
    How can I check the current SDIO speed ? also how can I change it ?
    Thanks,
    Surabhi
  • Hi Hari,
    I tried changing the clock to 1Mhz and disabling the ELP mode but I still get the same error, the chip resets. .
    Please see my logs below :


    usbcore: registered new interface driver ath9k_htc
    ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    ehci-pci: EHCI PCI platform driver
    usbcore: registered new interface driver cdc_wdm
    usbcore: registered new interface driver usb-storage
    e0002000.usb supply vbus not found, using dummy regulator
    ci_hdrc ci_hdrc.0: unable to init phy: -110
    ci_hdrc: probe of ci_hdrc.0 failed with error -110
    mousedev: PS/2 mouse device common for all mice
    i2c /dev entries driver
    EDAC MC: ECC not enabled
    Xilinx Zynq CpuIdle Driver started
    sdhci: Secure Digital Host Controller Interface driver
    sdhci: Copyright(c) Pierre Ossman
    sdhci-pltfm: SDHCI platform and OF driver helper
    mmc0: SDHCI controller on e0100000.sdhci [e0100000.sdhci] using DMA
    mmc0: new high speed SDHC card at address aaaa
    mmcblk0: mmc0:aaaa SL08G 7.40 GiB
    mmcblk0: p1 p2
    mmc1: SDHCI controller on e0101000.sdhci [e0101000.sdhci] using DMA
    ledtrig-cpu: registered to indicate activity on CPUs
    usbcore: registered new interface driver usbhid
    usbhid: USB HID core driver
    sdhci-arasan e0101000.sdhci: card claims to support voltages below defined range
    NET: Registered protocol family 17
    Registering SWP/SWPB emulation handler
    hctosys: unable to open rtc device (rtc0)
    ALSA device list:
    No soundcards found.
    mmc1: new high speed SDIO card at address 0001
    Freeing unused kernel memory: 1024K (c0a00000 - c0b00000)
    INIT: version 2.88 booting
    wlcore: wl18xx HW: 183x or 180x, PG 2.2 (ROM 0x11)
    wlcore: loaded
    FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    random: dd urandom read with 6 bits of entropy available
    Mon Oct 30 19:59:34 UTC 2017
    Starting internet superserver: inetd.
    INIT: Entering runlevel: 5
    Configuring network interfaces... ifconfig: SIOCGIFFLAGS: No such device
    Starting Dropbear SSH server: Generating key, this may take a while...
    Public key portion is:
    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeENfEC+vn640QRSlH02tWE1wZANlgaVVDooyz1PdJReynOFCXfz9eFEOSwbP4cjgkFdWFYFAX2i1+Vk8NEj1/9dK7ooxVH4JqnVPpfZju8Zxl0O9JGvlYXvX64YOZR30j+yT49TK/LjCLBHx5n4GVoSFkAwgLEWFKSI9Ho6Zlhc4z1Qtvv7GtAM5SmsiD9P4uKhxmucXKFqBiPfZevLr02/903/GJ40
    ayI/R+Of0RYMA91BaD root@plnx_arm
    Fingerprint: md5 2f:41:a0:76:68:22:fb:04:a3:fa:50:4f:31:8a:df:06
    dropbear.
    Starting syslogd/klogd: done
    Starting tcf-agent: OK

    PetaLinux 2016.4 plnx_arm /dev/ttyPS0

    plnx_arm login: root
    Password:
    root@plnx_arm:~# ls
    direct_up.sh start_vave_app.sh udhcpd.conf vaveProbe wpa_supplicant-p2p.conf
    root@plnx_arm:~# wpa_supplicant
    -sh: /usr/local/sbin/wpa_supplicant: No such file or directory
    root@plnx_arm:~# cd /lib/
    root@plnx_arm:/lib# ln -s ld-linux-armhf.so.3 ld-linux.so.3
    root@plnx_arm:/lib# cd /

    root@plnx_arm:/# echo 0 > /sys/kernel/debug/ieee80211/phy0/wlcore/sleep_auth
    root@plnx_arm:/# cat /sys/kernel/
    debug/ fscaps mm/ notes rcu_expedited rcu_normal uevent_helper uevent_seqnum
    root@plnx_arm:/# cat /sys/kernel/debug/
    asoc/ clk/ dri/ gpio ieee80211/ memblock/ mmc1/ pm_qos/ regmap/ sleep_time usb/
    bdi/ dma_buf/ fault_around_bytes hid/ iio/ mmc0/ pinctrl/ ras/ regulator/ suspend_stats wakeup_sources
    root@plnx_arm:/# cat /sys/kernel/debug/mmc1/
    clock ios mmc1:0001/
    root@plnx_arm:/# cat /sys/kernel/debug/mmc1/ios
    clock: 0 Hz
    vdd: 0 (invalid)
    bus mode: 2 (push-pull)
    chip select: 0 (don't care)
    power mode: 0 (off)
    bus width: 0 (1 bits)
    timing spec: 0 (legacy)
    signal voltage: 0 (3.30 V)
    driver type: 0 (driver type B)
    root@plnx_arm:/# cat /sys/kernel/debug/mmc1/clock
    0
    root@plnx_arm:/# cat /sys/kernel/debug/mmc0/ios
    clock: 50000000 Hz
    actual clock: 50000000 Hz
    vdd: 21 (3.3 ~ 3.4 V)
    bus mode: 2 (push-pull)
    chip select: 0 (don't care)
    power mode: 2 (on)
    bus width: 2 (4 bits)
    timing spec: 2 (sd high-speed)
    signal voltage: 0 (3.30 V)
    driver type: 0 (driver type B)
    root@plnx_arm:/# cat /sys/kernel/debug/mmc0/clock
    50000000
    root@plnx_arm:/# echo 1000000 > /sys/kernel/debug/mmc0/clock
    root@plnx_arm:/# cat /sys/kernel/debug/mmc0/clock
    1000000

    root@plnx_arm:/# cd /usr/share/wl18xx/
    root@plnx_arm:/usr/share/wl18xx# ./ap_start.sh
    adding wlan1 interface
    Configuration file: /usr/share/wl18xx/hostapd.conf
    wlcore: PHY firmware version: Rev 8.2.0.0.240
    wlcore: firmware booted (Rev 8.9.0.0.75)
    IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
    wlan1: interface state UNINITIALIZED->COUNTRY_UPDATE

    ./ap_start.sh: line 73: iptables: command not found
    root@plnx_arm:/usr/share/wl18xx# Using interface wlan1 with hwaddr 38:d2:69:b7:a6:77 and ssid "SitIPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready
    araAP"
    wlan1: interface state COUNTRY_UPDATE->ENABLED
    wlan1: AP-ENABLED

    root@plnx_arm:/usr/share/wl18xx#
    root@plnx_arm:/usr/share/wl18xx# wlcore: ERROR SW watchdog interrupt received! starting recovery.
    wlcore: Hardware recovery in progress. FW ver: Rev 8.9.0.0.75
    wlcore: pc: 0x119e1e, hint_sts: 0x00000000 count: 1
    wlcore: down
    wlan1: STA cc:3d:82:5a:76:5c IEEE 802.11: did not acknowledge autieee80211 phy0: Hardware restart was requested
    hentication response
    wlcore: PHY firmware version: Rev 8.2.0.0.240
    wlcore: firmware booted (Rev 8.9.0.0.75)
    random: nonblocking pool is initialized
    wlcore: ERROR SW watchdog interrupt received! starting recovery.
    wlcore: Hardware recovery in progress. FW ver: Rev 8.9.0.0.75
    wlcore: pc: 0x119e1e, hint_sts: 0x00000000 count: 2
    wlcore: down
    ieee80211 phy0: Hardware restart was requested
    wlcore: PHY firmware version: Rev 8.2.0.0.240
    wlcore: firmware booted (Rev 8.9.0.0.75)
    wlcore: ERROR SW watchdog interrupt received! starting recovery.
    wlcore: Hardware recovery in progress. FW ver: Rev 8.9.0.0.75
    wlcore: pc: 0x119e1e, hint_sts: 0x00000000 count: 3
    wlcore: down
    wlan1: STA cc:3d:82:5a:76:5c IEEE 802.11: did not acknowledge autieee80211 phy0: Hardware restart was requested
    hentication response
    wlcore: PHY firmware version: Rev 8.2.0.0.240
    wlcore: firmware booted (Rev 8.9.0.0.75)
    wlcore: ERROR SW watchdog interrupt received! starting recovery.
    wlcore: Hardware recovery in progress. FW ver: Rev 8.9.0.0.75
    wlcore: pc: 0x119e1e, hint_sts: 0x00000000 count: 4
    wlcore: down
    wlan1: STA cc:3d:82:5a:76:5c IEEE 802.11: did not acknowledge autieee80211 phy0: Hardware restart was requested
    hentication response
    wlcore: PHY firmware version: Rev 8.2.0.0.240
    wlcore: firmware booted (Rev 8.9.0.0.75)
    wlcore: ERROR SW watchdog interrupt received! starting recovery.
    wlcore: Hardware recovery in progress. FW ver: Rev 8.9.0.0.75
    wlcore: pc: 0x119e1e, hint_sts: 0x00000000 count: 5
    wlcore: down
    wlan1: STA cc:3d:82:5a:76:5c IEEE 802.11: did not acknowledge autieee80211 phy0: Hardware restart was requested
    hentication response
    wlcore: PHY firmware version: Rev 8.2.0.0.240
    wlcore: firmware booted (Rev 8.9.0.0.75)

    root@plnx_arm:/usr/share/wl18xx#
    root@plnx_arm:/usr/share/wl18xx#
    root@plnx_arm:/usr/share/wl18xx# cat /sys/kernel/debug/mmc0/ios
    clock: 1000000 Hz
    actual clock: 781250 Hz
    vdd: 21 (3.3 ~ 3.4 V)
    bus mode: 2 (push-pull)
    chip select: 0 (don't care)
    power mode: 2 (on)
    bus width: 2 (4 bits)
    timing spec: 2 (sd high-speed)
    signal voltage: 0 (3.30 V)
    driver type: 0 (driver type B)
    root@plnx_arm:/usr/share/wl18xx#

    Let me know your comments. Thanks,
    Surabhi
  • Humm... Can, you take FW logs, from your custom board? The logs may provide some indication, as to why it is failing.

    processors.wiki.ti.com/.../WL_glogger

    Thanks
  • Hi Hari,
    I will give that a try. Since my unit does not have the WL_UART_DBG pin installed on my unit, will have to get that installed.
    I have a question:
    I downloaded the build_utilities from the TI git repository and built the tools and firmware from there. However I am not using wlcore.ko, wlcore_sdio.ko, wl18xx.ko, cfg80211.ko and mac80211.ko from the build. I use a petalinux build and kernel and I have enabled those modules in my kernel and I use them. I dont insmod these modules separately in my kernel, they get laoded as part of my kernel.
    I wanted to make sure that it's OK to use this way ?

    Thanks,
    Surabhi
  • Hi Hari,

    I tried the glogger tool. Please see the file attached I got from the logger when i tried to connect  to the network. Not sure if it captured correctly, can you please take a look.

    Will glogger show debugs of the wlcore driver being loaded also ?

    Thanks,

    Surabhi

    glog_2017_10_30_221220.txt
    Type,Level,Time,Firmware TSF,TSF Delta [uS],File Name,Bin,Function Name,Message,Packet
    0,0,2017-10-30 22:11:58.283,,,,,,Connected to COM3 successfully,
    0,0,2017-10-30 22:12:06.720,,,,,,Logger Started.,
    0,0,2017-10-30 22:12:07.064,,,,,,Bad Packet(s) Received. Syncing...,
    0,0,2017-10-30 22:12:12.861,,,,,,Syncing: 1 of 8 valid packets received,
    0,0,2017-10-30 22:12:12.861,,,,,,Bad Packet(s) Received. Syncing...,
    0,0,2017-10-30 22:12:13.018,,,,,,Syncing: 1 of 8 valid packets received,
    0,0,2017-10-30 22:12:13.018,,,,,,Bad Packet(s) Received. Syncing...,
    0,0,2017-10-30 22:12:13.268,,,,,,Invalid packet(s) received before the sync completed,fffefffe04e00b0eff1001ffef01018003c116000009d07e010202f5fe06770205d0ffff1ffef0fffffa80010147000000de040205100104249080ff78ff80031df31102ffff0601e81001800403c11609808301f001d4e30cff1df8fef7ffd857df07fc0640fff80ff00f19fcfe0104fe18feff06fe81ffffffffffffffffff
    0,0,2017-10-30 22:12:15.174,,,,,,Syncing: 1 of 8 valid packets received,
    0,0,2017-10-30 22:12:15.174,,,,,,Bad Packet(s) Received. Syncing...,
    0,0,2017-10-30 22:12:15.283,,,,,,Syncing: 1 of 8 valid packets received,
    0,0,2017-10-30 22:12:15.283,,,,,,Bad Packet(s) Received. Syncing...,
    0,0,2017-10-30 22:12:15.283,,,,,,Invalid packet(s) received before the sync completed,fffcfffef9c0fffcfefffefffffffffffffffffffffffffffffffffeffceff9ce09cfe8cc088ccfefcfeffbefffffcfefc8c18801c800c9818c019fcfce014e00718ffffe0fff1ff82fcfffffc05f8ff1e012747000000ffff40050102945a204101ff050440f7f50401fefffffffcff470000000502945a2020a043c001fffc
    0,0,2017-10-30 22:12:15.330,,,,,,Syncing: 1 of 8 valid packets received,
    0,0,2017-10-30 22:12:15.346,,,,,,Bad Packet(s) Received. Syncing...,
    0,0,2017-10-30 22:12:15.408,,,,,,Syncing: 1 of 8 valid packets received,
    0,0,2017-10-30 22:12:15.408,,,,,,Bad Packet(s) Received. Syncing...,
    0,0,2017-10-30 22:12:15.502,,,,,,Syncing: 1 of 8 valid packets received,
    0,0,2017-10-30 22:12:15.518,,,,,,Bad Packet(s) Received. Syncing...,
    0,0,2017-10-30 22:12:15.549,,,,,,Invalid packet(s) received before the sync completed,fffffffc01f001c00780c45f0708c004e0fffff90563c74400040000000008ff010721ff010743c11609e0a50102020e01fd80ff0101f047ff0000ef01ffff4fff4f01feff06f8ef07fc01fe841cff88fc40ff0e50eefc010704014027ff570170ff04e001ccfdff07f001fd47c00100ffdf01c204f7fffec7fffc02ffd4ffe8
    0,0,2017-10-30 22:12:15.580,,,,,,Syncing: 1 of 8 valid packets received,
    0,0,2017-10-30 22:12:15.596,,,,,,Bad Packet(s) Received. Syncing...,
    

  • It dis not capture any meaning full logs. Please, make sure to provide the firmware bin file in 'Settings->server' window, after the serial port configuration. You can take the bin file from your target file system '/lib/firmwarre/ti-connectivity/wl18xx-fw-4.bin' or similar..

    Thanks
  • glog_2017_11_01_124802_csv.txtHi Hari,

    Please see the attached logs. I think you are going to like them :) hope to hear that you can find some useful info here.