mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-16 04:21:09 -04:00
Merge tag 'ath-next-20260408' of git://git.kernel.org/pub/scm/linux/kernel/git/ath/ath
Jeff Johnson says: ================== ath.git patches for v7.1 (PR #4) Add support for an ath10k device-tree quirk to skip host cap QMI requests. ================== Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
@@ -171,6 +171,12 @@ properties:
|
||||
Quirk specifying that the firmware expects the 8bit version
|
||||
of the host capability QMI request
|
||||
|
||||
qcom,snoc-host-cap-skip-quirk:
|
||||
type: boolean
|
||||
description:
|
||||
Quirk specifying that the firmware wants to skip the host
|
||||
capability QMI request
|
||||
|
||||
qcom,xo-cal-data:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description:
|
||||
@@ -292,6 +298,11 @@ allOf:
|
||||
required:
|
||||
- interrupts
|
||||
|
||||
- not:
|
||||
required:
|
||||
- qcom,snoc-host-cap-8bit-quirk
|
||||
- qcom,snoc-host-cap-skip-quirk
|
||||
|
||||
examples:
|
||||
# SNoC
|
||||
- |
|
||||
|
||||
@@ -808,6 +808,7 @@ ath10k_qmi_ind_register_send_sync_msg(struct ath10k_qmi *qmi)
|
||||
static void ath10k_qmi_event_server_arrive(struct ath10k_qmi *qmi)
|
||||
{
|
||||
struct ath10k *ar = qmi->ar;
|
||||
struct ath10k_snoc *ar_snoc = ath10k_snoc_priv(ar);
|
||||
int ret;
|
||||
|
||||
ret = ath10k_qmi_ind_register_send_sync_msg(qmi);
|
||||
@@ -819,9 +820,15 @@ static void ath10k_qmi_event_server_arrive(struct ath10k_qmi *qmi)
|
||||
return;
|
||||
}
|
||||
|
||||
ret = ath10k_qmi_host_cap_send_sync(qmi);
|
||||
if (ret)
|
||||
return;
|
||||
/*
|
||||
* Skip the host capability request for the firmware versions which
|
||||
* do not support this feature.
|
||||
*/
|
||||
if (!test_bit(ATH10K_SNOC_FLAG_SKIP_HOST_CAP_QUIRK, &ar_snoc->flags)) {
|
||||
ret = ath10k_qmi_host_cap_send_sync(qmi);
|
||||
if (ret)
|
||||
return;
|
||||
}
|
||||
|
||||
ret = ath10k_qmi_msa_mem_info_send_sync_msg(qmi);
|
||||
if (ret)
|
||||
|
||||
@@ -1362,6 +1362,9 @@ static void ath10k_snoc_quirks_init(struct ath10k *ar)
|
||||
|
||||
if (of_property_read_bool(dev->of_node, "qcom,snoc-host-cap-8bit-quirk"))
|
||||
set_bit(ATH10K_SNOC_FLAG_8BIT_HOST_CAP_QUIRK, &ar_snoc->flags);
|
||||
|
||||
if (of_property_read_bool(dev->of_node, "qcom,snoc-host-cap-skip-quirk"))
|
||||
set_bit(ATH10K_SNOC_FLAG_SKIP_HOST_CAP_QUIRK, &ar_snoc->flags);
|
||||
}
|
||||
|
||||
int ath10k_snoc_fw_indication(struct ath10k *ar, u64 type)
|
||||
|
||||
@@ -51,6 +51,7 @@ enum ath10k_snoc_flags {
|
||||
ATH10K_SNOC_FLAG_MODEM_STOPPED,
|
||||
ATH10K_SNOC_FLAG_RECOVERY,
|
||||
ATH10K_SNOC_FLAG_8BIT_HOST_CAP_QUIRK,
|
||||
ATH10K_SNOC_FLAG_SKIP_HOST_CAP_QUIRK,
|
||||
};
|
||||
|
||||
struct clk_bulk_data;
|
||||
|
||||
Reference in New Issue
Block a user