2.4.1 WLAN
The Linux WLAN implements Linux software-specific operations:
- Controls the Wi-Fi® Link Controller device power
- Initializes the chip
- Downloads and starts the firmware
- Initializes/de-initializes the module during insert/remove
- Registers Interrupt Service Register (ISR)
- Sends configuration packets
- Turns ON and turns OFF the chip by controlling the
CHIP_ENandRESET_NGPIOs - Registers the net_device interface
- Processes TX Queue, sending packets to the firmware
- Receives packets from the firmware and delivers received packets to the Linux stack
- Implements the following net_device operations:
mac_init_fn: This function will be called automatically by OS when module insertedwilc_mac_open: This function is called when this device is set up using theifconfigcommand or on starting thewpa_supplicantservicewilc_mac_close: This function is called when the network interface is down (for example,ifconfigwlan0 down)wilc_mac_xmit: Sends packet to MAC hardwaremac_stats: Reads MAC statisticswilc_set_multicast_list: Sets the multicast list through WIDwilc_set_mac_addr: Sets the network interface MAC address
