qcacmn: DP init changes for QCN9224

Changes to initialize DP for Target type QCN9224

Change-Id: If9b69b79946060dd802eb0554280813186de1f7a
Cette révision appartient à :
Chaithanya Garrepalli
2021-07-01 19:28:47 +05:30
révisé par Madan Koyyalamudi
Parent 6b048962f6
révision 6332137696
3 fichiers modifiés avec 41 ajouts et 9 suppressions

Voir le fichier

@@ -33,6 +33,17 @@
#define BERYLLIUM_DP 0xaffe
/* Use device IDs for attach in future */
/* enum cdp_arch_type - enum for DP arch type
* CDP_ARCH_TYPE_LI - for lithium
* CDP_ARCH_TYPE_BE - for beryllium
* CDP_ARCH_TYPE_NONE - not supported
*/
enum cdp_arch_type {
CDP_ARCH_TYPE_NONE = -1,
CDP_ARCH_TYPE_LI,
CDP_ARCH_TYPE_BE,
};
#if defined(DP_TXRX_SOC_ATTACH)
static inline ol_txrx_soc_handle
ol_txrx_soc_attach(void *scn_handle, struct ol_if_ops *dp_ol_if_ops)
@@ -124,12 +135,13 @@ static inline int cdp_get_arch_type_from_devid(uint16_t devid)
case RUMIM2M_DEVICE_ID_NODE3: /*lithium emulation */
case RUMIM2M_DEVICE_ID_NODE4: /*lithium emulation */
case RUMIM2M_DEVICE_ID_NODE5: /*lithium emulation */
return LITHIUM_DP;
return CDP_ARCH_TYPE_LI;
case BERYLLIUM_DP:
case WCN7850_DEVICE_ID:
return BERYLLIUM_DP;
case QCN9224_DEVICE_ID:
return CDP_ARCH_TYPE_BE;
default:
return -1;
return CDP_ARCH_TYPE_NONE;
}
}
@@ -161,6 +173,7 @@ ol_txrx_soc_handle cdp_soc_attach(u_int16_t devid,
case RUMIM2M_DEVICE_ID_NODE4: /*lithium emulation */
case RUMIM2M_DEVICE_ID_NODE5: /*lithium emulation */
case WCN7850_DEVICE_ID:
case QCN9224_DEVICE_ID:
return dp_soc_attach_wifi3(psoc, hif_handle, htc_handle,
qdf_dev, dp_ol_if_ops, devid);
break;

Voir le fichier

@@ -42,12 +42,12 @@ qdf_size_t dp_get_soc_context_size(uint16_t device_id)
{
switch (cdp_get_arch_type_from_devid(device_id)) {
#ifdef CONFIG_LITHIUM
case LITHIUM_DP:
case CDP_ARCH_TYPE_LI:
return dp_get_soc_context_size_li();
#endif
#ifdef CONFIG_BERYLLIUM
case BERYLLIUM_DP:
case CDP_ARCH_TYPE_BE:
return dp_get_soc_context_size_be();
break;
#endif
@@ -64,13 +64,13 @@ void dp_configure_arch_ops(struct dp_soc *soc)
switch (cdp_get_arch_type_from_devid(soc->device_id)) {
#ifdef CONFIG_LITHIUM
case LITHIUM_DP:
case CDP_ARCH_TYPE_LI:
dp_initialize_arch_ops_li(&soc->arch_ops);
break;
#endif
#ifdef CONFIG_BERYLLIUM
case BERYLLIUM_DP:
case CDP_ARCH_TYPE_BE:
dp_initialize_arch_ops_be(&soc->arch_ops);
break;
#endif

Voir le fichier

@@ -13129,9 +13129,9 @@ static uint32_t
dp_get_link_desc_id_start(uint16_t arch_id)
{
switch (arch_id) {
case LITHIUM_DP:
case CDP_ARCH_TYPE_LI:
return LINK_DESC_ID_START_21_BITS_COOKIE;
case BERYLLIUM_DP:
case CDP_ARCH_TYPE_BE:
return LINK_DESC_ID_START_20_BITS_COOKIE;
default:
dp_err("unkonwn arch_id 0x%x", arch_id);
@@ -14899,6 +14899,19 @@ static void dp_soc_cfg_init(struct dp_soc *soc)
soc->disable_mac1_intr = 1;
soc->disable_mac2_intr = 1;
soc->wbm_release_desc_rx_sg_support = 1;
break;
case TARGET_TYPE_QCN9224:
wlan_cfg_set_mon_delayed_replenish_entries(soc->wlan_cfg_ctx,
MON_BUF_MIN_ENTRIES);
wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx,
REO_DST_RING_SIZE_QCA8074);
soc->ast_override_support = 1;
soc->da_war_enabled = false;
wlan_cfg_set_raw_mode_war(soc->wlan_cfg_ctx, false);
soc->hw_nac_monitor_support = 1;
soc->per_tid_basize_max_tid = 8;
soc->wbm_release_desc_rx_sg_support = 1;
break;
default:
qdf_print("%s: Unknown tgt type %d\n", __func__, target_type);
@@ -14957,6 +14970,12 @@ static void dp_soc_cfg_attach(struct dp_soc *soc)
REO_DST_RING_SIZE_QCN9000);
wlan_cfg_set_rxdma1_enable(soc->wlan_cfg_ctx);
break;
case TARGET_TYPE_QCN9224:
wlan_cfg_set_tso_desc_attach_defer(soc->wlan_cfg_ctx, 1);
wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx,
REO_DST_RING_SIZE_QCA8074);
wlan_cfg_set_rxdma1_enable(soc->wlan_cfg_ctx);
break;
default:
qdf_print("%s: Unknown tgt type %d\n", __func__, target_type);
qdf_assert_always(0);