Application Note Please read the Important Notice and Warnings at the end of this document 002-32689 Rev. **
www.infineon.com page 1 of 33 2021-03-23
AN232689
Wi-Fi software user guide
About this document
Scope and purpose
This document provides an overview of the building blocks of Linux 802.11 ecosystem. This document helps
you to use Wi-Fi modules conveniently with a host of your choice and configure it based on your application.
Intended audience
This document is primarily intended for those using Infineon Wi-Fi solutions with the Linux host of their choice.
If is recommended that you have prior experience with Linux kernel networking or knowledge of the boot flow of
a Linux host processor.
Table of contents
About this document ....................................................................................................................... 1
Table of contents ............................................................................................................................ 1
1 Introduction to Wi-Fi software ................................................................................................. 3
1.1 Block diagram of Wi-Fi software architecture ........................................................................................ 3
2 Platform interface, boot process, and device tree blob ............................................................... 5
2.1 Hardware connection.............................................................................................................................. 5
2.2 Device tree blob ....................................................................................................................................... 6
2.3 Configuring kernel ................................................................................................................................... 6
2.4 WLAN host interface ................................................................................................................................ 7
2.4.1 Multimedia card ................................................................................................................................. 7
2.4.2 PCIe ..................................................................................................................................................... 8
2.4.3 USB ..................................................................................................................................................... 8
3 Linux kernel 802.11 subsystem ................................................................................................ 9
3.1 NL80211 ................................................................................................................................................... 9
3.2 CFG80211 ............................................................................................................................................... 11
3.3 FMAC Bringup ........................................................................................................................................ 12
3.3.1 Backports ......................................................................................................................................... 13
3.3.2 Cross-compilation ............................................................................................................................ 15
3.3.3 Loading the FMAC driver .................................................................................................................. 15
3.3.4 Debug notes ..................................................................................................................................... 16
3.3.5 Frequently encountered issues ....................................................................................................... 17
4 User-space Wi-Fi utils ............................................................................................................ 19
4.1 wpa_supplicant ..................................................................................................................................... 19
4.1.1 Dependencies of wpa_supplicant ................................................................................................... 19
4.1.2 Compilation ...................................................................................................................................... 19
4.1.3 Configuring wpa_supplicant ........................................................................................................... 20
4.1.4 wpa_cli.............................................................................................................................................. 21
4.1.4.1 Options for configuration ........................................................................................................... 21
4.1.4.2 WPA_CLI commands ................................................................................................................... 22
4.1.4.3 Typical STA/AP use-cases ........................................................................................................... 23
4.2 Hostapd ................................................................................................................................................. 25