8.3.2 Serial Peripheral Interface Shield Board

The ATWILC3000 Shield Boards can operate using both SDIO and SPI, and are configured by installing or removing 0 Ohm resistors. By default, the boards are preconfigured for SDIO mode.

To switch to the SPI mode, the user must change the following resistors as shown in the following illustration.

Figure 8-3. ATWILC3000 Shield Board Configured for SPI

The resistors marked with green arrows must be connected, and those marked with red arrows must be removed.

Table 8-3. SPI Resistor Configuration
Resistors to be Removed Resistors to be Connected
R311 R310
R218 R214
R219 R215
R220 R216
R221 R217
  1. Load the Wi-Fi SDIO driver module using the following command:
    # insmode wilc-spi
    Registering wifi device
    Max scan ids= 10,Max scan IE len= 1000,Signal Type= 1,Interface Modes= 844
    Initializing Locks ...
    WILC_SPI spi1.0: WILC SPI probe succes
    # ifconfig wlan0 up
    WILC_SPI spi32765.0 wlan0: INFO [wilc_mac_open]MAC OPEN[d477d800] wlan0
    WILC POWER UP
    WILC_SPI spi32765.0 wlan0: INFO [wilc_init_host_int]Host[d477d800][d477cc00]
    WILC_SPI spi32765.0 wlan0: INFO [wilc_mac_open]*** re-init ***
    WILC_SPI spi32765.0 wlan0: INFO [wlan_init_locks]Initializing Locks ...
    WILC_SPI spi32765.0 wlan0: INFO [wilc_wlan_init]Initializing WILC_Wlan ...
    WILC_SPI spi32765.0 wlan0: INFO [init_chip]Bootrom sts = c
    WILC_SPI spi32765.0 wlan0: INFO [wilc_wlan_initialize]WILC Initialization done
    WILC_SPI spi32765.0 wlan0: INFO [init_irq]IRQ request succeeded IRQ-NUM= 137 on GPIO: 91
    WILC_SPI spi32765.0 wlan0: INFO [wlan_initialize_threads]Initializing Threads ...
    WILC_SPI spi32765.0 wlan0: INFO [wlan_initialize_threads]Creating kthread for transmission
    WILC_SPI spi32765.0 wlan0: INFO [wlan_initialize_threads]Creating kthread for Debugging
    WILC_SPI spi32765.0 wlan0: INFO [wilc_wlan_get_firmware]Detect chip WILC3000
    WILC_SPI spi32765.0 wlan0: INFO [wilc_wlan_get_firmware]loading firmware mchp/wilc3000_wifi_firmware.bin
    WILC_SPI spi32765.0 wlan0: INFO [wilc_wlan_get_firmware]WLAN firmware: mchp/wilc3000_wifi_firmware.bin
    WILC_SPI spi32765.0 wlan0: INFO [wilc_firmware_download]Downloading Firmware ...
    WILC_SPI spi32765.0 wlan0: INFO [wilc_wlan_firmware_download]Downloading firmware size = 137172
    WILC_SPI spi32765.0 wlan0: INFO [wilc_wlan_firmware_download]Offset = 120228
    WILC_SPI spi32765.0 wlan0: INFO [wilc_wlan_firmware_download]Offset = 137172
    WILC_SPI spi32765.0 wlan0: INFO [wilc_firmware_download]Download Succeeded
    WILC_SPI spi32765.0 wlan0: INFO [linux_wlan_start_firmware]Starting Firmware ...
    WILC_SPI spi32765.0 wlan0: INFO [linux_wlan_start_firmware]Waiting for Firmware to get ready ...
    WILC_SPI spi32765.0 wlan0: INFO [linux_wlan_start_firmware]Firmware successfully started
    WILC_SPI spi32765.0 wlan0: INFO [wilc_wlan_initialize]WILC Firmware Ver = WILC_WIFI_FW_REL_15_00_RC4 Build: 9153
    [root@buildroot ~]#