[PATCH v4 3/4] wifi: ath12k: add factory test mode support
Jeff Johnson
quic_jjohnson at quicinc.com
Mon Jun 17 14:13:54 PDT 2024
On 6/16/2024 10:29 PM, Aaradhana Sahu wrote:
> Add support to process factory test mode commands(FTM) for calibration.
> By default firmware start with MISSION mode and to process the FTM commands
> firmware needs to be restarted in FTM mode using module parameter ftm_mode.
> The pre-request is all the radios should be down before starting the test.
>
> All ath12k test mode interface related commands specified in enum
> ath_tm_cmd.
>
> When start command ATH_TM_CMD_TESTMODE_START is received, ar state
> is set to test Mode and FTM daemon sends test mode command to wifi
> driver via cfg80211. Wifi driver sends these command to firmware as
> wmi events. If it is segmented commands it will be broken down into
> multiple segments and encoded with TLV header else it is sent to
> firmware as it is.
>
> Firmware response via UTF events, wifi driver creates skb and send
> to cfg80211, cfg80211 sends firmware response to FTM daemon via
> netlink message.
>
> Command to boot in ftm mode
> insmod ath12k ftm_mode=1
>
> Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.1.1-00210-QCAHKSWPL_SILICONZ-1
>
> Signed-off-by: Aaradhana Sahu <quic_aarasahu at quicinc.com>
> ---
...
> 11 files changed, 560 insertions(+), 8 deletions(-)
> create mode 100644 drivers/net/wireless/ath/ath12k/testmode.c
...
> + ftm_cmd->seg_hdr.segmentinfo = le32_encode_bits(num_segments,
> + ATH12K_FTM_SEGHDR_TOTAL_SEGMENTS) |
> + le32_encode_bits(segnumber,
> + ATH12K_FTM_SEGHDR_CURRENT_SEQ);
ath12k-check warns:
drivers/net/wireless/ath/ath12k/testmode.c:265: line length of 99 exceeds 90 columns
drivers/net/wireless/ath/ath12k/testmode.c:267: line length of 95 exceeds 90 columns
suggest splitting the first line at the =
ftm_cmd->seg_hdr.segmentinfo =
le32_encode_bits(num_segments,
ATH12K_FTM_SEGHDR_TOTAL_SEGMENTS) |
le32_encode_bits(segnumber,
ATH12K_FTM_SEGHDR_CURRENT_SEQ);
More information about the ath12k
mailing list