wlan_init_cfg.h 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /*
  2. * Copyright (c) 2021 The Linux Foundation. All rights reserved.
  3. * Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved.
  4. *
  5. * Permission to use, copy, modify, and/or distribute this software for
  6. * any purpose with or without fee is hereby granted, provided that the
  7. * above copyright notice and this permission notice appear in all
  8. * copies.
  9. *
  10. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  11. * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  12. * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
  13. * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  14. * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  15. * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  16. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  17. * PERFORMANCE OF THIS SOFTWARE.
  18. */
  19. #ifndef __WLAN_INIT_CFG_H
  20. #define __WLAN_INIT_CFG_H
  21. /*
  22. * Temporary place holders. These should come either from target config
  23. * or platform configuration
  24. */
  25. #if defined(WLAN_MAX_PDEVS) && (WLAN_MAX_PDEVS == 1)
  26. #define WLAN_CFG_DST_RING_CACHED_DESC 0
  27. #define MAX_PDEV_CNT 1
  28. #ifdef CONFIG_BERYLLIUM
  29. /* (8 REOs + 5 WBMs + 2 Near Full + 1 Error handling) */
  30. #define WLAN_CFG_INT_NUM_CONTEXTS 18
  31. #define WLAN_CFG_INT_NUM_CONTEXTS_MAX 18
  32. #else
  33. #define WLAN_CFG_INT_NUM_CONTEXTS 7
  34. #define WLAN_CFG_INT_NUM_CONTEXTS_MAX 14
  35. #endif
  36. #define WLAN_CFG_RXDMA1_ENABLE 1
  37. /*
  38. * This mask defines how many transmit frames account for 1 NAPI work unit
  39. * 0 means each tx completion is 1 unit
  40. */
  41. #define DP_TX_NAPI_BUDGET_DIV_MASK 0
  42. /* PPDU Stats Configuration - Configure bitmask for enabling tx ppdu tlv's */
  43. #define DP_PPDU_TXLITE_STATS_BITMASK_CFG 0x3FFF
  44. #if defined(QCA_WIFI_QCA6750) || defined(QCA_WIFI_WCN6450)
  45. #define NUM_RXDMA_STATUS_RINGS_PER_PDEV 1
  46. #else
  47. #define NUM_RXDMA_STATUS_RINGS_PER_PDEV 2
  48. #endif
  49. #define NUM_RXDMA_RINGS_PER_PDEV 2
  50. #define DP_NUM_MACS_PER_PDEV 2
  51. /*Maximum Number of LMAC instances*/
  52. #define MAX_NUM_LMAC_HW 2
  53. #else
  54. #ifdef DP_NO_CACHE_DESC_SUPPORT
  55. #define WLAN_CFG_DST_RING_CACHED_DESC 0
  56. #else
  57. #define WLAN_CFG_DST_RING_CACHED_DESC 1
  58. #endif
  59. #define MAX_PDEV_CNT 3
  60. #define WLAN_CFG_INT_NUM_CONTEXTS 16
  61. #define WLAN_CFG_INT_NUM_CONTEXTS_MAX 16
  62. #define NUM_RXDMA_RINGS_PER_PDEV 1
  63. #define NUM_RXDMA_STATUS_RINGS_PER_PDEV 1
  64. #define MAX_NUM_LMAC_HW 3
  65. #define DP_NUM_MACS_PER_PDEV 1
  66. #endif
  67. /* Tx configuration */
  68. #define MAX_LINK_DESC_BANKS 8
  69. #define MAX_REO_DEST_RINGS 8
  70. #define MAX_TCL_DATA_RINGS 5
  71. #define MAX_RX_MAC_RINGS 2
  72. #define WBM2SW_TXCOMP_RING4_NUM 4
  73. #endif /* __WLAN_INIT_CFG_H */