[PATCH ath-next v5 5/6] wifi: ath12k: Add CE remap hardware parameters for IPQ5424
Rameshkumar Sundaram
rameshkumar.sundaram at oss.qualcomm.com
Tue Apr 7 09:23:29 PDT 2026
On 4/7/2026 10:56 AM, Raj Kumar Bhagat wrote:
> From: Saravanakumar Duraisamy <quic_saradura at quicinc.com>
>
> Add CE remap hardware parameters for Ath12k AHB device IPQ5424.
>
> Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.6-01243-QCAHKSWPL_SILICONZ-1
> Tested-on: IPQ5332 hw1.0 AHB WLAN.WBE.1.6-01275-QCAHKSWPL_SILICONZ-1
> Tested-on: IPQ5424 hw1.0 AHB WLAN.WBE.1.6-01275-QCAHKSWPL_SILICONZ-1
>
> Signed-off-by: Saravanakumar Duraisamy <quic_saradura at quicinc.com>
> Signed-off-by: Raj Kumar Bhagat <raj.bhagat at oss.qualcomm.com>
> Reviewed-by: Baochen Qiang <baochen.qiang at oss.qualcomm.com>
> ---
> drivers/net/wireless/ath/ath12k/ce.h | 13 +++++++++----
> drivers/net/wireless/ath/ath12k/wifi7/hw.c | 22 +++++++++++++++++-----
> 2 files changed, 26 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath12k/ce.h b/drivers/net/wireless/ath/ath12k/ce.h
> index df4f2a4f8480..009cddf2d68d 100644
> --- a/drivers/net/wireless/ath/ath12k/ce.h
> +++ b/drivers/net/wireless/ath/ath12k/ce.h
> @@ -38,10 +38,15 @@
> #define PIPEDIR_INOUT 3 /* bidirectional */
> #define PIPEDIR_INOUT_H2H 4 /* bidirectional, host to host */
>
> -/* CE address/mask */
> -#define CE_HOST_IE_ADDRESS 0x75804C
> -#define CE_HOST_IE_2_ADDRESS 0x758050
> -#define CE_HOST_IE_3_ADDRESS CE_HOST_IE_ADDRESS
> +/* IPQ5332 CE address/mask */
> +#define CE_HOST_IPQ5332_IE_ADDRESS 0x75804C
> +#define CE_HOST_IPQ5332_IE_2_ADDRESS 0x758050
> +#define CE_HOST_IPQ5332_IE_3_ADDRESS CE_HOST_IPQ5332_IE_ADDRESS
> +
> +/* IPQ5424 CE address/mask */
> +#define CE_HOST_IPQ5424_IE_ADDRESS 0x21804C
> +#define CE_HOST_IPQ5424_IE_2_ADDRESS 0x218050
> +#define CE_HOST_IPQ5424_IE_3_ADDRESS CE_HOST_IPQ5424_IE_ADDRESS
>
> #define CE_HOST_IE_3_SHIFT 0xC
>
> diff --git a/drivers/net/wireless/ath/ath12k/wifi7/hw.c b/drivers/net/wireless/ath/ath12k/wifi7/hw.c
> index 2b5d1f7e9e04..cb3185850439 100644
> --- a/drivers/net/wireless/ath/ath12k/wifi7/hw.c
> +++ b/drivers/net/wireless/ath/ath12k/wifi7/hw.c
> @@ -329,9 +329,15 @@ static const struct ath12k_hw_ring_mask ath12k_wifi7_hw_ring_mask_wcn7850 = {
> };
>
> static const struct ce_ie_addr ath12k_wifi7_ce_ie_addr_ipq5332 = {
> - .ie1_reg_addr = CE_HOST_IE_ADDRESS - HAL_IPQ5332_CE_WFSS_REG_BASE,
> - .ie2_reg_addr = CE_HOST_IE_2_ADDRESS - HAL_IPQ5332_CE_WFSS_REG_BASE,
> - .ie3_reg_addr = CE_HOST_IE_3_ADDRESS - HAL_IPQ5332_CE_WFSS_REG_BASE,
> + .ie1_reg_addr = CE_HOST_IPQ5332_IE_ADDRESS - HAL_IPQ5332_CE_WFSS_REG_BASE,
> + .ie2_reg_addr = CE_HOST_IPQ5332_IE_2_ADDRESS - HAL_IPQ5332_CE_WFSS_REG_BASE,
> + .ie3_reg_addr = CE_HOST_IPQ5332_IE_3_ADDRESS - HAL_IPQ5332_CE_WFSS_REG_BASE,
> +};
> +
> +static const struct ce_ie_addr ath12k_wifi7_ce_ie_addr_ipq5424 = {
> + .ie1_reg_addr = CE_HOST_IPQ5424_IE_ADDRESS - HAL_IPQ5424_CE_WFSS_REG_BASE,
> + .ie2_reg_addr = CE_HOST_IPQ5424_IE_2_ADDRESS - HAL_IPQ5424_CE_WFSS_REG_BASE,
> + .ie3_reg_addr = CE_HOST_IPQ5424_IE_3_ADDRESS - HAL_IPQ5424_CE_WFSS_REG_BASE,
> };
>
> static const struct ce_remap ath12k_wifi7_ce_remap_ipq5332 = {
> @@ -340,6 +346,12 @@ static const struct ce_remap ath12k_wifi7_ce_remap_ipq5332 = {
> .cmem_offset = HAL_SEQ_WCSS_CMEM_OFFSET,
> };
>
> +static const struct ce_remap ath12k_wifi7_ce_remap_ipq5424 = {
> + .base = HAL_IPQ5424_CE_WFSS_REG_BASE,
> + .size = HAL_IPQ5424_CE_SIZE,
> + .cmem_offset = HAL_SEQ_WCSS_CMEM_OFFSET,
> +};
> +
> static const struct ath12k_hw_params ath12k_wifi7_hw_params[] = {
> {
> .name = "qcn9274 hw1.0",
> @@ -824,8 +836,8 @@ static const struct ath12k_hw_params ath12k_wifi7_hw_params[] = {
> .iova_mask = 0,
> .supports_aspm = false,
>
> - .ce_ie_addr = NULL,
> - .ce_remap = NULL,
> + .ce_ie_addr = &ath12k_wifi7_ce_ie_addr_ipq5424,
> + .ce_remap = &ath12k_wifi7_ce_remap_ipq5424,
> .bdf_addr_offset = 0x940000,
>
> .current_cc_support = false,
>
Reviewed-by: Rameshkumar Sundaram <rameshkumar.sundaram at oss.qualcomm.com>
More information about the ath12k
mailing list