• Rakesh Pillai's avatar
    ath10k: Use bdf calibration variant for snoc targets · 4e938105
    Rakesh Pillai authored
    Board Data File (BDF) is loaded upon driver boot-up procedure.
    The right board data file is identified using bus and qmi-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.
    
    Also using the chip_id for identifying the board data helps
    in dealing with different variants of the board data file based
    on the RF card. If the chip_id is not programmed, a default value
    of 0xff will be used for parsing the board data file.
    
    Add the support to get the variant field from DTSI and
    use this information along with the chip_id to load the vendor
    specific BDF.
    
    The device tree requires addition strings to define the variant name
    
        wifi@a000000 {
                status = "okay";
                qcom,ath10k-calibration-variant = "xyz-v2";
        };
    
        wifi@a800000 {
                status = "okay";
                qcom,ath10k-calibration-variant = "xyz-v1";
        };
    
    This would create the boarddata identifiers for the board-2.bin search
    
     *  bus=snoc,qmi-board-id=16,qmi-chip-id=0,variant=xyz-v1
     *  bus=snoc,qmi-board-id=17,qmi-chip-id=0,variant=xyz-v2
    
    Tested-on: WCN3990 hw1.0 SNOC WLAN.HL.3.1-01040-QCAHLSWMTPLZ-1
    Signed-off-by: default avatarRakesh Pillai <pillair@codeaurora.org>
    Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/1600157948-2042-1-git-send-email-pillair@codeaurora.org
    4e938105
core.c 88 KB