qcacmn: Remove IP from files

remove IP from code

Change-Id: If119a4af213b10aadb9f1344e50b0342e72405c2
CRs-Fixed: 3073864
This commit is contained in:
sandhu
2021-11-11 12:48:03 -08:00
committed by Madan Koyyalamudi
parent 2832d48c89
commit ad2829718c
36 changed files with 240 additions and 210 deletions

View File

@@ -129,7 +129,7 @@ static inline int cdp_get_arch_type_from_devid(uint16_t devid)
case RUMIM2M_DEVICE_ID_NODE5: /*lithium emulation */ case RUMIM2M_DEVICE_ID_NODE5: /*lithium emulation */
return CDP_ARCH_TYPE_LI; return CDP_ARCH_TYPE_LI;
case BERYLLIUM_DP: case BERYLLIUM_DP:
case WCN7850_DEVICE_ID: case KIWI_DEVICE_ID:
case QCN9224_DEVICE_ID: case QCN9224_DEVICE_ID:
return CDP_ARCH_TYPE_BE; return CDP_ARCH_TYPE_BE;
default: default:
@@ -172,7 +172,7 @@ ol_txrx_soc_handle cdp_soc_attach(u_int16_t devid,
case RUMIM2M_DEVICE_ID_NODE3: /*lithium emulation */ case RUMIM2M_DEVICE_ID_NODE3: /*lithium emulation */
case RUMIM2M_DEVICE_ID_NODE4: /*lithium emulation */ case RUMIM2M_DEVICE_ID_NODE4: /*lithium emulation */
case RUMIM2M_DEVICE_ID_NODE5: /*lithium emulation */ case RUMIM2M_DEVICE_ID_NODE5: /*lithium emulation */
case WCN7850_DEVICE_ID: case KIWI_DEVICE_ID:
case QCN9224_DEVICE_ID: case QCN9224_DEVICE_ID:
return dp_soc_attach_wifi3(psoc, &params); return dp_soc_attach_wifi3(psoc, &params);
break; break;

View File

@@ -1264,7 +1264,7 @@ static int dp_tx_ipa_uc_attach(struct dp_soc *soc, struct dp_pdev *pdev)
qdf_mem_dp_tx_skb_inc(qdf_nbuf_get_end_offset(nbuf)); qdf_mem_dp_tx_skb_inc(qdf_nbuf_get_end_offset(nbuf));
/* /*
* TODO - WCN7850 code can directly call the be handler * TODO - KIWI code can directly call the be handler
* instead of hal soc ops. * instead of hal soc ops.
*/ */
hal_rxdma_buff_addr_info_set(soc->hal_soc, ring_entry, hal_rxdma_buff_addr_info_set(soc->hal_soc, ring_entry,
@@ -1903,7 +1903,7 @@ static void dp_ipa_wdi_tx_params(struct dp_soc *soc,
(uint8_t *)QDF_IPA_WDI_SETUP_INFO_DESC_FORMAT_TEMPLATE(tx); (uint8_t *)QDF_IPA_WDI_SETUP_INFO_DESC_FORMAT_TEMPLATE(tx);
desc_size = sizeof(struct tcl_data_cmd); desc_size = sizeof(struct tcl_data_cmd);
#ifndef DP_BE_WAR #ifndef DP_BE_WAR
/* TODO - WCN7850 does not have these fields */ /* TODO - KIWI does not have these fields */
HAL_TX_DESC_SET_TLV_HDR(desc_addr, HAL_TX_TCL_DATA_TAG, desc_size); HAL_TX_DESC_SET_TLV_HDR(desc_addr, HAL_TX_TCL_DATA_TAG, desc_size);
#endif #endif
tcl_desc_ptr = (struct tcl_data_cmd *) tcl_desc_ptr = (struct tcl_data_cmd *)
@@ -1911,7 +1911,7 @@ static void dp_ipa_wdi_tx_params(struct dp_soc *soc,
tcl_desc_ptr->buf_addr_info.return_buffer_manager = tcl_desc_ptr->buf_addr_info.return_buffer_manager =
HAL_RX_BUF_RBM_SW2_BM(soc->wbm_sw0_bm_id); HAL_RX_BUF_RBM_SW2_BM(soc->wbm_sw0_bm_id);
#ifndef DP_BE_WAR #ifndef DP_BE_WAR
/* TODO - WCN7850 does not have these fields */ /* TODO - KIWI does not have these fields */
tcl_desc_ptr->addrx_en = 1; /* Address X search enable in ASE */ tcl_desc_ptr->addrx_en = 1; /* Address X search enable in ASE */
tcl_desc_ptr->encap_type = HAL_TX_ENCAP_TYPE_ETHERNET; tcl_desc_ptr->encap_type = HAL_TX_ENCAP_TYPE_ETHERNET;
tcl_desc_ptr->packet_offset = 2; /* padding for alignment */ tcl_desc_ptr->packet_offset = 2; /* padding for alignment */
@@ -2006,7 +2006,7 @@ dp_ipa_wdi_tx_smmu_params(struct dp_soc *soc,
tx_smmu); tx_smmu);
desc_size = sizeof(struct tcl_data_cmd); desc_size = sizeof(struct tcl_data_cmd);
#ifndef DP_BE_WAR #ifndef DP_BE_WAR
/* TODO - WCN7850 does not have these fields */ /* TODO - KIWI does not have these fields */
HAL_TX_DESC_SET_TLV_HDR(desc_addr, HAL_TX_TCL_DATA_TAG, desc_size); HAL_TX_DESC_SET_TLV_HDR(desc_addr, HAL_TX_TCL_DATA_TAG, desc_size);
#endif #endif
tcl_desc_ptr = (struct tcl_data_cmd *) tcl_desc_ptr = (struct tcl_data_cmd *)
@@ -2014,7 +2014,7 @@ dp_ipa_wdi_tx_smmu_params(struct dp_soc *soc,
tcl_desc_ptr->buf_addr_info.return_buffer_manager = tcl_desc_ptr->buf_addr_info.return_buffer_manager =
HAL_RX_BUF_RBM_SW2_BM(soc->wbm_sw0_bm_id); HAL_RX_BUF_RBM_SW2_BM(soc->wbm_sw0_bm_id);
#ifndef DP_BE_WAR #ifndef DP_BE_WAR
/* TODO - WCN7850 does not have these fields */ /* TODO - KIWI does not have these fields */
tcl_desc_ptr->addrx_en = 1; /* Address X search enable in ASE */ tcl_desc_ptr->addrx_en = 1; /* Address X search enable in ASE */
tcl_desc_ptr->encap_type = HAL_TX_ENCAP_TYPE_ETHERNET; tcl_desc_ptr->encap_type = HAL_TX_ENCAP_TYPE_ETHERNET;
tcl_desc_ptr->packet_offset = 2; /* padding for alignment */ tcl_desc_ptr->packet_offset = 2; /* padding for alignment */

View File

@@ -4066,7 +4066,7 @@ bool dp_reo_remap_config(struct dp_soc *soc, uint32_t *remap0,
target_type = hal_get_target_type(soc->hal_soc); target_type = hal_get_target_type(soc->hal_soc);
switch (target_type) { switch (target_type) {
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
hal_compute_reo_remap_ix2_ix3(soc->hal_soc, ring, hal_compute_reo_remap_ix2_ix3(soc->hal_soc, ring,
soc->num_reo_dest_rings - soc->num_reo_dest_rings -
USE_2_IPA_RX_REO_RINGS, remap1, USE_2_IPA_RX_REO_RINGS, remap1,
@@ -9236,7 +9236,7 @@ static QDF_STATUS dp_set_pdev_param(struct cdp_soc_t *cdp_soc, uint8_t pdev_id,
pdev->ch_band_lmac_id_mapping[REG_BAND_5G] = DP_MAC0_LMAC_ID; pdev->ch_band_lmac_id_mapping[REG_BAND_5G] = DP_MAC0_LMAC_ID;
pdev->ch_band_lmac_id_mapping[REG_BAND_6G] = DP_MAC0_LMAC_ID; pdev->ch_band_lmac_id_mapping[REG_BAND_6G] = DP_MAC0_LMAC_ID;
break; break;
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
pdev->ch_band_lmac_id_mapping[REG_BAND_2G] = DP_MAC0_LMAC_ID; pdev->ch_band_lmac_id_mapping[REG_BAND_2G] = DP_MAC0_LMAC_ID;
pdev->ch_band_lmac_id_mapping[REG_BAND_5G] = DP_MAC0_LMAC_ID; pdev->ch_band_lmac_id_mapping[REG_BAND_5G] = DP_MAC0_LMAC_ID;
pdev->ch_band_lmac_id_mapping[REG_BAND_6G] = DP_MAC0_LMAC_ID; pdev->ch_band_lmac_id_mapping[REG_BAND_6G] = DP_MAC0_LMAC_ID;
@@ -14241,7 +14241,7 @@ static void dp_soc_cfg_init(struct dp_soc *soc)
} }
soc->wlan_cfg_ctx->rxdma1_enable = 0; soc->wlan_cfg_ctx->rxdma1_enable = 0;
break; break;
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx,
REO_DST_RING_SIZE_QCA6290); REO_DST_RING_SIZE_QCA6290);
soc->ast_override_support = 1; soc->ast_override_support = 1;
@@ -14343,7 +14343,7 @@ static void dp_soc_cfg_attach(struct dp_soc *soc)
REO_DST_RING_SIZE_QCA6290); REO_DST_RING_SIZE_QCA6290);
soc->wlan_cfg_ctx->rxdma1_enable = 0; soc->wlan_cfg_ctx->rxdma1_enable = 0;
break; break;
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx,
REO_DST_RING_SIZE_QCA6290); REO_DST_RING_SIZE_QCA6290);
soc->wlan_cfg_ctx->rxdma1_enable = 0; soc->wlan_cfg_ctx->rxdma1_enable = 0;

View File

@@ -1719,7 +1719,7 @@ void dp_rx_msdu_stats_update(struct dp_soc *soc, qdf_nbuf_t nbuf,
peer->stats.rx.last_rx_ts = qdf_system_ticks(); peer->stats.rx.last_rx_ts = qdf_system_ticks();
/* /*
* TODO - For WCN7850 this field is present in ring_desc * TODO - For KIWI this field is present in ring_desc
* Try to use ring desc instead of tlv. * Try to use ring desc instead of tlv.
*/ */
is_ampdu = hal_rx_mpdu_info_ampdu_flag_get(soc->hal_soc, rx_tlv_hdr); is_ampdu = hal_rx_mpdu_info_ampdu_flag_get(soc->hal_soc, rx_tlv_hdr);

View File

@@ -1104,7 +1104,7 @@ free_nbuf:
} }
#if defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \ #if defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \
defined(QCA_WIFI_QCA6750) || defined(QCA_WIFI_WCN7850) defined(QCA_WIFI_QCA6750) || defined(QCA_WIFI_KIWI)
/** /**
* dp_rx_null_q_handle_invalid_peer_id_exception() - to find exception * dp_rx_null_q_handle_invalid_peer_id_exception() - to find exception
* @soc: pointer to dp_soc struct * @soc: pointer to dp_soc struct

View File

@@ -1,11 +1,11 @@
/* /*
* Copyright (c) 2016-2021, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2021, The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
*
* Permission to use, copy, modify, and/or distribute this software for any * Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above * purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies. * copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
@@ -4455,7 +4455,7 @@ QDF_STATUS dp_mon_soc_cfg_init(struct dp_soc *soc)
case TARGET_TYPE_QCA6390: case TARGET_TYPE_QCA6390:
case TARGET_TYPE_QCA6490: case TARGET_TYPE_QCA6490:
case TARGET_TYPE_QCA6750: case TARGET_TYPE_QCA6750:
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
/* do nothing */ /* do nothing */
break; break;
case TARGET_TYPE_QCA8074: case TARGET_TYPE_QCA8074:
@@ -4516,7 +4516,7 @@ static void dp_mon_pdev_per_target_config(struct dp_pdev *pdev)
target_type = hal_get_target_type(soc->hal_soc); target_type = hal_get_target_type(soc->hal_soc);
switch (target_type) { switch (target_type) {
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
mon_pdev->is_tlv_hdr_64_bit = true; mon_pdev->is_tlv_hdr_64_bit = true;
break; break;
default: default:
@@ -4843,7 +4843,7 @@ void dp_mon_ops_register(struct dp_soc *soc)
case TARGET_TYPE_QCA6390: case TARGET_TYPE_QCA6390:
case TARGET_TYPE_QCA6490: case TARGET_TYPE_QCA6490:
case TARGET_TYPE_QCA6750: case TARGET_TYPE_QCA6750:
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
case TARGET_TYPE_QCA8074: case TARGET_TYPE_QCA8074:
case TARGET_TYPE_QCA8074V2: case TARGET_TYPE_QCA8074V2:
case TARGET_TYPE_QCA6018: case TARGET_TYPE_QCA6018:
@@ -4901,7 +4901,7 @@ void dp_mon_cdp_ops_register(struct dp_soc *soc)
case TARGET_TYPE_QCA6390: case TARGET_TYPE_QCA6390:
case TARGET_TYPE_QCA6490: case TARGET_TYPE_QCA6490:
case TARGET_TYPE_QCA6750: case TARGET_TYPE_QCA6750:
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
case TARGET_TYPE_QCA8074: case TARGET_TYPE_QCA8074:
case TARGET_TYPE_QCA8074V2: case TARGET_TYPE_QCA8074V2:
case TARGET_TYPE_QCA6018: case TARGET_TYPE_QCA6018:

View File

@@ -195,7 +195,7 @@ void *hal_rx_msdu_ext_desc_info_get_ptr_be(void *msdu_details_ptr)
return HAL_RX_MSDU_EXT_DESC_INFO_GET(msdu_details_ptr); return HAL_RX_MSDU_EXT_DESC_INFO_GET(msdu_details_ptr);
} }
#ifdef QCA_WIFI_WCN7850 #ifdef QCA_WIFI_KIWI
static inline uint32_t static inline uint32_t
hal_wbm2sw_release_source_get(void *hal_desc, enum hal_be_wbm_release_dir dir) hal_wbm2sw_release_source_get(void *hal_desc, enum hal_be_wbm_release_dir dir)
{ {

View File

@@ -329,7 +329,7 @@ static inline uint32_t
hal_rx_update_rssi_chain(struct hal_rx_ppdu_info *ppdu_info, hal_rx_update_rssi_chain(struct hal_rx_ppdu_info *ppdu_info,
uint8_t *rssi_info_tlv) uint8_t *rssi_info_tlv)
{ {
// TODO - Find all these registers for wcn7850 // TODO - Find all these registers for kiwi
#if 0 #if 0
HAL_RX_PPDU_UPDATE_RSSI(ppdu_info, rssi_info_tlv) HAL_RX_PPDU_UPDATE_RSSI(ppdu_info, rssi_info_tlv)
#endif #endif
@@ -813,7 +813,7 @@ hal_rx_status_get_tlv_info_generic_be(void *rx_tlv_hdr, void *ppduinfo,
break; break;
case TARGET_TYPE_QCA6490: case TARGET_TYPE_QCA6490:
case TARGET_TYPE_QCA6750: case TARGET_TYPE_QCA6750:
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
ppdu_info->rx_status.nss = 0; ppdu_info->rx_status.nss = 0;
break; break;
default: default:
@@ -1344,7 +1344,7 @@ hal_rx_status_get_tlv_info_generic_be(void *rx_tlv_hdr, void *ppduinfo,
"RSSI_PRI20_CHAIN3: %d\n", rssi_value); "RSSI_PRI20_CHAIN3: %d\n", rssi_value);
#ifdef DP_BE_NOTYET_WAR #ifdef DP_BE_NOTYET_WAR
// TODO - this is not preset for wcn7850 // TODO - this is not preset for kiwi
rssi_value = HAL_RX_GET(rssi_info_tlv, rssi_value = HAL_RX_GET(rssi_info_tlv,
RECEIVE_RSSI_INFO, RSSI_PRI20_CHAIN4); RECEIVE_RSSI_INFO, RSSI_PRI20_CHAIN4);
ppdu_info->rx_status.rssi[4] = rssi_value; ppdu_info->rx_status.rssi[4] = rssi_value;

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2016-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -28,7 +29,7 @@
#include "wbm2sw_completion_ring_tx.h" #include "wbm2sw_completion_ring_tx.h"
#include "wbm2sw_completion_ring_rx.h" #include "wbm2sw_completion_ring_rx.h"
#if defined(QCA_WIFI_WCN7850) #if defined(QCA_WIFI_KIWI)
#include "msmhwioreg.h" #include "msmhwioreg.h"
#endif #endif
#include <reo_descriptor_threshold_reached_status.h> #include <reo_descriptor_threshold_reached_status.h>

View File

@@ -794,7 +794,7 @@ hal_rx_msdu_packet_metadata_get_generic_be(uint8_t *buf,
} }
/* /*
* hal_rx_msdu_start_nss_get_7850(): API to get the NSS * hal_rx_msdu_start_nss_get_kiwi(): API to get the NSS
* Interval from rx_msdu_start * Interval from rx_msdu_start
* *
* @buf: pointer to the start of RX PKT TLV header * @buf: pointer to the start of RX PKT TLV header

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2016-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -36,7 +37,7 @@
/* calculate the register address offset from bar0 of shadow register x */ /* calculate the register address offset from bar0 of shadow register x */
#if defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \ #if defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \
defined(QCA_WIFI_WCN7850) defined(QCA_WIFI_KIWI)
#define SHADOW_REGISTER_START_ADDRESS_OFFSET 0x000008FC #define SHADOW_REGISTER_START_ADDRESS_OFFSET 0x000008FC
#define SHADOW_REGISTER_END_ADDRESS_OFFSET \ #define SHADOW_REGISTER_END_ADDRESS_OFFSET \
((SHADOW_REGISTER_START_ADDRESS_OFFSET) + (4 * (MAX_SHADOW_REGISTERS))) ((SHADOW_REGISTER_START_ADDRESS_OFFSET) + (4 * (MAX_SHADOW_REGISTERS)))
@@ -129,7 +130,7 @@ static inline void hal_reg_write_result_check(struct hal_soc *hal_soc,
} }
#if !defined(QCA_WIFI_QCA6390) && !defined(QCA_WIFI_QCA6490) && \ #if !defined(QCA_WIFI_QCA6390) && !defined(QCA_WIFI_QCA6490) && \
!defined(QCA_WIFI_WCN7850) !defined(QCA_WIFI_KIWI)
static inline void hal_lock_reg_access(struct hal_soc *soc, static inline void hal_lock_reg_access(struct hal_soc *soc,
unsigned long *flags) unsigned long *flags)
{ {
@@ -234,7 +235,7 @@ static inline void hal_tx_init_cmd_credit_ring(hal_soc_handle_t hal_soc_hdl,
* that window would be a bug * that window would be a bug
*/ */
#if !defined(QCA_WIFI_QCA6390) && !defined(QCA_WIFI_QCA6490) && \ #if !defined(QCA_WIFI_QCA6390) && !defined(QCA_WIFI_QCA6490) && \
!defined(QCA_WIFI_QCA6750) && !defined(QCA_WIFI_WCN7850) !defined(QCA_WIFI_QCA6750) && !defined(QCA_WIFI_KIWI)
static inline void hal_write32_mb(struct hal_soc *hal_soc, uint32_t offset, static inline void hal_write32_mb(struct hal_soc *hal_soc, uint32_t offset,
uint32_t value) uint32_t value)
{ {
@@ -466,7 +467,7 @@ static inline void hal_srng_write_address_32_mb(struct hal_soc *hal_soc,
#endif #endif
#if !defined(QCA_WIFI_QCA6390) && !defined(QCA_WIFI_QCA6490) && \ #if !defined(QCA_WIFI_QCA6390) && !defined(QCA_WIFI_QCA6490) && \
!defined(QCA_WIFI_QCA6750) && !defined(QCA_WIFI_WCN7850) !defined(QCA_WIFI_QCA6750) && !defined(QCA_WIFI_KIWI)
/** /**
* hal_read32_mb() - Access registers to read configuration * hal_read32_mb() - Access registers to read configuration
* @hal_soc: hal soc handle * @hal_soc: hal soc handle
@@ -863,7 +864,7 @@ extern void hal_detach(void *hal_soc);
#define HAL_SRNG_MSI_INTR 0x00020000 #define HAL_SRNG_MSI_INTR 0x00020000
#define HAL_SRNG_CACHED_DESC 0x00040000 #define HAL_SRNG_CACHED_DESC 0x00040000
#if defined(QCA_WIFI_QCA6490) || defined(QCA_WIFI_WCN7850) #if defined(QCA_WIFI_QCA6490) || defined(QCA_WIFI_KIWI)
#define HAL_SRNG_PREFETCH_TIMER 1 #define HAL_SRNG_PREFETCH_TIMER 1
#else #else
#define HAL_SRNG_PREFETCH_TIMER 0 #define HAL_SRNG_PREFETCH_TIMER 0

View File

@@ -1183,7 +1183,7 @@ void hal_qca6490_attach(struct hal_soc *hal_soc);
void hal_qca6390_attach(struct hal_soc *hal_soc); void hal_qca6390_attach(struct hal_soc *hal_soc);
void hal_qca6290_attach(struct hal_soc *hal_soc); void hal_qca6290_attach(struct hal_soc *hal_soc);
void hal_qca8074_attach(struct hal_soc *hal_soc); void hal_qca8074_attach(struct hal_soc *hal_soc);
void hal_wcn7850_attach(struct hal_soc *hal_soc); void hal_kiwi_attach(struct hal_soc *hal_soc);
void hal_qcn9224_attach(struct hal_soc *hal_soc); void hal_qcn9224_attach(struct hal_soc *hal_soc);
/* /*
* hal_soc_to_dp_hal_roc - API to convert hal_soc to opaque * hal_soc_to_dp_hal_roc - API to convert hal_soc to opaque

View File

@@ -56,8 +56,8 @@ void hal_qca6750_attach(struct hal_soc *hal);
#ifdef QCA_WIFI_QCA5018 #ifdef QCA_WIFI_QCA5018
void hal_qca5018_attach(struct hal_soc *hal); void hal_qca5018_attach(struct hal_soc *hal);
#endif #endif
#ifdef QCA_WIFI_WCN7850 #ifdef QCA_WIFI_KIWI
void hal_wcn7850_attach(struct hal_soc *hal); void hal_kiwi_attach(struct hal_soc *hal);
#endif #endif
#ifdef ENABLE_VERBOSE_DEBUG #ifdef ENABLE_VERBOSE_DEBUG
@@ -423,10 +423,10 @@ static void hal_target_based_configure(struct hal_soc *hal)
hal_qca6750_attach(hal); hal_qca6750_attach(hal);
break; break;
#endif #endif
#ifdef QCA_WIFI_WCN7850 #ifdef QCA_WIFI_KIWI
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
hal->use_register_windowing = true; hal->use_register_windowing = true;
hal_wcn7850_attach(hal); hal_kiwi_attach(hal);
break; break;
#endif #endif
#if defined(QCA_WIFI_QCA8074) && defined(WIFI_TARGET_TYPE_3_0) #if defined(QCA_WIFI_QCA8074) && defined(WIFI_TARGET_TYPE_3_0)

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2016-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -553,7 +554,7 @@ static inline uint32_t hal_tx_comp_get_buffer_type(void *hal_desc)
HAL_TX_COMP_BUFFER_OR_DESC_TYPE_LSB; HAL_TX_COMP_BUFFER_OR_DESC_TYPE_LSB;
} }
#ifdef QCA_WIFI_WCN7850 #ifdef QCA_WIFI_KIWI
/** /**
* hal_tx_comp_get_buffer_source() - Get buffer release source value * hal_tx_comp_get_buffer_source() - Get buffer release source value
* @hal_desc: completion ring descriptor pointer * @hal_desc: completion ring descriptor pointer

View File

@@ -115,8 +115,8 @@
#define UNIFIED_WBM_RELEASE_RING_6_TX_RATE_STATS_INFO_TX_RATE_STATS_LSB \ #define UNIFIED_WBM_RELEASE_RING_6_TX_RATE_STATS_INFO_TX_RATE_STATS_LSB \
WBM2SW_COMPLETION_RING_TX_TX_RATE_STATS_PPDU_TRANSMISSION_TSF_LSB WBM2SW_COMPLETION_RING_TX_TX_RATE_STATS_PPDU_TRANSMISSION_TSF_LSB
#include "hal_7850_tx.h" #include "hal_kiwi_tx.h"
#include "hal_7850_rx.h" #include "hal_kiwi_rx.h"
#include "hal_be_rx_tlv.h" #include "hal_be_rx_tlv.h"
@@ -125,20 +125,20 @@
#define LINK_DESC_SIZE (NUM_OF_DWORDS_RX_MSDU_LINK << 2) #define LINK_DESC_SIZE (NUM_OF_DWORDS_RX_MSDU_LINK << 2)
static uint32_t hal_get_link_desc_size_7850(void) static uint32_t hal_get_link_desc_size_kiwi(void)
{ {
return LINK_DESC_SIZE; return LINK_DESC_SIZE;
} }
/** /**
* hal_rx_dump_msdu_end_tlv_7850: dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv_kiwi: dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @ msdu_end: pointer the msdu_end TLV in pkt. * @ msdu_end: pointer the msdu_end TLV in pkt.
* @ dbg_level: log level. * @ dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_7850(void *msduend, static void hal_rx_dump_msdu_end_tlv_kiwi(void *msduend,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend;
@@ -440,7 +440,7 @@ static void hal_rx_dump_msdu_end_tlv_7850(void *msduend,
* *
* Return: void * Return: void
*/ */
static inline void hal_rx_dump_pkt_hdr_tlv_7850(struct rx_pkt_tlvs *pkt_tlvs, static inline void hal_rx_dump_pkt_hdr_tlv_kiwi(struct rx_pkt_tlvs *pkt_tlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_pkt_hdr_tlv *pkt_hdr_tlv = &pkt_tlvs->pkt_hdr_tlv; struct rx_pkt_hdr_tlv *pkt_hdr_tlv = &pkt_tlvs->pkt_hdr_tlv;
@@ -463,7 +463,7 @@ static inline void hal_rx_dump_pkt_hdr_tlv_7850(struct rx_pkt_tlvs *pkt_tlvs,
* *
* Return: void * Return: void
*/ */
static inline void hal_rx_dump_mpdu_start_tlv_7850(void *mpdustart, static inline void hal_rx_dump_mpdu_start_tlv_kiwi(void *mpdustart,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_mpdu_start *mpdu_start = (struct rx_mpdu_start *)mpdustart; struct rx_mpdu_start *mpdu_start = (struct rx_mpdu_start *)mpdustart;
@@ -683,14 +683,14 @@ static inline void hal_rx_dump_mpdu_start_tlv_7850(void *mpdustart,
} }
/** /**
* hal_rx_dump_pkt_tlvs_7850(): API to print RX Pkt TLVS for 7850 * hal_rx_dump_pkt_tlvs_kiwi(): API to print RX Pkt TLVS for kiwi
* @hal_soc_hdl: hal_soc handle * @hal_soc_hdl: hal_soc handle
* @buf: pointer the pkt buffer * @buf: pointer the pkt buffer
* @dbg_level: log level * @dbg_level: log level
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_pkt_tlvs_7850(hal_soc_handle_t hal_soc_hdl, static void hal_rx_dump_pkt_tlvs_kiwi(hal_soc_handle_t hal_soc_hdl,
uint8_t *buf, uint8_t dbg_level) uint8_t *buf, uint8_t dbg_level)
{ {
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf;
@@ -698,13 +698,13 @@ static void hal_rx_dump_pkt_tlvs_7850(hal_soc_handle_t hal_soc_hdl,
struct rx_mpdu_start *mpdu_start = struct rx_mpdu_start *mpdu_start =
&pkt_tlvs->mpdu_start_tlv.rx_mpdu_start; &pkt_tlvs->mpdu_start_tlv.rx_mpdu_start;
hal_rx_dump_msdu_end_tlv_7850(msdu_end, dbg_level); hal_rx_dump_msdu_end_tlv_kiwi(msdu_end, dbg_level);
hal_rx_dump_mpdu_start_tlv_7850(mpdu_start, dbg_level); hal_rx_dump_mpdu_start_tlv_kiwi(mpdu_start, dbg_level);
hal_rx_dump_pkt_hdr_tlv_7850(pkt_tlvs, dbg_level); hal_rx_dump_pkt_hdr_tlv_kiwi(pkt_tlvs, dbg_level);
} }
/** /**
* hal_rx_tlv_populate_mpdu_desc_info_7850() - Populate the local mpdu_desc_info * hal_rx_tlv_populate_mpdu_desc_info_kiwi() - Populate the local mpdu_desc_info
* elements from the rx tlvs * elements from the rx tlvs
* @buf: start address of rx tlvs [Validated by caller] * @buf: start address of rx tlvs [Validated by caller]
* @mpdu_desc_info_hdl: Buffer to populate the mpdu_dsc_info * @mpdu_desc_info_hdl: Buffer to populate the mpdu_dsc_info
@@ -713,7 +713,7 @@ static void hal_rx_dump_pkt_tlvs_7850(hal_soc_handle_t hal_soc_hdl,
* Return: None * Return: None
*/ */
static void static void
hal_rx_tlv_populate_mpdu_desc_info_7850(uint8_t *buf, hal_rx_tlv_populate_mpdu_desc_info_kiwi(uint8_t *buf,
void *mpdu_desc_info_hdl) void *mpdu_desc_info_hdl)
{ {
struct hal_rx_mpdu_desc_info *mpdu_desc_info = struct hal_rx_mpdu_desc_info *mpdu_desc_info =
@@ -731,7 +731,7 @@ hal_rx_tlv_populate_mpdu_desc_info_7850(uint8_t *buf,
} }
/** /**
* hal_reo_status_get_header_7850 - Process reo desc info * hal_reo_status_get_header_kiwi - Process reo desc info
* @d - Pointer to reo descriptior * @d - Pointer to reo descriptior
* @b - tlv type info * @b - tlv type info
* @h1 - Pointer to hal_reo_status_header where info to be stored * @h1 - Pointer to hal_reo_status_header where info to be stored
@@ -739,7 +739,7 @@ hal_rx_tlv_populate_mpdu_desc_info_7850(uint8_t *buf,
* Return - none. * Return - none.
* *
*/ */
static void hal_reo_status_get_header_7850(hal_ring_desc_t ring_desc, int b, static void hal_reo_status_get_header_kiwi(hal_ring_desc_t ring_desc, int b,
void *h1) void *h1)
{ {
uint64_t *d = (uint64_t *)ring_desc; uint64_t *d = (uint64_t *)ring_desc;
@@ -835,42 +835,42 @@ static void hal_reo_status_get_header_7850(hal_ring_desc_t ring_desc, int b,
} }
static static
void *hal_rx_msdu0_buffer_addr_lsb_7850(void *link_desc_va) void *hal_rx_msdu0_buffer_addr_lsb_kiwi(void *link_desc_va)
{ {
return (void *)HAL_RX_MSDU0_BUFFER_ADDR_LSB(link_desc_va); return (void *)HAL_RX_MSDU0_BUFFER_ADDR_LSB(link_desc_va);
} }
static static
void *hal_rx_msdu_desc_info_ptr_get_7850(void *msdu0) void *hal_rx_msdu_desc_info_ptr_get_kiwi(void *msdu0)
{ {
return (void *)HAL_RX_MSDU_DESC_INFO_PTR_GET(msdu0); return (void *)HAL_RX_MSDU_DESC_INFO_PTR_GET(msdu0);
} }
static static
void *hal_ent_mpdu_desc_info_7850(void *ent_ring_desc) void *hal_ent_mpdu_desc_info_kiwi(void *ent_ring_desc)
{ {
return (void *)HAL_ENT_MPDU_DESC_INFO(ent_ring_desc); return (void *)HAL_ENT_MPDU_DESC_INFO(ent_ring_desc);
} }
static static
void *hal_dst_mpdu_desc_info_7850(void *dst_ring_desc) void *hal_dst_mpdu_desc_info_kiwi(void *dst_ring_desc)
{ {
return (void *)HAL_DST_MPDU_DESC_INFO(dst_ring_desc); return (void *)HAL_DST_MPDU_DESC_INFO(dst_ring_desc);
} }
/* /*
* hal_rx_get_tlv_7850(): API to get the tlv * hal_rx_get_tlv_kiwi(): API to get the tlv
* *
* @rx_tlv: TLV data extracted from the rx packet * @rx_tlv: TLV data extracted from the rx packet
* Return: uint8_t * Return: uint8_t
*/ */
static uint8_t hal_rx_get_tlv_7850(void *rx_tlv) static uint8_t hal_rx_get_tlv_kiwi(void *rx_tlv)
{ {
return HAL_RX_GET(rx_tlv, PHYRX_RSSI_LEGACY, RECEIVE_BANDWIDTH); return HAL_RX_GET(rx_tlv, PHYRX_RSSI_LEGACY, RECEIVE_BANDWIDTH);
} }
/** /**
* hal_rx_proc_phyrx_other_receive_info_tlv_7850() * hal_rx_proc_phyrx_other_receive_info_tlv_kiwi()
* - process other receive info TLV * - process other receive info TLV
* @rx_tlv_hdr: pointer to TLV header * @rx_tlv_hdr: pointer to TLV header
* @ppdu_info: pointer to ppdu_info * @ppdu_info: pointer to ppdu_info
@@ -878,7 +878,7 @@ static uint8_t hal_rx_get_tlv_7850(void *rx_tlv)
* Return: None * Return: None
*/ */
static static
void hal_rx_proc_phyrx_other_receive_info_tlv_7850(void *rx_tlv_hdr, void hal_rx_proc_phyrx_other_receive_info_tlv_kiwi(void *rx_tlv_hdr,
void *ppdu_info_handle) void *ppdu_info_handle)
{ {
uint32_t tlv_tag, tlv_len; uint32_t tlv_tag, tlv_len;
@@ -908,7 +908,7 @@ void hal_rx_proc_phyrx_other_receive_info_tlv_7850(void *rx_tlv_hdr,
} }
/** /**
* hal_reo_config_7850(): Set reo config parameters * hal_reo_config_kiwi(): Set reo config parameters
* @soc: hal soc handle * @soc: hal soc handle
* @reg_val: value to be set * @reg_val: value to be set
* @reo_params: reo parameters * @reo_params: reo parameters
@@ -916,7 +916,7 @@ void hal_rx_proc_phyrx_other_receive_info_tlv_7850(void *rx_tlv_hdr,
* Return: void * Return: void
*/ */
static static
void hal_reo_config_7850(struct hal_soc *soc, void hal_reo_config_kiwi(struct hal_soc *soc,
uint32_t reg_val, uint32_t reg_val,
struct hal_reo_params *reo_params) struct hal_reo_params *reo_params)
{ {
@@ -924,51 +924,51 @@ void hal_reo_config_7850(struct hal_soc *soc,
} }
/** /**
* hal_rx_msdu_desc_info_get_ptr_7850() - Get msdu desc info ptr * hal_rx_msdu_desc_info_get_ptr_kiwi() - Get msdu desc info ptr
* @msdu_details_ptr - Pointer to msdu_details_ptr * @msdu_details_ptr - Pointer to msdu_details_ptr
* *
* Return - Pointer to rx_msdu_desc_info structure. * Return - Pointer to rx_msdu_desc_info structure.
* *
*/ */
static void *hal_rx_msdu_desc_info_get_ptr_7850(void *msdu_details_ptr) static void *hal_rx_msdu_desc_info_get_ptr_kiwi(void *msdu_details_ptr)
{ {
return HAL_RX_MSDU_DESC_INFO_GET(msdu_details_ptr); return HAL_RX_MSDU_DESC_INFO_GET(msdu_details_ptr);
} }
/** /**
* hal_rx_link_desc_msdu0_ptr_7850 - Get pointer to rx_msdu details * hal_rx_link_desc_msdu0_ptr_kiwi - Get pointer to rx_msdu details
* @link_desc - Pointer to link desc * @link_desc - Pointer to link desc
* *
* Return - Pointer to rx_msdu_details structure * Return - Pointer to rx_msdu_details structure
* *
*/ */
static void *hal_rx_link_desc_msdu0_ptr_7850(void *link_desc) static void *hal_rx_link_desc_msdu0_ptr_kiwi(void *link_desc)
{ {
return HAL_RX_LINK_DESC_MSDU0_PTR(link_desc); return HAL_RX_LINK_DESC_MSDU0_PTR(link_desc);
} }
/** /**
* hal_get_window_address_7850(): Function to get hp/tp address * hal_get_window_address_kiwi(): Function to get hp/tp address
* @hal_soc: Pointer to hal_soc * @hal_soc: Pointer to hal_soc
* @addr: address offset of register * @addr: address offset of register
* *
* Return: modified address offset of register * Return: modified address offset of register
*/ */
static inline qdf_iomem_t hal_get_window_address_7850(struct hal_soc *hal_soc, static inline qdf_iomem_t hal_get_window_address_kiwi(struct hal_soc *hal_soc,
qdf_iomem_t addr) qdf_iomem_t addr)
{ {
return addr; return addr;
} }
/** /**
* hal_reo_set_err_dst_remap_7850(): Function to set REO error destination * hal_reo_set_err_dst_remap_kiwi(): Function to set REO error destination
* ring remap register * ring remap register
* @hal_soc: Pointer to hal_soc * @hal_soc: Pointer to hal_soc
* *
* Return: none. * Return: none.
*/ */
static void static void
hal_reo_set_err_dst_remap_7850(void *hal_soc) hal_reo_set_err_dst_remap_kiwi(void *hal_soc)
{ {
/* /*
* Set REO error 2k jump (error code 5) / OOR (error code 7) * Set REO error 2k jump (error code 5) / OOR (error code 7)
@@ -1017,13 +1017,13 @@ hal_reo_set_err_dst_remap_7850(void *hal_soc)
} }
/** /**
* hal_reo_enable_pn_in_dest_7850() - Set the REO register to enable previous PN * hal_reo_enable_pn_in_dest_kiwi() - Set the REO register to enable previous PN
* for OOR and 2K-jump frames * for OOR and 2K-jump frames
* @hal_soc: HAL SoC handle * @hal_soc: HAL SoC handle
* *
* Return: 1, since the register is set. * Return: 1, since the register is set.
*/ */
static uint8_t hal_reo_enable_pn_in_dest_7850(void *hal_soc) static uint8_t hal_reo_enable_pn_in_dest_kiwi(void *hal_soc)
{ {
HAL_REG_WRITE(hal_soc, HWIO_REO_R0_PN_IN_DEST_ADDR(REO_REG_REG_BASE), HAL_REG_WRITE(hal_soc, HWIO_REO_R0_PN_IN_DEST_ADDR(REO_REG_REG_BASE),
1); 1);
@@ -1031,7 +1031,7 @@ static uint8_t hal_reo_enable_pn_in_dest_7850(void *hal_soc)
} }
/** /**
* hal_rx_flow_setup_fse_7850() - Setup a flow search entry in HW FST * hal_rx_flow_setup_fse_kiwi() - Setup a flow search entry in HW FST
* @fst: Pointer to the Rx Flow Search Table * @fst: Pointer to the Rx Flow Search Table
* @table_offset: offset into the table where the flow is to be setup * @table_offset: offset into the table where the flow is to be setup
* @flow: Flow Parameters * @flow: Flow Parameters
@@ -1041,7 +1041,7 @@ static uint8_t hal_reo_enable_pn_in_dest_7850(void *hal_soc)
* Return: Success/Failure * Return: Success/Failure
*/ */
static void * static void *
hal_rx_flow_setup_fse_7850(uint8_t *rx_fst, uint32_t table_offset, hal_rx_flow_setup_fse_kiwi(uint8_t *rx_fst, uint32_t table_offset,
uint8_t *rx_flow) uint8_t *rx_flow)
{ {
struct hal_rx_fst *fst = (struct hal_rx_fst *)rx_fst; struct hal_rx_fst *fst = (struct hal_rx_fst *)rx_fst;
@@ -1145,7 +1145,7 @@ hal_rx_flow_setup_fse_7850(uint8_t *rx_fst, uint32_t table_offset,
} }
static static
void hal_compute_reo_remap_ix2_ix3_7850(uint32_t *ring_map, void hal_compute_reo_remap_ix2_ix3_kiwi(uint32_t *ring_map,
uint32_t num_rings, uint32_t *remap1, uint32_t num_rings, uint32_t *remap1,
uint32_t *remap2) uint32_t *remap2)
{ {
@@ -1241,28 +1241,28 @@ void hal_compute_reo_remap_ix2_ix3_7850(uint32_t *ring_map,
} }
} }
/* NUM TCL Bank registers in WCN7850 */ /* NUM TCL Bank registers in KIWI */
#define HAL_NUM_TCL_BANKS_7850 8 #define HAL_NUM_TCL_BANKS_KIWI 8
/** /**
* hal_tx_get_num_tcl_banks_7850() - Get number of banks in target * hal_tx_get_num_tcl_banks_kiwi() - Get number of banks in target
* *
* Returns: number of bank * Returns: number of bank
*/ */
static uint8_t hal_tx_get_num_tcl_banks_7850(void) static uint8_t hal_tx_get_num_tcl_banks_kiwi(void)
{ {
return HAL_NUM_TCL_BANKS_7850; return HAL_NUM_TCL_BANKS_KIWI;
} }
/** /**
* hal_rx_reo_prev_pn_get_7850() - Get the previous PN from the REO ring desc. * hal_rx_reo_prev_pn_get_kiwi() - Get the previous PN from the REO ring desc.
* @ring_desc: REO ring descriptor [To be validated by caller ] * @ring_desc: REO ring descriptor [To be validated by caller ]
* @prev_pn: Buffer where the previous PN is to be populated. * @prev_pn: Buffer where the previous PN is to be populated.
* [To be validated by caller] * [To be validated by caller]
* *
* Return: None * Return: None
*/ */
static void hal_rx_reo_prev_pn_get_7850(void *ring_desc, static void hal_rx_reo_prev_pn_get_kiwi(void *ring_desc,
uint64_t *prev_pn) uint64_t *prev_pn)
{ {
struct reo_destination_ring_with_pn *reo_desc = struct reo_destination_ring_with_pn *reo_desc =
@@ -1273,14 +1273,14 @@ static void hal_rx_reo_prev_pn_get_7850(void *ring_desc,
} }
/** /**
* hal_cmem_write_7850() - function for CMEM buffer writing * hal_cmem_write_kiwi() - function for CMEM buffer writing
* @hal_soc_hdl: HAL SOC handle * @hal_soc_hdl: HAL SOC handle
* @offset: CMEM address * @offset: CMEM address
* @value: value to write * @value: value to write
* *
* Return: None. * Return: None.
*/ */
static inline void hal_cmem_write_7850(hal_soc_handle_t hal_soc_hdl, static inline void hal_cmem_write_kiwi(hal_soc_handle_t hal_soc_hdl,
uint32_t offset, uint32_t offset,
uint32_t value) uint32_t value)
{ {
@@ -1289,52 +1289,63 @@ static inline void hal_cmem_write_7850(hal_soc_handle_t hal_soc_hdl,
hal_write32_mb(hal, offset, value); hal_write32_mb(hal, offset, value);
} }
static void hal_hw_txrx_ops_attach_wcn7850(struct hal_soc *hal_soc) /**
* hal_get_idle_link_bm_id_kiwi() - Get idle link BM id from chid_id
* @chip_id: mlo chip_id
*
* Returns: RBM ID
*/
static uint8_t hal_get_idle_link_bm_id_kiwi(uint8_t chip_id)
{
return WBM_IDLE_DESC_LIST;
}
static void hal_hw_txrx_ops_attach_kiwi(struct hal_soc *hal_soc)
{ {
/* init and setup */ /* init and setup */
hal_soc->ops->hal_srng_dst_hw_init = hal_srng_dst_hw_init_generic; hal_soc->ops->hal_srng_dst_hw_init = hal_srng_dst_hw_init_generic;
hal_soc->ops->hal_srng_src_hw_init = hal_srng_src_hw_init_generic; hal_soc->ops->hal_srng_src_hw_init = hal_srng_src_hw_init_generic;
hal_soc->ops->hal_get_hw_hptp = hal_get_hw_hptp_generic; hal_soc->ops->hal_get_hw_hptp = hal_get_hw_hptp_generic;
hal_soc->ops->hal_get_window_address = hal_get_window_address_7850; hal_soc->ops->hal_get_window_address = hal_get_window_address_kiwi;
hal_soc->ops->hal_reo_set_err_dst_remap = hal_soc->ops->hal_reo_set_err_dst_remap =
hal_reo_set_err_dst_remap_7850; hal_reo_set_err_dst_remap_kiwi;
hal_soc->ops->hal_reo_enable_pn_in_dest = hal_soc->ops->hal_reo_enable_pn_in_dest =
hal_reo_enable_pn_in_dest_7850; hal_reo_enable_pn_in_dest_kiwi;
/* tx */ /* tx */
hal_soc->ops->hal_tx_set_dscp_tid_map = hal_tx_set_dscp_tid_map_7850; hal_soc->ops->hal_tx_set_dscp_tid_map = hal_tx_set_dscp_tid_map_kiwi;
hal_soc->ops->hal_tx_update_dscp_tid = hal_tx_update_dscp_tid_7850; hal_soc->ops->hal_tx_update_dscp_tid = hal_tx_update_dscp_tid_kiwi;
hal_soc->ops->hal_tx_comp_get_status = hal_soc->ops->hal_tx_comp_get_status =
hal_tx_comp_get_status_generic_be; hal_tx_comp_get_status_generic_be;
hal_soc->ops->hal_tx_init_cmd_credit_ring = hal_soc->ops->hal_tx_init_cmd_credit_ring =
hal_tx_init_cmd_credit_ring_7850; hal_tx_init_cmd_credit_ring_kiwi;
/* rx */ /* rx */
hal_soc->ops->hal_rx_msdu_start_nss_get = hal_rx_tlv_nss_get_be; hal_soc->ops->hal_rx_msdu_start_nss_get = hal_rx_tlv_nss_get_be;
hal_soc->ops->hal_rx_mon_hw_desc_get_mpdu_status = hal_soc->ops->hal_rx_mon_hw_desc_get_mpdu_status =
hal_rx_mon_hw_desc_get_mpdu_status_be; hal_rx_mon_hw_desc_get_mpdu_status_be;
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_7850; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_kiwi;
hal_soc->ops->hal_rx_pkt_hdr_get = hal_rx_pkt_hdr_get_be; hal_soc->ops->hal_rx_pkt_hdr_get = hal_rx_pkt_hdr_get_be;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_7850; hal_rx_proc_phyrx_other_receive_info_tlv_kiwi;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_7850; hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_kiwi;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv = hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_7850; hal_rx_dump_mpdu_start_tlv_kiwi;
hal_soc->ops->hal_rx_dump_pkt_tlvs = hal_rx_dump_pkt_tlvs_7850; hal_soc->ops->hal_rx_dump_pkt_tlvs = hal_rx_dump_pkt_tlvs_kiwi;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_7850; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_kiwi;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_rx_tlv_tid_get_be; hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_rx_tlv_tid_get_be;
hal_soc->ops->hal_rx_msdu_start_reception_type_get = hal_soc->ops->hal_rx_msdu_start_reception_type_get =
hal_rx_tlv_reception_type_get_be; hal_rx_tlv_reception_type_get_be;
hal_soc->ops->hal_rx_msdu_end_da_idx_get = hal_soc->ops->hal_rx_msdu_end_da_idx_get =
hal_rx_msdu_end_da_idx_get_be; hal_rx_msdu_end_da_idx_get_be;
hal_soc->ops->hal_rx_msdu_desc_info_get_ptr = hal_soc->ops->hal_rx_msdu_desc_info_get_ptr =
hal_rx_msdu_desc_info_get_ptr_7850; hal_rx_msdu_desc_info_get_ptr_kiwi;
hal_soc->ops->hal_rx_link_desc_msdu0_ptr = hal_soc->ops->hal_rx_link_desc_msdu0_ptr =
hal_rx_link_desc_msdu0_ptr_7850; hal_rx_link_desc_msdu0_ptr_kiwi;
hal_soc->ops->hal_reo_status_get_header = hal_soc->ops->hal_reo_status_get_header =
hal_reo_status_get_header_7850; hal_reo_status_get_header_kiwi;
hal_soc->ops->hal_rx_status_get_tlv_info = hal_soc->ops->hal_rx_status_get_tlv_info =
hal_rx_status_get_tlv_info_generic_be; hal_rx_status_get_tlv_info_generic_be;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
@@ -1391,11 +1402,11 @@ static void hal_hw_txrx_ops_attach_wcn7850(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_hw_desc_get_ppduid_get = hal_soc->ops->hal_rx_hw_desc_get_ppduid_get =
hal_rx_hw_desc_get_ppduid_get_be; hal_rx_hw_desc_get_ppduid_get_be;
hal_soc->ops->hal_rx_msdu0_buffer_addr_lsb = hal_soc->ops->hal_rx_msdu0_buffer_addr_lsb =
hal_rx_msdu0_buffer_addr_lsb_7850; hal_rx_msdu0_buffer_addr_lsb_kiwi;
hal_soc->ops->hal_rx_msdu_desc_info_ptr_get = hal_soc->ops->hal_rx_msdu_desc_info_ptr_get =
hal_rx_msdu_desc_info_ptr_get_7850; hal_rx_msdu_desc_info_ptr_get_kiwi;
hal_soc->ops->hal_ent_mpdu_desc_info = hal_ent_mpdu_desc_info_7850; hal_soc->ops->hal_ent_mpdu_desc_info = hal_ent_mpdu_desc_info_kiwi;
hal_soc->ops->hal_dst_mpdu_desc_info = hal_dst_mpdu_desc_info_7850; hal_soc->ops->hal_dst_mpdu_desc_info = hal_dst_mpdu_desc_info_kiwi;
hal_soc->ops->hal_rx_get_fc_valid = hal_rx_get_fc_valid_be; hal_soc->ops->hal_rx_get_fc_valid = hal_rx_get_fc_valid_be;
hal_soc->ops->hal_rx_get_to_ds_flag = hal_rx_get_to_ds_flag_be; hal_soc->ops->hal_rx_get_to_ds_flag = hal_rx_get_to_ds_flag_be;
hal_soc->ops->hal_rx_get_mac_addr2_valid = hal_soc->ops->hal_rx_get_mac_addr2_valid =
@@ -1403,7 +1414,7 @@ static void hal_hw_txrx_ops_attach_wcn7850(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_filter_category = hal_soc->ops->hal_rx_get_filter_category =
hal_rx_get_filter_category_be; hal_rx_get_filter_category_be;
hal_soc->ops->hal_rx_get_ppdu_id = hal_rx_get_ppdu_id_be; hal_soc->ops->hal_rx_get_ppdu_id = hal_rx_get_ppdu_id_be;
hal_soc->ops->hal_reo_config = hal_reo_config_7850; hal_soc->ops->hal_reo_config = hal_reo_config_kiwi;
hal_soc->ops->hal_rx_msdu_flow_idx_get = hal_rx_msdu_flow_idx_get_be; hal_soc->ops->hal_rx_msdu_flow_idx_get = hal_rx_msdu_flow_idx_get_be;
hal_soc->ops->hal_rx_msdu_flow_idx_invalid = hal_soc->ops->hal_rx_msdu_flow_idx_invalid =
hal_rx_msdu_flow_idx_invalid_be; hal_rx_msdu_flow_idx_invalid_be;
@@ -1420,10 +1431,10 @@ static void hal_hw_txrx_ops_attach_wcn7850(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_tlv_get_tcp_chksum = hal_soc->ops->hal_rx_tlv_get_tcp_chksum =
hal_rx_tlv_get_tcp_chksum_be; hal_rx_tlv_get_tcp_chksum_be;
hal_soc->ops->hal_rx_get_rx_sequence = hal_rx_get_rx_sequence_be; hal_soc->ops->hal_rx_get_rx_sequence = hal_rx_get_rx_sequence_be;
#if defined(QCA_WIFI_WCN7850) && defined(WLAN_CFR_ENABLE) && \ #if defined(QCA_WIFI_KIWI) && defined(WLAN_CFR_ENABLE) && \
defined(WLAN_ENH_CFR_ENABLE) defined(WLAN_ENH_CFR_ENABLE)
hal_soc->ops->hal_rx_get_bb_info = hal_rx_get_bb_info_7850; hal_soc->ops->hal_rx_get_bb_info = hal_rx_get_bb_info_kiwi;
hal_soc->ops->hal_rx_get_rtt_info = hal_rx_get_rtt_info_7850; hal_soc->ops->hal_rx_get_rtt_info = hal_rx_get_rtt_info_kiwi;
#else #else
hal_soc->ops->hal_rx_get_bb_info = NULL; hal_soc->ops->hal_rx_get_bb_info = NULL;
hal_soc->ops->hal_rx_get_rtt_info = NULL; hal_soc->ops->hal_rx_get_rtt_info = NULL;
@@ -1443,7 +1454,7 @@ static void hal_hw_txrx_ops_attach_wcn7850(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_fisa_timeout = hal_rx_get_fisa_timeout_be; hal_soc->ops->hal_rx_get_fisa_timeout = hal_rx_get_fisa_timeout_be;
hal_soc->ops->hal_rx_mpdu_start_tlv_tag_valid = hal_soc->ops->hal_rx_mpdu_start_tlv_tag_valid =
hal_rx_mpdu_start_tlv_tag_valid_be; hal_rx_mpdu_start_tlv_tag_valid_be;
hal_soc->ops->hal_rx_reo_prev_pn_get = hal_rx_reo_prev_pn_get_7850; hal_soc->ops->hal_rx_reo_prev_pn_get = hal_rx_reo_prev_pn_get_kiwi;
/* rx - TLV struct offsets */ /* rx - TLV struct offsets */
hal_soc->ops->hal_rx_msdu_end_offset_get = hal_soc->ops->hal_rx_msdu_end_offset_get =
@@ -1452,21 +1463,21 @@ static void hal_hw_txrx_ops_attach_wcn7850(struct hal_soc *hal_soc)
hal_rx_mpdu_start_offset_get_generic; hal_rx_mpdu_start_offset_get_generic;
hal_soc->ops->hal_rx_pkt_tlv_offset_get = hal_soc->ops->hal_rx_pkt_tlv_offset_get =
hal_rx_pkt_tlv_offset_get_generic; hal_rx_pkt_tlv_offset_get_generic;
hal_soc->ops->hal_rx_flow_setup_fse = hal_rx_flow_setup_fse_7850; hal_soc->ops->hal_rx_flow_setup_fse = hal_rx_flow_setup_fse_kiwi;
hal_soc->ops->hal_rx_flow_get_tuple_info = hal_soc->ops->hal_rx_flow_get_tuple_info =
hal_rx_flow_get_tuple_info_be; hal_rx_flow_get_tuple_info_be;
hal_soc->ops->hal_rx_flow_delete_entry = hal_soc->ops->hal_rx_flow_delete_entry =
hal_rx_flow_delete_entry_be; hal_rx_flow_delete_entry_be;
hal_soc->ops->hal_rx_fst_get_fse_size = hal_rx_fst_get_fse_size_be; hal_soc->ops->hal_rx_fst_get_fse_size = hal_rx_fst_get_fse_size_be;
hal_soc->ops->hal_compute_reo_remap_ix2_ix3 = hal_soc->ops->hal_compute_reo_remap_ix2_ix3 =
hal_compute_reo_remap_ix2_ix3_7850; hal_compute_reo_remap_ix2_ix3_kiwi;
hal_soc->ops->hal_rx_flow_setup_cmem_fse = NULL; hal_soc->ops->hal_rx_flow_setup_cmem_fse = NULL;
hal_soc->ops->hal_rx_flow_get_cmem_fse_ts = NULL; hal_soc->ops->hal_rx_flow_get_cmem_fse_ts = NULL;
hal_soc->ops->hal_rx_flow_get_cmem_fse = NULL; hal_soc->ops->hal_rx_flow_get_cmem_fse = NULL;
hal_soc->ops->hal_cmem_write = hal_cmem_write_7850; hal_soc->ops->hal_cmem_write = hal_cmem_write_kiwi;
hal_soc->ops->hal_rx_msdu_get_reo_destination_indication = hal_soc->ops->hal_rx_msdu_get_reo_destination_indication =
hal_rx_msdu_get_reo_destination_indication_be; hal_rx_msdu_get_reo_destination_indication_be;
hal_soc->ops->hal_tx_get_num_tcl_banks = hal_tx_get_num_tcl_banks_7850; hal_soc->ops->hal_tx_get_num_tcl_banks = hal_tx_get_num_tcl_banks_kiwi;
hal_soc->ops->hal_rx_get_tlv_size = hal_rx_get_tlv_size_generic_be; hal_soc->ops->hal_rx_get_tlv_size = hal_rx_get_tlv_size_generic_be;
hal_soc->ops->hal_rx_msdu_is_wlan_mcast = hal_soc->ops->hal_rx_msdu_is_wlan_mcast =
hal_rx_msdu_is_wlan_mcast_generic_be; hal_rx_msdu_is_wlan_mcast_generic_be;
@@ -1507,7 +1518,7 @@ static void hal_hw_txrx_ops_attach_wcn7850(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_tlv_msdu_len_set = hal_soc->ops->hal_rx_tlv_msdu_len_set =
hal_rx_msdu_start_msdu_len_set_be; hal_rx_msdu_start_msdu_len_set_be;
hal_soc->ops->hal_rx_tlv_populate_mpdu_desc_info = hal_soc->ops->hal_rx_tlv_populate_mpdu_desc_info =
hal_rx_tlv_populate_mpdu_desc_info_7850; hal_rx_tlv_populate_mpdu_desc_info_kiwi;
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_soc->ops->hal_rx_tlv_get_pn_num =
hal_rx_tlv_get_pn_num_be; hal_rx_tlv_get_pn_num_be;
hal_soc->ops->hal_get_reo_ent_desc_qdesc_addr = hal_soc->ops->hal_get_reo_ent_desc_qdesc_addr =
@@ -1516,9 +1527,10 @@ static void hal_hw_txrx_ops_attach_wcn7850(struct hal_soc *hal_soc)
hal_rx_get_qdesc_addr_be; hal_rx_get_qdesc_addr_be;
hal_soc->ops->hal_set_reo_ent_desc_reo_dest_ind = hal_soc->ops->hal_set_reo_ent_desc_reo_dest_ind =
hal_set_reo_ent_desc_reo_dest_ind_be; hal_set_reo_ent_desc_reo_dest_ind_be;
hal_soc->ops->hal_get_idle_link_bm_id = hal_get_idle_link_bm_id_kiwi;
}; };
struct hal_hw_srng_config hw_srng_table_7850[] = { struct hal_hw_srng_config hw_srng_table_kiwi[] = {
/* TODO: max_rings can populated by querying HW capabilities */ /* TODO: max_rings can populated by querying HW capabilities */
{ /* REO_DST */ { /* REO_DST */
.start_ring_id = HAL_SRNG_REO2SW1, .start_ring_id = HAL_SRNG_REO2SW1,
@@ -1932,13 +1944,13 @@ struct hal_hw_srng_config hw_srng_table_7850[] = {
}; };
/** /**
* hal_srng_hw_reg_offset_init_wcn7850() - Initialize the HW srng reg offset * hal_srng_hw_reg_offset_init_kiwi() - Initialize the HW srng reg offset
* applicable only for WCN7850 * applicable only for KIWI
* @hal_soc: HAL Soc handle * @hal_soc: HAL Soc handle
* *
* Return: None * Return: None
*/ */
static inline void hal_srng_hw_reg_offset_init_wcn7850(struct hal_soc *hal_soc) static inline void hal_srng_hw_reg_offset_init_kiwi(struct hal_soc *hal_soc)
{ {
int32_t *hw_reg_offset = hal_soc->hal_hw_reg_offset; int32_t *hw_reg_offset = hal_soc->hal_hw_reg_offset;
@@ -1950,15 +1962,15 @@ static inline void hal_srng_hw_reg_offset_init_wcn7850(struct hal_soc *hal_soc)
} }
/** /**
* hal_wcn7850_attach() - Attach 7850 target specific hal_soc ops, * hal_kiwi_attach() - Attach kiwi target specific hal_soc ops,
* offset and srng table * offset and srng table
*/ */
void hal_wcn7850_attach(struct hal_soc *hal_soc) void hal_kiwi_attach(struct hal_soc *hal_soc)
{ {
hal_soc->hw_srng_table = hw_srng_table_7850; hal_soc->hw_srng_table = hw_srng_table_kiwi;
hal_srng_hw_reg_offset_init_generic(hal_soc); hal_srng_hw_reg_offset_init_generic(hal_soc);
hal_srng_hw_reg_offset_init_wcn7850(hal_soc); hal_srng_hw_reg_offset_init_kiwi(hal_soc);
hal_hw_txrx_default_ops_attach_be(hal_soc); hal_hw_txrx_default_ops_attach_be(hal_soc);
hal_hw_txrx_ops_attach_wcn7850(hal_soc); hal_hw_txrx_ops_attach_kiwi(hal_soc);
} }

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2021 The Linux Foundation. All rights reserved. * Copyright (c) 2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -16,8 +17,8 @@
* PERFORMANCE OF THIS SOFTWARE. * PERFORMANCE OF THIS SOFTWARE.
*/ */
#ifndef _HAL_7850_RX_H_ #ifndef _HAL_KIWI_RX_H_
#define _HAL_7850_RX_H_ #define _HAL_KIWI_RX_H_
#include "qdf_util.h" #include "qdf_util.h"
#include "qdf_types.h" #include "qdf_types.h"
#include "qdf_lock.h" #include "qdf_lock.h"
@@ -106,10 +107,10 @@ RX_MSDU_DETAILS_RX_MSDU_DESC_INFO_DETAILS_RESERVED_0A_OFFSET))
_OFFSET_TO_BYTE_PTR((link_desc),\ _OFFSET_TO_BYTE_PTR((link_desc),\
RX_MSDU_LINK_MSDU_0_BUFFER_ADDR_INFO_DETAILS_BUFFER_ADDR_31_0_OFFSET)) RX_MSDU_LINK_MSDU_0_BUFFER_ADDR_INFO_DETAILS_BUFFER_ADDR_31_0_OFFSET))
#if defined(QCA_WIFI_WCN7850) && defined(WLAN_CFR_ENABLE) && \ #if defined(QCA_WIFI_KIWI) && defined(WLAN_CFR_ENABLE) && \
defined(WLAN_ENH_CFR_ENABLE) defined(WLAN_ENH_CFR_ENABLE)
static inline static inline
void hal_rx_get_bb_info_7850(void *rx_tlv, void hal_rx_get_bb_info_kiwi(void *rx_tlv,
void *ppdu_info_hdl) void *ppdu_info_hdl)
{ {
struct hal_rx_ppdu_info *ppdu_info = ppdu_info_hdl; struct hal_rx_ppdu_info *ppdu_info = ppdu_info_hdl;
@@ -125,7 +126,7 @@ void hal_rx_get_bb_info_7850(void *rx_tlv,
} }
static inline static inline
void hal_rx_get_rtt_info_7850(void *rx_tlv, void hal_rx_get_rtt_info_kiwi(void *rx_tlv,
void *ppdu_info_hdl) void *ppdu_info_hdl)
{ {
struct hal_rx_ppdu_info *ppdu_info = ppdu_info_hdl; struct hal_rx_ppdu_info *ppdu_info = ppdu_info_hdl;
@@ -145,7 +146,7 @@ void hal_rx_get_rtt_info_7850(void *rx_tlv,
RTT_CHE_BUFFER_POINTER_HIGH8); RTT_CHE_BUFFER_POINTER_HIGH8);
// TODO Beryllium - Changed reserved8 to reserved3 to avoid // TODO Beryllium - Changed reserved8 to reserved3 to avoid
// compilation failure for wcn7850 // compilation failure for kiwi
ppdu_info->cfr_info.chan_capture_status = ppdu_info->cfr_info.chan_capture_status =
HAL_RX_GET(rx_tlv, HAL_RX_GET(rx_tlv,
RX_LOCATION_INFO, RX_LOCATION_INFO,

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2021 The Linux Foundation. All rights reserved. * Copyright (c) 2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -31,7 +32,7 @@
#define NUM_WORDS_PER_DSCP_TID_TABLE (DSCP_TID_TABLE_SIZE / 4) #define NUM_WORDS_PER_DSCP_TID_TABLE (DSCP_TID_TABLE_SIZE / 4)
/** /**
* hal_tx_set_dscp_tid_map_7850() - Configure default DSCP to TID map table * hal_tx_set_dscp_tid_map_kiwi() - Configure default DSCP to TID map table
* @soc: HAL SoC context * @soc: HAL SoC context
* @map: DSCP-TID mapping table * @map: DSCP-TID mapping table
* @id: mapping table ID - 0-31 * @id: mapping table ID - 0-31
@@ -41,7 +42,7 @@
* *
* Return: none * Return: none
*/ */
static void hal_tx_set_dscp_tid_map_7850(struct hal_soc *hal_soc, uint8_t *map, static void hal_tx_set_dscp_tid_map_kiwi(struct hal_soc *hal_soc, uint8_t *map,
uint8_t id) uint8_t id)
{ {
int i; int i;
@@ -100,7 +101,7 @@ static void hal_tx_set_dscp_tid_map_7850(struct hal_soc *hal_soc, uint8_t *map,
} }
/** /**
* hal_tx_update_dscp_tid_7850() - Update the dscp tid map table as updated * hal_tx_update_dscp_tid_kiwi() - Update the dscp tid map table as updated
* by the user * by the user
* @soc: HAL SoC context * @soc: HAL SoC context
* @map: DSCP-TID mapping table * @map: DSCP-TID mapping table
@@ -109,7 +110,7 @@ static void hal_tx_set_dscp_tid_map_7850(struct hal_soc *hal_soc, uint8_t *map,
* *
* Return: void * Return: void
*/ */
static void hal_tx_update_dscp_tid_7850(struct hal_soc *hal_soc, uint8_t tid, static void hal_tx_update_dscp_tid_kiwi(struct hal_soc *hal_soc, uint8_t tid,
uint8_t id, uint8_t dscp) uint8_t id, uint8_t dscp)
{ {
int index; int index;
@@ -133,14 +134,14 @@ static void hal_tx_update_dscp_tid_7850(struct hal_soc *hal_soc, uint8_t tid,
} }
/** /**
* hal_tx_init_cmd_credit_ring_7850() - Initialize command/credit SRNG * hal_tx_init_cmd_credit_ring_kiwi() - Initialize command/credit SRNG
* @hal_soc_hdl: Handle to HAL SoC structure * @hal_soc_hdl: Handle to HAL SoC structure
* @hal_srng: Handle to HAL SRNG structure * @hal_srng: Handle to HAL SRNG structure
* *
* Return: none * Return: none
*/ */
static inline void static inline void
hal_tx_init_cmd_credit_ring_7850(hal_soc_handle_t hal_soc_hdl, hal_tx_init_cmd_credit_ring_kiwi(hal_soc_handle_t hal_soc_hdl,
hal_ring_handle_t hal_ring_hdl) hal_ring_handle_t hal_ring_hdl)
{ {
} }

View File

@@ -1472,7 +1472,7 @@ static inline void hal_rx_dump_pkt_hdr_tlv_9224(struct rx_pkt_tlvs *pkt_tlvs,
} }
/** /**
* hal_rx_dump_pkt_tlvs_9224(): API to print RX Pkt TLVS for 7850 * hal_rx_dump_pkt_tlvs_9224(): API to print RX Pkt TLVS QCN9224
* @hal_soc_hdl: hal_soc handle * @hal_soc_hdl: hal_soc handle
* @buf: pointer the pkt buffer * @buf: pointer the pkt buffer
* @dbg_level: log level * @dbg_level: log level
@@ -2347,7 +2347,7 @@ struct hal_hw_srng_config hw_srng_table_9224[] = {
/** /**
* hal_srng_hw_reg_offset_init_qcn9224() - Initialize the HW srng reg offset * hal_srng_hw_reg_offset_init_qcn9224() - Initialize the HW srng reg offset
* applicable only for WCN7850 * applicable only for QCN9224
* @hal_soc: HAL Soc handle * @hal_soc: HAL Soc handle
* *
* Return: None * Return: None

View File

@@ -78,7 +78,7 @@ typedef void *hif_handle_t;
#define HIF_TYPE_QCA6750 23 #define HIF_TYPE_QCA6750 23
#define HIF_TYPE_QCA5018 24 #define HIF_TYPE_QCA5018 24
#define HIF_TYPE_QCN6122 25 #define HIF_TYPE_QCN6122 25
#define HIF_TYPE_WCN7850 26 #define HIF_TYPE_KIWI 26
#define HIF_TYPE_QCN9224 27 #define HIF_TYPE_QCN9224 27
#define HIF_TYPE_QCA9574 28 #define HIF_TYPE_QCA9574 28

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2013-2016,2018-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2013-2016,2018-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -37,7 +38,7 @@ extern struct hostdef_s *QCA6290_HOSTdef;
extern struct hostdef_s *QCA6390_HOSTdef; extern struct hostdef_s *QCA6390_HOSTdef;
extern struct hostdef_s *QCA6490_HOSTdef; extern struct hostdef_s *QCA6490_HOSTdef;
extern struct hostdef_s *QCA6750_HOSTdef; extern struct hostdef_s *QCA6750_HOSTdef;
extern struct hostdef_s *WCN7850_HOSTdef; extern struct hostdef_s *KIWI_HOSTdef;
#ifdef ATH_AHB #ifdef ATH_AHB
extern struct hostdef_s *IPQ4019_HOSTdef; extern struct hostdef_s *IPQ4019_HOSTdef;

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2013-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2013-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -71,8 +72,8 @@ extern "C" {
#endif #endif
/* Hamilton */ /* Hamilton */
#ifndef TARGET_TYPE_WCN7850 #ifndef TARGET_TYPE_KIWI
#define TARGET_TYPE_WCN7850 31 #define TARGET_TYPE_KIWI 31
#endif #endif
#ifndef TARGET_TYPE_QCN9224 #ifndef TARGET_TYPE_QCN9224

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2013-2016,2018-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2013-2016,2018-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -47,7 +48,7 @@ extern struct targetdef_s *QCA6018_TARGETDEF;
extern struct targetdef_s *QCA5018_TARGETDEF; extern struct targetdef_s *QCA5018_TARGETDEF;
extern struct targetdef_s *QCN9000_TARGETDEF; extern struct targetdef_s *QCN9000_TARGETDEF;
extern struct targetdef_s *QCN6122_TARGETDEF; extern struct targetdef_s *QCN6122_TARGETDEF;
extern struct targetdef_s *WCN7850_TARGETdef; extern struct targetdef_s *KIWI_TARGETdef;
extern struct targetdef_s *QCN9224_TARGETDEF; extern struct targetdef_s *QCN9224_TARGETDEF;
extern struct targetdef_s *QCA9574_TARGETDEF; extern struct targetdef_s *QCA9574_TARGETDEF;
@@ -73,7 +74,7 @@ extern struct ce_reg_def *QCA6018_CE_TARGETDEF;
extern struct ce_reg_def *QCA5018_CE_TARGETDEF; extern struct ce_reg_def *QCA5018_CE_TARGETDEF;
extern struct ce_reg_def *QCN9000_CE_TARGETDEF; extern struct ce_reg_def *QCN9000_CE_TARGETDEF;
extern struct ce_reg_def *QCN6122_CE_TARGETDEF; extern struct ce_reg_def *QCN6122_CE_TARGETDEF;
extern struct ce_reg_def *WCN7850_CE_TARGETdef; extern struct ce_reg_def *KIWI_CE_TARGETdef;
extern struct ce_reg_def *QCN9224_CE_TARGETDEF; extern struct ce_reg_def *QCN9224_CE_TARGETDEF;
extern struct ce_reg_def *QCA9574_CE_TARGETDEF; extern struct ce_reg_def *QCA9574_CE_TARGETDEF;

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2013-2014, 2016-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2013-2014, 2016-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -111,7 +112,7 @@ static ssize_t ath_procfs_diag_read_legacy(struct file *file,
(tgt_info->target_type == TARGET_TYPE_QCA5018) || (tgt_info->target_type == TARGET_TYPE_QCA5018) ||
(tgt_info->target_type == TARGET_TYPE_QCA6018) || (tgt_info->target_type == TARGET_TYPE_QCA6018) ||
(tgt_info->target_type == TARGET_TYPE_QCN7605) || (tgt_info->target_type == TARGET_TYPE_QCN7605) ||
(tgt_info->target_type == TARGET_TYPE_WCN7850))) || (tgt_info->target_type == TARGET_TYPE_KIWI))) ||
(scn->bus_type == QDF_BUS_TYPE_IPCI && (scn->bus_type == QDF_BUS_TYPE_IPCI &&
(tgt_info->target_type == TARGET_TYPE_QCA6750)) || (tgt_info->target_type == TARGET_TYPE_QCA6750)) ||
((scn->bus_type == QDF_BUS_TYPE_USB) && ((scn->bus_type == QDF_BUS_TYPE_USB) &&
@@ -193,7 +194,7 @@ static ssize_t ath_procfs_diag_write_legacy(struct file *file,
(tgt_info->target_type == TARGET_TYPE_QCA5018) || (tgt_info->target_type == TARGET_TYPE_QCA5018) ||
(tgt_info->target_type == TARGET_TYPE_QCA6018) || (tgt_info->target_type == TARGET_TYPE_QCA6018) ||
(tgt_info->target_type == TARGET_TYPE_QCN7605) || (tgt_info->target_type == TARGET_TYPE_QCN7605) ||
(tgt_info->target_type == TARGET_TYPE_WCN7850))) || (tgt_info->target_type == TARGET_TYPE_KIWI))) ||
(scn->bus_type == QDF_BUS_TYPE_IPCI && (scn->bus_type == QDF_BUS_TYPE_IPCI &&
(tgt_info->target_type == TARGET_TYPE_QCA6750)) || (tgt_info->target_type == TARGET_TYPE_QCA6750)) ||
((scn->bus_type == QDF_BUS_TYPE_USB) && ((scn->bus_type == QDF_BUS_TYPE_USB) &&
@@ -339,7 +340,7 @@ static ssize_t ath_procfs_diag_read_ext(struct file *file, char __user *buf,
switch (tgt_info->target_type) { switch (tgt_info->target_type) {
case TARGET_TYPE_QCA6390: case TARGET_TYPE_QCA6390:
case TARGET_TYPE_QCA6490: case TARGET_TYPE_QCA6490:
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
if (op_type == OP_TYPE_EXT_DIRECT) if (op_type == OP_TYPE_EXT_DIRECT)
rv = ath_procfs_direct_read(scn, rv = ath_procfs_direct_read(scn,
offset, offset,
@@ -414,7 +415,7 @@ static ssize_t ath_procfs_diag_write_ext(struct file *file,
switch (tgt_info->target_type) { switch (tgt_info->target_type) {
case TARGET_TYPE_QCA6390: case TARGET_TYPE_QCA6390:
case TARGET_TYPE_QCA6490: case TARGET_TYPE_QCA6490:
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
if (op_type == OP_TYPE_EXT_DIRECT) if (op_type == OP_TYPE_EXT_DIRECT)
rv = ath_procfs_direct_write(scn, rv = ath_procfs_direct_write(scn,
offset, offset,

View File

@@ -1466,8 +1466,8 @@ static struct CE_pipe_config target_ce_config_wlan_qca6750[] = {
/* CE 9, 10, 11 belong to CoreBsp & MHI driver */ /* CE 9, 10, 11 belong to CoreBsp & MHI driver */
}; };
#define WCN_7850_CE_COUNT 9 #define KIWI_CE_COUNT 9
static struct CE_attr host_ce_config_wlan_wcn7850[] = { static struct CE_attr host_ce_config_wlan_kiwi[] = {
/* host->target HTC control and raw streams */ /* host->target HTC control and raw streams */
{ /* CE0 */ CE_ATTR_FLAGS, 0, 16, 2048, 0, NULL,}, { /* CE0 */ CE_ATTR_FLAGS, 0, 16, 2048, 0, NULL,},
/* target->host HTT + HTC control */ /* target->host HTT + HTC control */
@@ -1495,7 +1495,7 @@ static struct CE_attr host_ce_config_wlan_wcn7850[] = {
/* CE 9, 10, 11 belong to CoreBsp & MHI driver */ /* CE 9, 10, 11 belong to CoreBsp & MHI driver */
}; };
static struct CE_pipe_config target_ce_config_wlan_wcn7850[] = { static struct CE_pipe_config target_ce_config_wlan_kiwi[] = {
/* host->target HTC control and raw streams */ /* host->target HTC control and raw streams */
{ /* CE0 */ 0, PIPEDIR_OUT, 32, 2048, CE_ATTR_FLAGS, 0,}, { /* CE0 */ 0, PIPEDIR_OUT, 32, 2048, CE_ATTR_FLAGS, 0,},
/* target->host HTT */ /* target->host HTT */

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2013-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2013-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -54,7 +55,7 @@
#if (defined(QCA_WIFI_QCA8074) || defined(QCA_WIFI_QCA6290) || \ #if (defined(QCA_WIFI_QCA8074) || defined(QCA_WIFI_QCA6290) || \
defined(QCA_WIFI_QCA6018) || defined(QCA_WIFI_QCA5018) || \ defined(QCA_WIFI_QCA6018) || defined(QCA_WIFI_QCA5018) || \
defined(QCA_WIFI_WCN7850) || defined(QCA_WIFI_QCA9574)) && \ defined(QCA_WIFI_KIWI) || defined(QCA_WIFI_QCA9574)) && \
!defined(QCA_WIFI_SUPPORT_SRNG) !defined(QCA_WIFI_SUPPORT_SRNG)
#define QCA_WIFI_SUPPORT_SRNG #define QCA_WIFI_SUPPORT_SRNG
#endif #endif
@@ -1091,8 +1092,8 @@ static struct service_to_pipe target_service_to_ce_map_qca6750[] = {
}; };
#endif #endif
#if (defined(QCA_WIFI_WCN7850)) #if (defined(QCA_WIFI_KIWI))
static struct service_to_pipe target_service_to_ce_map_wcn7850[] = { static struct service_to_pipe target_service_to_ce_map_kiwi[] = {
{ WMI_DATA_VO_SVC, PIPEDIR_OUT, 3, }, { WMI_DATA_VO_SVC, PIPEDIR_OUT, 3, },
{ WMI_DATA_VO_SVC, PIPEDIR_IN, 2, }, { WMI_DATA_VO_SVC, PIPEDIR_IN, 2, },
{ WMI_DATA_BK_SVC, PIPEDIR_OUT, 3, }, { WMI_DATA_BK_SVC, PIPEDIR_OUT, 3, },
@@ -1114,7 +1115,7 @@ static struct service_to_pipe target_service_to_ce_map_wcn7850[] = {
{ 0, 0, 0, }, { 0, 0, 0, },
}; };
#else #else
static struct service_to_pipe target_service_to_ce_map_wcn7850[] = { static struct service_to_pipe target_service_to_ce_map_kiwi[] = {
}; };
#endif #endif
@@ -1356,10 +1357,10 @@ static void hif_select_service_to_pipe_map(struct hif_softc *scn,
*sz_tgt_svc_map_to_use = *sz_tgt_svc_map_to_use =
sizeof(target_service_to_ce_map_qca6750); sizeof(target_service_to_ce_map_qca6750);
break; break;
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
*tgt_svc_map_to_use = target_service_to_ce_map_wcn7850; *tgt_svc_map_to_use = target_service_to_ce_map_kiwi;
*sz_tgt_svc_map_to_use = *sz_tgt_svc_map_to_use =
sizeof(target_service_to_ce_map_wcn7850); sizeof(target_service_to_ce_map_kiwi);
break; break;
case TARGET_TYPE_QCA8074: case TARGET_TYPE_QCA8074:
*tgt_svc_map_to_use = target_service_to_ce_map_qca8074; *tgt_svc_map_to_use = target_service_to_ce_map_qca8074;
@@ -1628,7 +1629,7 @@ bool ce_srng_based(struct hif_softc *scn)
case TARGET_TYPE_QCN9000: case TARGET_TYPE_QCN9000:
case TARGET_TYPE_QCN6122: case TARGET_TYPE_QCN6122:
case TARGET_TYPE_QCA5018: case TARGET_TYPE_QCA5018:
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
case TARGET_TYPE_QCN9224: case TARGET_TYPE_QCN9224:
case TARGET_TYPE_QCA9574: case TARGET_TYPE_QCA9574:
return true; return true;
@@ -3913,12 +3914,12 @@ void hif_ce_prepare_config(struct hif_softc *scn)
scn->ce_count = QCA_6750_CE_COUNT; scn->ce_count = QCA_6750_CE_COUNT;
break; break;
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
hif_state->host_ce_config = host_ce_config_wlan_wcn7850; hif_state->host_ce_config = host_ce_config_wlan_kiwi;
hif_state->target_ce_config = target_ce_config_wlan_wcn7850; hif_state->target_ce_config = target_ce_config_wlan_kiwi;
hif_state->target_ce_config_sz = hif_state->target_ce_config_sz =
sizeof(target_ce_config_wlan_wcn7850); sizeof(target_ce_config_wlan_kiwi);
scn->ce_count = WCN_7850_CE_COUNT; scn->ce_count = KIWI_CE_COUNT;
break; break;
case TARGET_TYPE_ADRASTEA: case TARGET_TYPE_ADRASTEA:
if (hif_is_attribute_set(scn, HIF_LOWDESC_CE_NO_PKTLOG_CFG)) { if (hif_is_attribute_set(scn, HIF_LOWDESC_CE_NO_PKTLOG_CFG)) {

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2012-2018, 2020-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2012-2018, 2020-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -33,7 +34,7 @@
#define QCA9377_REV1_1_VERSION 0x5020001 #define QCA9377_REV1_1_VERSION 0x5020001
#define QCA6390_V1 0x50040000 #define QCA6390_V1 0x50040000
#define QCA6490_V1 0x50060000 #define QCA6490_V1 0x50060000
#define WCN7850_V1 0xDEADBEEF // TODO Define this #define KIWI_V1 0xDEADBEEF // TODO Define this
#define WCN3990_v1 0x40000000 #define WCN3990_v1 0x40000000
#define WCN3990_v2 0x40010000 #define WCN3990_v2 0x40010000
#define WCN3990_v2_1 0x40010002 #define WCN3990_v2_1 0x40010002

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2015-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2015-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -32,7 +33,7 @@
#define MAX_UNWINDOWED_ADDRESS 0x80000 #define MAX_UNWINDOWED_ADDRESS 0x80000
#if defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \ #if defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \
defined(QCA_WIFI_QCN9000) || defined(QCA_WIFI_QCA6750) || \ defined(QCA_WIFI_QCN9000) || defined(QCA_WIFI_QCA6750) || \
defined(QCA_WIFI_QCN9224) || defined(QCA_WIFI_WCN7850) defined(QCA_WIFI_QCN9224) || defined(QCA_WIFI_KIWI)
#define WINDOW_ENABLE_BIT 0x40000000 #define WINDOW_ENABLE_BIT 0x40000000
#else #else
#define WINDOW_ENABLE_BIT 0x80000000 #define WINDOW_ENABLE_BIT 0x80000000

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2015-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2015-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -360,9 +361,9 @@ static const struct qwlan_hw qwlan_hw_list[] = {
.name = "QCA9379_REV1_1", .name = "QCA9379_REV1_1",
}, },
{ {
.id = WCN7850_V1, .id = KIWI_V1,
.subid = 0xE, .subid = 0xE,
.name = "WCN7850_V1", .name = "KIWI_V1",
} }
}; };
@@ -1029,7 +1030,7 @@ static inline int hif_get_num_active_grp_tasklets(struct hif_softc *scn)
defined(QCA_WIFI_QCA6290) || defined(QCA_WIFI_QCA6390) || \ defined(QCA_WIFI_QCA6290) || defined(QCA_WIFI_QCA6390) || \
defined(QCA_WIFI_QCN9000) || defined(QCA_WIFI_QCA6490) || \ defined(QCA_WIFI_QCN9000) || defined(QCA_WIFI_QCA6490) || \
defined(QCA_WIFI_QCA6750) || defined(QCA_WIFI_QCA5018) || \ defined(QCA_WIFI_QCA6750) || defined(QCA_WIFI_QCA5018) || \
defined(QCA_WIFI_WCN7850) || defined(QCA_WIFI_QCN9224) || \ defined(QCA_WIFI_KIWI) || defined(QCA_WIFI_QCN9224) || \
defined(QCA_WIFI_QCA9574)) defined(QCA_WIFI_QCA9574))
/** /**
* hif_get_num_pending_work() - get the number of entries in * hif_get_num_pending_work() - get the number of entries in
@@ -1165,7 +1166,7 @@ uint8_t hif_get_ep_vote_access(struct hif_opaque_softc *hif_ctx,
defined(QCA_WIFI_QCA6290) || defined(QCA_WIFI_QCA6390) || \ defined(QCA_WIFI_QCA6290) || defined(QCA_WIFI_QCA6390) || \
defined(QCA_WIFI_QCN9000) || defined(QCA_WIFI_QCA6490) || \ defined(QCA_WIFI_QCN9000) || defined(QCA_WIFI_QCA6490) || \
defined(QCA_WIFI_QCA6750) || defined(QCA_WIFI_QCA5018) || \ defined(QCA_WIFI_QCA6750) || defined(QCA_WIFI_QCA5018) || \
defined(QCA_WIFI_WCN7850) || defined(QCA_WIFI_QCN9224) || \ defined(QCA_WIFI_KIWI) || defined(QCA_WIFI_QCN9224) || \
defined(QCA_WIFI_QCA9574)) defined(QCA_WIFI_QCA9574))
static QDF_STATUS hif_hal_attach(struct hif_softc *scn) static QDF_STATUS hif_hal_attach(struct hif_softc *scn)
{ {
@@ -1583,10 +1584,10 @@ int hif_get_device_type(uint32_t device_id,
hif_info(" *********** QCA6750 *************"); hif_info(" *********** QCA6750 *************");
break; break;
case WCN7850_DEVICE_ID: case KIWI_DEVICE_ID:
*hif_type = HIF_TYPE_WCN7850; *hif_type = HIF_TYPE_KIWI;
*target_type = TARGET_TYPE_WCN7850; *target_type = TARGET_TYPE_KIWI;
hif_info(" *********** WCN7850 *************"); hif_info(" *********** KIWI *************");
break; break;
case QCA8074V2_DEVICE_ID: case QCA8074V2_DEVICE_ID:

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2013-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2013-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -102,7 +103,7 @@
#define QCA6750_DEVICE_ID (0x1105) #define QCA6750_DEVICE_ID (0x1105)
/* TODO: change IDs for Hamilton */ /* TODO: change IDs for Hamilton */
#define WCN7850_DEVICE_ID (0x1107) #define KIWI_DEVICE_ID (0x1107)
#define ADRASTEA_DEVICE_ID_P2_E12 (0x7021) #define ADRASTEA_DEVICE_ID_P2_E12 (0x7021)
#define AR9887_DEVICE_ID (0x0050) #define AR9887_DEVICE_ID (0x0050)

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2021 The Linux Foundation. All rights reserved. * Copyright (c) 2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -16,7 +17,7 @@
* PERFORMANCE OF THIS SOFTWARE. * PERFORMANCE OF THIS SOFTWARE.
*/ */
#if defined(WCN7850_HEADERS_DEF) #if defined(KIWI_HEADERS_DEF)
#undef UMAC #undef UMAC
#define WLAN_HEADERS 1 #define WLAN_HEADERS 1
@@ -206,20 +207,20 @@
#define A_WIFI_APB_3_A_WCMN_APPS_CE_INTR_ENABLES MISSING #define A_WIFI_APB_3_A_WCMN_APPS_CE_INTR_ENABLES MISSING
#define A_WIFI_APB_3_A_WCMN_APPS_CE_INTR_STATUS MISSING #define A_WIFI_APB_3_A_WCMN_APPS_CE_INTR_STATUS MISSING
#define WCN7850_BOARD_DATA_SZ MISSING #define KIWI_BOARD_DATA_SZ MISSING
#define WCN7850_BOARD_EXT_DATA_SZ MISSING #define KIWI_BOARD_EXT_DATA_SZ MISSING
#define MY_TARGET_DEF WCN7850_TARGETdef #define MY_TARGET_DEF KIWI_TARGETdef
#define MY_HOST_DEF WCN7850_HOSTdef #define MY_HOST_DEF KIWI_HOSTdef
#define MY_CEREG_DEF WCN7850_CE_TARGETdef #define MY_CEREG_DEF KIWI_CE_TARGETdef
#define MY_TARGET_BOARD_DATA_SZ WCN7850_BOARD_DATA_SZ #define MY_TARGET_BOARD_DATA_SZ KIWI_BOARD_DATA_SZ
#define MY_TARGET_BOARD_EXT_DATA_SZ WCN7850_BOARD_EXT_DATA_SZ #define MY_TARGET_BOARD_EXT_DATA_SZ KIWI_BOARD_EXT_DATA_SZ
#include "targetdef.h" #include "targetdef.h"
#include "hostdef.h" #include "hostdef.h"
#else #else
#include "common_drv.h" #include "common_drv.h"
#include "targetdef.h" #include "targetdef.h"
#include "hostdef.h" #include "hostdef.h"
struct targetdef_s *WCN7850_TARGETdef; struct targetdef_s *KIWI_TARGETdef;
struct hostdef_s *WCN7850_HOSTdef; struct hostdef_s *KIWI_HOSTdef;
#endif /*WCN7850_HEADERS_DEF */ #endif /*KIWI_HEADERS_DEF */

View File

@@ -45,7 +45,7 @@
#include "hif_debug.h" #include "hif_debug.h"
#if (defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \ #if (defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \
defined(QCA_WIFI_WCN7850)) defined(QCA_WIFI_KIWI))
#include "hal_api.h" #include "hal_api.h"
#endif #endif
@@ -3239,7 +3239,7 @@ void hif_pci_set_grp_intr_affinity(struct hif_softc *scn,
#endif #endif
#if (defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \ #if (defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \
defined(QCA_WIFI_WCN7850)) defined(QCA_WIFI_KIWI))
uint32_t hif_pci_reg_read32(struct hif_softc *hif_sc, uint32_t hif_pci_reg_read32(struct hif_softc *hif_sc,
uint32_t offset) uint32_t offset)
{ {
@@ -3457,7 +3457,7 @@ static bool hif_is_pld_based_target(struct hif_pci_softc *sc,
case QCA6490_DEVICE_ID: case QCA6490_DEVICE_ID:
case AR6320_DEVICE_ID: case AR6320_DEVICE_ID:
case QCN7605_DEVICE_ID: case QCN7605_DEVICE_ID:
case WCN7850_DEVICE_ID: case KIWI_DEVICE_ID:
return true; return true;
} }
return false; return false;
@@ -3485,7 +3485,7 @@ static void hif_pci_init_reg_windowing_support(struct hif_pci_softc *sc,
case TARGET_TYPE_QCN7605: case TARGET_TYPE_QCN7605:
case TARGET_TYPE_QCA6490: case TARGET_TYPE_QCA6490:
case TARGET_TYPE_QCA6390: case TARGET_TYPE_QCA6390:
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
sc->use_register_windowing = true; sc->use_register_windowing = true;
qdf_spinlock_create(&sc->register_access_lock); qdf_spinlock_create(&sc->register_access_lock);
sc->register_window = 0; sc->register_window = 0;
@@ -3707,7 +3707,7 @@ int hif_pci_addr_in_boundary(struct hif_softc *scn, uint32_t offset)
tgt_info->target_type == TARGET_TYPE_QCA6490 || tgt_info->target_type == TARGET_TYPE_QCA6490 ||
tgt_info->target_type == TARGET_TYPE_QCN7605 || tgt_info->target_type == TARGET_TYPE_QCN7605 ||
tgt_info->target_type == TARGET_TYPE_QCA8074 || tgt_info->target_type == TARGET_TYPE_QCA8074 ||
tgt_info->target_type == TARGET_TYPE_WCN7850) { tgt_info->target_type == TARGET_TYPE_KIWI) {
/* /*
* Need to consider offset's memtype for QCA6290/QCA8074, * Need to consider offset's memtype for QCA6290/QCA8074,
* also mem_len and DRAM_BASE_ADDRESS/DRAM_SIZE need to be * also mem_len and DRAM_BASE_ADDRESS/DRAM_SIZE need to be

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2013-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2013-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -181,13 +182,13 @@ void hif_target_register_tbl_attach(struct hif_softc *scn, u32 target_type)
break; break;
#endif /* QCA6490_HEADERS_DEF */ #endif /* QCA6490_HEADERS_DEF */
#if defined(WCN7850_HEADERS_DEF) #if defined(KIWI_HEADERS_DEF)
case TARGET_TYPE_WCN7850: case TARGET_TYPE_KIWI:
scn->targetdef = WCN7850_TARGETdef; scn->targetdef = KIWI_TARGETdef;
scn->target_ce_def = WCN7850_CE_TARGETdef; scn->target_ce_def = KIWI_CE_TARGETdef;
hif_info("TARGET_TYPE_WCN7850"); hif_info("TARGET_TYPE_KIWI");
break; break;
#endif /* WCN7850_HEADERS_DEF */ #endif /* KIWI_HEADERS_DEF */
#if defined(QCA6750_HEADERS_DEF) #if defined(QCA6750_HEADERS_DEF)
case TARGET_TYPE_QCA6750: case TARGET_TYPE_QCA6750:
@@ -325,12 +326,12 @@ void hif_register_tbl_attach(struct hif_softc *scn, u32 hif_type)
break; break;
#endif /* QCA6490_HEADERS_DEF */ #endif /* QCA6490_HEADERS_DEF */
#if defined(WCN7850_HEADERS_DEF) #if defined(KIWI_HEADERS_DEF)
case HIF_TYPE_WCN7850: case HIF_TYPE_KIWI:
scn->hostdef = WCN7850_HOSTdef; scn->hostdef = KIWI_HOSTdef;
hif_info("HIF_TYPE_WCN7850"); hif_info("HIF_TYPE_KIWI");
break; break;
#endif /* WCN7850_HEADERS_DEF */ #endif /* KIWI_HEADERS_DEF */
#if defined(QCA6750_HEADERS_DEF) #if defined(QCA6750_HEADERS_DEF)
case HIF_TYPE_QCA6750: case HIF_TYPE_QCA6750:

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2020-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2020-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -26,10 +27,10 @@
#ifndef _TARGET_IF_CFR_6490_H #ifndef _TARGET_IF_CFR_6490_H
#define _TARGET_IF_CFR_6490_H #define _TARGET_IF_CFR_6490_H
#if defined(QCA_WIFI_QCA6490) || defined(QCA_WIFI_WCN7850) #if defined(QCA_WIFI_QCA6490) || defined(QCA_WIFI_KIWI)
#define CFR_MAC_ID_24G 1 #define CFR_MAC_ID_24G 1
#define CFR_MAC_ID_5G 0 #define CFR_MAC_ID_5G 0
#endif /* QCA_WIFI_QCA6490 */ #endif /* QCA_WIFI_QCA6490 || QCA_WIFI_KIWI */
/** /**
* target_if_cfr_subscribe_ppdu_desc() - subscribe ppdu description * target_if_cfr_subscribe_ppdu_desc() - subscribe ppdu description

View File

@@ -495,7 +495,7 @@ target_if_cfr_deinit_pdev(struct wlan_objmgr_psoc *psoc,
#endif #endif
#ifdef WLAN_ENH_CFR_ENABLE #ifdef WLAN_ENH_CFR_ENABLE
#if defined(QCA_WIFI_QCA6490) || defined(QCA_WIFI_WCN7850) #if defined(QCA_WIFI_QCA6490) || defined(QCA_WIFI_KIWI)
static uint8_t target_if_cfr_get_mac_id(struct wlan_objmgr_pdev *pdev) static uint8_t target_if_cfr_get_mac_id(struct wlan_objmgr_pdev *pdev)
{ {
struct wlan_objmgr_vdev *vdev; struct wlan_objmgr_vdev *vdev;
@@ -554,7 +554,7 @@ static uint8_t target_if_cfr_get_pdev_id(struct wlan_objmgr_pdev *pdev)
{ {
return wlan_objmgr_pdev_get_pdev_id(pdev); return wlan_objmgr_pdev_get_pdev_id(pdev);
} }
#endif /* QCA_WIFI_QCA6490 */ #endif /* QCA_WIFI_QCA6490 || QCA_WIFI_KIWI */
QDF_STATUS target_if_cfr_config_rcc(struct wlan_objmgr_pdev *pdev, QDF_STATUS target_if_cfr_config_rcc(struct wlan_objmgr_pdev *pdev,
struct cfr_rcc_param *rcc_info) struct cfr_rcc_param *rcc_info)

View File

@@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2019-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2019-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
* *
* Permission to use, copy, modify, and/or distribute this software for * Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the * any purpose with or without fee is hereby granted, provided that the
@@ -42,7 +43,7 @@ static u_int32_t end_magic = 0xBEAFDEAD;
* *
* Return: signal strength in dBm * Return: signal strength in dBm
*/ */
#if defined(QCA_WIFI_QCA6490) || defined(QCA_WIFI_WCN7850) #if defined(QCA_WIFI_QCA6490) || defined(QCA_WIFI_KIWI)
static inline static inline
u_int32_t snr_to_signal_strength(uint8_t snr) u_int32_t snr_to_signal_strength(uint8_t snr)
{ {

View File

@@ -288,7 +288,7 @@
#define WLAN_CFG_RX_RELEASE_RING_SIZE 1024 #define WLAN_CFG_RX_RELEASE_RING_SIZE 1024
#define WLAN_CFG_RX_RELEASE_RING_SIZE_MIN 8 #define WLAN_CFG_RX_RELEASE_RING_SIZE_MIN 8
#if defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \ #if defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490) || \
defined(QCA_WIFI_QCA6750) || defined(QCA_WIFI_WCN7850) defined(QCA_WIFI_QCA6750) || defined(QCA_WIFI_KIWI)
#define WLAN_CFG_RX_RELEASE_RING_SIZE_MAX 1024 #define WLAN_CFG_RX_RELEASE_RING_SIZE_MAX 1024
#else #else
#define WLAN_CFG_RX_RELEASE_RING_SIZE_MAX 8192 #define WLAN_CFG_RX_RELEASE_RING_SIZE_MAX 8192
@@ -414,7 +414,7 @@
#define WLAN_CFG_PKTLOG_MIN_BUFFER_SIZE 1 #define WLAN_CFG_PKTLOG_MIN_BUFFER_SIZE 1
#define WLAN_CFG_PKTLOG_MAX_BUFFER_SIZE 10 #define WLAN_CFG_PKTLOG_MAX_BUFFER_SIZE 10
#ifdef QCA_WIFI_WCN7850 #ifdef QCA_WIFI_KIWI
#define WLAN_CFG_NUM_REO_RINGS_MAP 0x7 #define WLAN_CFG_NUM_REO_RINGS_MAP 0x7
#else #else
#define WLAN_CFG_NUM_REO_RINGS_MAP 0xF #define WLAN_CFG_NUM_REO_RINGS_MAP 0xF