ath10k: search DT for qcom,ath10k-calibration-variant
authorSven Eckelmann <sven.eckelmann@openmesh.com>
Fri, 8 Dec 2017 10:37:42 +0000 (11:37 +0100)
committerKalle Valo <kvalo@qca.qualcomm.com>
Thu, 14 Dec 2017 15:27:54 +0000 (17:27 +0200)
commitd06f26c5c8a41f246a9c40862a77a55725cedbd3
tree95498a2515eb0365e742753bdf2dc1bba54acc9b
parent40fb0eab30ba44bcfc5eb29eb8c78a30025f9e12
ath10k: search DT for qcom,ath10k-calibration-variant

Board Data File (BDF) is loaded upon driver boot-up procedure. The right
board data file is identified on QCA4019 using bus, bmi-chip-id and
bmi-board-id.

The problem, however, can occur when the (default) board data file cannot
fulfill with the vendor requirements and it is necessary to use a different
board data file.

This problem was solved for SMBIOS by adding a special SMBIOS type 0xF8.
Something similar has to be provided for systems without SMBIOS but with
device trees. No solution was specified by QCA and therefore a new one has
to be found for ath10k.

The device tree requires addition strings to define the variant name

    wifi@a000000 {
     status = "okay";
     qcom,ath10k-calibration-variant = "RT-AC58U";
    };

    wifi@a800000 {
     status = "okay";
     qcom,ath10k-calibration-variant = "RT-AC58U";
    };

This would create the boarddata identifiers for the board-2.bin search

 *  bus=ahb,bmi-chip-id=0,bmi-board-id=16,variant=RT-AC58U
 *  bus=ahb,bmi-chip-id=0,bmi-board-id=17,variant=RT-AC58U

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath10k/core.c