linux4wilc / driver

DEPRECATED: Updated Linux drivers for the ATWILC1000/ATWILC3000 products are located at https://github.com/linux4microchip/linux/tree/master/drivers/net/wireless/microchip/wilc1000. To simplify development, the legacy Linux4WILC was merged into the Linux4Microchip repo where driver development continues (Please refer latest ATWILC1000/ATWILC 3000 Wi-Fi Link Controller Linux User Guide) Driver code for Microchip ATWILC Wireless Devices (ATWILC1000 & ATWILC3000)
https://www.microchip.com/wwwproducts/en/ATWILC1000
32 stars 20 forks source link

Failed to configure firmware #26

Closed mammadjv closed 5 years ago

mammadjv commented 5 years ago

I have an ATWINC1510-MR210UB connected to imx6, and I'm using your driver(Release 15.2.rc1) in the kernel 4.9. Using "dmesg | grep -i wilc" command outputs the following errors: "[cfg_set:1808] Timed Out" "[wilc_wlan_initialize:1185] Failed to configure firmware"

Please see the whole kernel output:

[ 2.521595] WILC_SPI spi1.0: spiModalias: wilc1000, spiMax-Speed: 48000000 [ 2.528709] (unnamed net_device) (uninitialized): INFO [wilc_create_wiphy]Registering wifi device [ 2.537619] (unnamed net_device) (uninitialized): INFO [wilc_wfi_cfg_alloc]Allocating wireless device [ 2.547822] (unnamed net_device) (uninitialized): INFO [wilc_create_wiphy]Registering wifi device [ 2.556739] (unnamed net_device) (uninitialized): INFO [wilc_wfi_cfg_alloc]Allocating wireless device [ 2.569399] WILC_SPI spi1.0: succesfully got gpio_reset [ 2.574771] WILC_SPI spi1.0: succesfully got gpio_chip_en [ 2.582744] WILC_SPI spi1.0: succesfully got gpio_reset [ 2.588103] WILC_SPI spi1.0: succesfully got gpio_chip_en [ 2.598853] WILC_SPI spi1.0: WILC SPI probe success [ 7.172370] WILC_SPI spi1.0 wlan0: INFO [wilc_mac_open]MAC OPEN[8c9e8000] wlan0 [ 7.180943] WILC POWER UP [ 7.183732] WILC_SPI spi1.0 wlan0: INFO [wilc_init_host_int]Host[8c9e8000][8c0ada00] [ 7.191925] WILC_SPI spi1.0 wlan0: INFO [wilc_mac_open] re-init [ 7.198549] WILC_SPI spi1.0 wlan0: INFO [wlan_init_locks]Initializing Locks ... [ 7.205995] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_init]Initializing WILC_Wlan [ 7.220064] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_initialize]WILC Initialization done [ 7.229305] WILC_SPI spi1.0: got gpio_irq successfully [ 7.234866] WILC_SPI spi1.0 wlan0: INFO [init_irq]IRQ request succeeded IRQ-NUM= 176 [ 7.242656] WILC_SPI spi1.0 wlan0: INFO [wlan_initialize_threads]Initializing Threads ... [ 7.250923] WILC_SPI spi1.0 wlan0: INFO [wlan_initialize_threads]Creating kthread for transmission [ 7.263657] WILC_SPI spi1.0 wlan0: INFO [wlan_initialize_threads]Creating kthread for Debugging [ 7.273520] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_get_firmware]Detect chip WILC1000 [ 7.281320] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_get_firmware]loading firmware mchp/wilc1000_wifi_firmware.bin [ 7.291576] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_get_firmware]WLAN firmware: mchp/wilc1000_wifi_firmware.bin [ 7.315224] WILC_SPI spi1.0 wlan0: INFO [wilc_firmware_download]Downloading Firmware ... [ 7.323558] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_firmware_download]Downloading firmware size = 134996 [ 7.474468] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_firmware_download]Offset = 119680 [ 7.505409] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_firmware_download]Offset = 134996 [ 7.513263] WILC_SPI spi1.0 wlan0: INFO [wilc_firmware_download]Download Succeeded [ 7.520910] WILC_SPI spi1.0 wlan0: INFO [linux_wlan_start_firmware]Starting Firmware ... [ 7.536093] WILC_SPI spi1.0 wlan0: INFO [linux_wlan_start_firmware]Waiting for FW to get ready ... [ 7.620786] WILC_SPI spi1.0 wlan0: INFO [linux_wlan_start_firmware]Firmware successfully started [ 7.639685] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_initialize]WILC Firmware Ver = WILC_WIFI_FW_REL_15_2_RC1 Build: 10653M [ 7.650734] WILC_SPI spi1.0 wlan0: INFO [linux_wlan_init_test_config]Start configuring Firmware [ 10.713415] WILC_SPI spi1.0 wlan0: ERR [cfg_set:1808] Timed Out [ 10.719373] WILC_SPI spi1.0 wlan0: ERR [wilc_wlan_initialize:1185] Failed to configure firmware [ 10.729692] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_stop]Read RESET Reg fffffbff : Retry10 [ 10.738139] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_stop]Bit 10 reset after : Retry 10 [ 10.746476] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_stop]Read RESET Reg fffffbff : Retry10 [ 10.755230] WILC_SPI spi1.0 wlan0: INFO [wlan_deinitialize_threads]Deinitializing Threads [ 10.763488] WILC_SPI spi1.0 wlan0: INFO [wlan_deinitialize_threads]Deinit debug Thread [ 10.771455] WILC_SPI spi1.0 wlan0: INFO [debug_thread]Exit debug thread [ 10.778264] WILC_SPI spi1.0 wlan0: INFO [wlan_deinitialize_threads]Deinitializing Threads [ 10.786821] WILC_SPI spi1.0 wlan0: INFO [wlan_deinit_locks]De-Initializing Locks [ 10.794286] WILC_SPI spi1.0 wlan0: ERR [wilc_wlan_initialize:1207] WLAN initialization FAILED [ 10.802862] WILC_SPI spi1.0 wlan0: ERR [wilc_mac_open:1251] Failed to initialize wilc [ 10.810924] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 10.818396] WILC_SPI spi1.0 wlan0: ERR [handle_set_wfi_drv_handler:433] Failed to set driver handler [ 12.123580] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1886] Get Timed out [ 12.131023] WILC_SPI spi1.0 wlan0: ERR [handle_get_tx_pwr:2794] Failed to get TX PWR [ 12.138896] WILC_SPI spi1.0 wlan0: INFO [get_tx_power]Got tx power 0 [ 12.159482] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1886] Get Timed out [ 12.167035] WILC_SPI spi1.0 wlan0: ERR [handle_get_tx_pwr:2794] Failed to get TX PWR [ 12.178149] WILC_SPI spi1.0 wlan0: INFO [get_tx_power]Got tx power 0 [ 12.187904] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1886] Get Timed out [ 12.195408] WILC_SPI spi1.0 wlan0: ERR [handle_get_tx_pwr:2794] Failed to get TX PWR [ 12.205384] WILC_SPI spi1.0 wlan0: INFO [get_tx_power]Got tx power 0 [ 12.215694] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1886] Get Timed out [ 12.223200] WILC_SPI spi1.0 wlan0: ERR [handle_get_tx_pwr:2794] Failed to get TX PWR [ 12.231367] WILC_SPI spi1.0 wlan0: INFO [get_tx_power]Got tx power 0 [ 12.241728] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 1 [ 12.254436] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 12.261960] WILC_SPI spi1.0 wlan0: ERR [handle_register_frame:2571] Failed to frame register [ 12.270857] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 1 [ 12.281075] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 12.288594] WILC_SPI spi1.0 wlan0: ERR [handle_register_frame:2571] Failed to frame register [ 12.297678] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 1 [ 12.312771] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 1 [ 12.316656] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 12.316666] WILC_SPI spi1.0 wlan0: ERR [handle_register_frame:2571] Failed to frame register [ 12.338762] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 12.339518] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 1 [ 12.339604] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 1 [ 12.339676] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 1 [ 12.376443] WILC_SPI spi1.0 wlan0: ERR [handle_register_frame:2571] Failed to frame register [ 12.385649] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 12.393215] WILC_SPI spi1.0 wlan0: ERR [handle_register_frame:2571] Failed to frame register [ 12.402030] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 12.409507] WILC_SPI spi1.0 wlan0: ERR [handle_register_frame:2571] Failed to frame register [ 12.418725] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 12.426285] WILC_SPI spi1.0 wlan0: ERR [handle_register_frame:2571] Failed to frame register [ 12.440240] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1886] Get Timed out [ 12.447817] WILC_SPI spi1.0 wlan0: ERR [handle_get_tx_pwr:2794] Failed to get TX PWR [ 12.455682] WILC_SPI spi1.0 wlan0: INFO [get_tx_power]Got tx power 0 [ 12.462292] WILC_SPI spi1.0 wlan0: INFO [wilc_mac_open]MAC OPEN[8c9e8000] wlan0 [ 12.494399] WILC_SPI spi1.0 wlan0: INFO [wilc_init_host_int]Host[8c9e8000][8c0ada00] [ 12.503741] WILC_SPI spi1.0 wlan0: INFO [wilc_mac_open] re-init [ 12.510306] WILC_SPI spi1.0 wlan0: WRN [wilc_wlan_initialize: 1209]wilc already initialized [ 12.519103] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 12.526656] WILC_SPI spi1.0 wlan0: ERR [handle_set_wfi_drv_handler:433] Failed to set driver handler [ 12.537684] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 12.545296] WILC_SPI spi1.0 wlan0: ERR [handle_set_operation_mode:459] Failed to set operation mode [ 12.556413] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1886] Get Timed out [ 12.564059] WILC_SPI spi1.0 wlan0: ERR [handle_get_mac_address:480] Failed to get mac address [ 12.575444] WILC_SPI spi1.0 wlan0: INFO [wilc_mac_open]Mac address: 00:00:00:00:00:00 [ 12.584568] WILC_SPI spi1.0 wlan0: ERR [wilc_mac_open:1275] Wrong MAC address [ 12.602723] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 12.610188] WILC_SPI spi1.0 wlan0: ERR [handle_set_wfi_drv_handler:433] Failed to set driver handler [ 12.620848] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_deinitialize]Deinitializing wilc ... [ 12.629045] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_deinitialize]Disabling IRQ [ 12.636250] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_deinitialize]Deinitializing Threads [ 12.644270] WILC_SPI spi1.0 wlan0: INFO [wlan_deinitialize_threads]Deinitializing Threads [ 12.652478] WILC_SPI spi1.0 wlan0: INFO [wlan_deinitialize_threads]Deinit debug Thread [ 12.660468] WILC_SPI spi1.0 wlan0: INFO [wlan_deinitialize_threads]Deinitializing Threads [ 12.668739] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_deinitialize]Deinitializing IRQ [ 12.678355] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_stop]Read RESET Reg fffffbff : Retry10 [ 12.686619] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_stop]Bit 10 reset after : Retry 10 [ 12.694664] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_stop]Read RESET Reg fffffbff : Retry10 [ 12.703378] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_deinitialize]Deinitializing WILC Wlan [ 12.711487] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_deinitialize]Deinitializing Locks [ 12.719316] WILC_SPI spi1.0 wlan0: INFO [wlan_deinit_locks]De-Initializing Locks [ 12.726765] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_deinitialize]wilc deinitialization Done [ 12.736219] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 0 [ 12.746318] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Return since mac is closed [ 12.755813] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 0 [ 12.765921] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Return since mac is closed [ 12.776549] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 0 [ 12.786646] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Return since mac is closed [ 12.795355] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 0 [ 12.805451] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Return since mac is closed [ 12.814560] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 0 [ 12.824629] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Return since mac is closed [ 12.833084] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 0 [ 12.843121] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Return since mac is closed [ 12.851588] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Frame registering Frame Type: d0: Boolean: 0 [ 12.861642] WILC_SPI spi1.0 wlan0: INFO [wilc_mgmt_frame_register]Return since mac is closed [ 14.645709] WILC_SPI spi1.0 wlan0: INFO [wilc_mac_open]MAC OPEN[8c9e8000] wlan0 [ 14.669168] WILC_SPI spi1.0 wlan0: INFO [wilc_init_host_int]Host[8c9e8000][8c0ada00] [ 14.683307] WILC_SPI spi1.0 wlan0: INFO [wilc_mac_open] re-init [ 14.689871] WILC_SPI spi1.0 wlan0: INFO [wlan_init_locks]Initializing Locks ... [ 14.697255] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_init]Initializing WILC_Wlan [ 14.705448] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_initialize]WILC Initialization done [ 14.713491] WILC_SPI spi1.0: got gpio_irq successfully [ 14.718905] WILC_SPI spi1.0 wlan0: INFO [init_irq]IRQ request succeeded IRQ-NUM= 176 [ 14.726732] WILC_SPI spi1.0 wlan0: INFO [wlan_initialize_threads]Initializing Threads ... [ 14.734968] WILC_SPI spi1.0 wlan0: INFO [wlan_initialize_threads]Creating kthread for transmission [ 14.745618] WILC_SPI spi1.0 wlan0: INFO [wlan_initialize_threads]Creating kthread for Debugging [ 14.754629] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_get_firmware]Detect chip WILC1000 [ 14.762452] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_get_firmware]loading firmware mchp/wilc1000_wifi_firmware.bin [ 14.772682] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_get_firmware]WLAN firmware: mchp/wilc1000_wifi_firmware.bin [ 14.783218] WILC_SPI spi1.0 wlan0: INFO [wilc_firmware_download]Downloading Firmware ... [ 14.791334] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_firmware_download]Downloading firmware size = 134996 [ 14.929160] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_firmware_download]Offset = 119680 [ 14.956682] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_firmware_download]Offset = 134996 [ 14.964552] WILC_SPI spi1.0 wlan0: INFO [wilc_firmware_download]Download Succeeded [ 14.972197] WILC_SPI spi1.0 wlan0: INFO [linux_wlan_start_firmware]Starting Firmware ... [ 14.985654] WILC_SPI spi1.0 wlan0: INFO [linux_wlan_start_firmware]Waiting for FW to get ready ... [ 15.068477] WILC_SPI spi1.0 wlan0: INFO [linux_wlan_start_firmware]Firmware successfully started [ 15.086548] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_initialize]WILC Firmware Ver = WILC_WIFI_FW_REL_15_2_RC1 Build: 10653M [ 15.097564] WILC_SPI spi1.0 wlan0: INFO [linux_wlan_init_test_config]Start configuring Firmware [ 18.153236] WILC_SPI spi1.0 wlan0: ERR [cfg_set:1808] Timed Out [ 18.159196] WILC_SPI spi1.0 wlan0: ERR [wilc_wlan_initialize:1185] Failed to configure firmware [ 18.169519] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_stop]Read RESET Reg fffffbff : Retry10 [ 18.177935] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_stop]Bit 10 reset after : Retry 10 [ 18.186255] WILC_SPI spi1.0 wlan0: INFO [wilc_wlan_stop]Read RESET Reg fffffbff : Retry10 [ 18.194994] WILC_SPI spi1.0 wlan0: INFO [wlan_deinitialize_threads]Deinitializing Threads [ 18.203258] WILC_SPI spi1.0 wlan0: INFO [wlan_deinitialize_threads]Deinit debug Thread [ 18.211228] WILC_SPI spi1.0 wlan0: INFO [debug_thread]Exit debug thread [ 18.218040] WILC_SPI spi1.0 wlan0: INFO [wlan_deinitialize_threads]Deinitializing Threads [ 18.226507] WILC_SPI spi1.0 wlan0: INFO [wlan_deinit_locks]De-Initializing Locks [ 18.233977] WILC_SPI spi1.0 wlan0: ERR [wilc_wlan_initialize:1207] WLAN initialization FAILED [ 18.242552] WILC_SPI spi1.0 wlan0: ERR [wilc_mac_open:1251] Failed to initialize wilc [ 18.250636] WILC_SPI spi1.0 wlan0: ERR [wilc_send_config_pkt:1903] Set Timed out [ 18.258115] WILC_SPI spi1.0 wlan0: ERR [handle_set_wfi_drv_handler:433] Failed to set driver handler

Does anyone have a solution?

HDC67 commented 5 years ago

Don't know much about this part but this driver is for the WILC1000 and WILC3000. Whilst the WINC1500 might have a WILC1000 inside, it's not the same driver I'd expect.

AdhamAbozaeid commented 5 years ago

Hi @mammadjv WINC1500 should work same as WILC1000. The difference is that WINC1500 has an embedded flash that stores the FW, so if you use it with WILC SW, you will be bypassing the flashed FW, and will be using the FW from the host.

It looks like what you are having is a communication problem between the host and the FW, causing the configuration packets sent during initialization to fail

[ 7.650734] WILC_SPI spi1.0 wlan0: INFO [linux_wlan_init_test_config]Start configuring Firmware
[ 10.713415] WILC_SPI spi1.0 wlan0: ERR [cfg_set:1808] Timed Out
[ 10.719373] WILC_SPI spi1.0 wlan0: ERR [wilc_wlan_initialize:1185] Failed to configure firmware

How is the WINC1500 board connected to the host? Can you check the logs coming out from the WINC1500 board?

mammadjv commented 5 years ago

Hi @AdhamAbozaeid our ARM-based host(imx6) is connected to winc1510 via SPI. The following image is the schematic of wifi module in our board, schematic

And your next question about checking the logs coming out from the WINC1500 board, As I said, we just connect SPI to the main host and not UART, So we can't check the logs coming from WINC1500.

In addition, we found that just this line of the driver fails because of timeout(line 955 in the file "linux_wlan.c" in "linux_wlan_init_test_config" function)

if (!cfg_set(vif, 0, WID_11N_IMMEDIATE_BA_ENABLED, c_val, 1, 1 , 0))
        goto fail;

we do not have the same problem with "WILC_LINUX_15_00" tag of firmware and driver, but even with that version, it doesn't work stable and there is a lag in connection with both AP and STA mode. Also, we see a lot of fail command in our dmesg log.

AdhamAbozaeid commented 5 years ago

Hi @mammadjv Is it possible to connect a UART FTDI cable to the UART-TXD of the module and check its output? I want to make sure whether the firmware is responding or not. Once you have these information, please open a ticket on Microchip's salesforce portal http://microchipsupport.force.com/ for the respective team to help you further

Mateusz-Gwara commented 5 years ago

If you need a reference regarding the corresponding device tree for an spi connection, maybe this might help: `&spi0 { compatible = "ti,omap4-mcspi"; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&spi0_pins>; ti,spi-num-cs = <3>; cs-gpios = <0>, <&gpio0 19 GPIO_ACTIVE_LOW>, <&gpio1 27 GPIO_ACTIVE_LOW>;

spi@0 {
    compatible = "generic_spi";
    spi-max-frequency = <48000000>;
    reg = <0>;
    status = "okay";
};

spi@1 {
    compatible = "generic_spi";
    spi-max-frequency = <48000000>;
    reg = <1>;
    status = "okay";
};

wilc_spi@2 {
    compatible = "microchip,wilc1000", "microchip,wilc3000";
    spi-max-frequency = <48000000>;
    reg = <2>;
    irq-gpios = <&gpio2 24 0>;
    reset-gpios = <&gpio2 23 0>;
    chip_en-gpios = <&gpio2 22 0>;
    status = "okay";
};

};`

I'm using an AM3352 Cortex-A8 core so your spi config "might" be different but in my case the spi node "0" with "cs-gpios = <0>" was the missing part which was causing the chip select lines to fail.

mammadjv commented 5 years ago

@AdhamAbozaeid We connected the module to UART and the connection is ok, but output was some unclear binary texts. we set the baud-rate to 115200, stop-bit to 1, and parity to None according to the datasheet, are these settings correct?

AdhamAbozaeid commented 5 years ago

@mammadjv Yes, these are the correct settings. Flow control should be XON/OFF. It looks like the firmware wasn't downloaded successfully, or didn't start

AdhamAbozaeid commented 5 years ago

@mammadjv , do you have a salesforce ticket open for this issue?

AdhamAbozaeid commented 5 years ago

@mammadjv , do you have update on this issue?

mammadjv commented 5 years ago

Hi @AdhamAbozaeid We replaced our ATWINC1510-MR210UB module with ATWILC1000-MR110PB and it finally worked. Thanks for your help.

walidraach commented 5 years ago

Hi @AdhamAbozaeid how to bypass the flashed FW on ATWINC1500 and use WILC1000 FW please?

AdhamAbozaeid commented 5 years ago

Hi @walidraach The WILC Linux driver will do that automatically