qcacmn: Increase size of MSDU EXT DESC
Size of MSDU Extension descriptor increased to accomodate HTT Meta data. Change-Id: Iaaf87f2f184ec9f144501b9a508bf91d08cad791 CRs-Fixed: 1114769
This commit is contained in:
@@ -205,14 +205,14 @@ struct dp_tx_ext_desc_elem_s *dp_tx_prepare_ext_desc(struct dp_vdev *vdev,
|
||||
struct dp_tx_msdu_info_s *msdu_info, uint8_t desc_pool_id)
|
||||
{
|
||||
uint8_t i;
|
||||
uint8_t cached_ext_desc[HAL_TX_EXTENSION_DESC_LEN_BYTES];
|
||||
uint8_t cached_ext_desc[HAL_TX_EXT_DESC_WITH_META_DATA];
|
||||
struct dp_tx_seg_info_s *seg_info;
|
||||
struct dp_tx_ext_desc_elem_s *msdu_ext_desc;
|
||||
struct dp_soc *soc = vdev->pdev->soc;
|
||||
|
||||
/* Allocate an extension descriptor */
|
||||
msdu_ext_desc = dp_tx_ext_desc_alloc(soc, desc_pool_id);
|
||||
qdf_mem_zero(&cached_ext_desc[0], HAL_TX_EXTENSION_DESC_LEN_BYTES);
|
||||
qdf_mem_zero(&cached_ext_desc[0], HAL_TX_EXT_DESC_WITH_META_DATA);
|
||||
if (!msdu_ext_desc)
|
||||
return NULL;
|
||||
|
||||
@@ -934,6 +934,13 @@ qdf_nbuf_t dp_tx_send(void *vap_dev, qdf_nbuf_t nbuf)
|
||||
struct dp_tx_seg_info_s seg_info;
|
||||
struct dp_vdev *vdev = (struct dp_vdev *) vap_dev;
|
||||
|
||||
qdf_mem_set(&msdu_info, sizeof(msdu_info), 0x0);
|
||||
qdf_mem_set(&seg_info, sizeof(seg_info), 0x0);
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"%s , skb %0x:%0x:%0x:%0x:%0x:%0x\n",
|
||||
__func__, nbuf->data[0], nbuf->data[1], nbuf->data[2],
|
||||
nbuf->data[3], nbuf->data[4], nbuf->data[5]);
|
||||
/*
|
||||
* Set Default Host TID value to invalid TID
|
||||
* (TID override disabled)
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2016 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2016-2017 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -158,7 +158,7 @@ QDF_STATUS dp_tx_ext_desc_pool_alloc(struct dp_soc *soc, uint8_t pool_id,
|
||||
QDF_STATUS status;
|
||||
|
||||
/* Coherent tx extension descriptor alloc */
|
||||
soc->tx_ext_desc[pool_id].elem_size = HAL_TX_EXTENSION_DESC_LEN_BYTES;
|
||||
soc->tx_ext_desc[pool_id].elem_size = HAL_TX_EXT_DESC_WITH_META_DATA;
|
||||
soc->tx_ext_desc[pool_id].elem_count = num_elem;
|
||||
qdf_mem_multi_pages_alloc(soc->osdev,
|
||||
&soc->tx_ext_desc[pool_id].desc_pages,
|
||||
|
@@ -70,6 +70,10 @@ do { \
|
||||
#define HAL_TX_COMPLETION_DESC_LEN_DWORDS (NUM_OF_DWORDS_WBM_RELEASE_RING)
|
||||
#define HAL_TX_COMPLETION_DESC_LEN_BYTES (NUM_OF_DWORDS_WBM_RELEASE_RING*4)
|
||||
|
||||
#define HTT_META_HEADER_LEN_BYTES 64
|
||||
#define HAL_TX_EXT_DESC_WITH_META_DATA \
|
||||
(HTT_META_HEADER_LEN_BYTES + HAL_TX_EXTENSION_DESC_LEN_BYTES)
|
||||
|
||||
/* Length of WBM release ring without the status words */
|
||||
#define HAL_TX_COMPLETION_DESC_BASE_LEN 12
|
||||
|
||||
@@ -698,7 +702,7 @@ static inline void hal_tx_ext_desc_sync(uint8_t *desc_cached,
|
||||
uint8_t *hw_desc)
|
||||
{
|
||||
qdf_mem_copy(&hw_desc[0], &desc_cached[0],
|
||||
HAL_TX_EXTENSION_DESC_LEN_BYTES);
|
||||
HAL_TX_EXT_DESC_WITH_META_DATA);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user