From nobody Sat Jul 25 06:09:49 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A379421CA02 for ; Fri, 17 Jul 2026 01:43:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784252592; cv=none; b=dgmd1ls/isVzUH4es/OGlsGw1tpgDXgXFpkafbGGnOygAJkS5EgFTlXyZX6hodp5lU//hqZADpwvbny+7IyMh2D9tJGvo4w4wo43OB89rGmiCc6yLu6Sl/v1owRJzg8mfIsSZuMc7KDUEkLXlellZb32B2A2d9Y+WUVcJQm4gDU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784252592; c=relaxed/simple; bh=Xdh4HC0w1virvnvUP2J/JqG/iwNNhMzb/vtgJvs+dVg=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=jIM21jIn5ww+I5CBXUJW1ScXQqnNXM1etlh4r8uNJlqUwzP7CFEXWEdQtfDdaIPotWzYOndIcHKPB2VrZg3uSU9XigN71sdBroq/vI6RRZQ6jtlC/ycVG2rxF19jjAYsydmjxHMytMu/3jyR8tasST4fcAeFWJyabxTLrbsLwYg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=jlh4gPsr; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=GmgGHpRh; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="jlh4gPsr"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="GmgGHpRh" Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 66GNImOD4179689 for ; Fri, 17 Jul 2026 01:43:09 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:message-id:mime-version :subject:to; s=qcppdkim1; bh=lgYtWm8u7UuQscHOeb+mbfETys0daizIPaf nM922E4M=; b=jlh4gPsrLWIhH0ukZ6RWhPa5x0Qu3EZeqSTMRLTf7bJlxkdhE8O RplMDymr+kECc27DwCL5AzcjxjrilfOXo5D0JeXWYeKegca+ogaKDZEKOTnDSdIl MjCkqIh1DEbQaANScv+KBg9qqkxY9Pc/pqGKwSDJzUA5V4C88JCot+2bTFVxPD1j oW0Owm3SisZPsTnDnnyd8ixlsosGqgBtwuYqjRmumDQFxRDNAjH34aMzCiHsPxET CppzoSIfx+wUTPtfF7/LT2IBBcn1DZU8zNCbqU9CDVuLqmyJ9B5mymgntBfC2XwB kVnpHTKuDHxu2hk5JnshYJbPDPl93dfTqJQ== Received: from mail-pj1-f69.google.com (mail-pj1-f69.google.com [209.85.216.69]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ff2f2syaq-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 17 Jul 2026 01:43:09 +0000 (GMT) Received: by mail-pj1-f69.google.com with SMTP id 98e67ed59e1d1-385d2703b64so826053a91.1 for ; Thu, 16 Jul 2026 18:43:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1784252588; x=1784857388; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=lgYtWm8u7UuQscHOeb+mbfETys0daizIPafnM922E4M=; b=GmgGHpRhvSlfJxEK2npFwEItvA9A8IzLrr8QyCocZeglzKrJCIEVAC0kZoGQgFmViz cGnlRlbmqnaZ6noDBIlXnYj8KeTXn4ESPsh+/K6mpQCv/LfXTCeC4QzRXdltC7QRQOsa EsH8JTZ/dIn3TZSz5+8StkSjIhJBvUXRXkkuxG7dChbEqa25nf86oDGamgGHX5PHCPab zghU/8Qn/9clc7uMcL/Izf8a7biseHjGPrthXXg3GGM3A+02l8PILybDzlrBFA3ibQ9k sfSmVnE0e4vjsq/+Kyre8DAkAMFHvPucLHgvmiwU+j1dveogtJMyaE8cpkbseGewM+hU 25Iw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784252588; x=1784857388; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=lgYtWm8u7UuQscHOeb+mbfETys0daizIPafnM922E4M=; b=gzmH09uUfpV1du9nLqLy0MhxQ8BV1Ux5X4yKYdbDzMIrIONP9gedDv4ztPwwGIStSu 39eQOGni0IJ2OWchZOw0FupV/ggcArGntuYpvI7gws4/f6A88ux8rstIf4BVrCLzD0r6 +qR/8xpcua9E7enkMmxpY6xcemqu58PNXuzcaXVHJn34Md83I2B0dNA0jHwZ/u5unBVT O2TVizTnH6J52LiDaOXnm9vZjuksPsPwAWm3DIUsse7WvPitbDCTHILhErwD4ZLgkZVE gi8900+ficAyeCmS7PcJDkom8KwIfYoS9UXBwzL+kfE2pJay8dna1h3J/xXhezaECLFv WyIA== X-Forwarded-Encrypted: i=1; AHgh+RryNcB5/bIEOPwuDcliSZQ7+/aLKFY29h05FiXdifxjJeTts+Oq/Kqkk/Uddc1TAPGYSc8FaUigQTCZLaY=@vger.kernel.org X-Gm-Message-State: AOJu0YxroQAos14pqPEIcbj7E55YCI+PFweYHl0UF62JbBbcNH/YX2AW 0S6SemlMvl1Dg5Bjxv85SEX2M6e0B4FdU2UVTRjN+P+hHuzq1Qrm7Ef7VyQ8hRM1jWxAgtYvEtB HmHgFc1+6gm9JHPXI0j8UyrM6vNXAzxr/jeE9U40uP3LYINRAaC6RJ+TAgoj18rQtkq5qLWM/mv Y= X-Gm-Gg: AfdE7cnOcqyi2kaDJa0AizV0RpfdQ0QuHeSLsu4c3+CDtlgMDZp/5jcGKYndYgGJOdH UjGeSZMqO7WmH6ww3N4b3fGp2XoINSgBhTnkWetZlwfhmRTjMTh4Et9rn4C2yHLoPyltvCER3Nt bIDD2XoBbUQnd9BeRc26Gq9XSBh12q3P8tnNmhzomUN95losUuzVXWXwk9VbHrYbL3eX21x0uPD kPPFIKMvLXXlg5UTlBxmUBb0vV9IIhpE76a1isWAvWh0SNpy+WkYO27vWg2EDTrJTaRB1dDlSH7 kTcNJ0+w+Yu+DtNR09qojYLg8RU0xkFoqYeEnSRieUiDg0Zm1oMu2XG7Fdd4am8QdBZrKQV+2ug SrW1hJpgrYBaIUS2fp+ptiD84fQmHkfBj X-Received: by 2002:a05:6a20:729f:b0:3ba:d7b0:fcac with SMTP id adf61e73a8af0-3c38d8cffa8mr6107712637.5.1784252588140; Thu, 16 Jul 2026 18:43:08 -0700 (PDT) X-Received: by 2002:a05:6a20:729f:b0:3ba:d7b0:fcac with SMTP id adf61e73a8af0-3c38d8cffa8mr6107686637.5.1784252587696; Thu, 16 Jul 2026 18:43:07 -0700 (PDT) Received: from hu-daizhuan-sha.qualcomm.com ([114.94.8.21]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-31429ff04absm898423eec.8.2026.07.16.18.43.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Jul 2026 18:43:06 -0700 (PDT) From: Daizhuang Bai To: jjohnson@kernel.org Cc: ath12k@lists.infradead.org, linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org, daizhuang.bai@oss.qualcomm.com Subject: [PATCH ath-next] wifi: ath12k: Set DTIM policy to stick mode for station interface Date: Fri, 17 Jul 2026 07:13:02 +0530 Message-ID: <20260717014302.284034-1-daizhuang.bai@oss.qualcomm.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Proofpoint-ORIG-GUID: CbDprDQtiO5oQ5NQew_tl7a9otAzHz9n X-Proofpoint-Spam-Info: AW1haW4tMjYwNzE3MDAxNCBTYWx0ZWRfX9hLbULEcQFea Z0kULOFKUfLek5yUy51gE1hQviW98sJbe1vkMWFH8t/T+eqlwHR9k+7Gbc9ERCjYi7hYeKSkU3C 99/UmW5ESgqzNWO+CyxSGITgWvXn1Wg= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNzE3MDAxNCBTYWx0ZWRfX+urHXXdKjFaL pV4lY0XJGkSvp822XNR5uPm9GwCZJQGcfu2NFN1HDLBAxJS3gKSpJZrQa53zDxvQ1+tD4j0FcS0 0KHWogDUUYEKj45gnhXVf8Vl8K1ypZrJw4+1kZRWCLHPkHklZTbDLTpYD1BstKO7SrUR2rnnoAf kgsRcvPKLx5nvRl+4yc2RYgz5p00Y0y1RGZrWbSIsl0Z7NeQtTiKC/RqgPcP+LFkMntH+9Y8Fwd wp8ftibEtEWWSnUZnzAFZVp4Nb1vDOWxVM3O3SfbrnoaZdO80DZeozzJn6zCCxb/Xe3l+agRovk 8ukd5ovjcONPr56+qaGwMAQqV3PNe5s7oWMIBVw/QUEJDP3gGwAXKcoWG/5fXpVOcLpad28o8ku gCmt+lNE1xBqubW0tHa/9IOCsPdL0fXci+GPaBM5FsDA5Cz/t7QQ8fTTOCcH5vTf+v5WIFIkiy9 69B10ivobJhnYyskrlA== X-Authority-Analysis: v=2.4 cv=NcTWEWD4 c=1 sm=1 tr=0 ts=6a5988ad cx=c_pps a=vVfyC5vLCtgYJKYeQD43oA==:117 a=Uz3yg00KUFJ2y2WijEJ4bw==:17 a=RAioF0-LDSMA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=EUspDBNiAAAA:8 a=ApbYuknxaN76yxS-R38A:9 a=rl5im9kqc5Lf4LNbBjHf:22 X-Proofpoint-GUID: CbDprDQtiO5oQ5NQew_tl7a9otAzHz9n X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-07-16_08,2026-07-15_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 malwarescore=0 priorityscore=1501 lowpriorityscore=0 clxscore=1011 phishscore=0 bulkscore=0 spamscore=0 adultscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2607170014 Content-Type: text/plain; charset="utf-8" Currently, the station always follows the listen interval regardless of the DTIM value. The DTIM function does not work as expected. The default value of the listen interval is 5 so that the STA wakes up every 500ms when power save is on. This can cause a data transmission delay. Set the DTIM policy to DTIM stick mode so that the station follows the AP DTIM interval rather than the listen interval, which is set in the peer assoc command. DTIM stick mode is preferable per the firmware team's reques= t. Apply this only for STA vdevs and only when STA power save is supported, to avoid affecting unsupported targets and P2P client vdevs. Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.1.c7-00108-QCAHMTSWPL_V1.0_V2.0_SIL= ICONZ_UPSTREAM-3 Signed-off-by: Daizhuang Bai Reviewed-by: Baochen Qiang Reviewed-by: Rameshkumar Sundaram --- drivers/net/wireless/ath/ath12k/mac.c | 11 +++++++++++ drivers/net/wireless/ath/ath12k/wmi.h | 7 +++++++ 2 files changed, 18 insertions(+) diff --git a/drivers/net/wireless/ath/ath12k/mac.c b/drivers/net/wireless/a= th/ath12k/mac.c index 16339469c24c..706104168650 100644 --- a/drivers/net/wireless/ath/ath12k/mac.c +++ b/drivers/net/wireless/ath/ath12k/mac.c @@ -3985,6 +3985,17 @@ static void ath12k_bss_assoc(struct ath12k *ar, ath12k_warn(ar->ab, "failed to set vdev %i OBSS PD parameters: %d\n", arvif->vdev_id, ret); =20 + if (ar->ab->hw_params->supports_sta_ps && + ahvif->vdev_type =3D=3D WMI_VDEV_TYPE_STA && + ahvif->vdev_subtype =3D=3D WMI_VDEV_SUBTYPE_NONE) { + ret =3D ath12k_wmi_vdev_set_param_cmd(ar, arvif->vdev_id, + WMI_VDEV_PARAM_DTIM_POLICY, + WMI_DTIM_POLICY_STICK); + if (ret) + ath12k_warn(ar->ab, "failed to set vdev %d stick DTIM policy: %d\n", + arvif->vdev_id, ret); + } + if (test_bit(WMI_TLV_SERVICE_11D_OFFLOAD, ar->ab->wmi_ab.svc_map) && ahvif->vdev_type =3D=3D WMI_VDEV_TYPE_STA && ahvif->vdev_subtype =3D=3D WMI_VDEV_SUBTYPE_NONE) diff --git a/drivers/net/wireless/ath/ath12k/wmi.h b/drivers/net/wireless/a= th/ath12k/wmi.h index 51f3426e1fcd..0145cc477944 100644 --- a/drivers/net/wireless/ath/ath12k/wmi.h +++ b/drivers/net/wireless/ath/ath12k/wmi.h @@ -2330,6 +2330,13 @@ enum wmi_slot_time { WMI_VDEV_SLOT_TIME_SHORT =3D 2, }; =20 +enum wmi_dtim_policy { + WMI_DTIM_POLICY_IGNORE =3D 1, + WMI_DTIM_POLICY_NORMAL =3D 2, + WMI_DTIM_POLICY_STICK =3D 3, + WMI_DTIM_POLICY_AUTO =3D 4, +}; + enum wmi_preamble { WMI_VDEV_PREAMBLE_LONG =3D 1, WMI_VDEV_PREAMBLE_SHORT =3D 2, base-commit: 913998f903fb1432c0046c33003db38a9e8bedb1 --=20 2.43.0