SWRU561A September   2020  – October 2020 WL1801MOD , WL1805MOD , WL1807MOD , WL1831 , WL1831MOD , WL1835MOD , WL1837MOD

 

  1.   Trademarks
  2. 1Driver Supported Features
  3. 2WL18xx Linux Driver Architecture Overview
  4. 3Platform Integration
    1. 3.1 Configuration required for Board Device Tree (DTS/DTB)
    2. 3.2 Configuring the Kernel for TI WLAN Drivers
    3. 3.3 Configuration required for Board Device Tree (DTS/DTB)
    4. 3.4 Building R8.8 Release Using Build Utilities
    5. 3.5 Building WiLink8 Driver Release Binaries Individually
  5. 4Booting and WLAN Bring-Up
    1. 4.1 Configuring the WiLink8 Target
  6. 5Testing Basic WLAN Functionality
    1. 5.1 STA Mode
      1. 5.1.1 Station Mode Procedure for Unsecured AP
      2. 5.1.2 Station Mode Procedure for Secured AP
      3. 5.1.3 Verifying Connectivity
    2. 5.2 AP Mode
      1. 5.2.1 AP Mode Procedure
      2. 5.2.2 Starting the AP
      3. 5.2.3 Verifying Connectivity
    3. 5.3 Multirole (AP +STA mode)
      1. 5.3.1 General Procedure for Multirole Connection
    4. 5.4 IEEE802.11s Mesh Mode
  7. 6References
  8.   A FAQ and Debug Hints

WL18xx Linux Driver Architecture Overview

WL18xx Linux driver uses the open source components along with interface driver for the device to realize Wi-Fi functionalities. Figure 2-1 shows the high level driver partitioning and architecture.

GUID-20200826-CA0I-MCZ6-8NK8-P6HRKS32V0BW-low.png Figure 2-1 WiLink8 Driver Architecture

The section below briefs the high-level components in the driver layers and their functionality.

  • WiLink8 FW – The FW runs on the device HW to provide the PHY and MAC functionality of the Wi-Fi. The host communicates via SDIO to the WLAN device. On the device side, the WLAN MAC is responsible for the 802.11 MAC functions, and conveys WLAN packets from/to the external host to/from the FW. The MAC is responsible for the timing and the time critical decisions only. The PHY performs the 802.11 PHY functions of encoding/decoding and modulation/ demodulation, and is responsible for the RF functions of up/down modulation to carrier frequency, filtering and amplification.
  • WiLink Driver is an abstraction layer to the device HW and FW. Implements low level operations required to support the MAC driver.
    • wlcore: Implements the low level driver for WiLink devices, supporting mac80211 operations. Contains the common functions for all supported WiLink chipsets.
    • Wl18xx: Implement chip specific functions and services. Supports the wlcore by implementing HW-specific functions.
    • wlcore_sdio: Adaptation layer between the SDIO driver and the WiLink driver.
  • MAC Driver implements layer-2 Wi-Fi protocol requirements (data and control path). This is a generic component, not platform/device specific. This layer consists of the following components.
    • nl80211: Implements a net-link interface between user-space and kernel space components of the Linux Wireless solution.
    • cfg80211: The Linux wireless configuration API. (This is the lowest layer that is common for both soft-MAC and hard-MAC).
    • mac80211: The Linux kernel module implementing MAC-layer functions for Wi-Fi Soft-MAC solution.
  • Hostap package: Contains open-source user-space package. Provides the upper-management layers for all WLAN roles (STA, AP, P2P and Mesh). Generates 2 daemons: wpa_supplicant (STA, P2P, Mesh), and hostapd (AP).
  • Utilities provide initialization and configuration services. Implement debug and statistics capabilities.