This topic is for ConnectCore 6 SOMs that have an Atheros AR6233 wireless MAC. If you are using a ConnectCore 6N SOM that has a Qualcomm QCA6564 wireless MAC, see this topic for ConnectCore 6 Plus, which uses the same Wi-Fi chip. |
Some variants of the ConnectCore 6 system-on-module assemble the Atheros chip capable of 2.4 GHz and 5 GHz connections using 802.11 a/b/g/n. This Wi-Fi chip is connected to uSDHC1 controller.
A maximum of five clients are supported when using Qualcomm’s AR6233 in softAP mode. |
Features
-
IEEE 802.11 a/b/g/n support
-
Software Access Point (SoftAP) support
-
Security (Open, WEP, WPA/WPA2 PSK, WPA/WPA2 Enterprise)
-
Power save
-
Bluetooth coexistence
-
Wi-Fi Direct (P2P)
-
Concurrent mode (AP-STA and STA-P2P)
The Atheros chip does not support Adhoc Wi-Fi mode.
Kernel configuration
You can manage the Wi-Fi driver support through the kernel configuration option:
-
Atheros ath6kl SDIO support (
CONFIG_ATH6KL_SDIO
)
This option is enabled as built-in on the ConnectCore 6 SBC kernel configuration file.
Kernel driver
The Atheros ATH6KL Wi-Fi driver is located at drivers/net/wireless/ath/ath6kl/
.
Device tree bindings and customization
Device tree bindings for the Wi-Fi driver are documented at Documentation/devicetree/bindings/digi,ath6kl,wireless.txt
.
Definition of the Wi-Fi device
wireless {
compatible = "atheros,ath6kl";
ath6kl-p2p-enable;
ath6kl-softmac-enable;
digi,pwrdown-gpios = <&gpio_extender 3 0>;
/* U-Boot will fill in the MAC address here */
};
This node is also used as a placeholder for containing Digi’s Wi-Fi MAC address.
MAC address
The MAC address of the Wi-Fi interface is programmed during manufacturing on the ConnectCore 6 eMMC using U-Boot environment variable wlanaddr
.
It is also printed on the module label.
Before booting the operating system, U-Boot writes the MAC address stored in environment variable wlanaddr
into the device tree Wi-Fi node under property mac-address
.
If the boolean property ath6kl-softmac-enable
is defined in the device tree, the Wi-Fi device will use Digi’s MAC address.
If not, it will use the MAC embedded in the Atheros chip.
Known issues
-
When using the SoftAP mode on Band A, channels used for Dynamic Frequency Selection (DFS) are not supported.
-
The firmware does not support the following configuration modes:
-
Concurrent modes involving P2P mode, such as P2P + SoftAP or P2P + STA
-
The Bluetooth + SoftAP + STA concurrent mode
-
Disabling Wi-Fi
Wi-Fi is enabled by default on the ConnectCore 6 variants that support it. To disable Wi-Fi, add the following lines to your platform device tree:
/* Disable Wi-Fi */
/delete-node/ &{/wireless};
&usdhc1 {
/* Drive WLAN_PWD# low to disable Wi-Fi */
pinctrl-assert-gpios = <&gpio_extender 3 GPIO_ACTIVE_LOW>;
};
This patch:
-
deletes the
wireless
node of the device tree. The existence of this node triggers the initialization scripts that bring up the Wi-Fi interface, so these won’t start when the node is missing.Expect a harmless error message in U-Boot reporting that it couldn’t find the wireless
node to fill in its MAC address. -
makes use of the uSDHC node (the uSDHC connected to the Wi-Fi chip), to drive the WLAN_PWD# line low, thus disabling the Wi-Fi chip.
Even if you disable Wi-Fi, you won’t be able to make use of the uSDHC interface for connecting to other peripherals because it is connected to the Wi-Fi chip internally. For this you need a variant without Wi-Fi chip.