# Summary

## Binary variants
- board-2_US_EU_JP.bin:    US/EU/JP
- board-2_UK_CA_high.bin:  UK/CA, high variant
- board-2_UK-CA_low.bin:   UK/CA, low variant

## Installation
- Copy the correct binary to '/lib/firmware/ath12k/WCN7850/board-2.bin'
- Binary selection is based on relevant regulations

# Intro

These board files are the result of combining board-2.bin from
linux-firmware at commit af4810bd90d1cf0beacb3420e48afa8d5df1054f with
the board files we (Toradex) received in November 2025 as part of
"SX-PCEBE_Final_Bdata_Files_06.11.2025.zip".

Any of these board files can replace "board-2.bin" in '/lib/firmware/ath12k/WCN7850'
since the upstream contents (as long as they are not newer than the
aforementioned commit) are also present.

# Board file selection

Silex informed us of the following:
"Canada (CA) has a special requirement for some 5GHz WiFi channels.
The requirement basically says CA regulatory body may ask WiFi product suppliers
to lower Tx power for some channels. The requirement doesn't say under what
conditions. The product suppliers need to implement a mechanism to support that
request."

Therefore, there are three variants of the board file provided to us.
One for the EU/US/JP, one "low" variant for the UK/CA, and one "high" variant
for the UK/CA.

At the time of writing, the ath12k Linux driver does not support selecting a variant
via the device tree, so instead of packaging all three variants into one board-2.bin,
we decided to create three binaries. This way, the end user can simply install
the relevant binary to '/lib/firmware/ath12k/WCN7850/board-2.bin'.

There are three board files here:
- board-2_US_EU_JP.bin:    US/EU/JP
- board-2_UK_CA_high.bin:  UK/CA, high variant
- board-2_UK-CA_low.bin:   UK/CA, low variant

Please note to select the correct binary for the relevant regulations and that 
the name on the system is '/lib/firmware/ath12k/WCN7850/board-2.bin', NOT
'board-2_US_EU_JP.bin', 'board-2_UK_CA_high.bin' or 'board-2_UK-CA_low.bin'.

Combining was done with the "QCA Swiss Army Knife" utility, specifically
its "ath12k-bdencoder" scripts. [0]

[0]: https://github.com/qca/qca-swiss-army-knife/

Upstream support for these binaries is in progress and we hope to include all
variants in the board-2.bin provided by linux-firmware in the future, with some
system to select the correct variant.
