1 #ifndef _HALMAC_8197F_CFG_H_
2 #define _HALMAC_8197F_CFG_H_
4 #include "halmac_8197f_pwr_seq.h"
5 #include "halmac_api_8197f.h"
6 #include "halmac_api_8197f_usb.h"
7 #include "halmac_api_8197f_sdio.h"
8 #include "halmac_api_8197f_pcie.h"
10 #if HALMAC_PLATFORM_TESTPROGRAM
11 #include "halmisc_api_8197f.h"
12 #include "halmisc_api_8197f_usb.h"
13 #include "halmisc_api_8197f_sdio.h"
14 #include "halmisc_api_8197f_pcie.h"
17 #define HALMAC_TX_FIFO_SIZE_8197F 262144 /* 64k */
18 #define HALMAC_RX_FIFO_SIZE_8197F 32768 /* 32k */
19 #define HALMAC_TX_PAGE_SIZE_8197F 128 /* PageSize 128Byte */
20 #define HALMAC_SECURITY_CAM_ENTRY_NUM_8197F 64 /* CAM Entry Size */
21 #define HALMAC_TX_DESC_SIZE_8197F 48
22 #define HALMAC_RX_DESC_SIZE_8197F 24
25 #define HALMAC_H2C_CMD_SIZE_8197F 32
28 #define HALMAC_EFUSE_SIZE_8197F 512/* 0x2000 */
29 #define HALMAC_EEPROM_SIZE_8197F 0x300
30 #define HALMAC_BT_EFUSE_SIZE_8197F 128
32 /* Rx aggregation parameters */
33 typedef enum _HALMAC_NORMAL_RXAGG_TH_TO_8197F {
34 HALMAC_NORMAL_RXAGG_THRESHOLD_8197F = 0xFF,
35 HALMAC_NORMAL_RXAGG_TIMEOUT_8197F = 0x01,
36 } HALMAC_NORMAL_RXAGG_TH_TO_8197F;
38 typedef enum _HALMAC_LOOPBACK_RXAGG_TH_TO_8197F {
39 HALMAC_LOOPBACK_RXAGG_THRESHOLD_8197F = 0xFF,
40 HALMAC_LOOPBACK_RXAGG_TIMEOUT_8197F = 0x01,
41 } HALMAC_LOOPBACK_RXAGG_TH_TO_8197F;
43 /* FIFO size & packet size */
44 #define HALMAC_BASIC_RXFF_SIZE_8197F 24576 /* 24K */
45 #define HALMAC_WOWLAN_PATTERN_SIZE_8197F 256
48 typedef enum _HALMAC_NORMAL_PAGE_NUM_8197F {
49 HALMAC_NORMAL_PAGE_NUM_HPQ_8197F = 0x4C,
50 HALMAC_NORMAL_PAGE_NUM_NPQ_8197F = 0x4C,
51 HALMAC_NORMAL_PAGE_NUM_LPQ_8197F = 0x4C,
52 HALMAC_NORMAL_PAGE_NUM_EXPQ_8197F = 0x4A,
53 HALMAC_NORMAL_PAGE_NUM_PUBQ_8197F = 0x6C0,
54 HALMAC_NORMAL_TX_PAGE_BOUNDARY_8197F = 2032,
55 } HALMAC_NORMAL_PAGE_NUM_8197F;
58 typedef enum _HALMAC_LOOBACK_PAGE_NUM_8197F {
59 HALMAC_LOOPBACK_PAGE_NUM_HPQ_8197F = 0x4C,
60 HALMAC_LOOPBACK_PAGE_NUM_LPQ_8197F = 0x4C,
61 HALMAC_LOOPBACK_PAGE_NUM_NPQ_8197F = 0x4C,
62 HALMAC_LOOPBACK_PAGE_NUM_EXPQ_8197F = 0x4A,
63 HALMAC_LOOPBACK_PAGE_NUM_PUBQ_8197F = 0x2C0,
64 HALMAC_LOOPBACK_TX_PAGE_BOUNDARY_8197F = 1008,
65 HALMAC_LOOPBACK_LB_BUF_PAGE_NUM_8197F = 0x600,
66 } HALMAC_LOOBACK_PAGE_NUM_8197F;
70 typedef enum _HALMAC_NORMAL_PAGE_NUM_2BULKOUT_8197F {
71 HALMAC_NORMAL_PAGE_NUM_HPQ_2BULKOUT_8197F = 0x4C,
72 HALMAC_NORMAL_PAGE_NUM_NPQ_2BULKOUT_8197F = 0x4C,
73 HALMAC_NORMAL_PAGE_NUM_LPQ_2BULKOUT_8197F = 0x00,
74 HALMAC_NORMAL_PAGE_NUM_EXPQ_2BULKOUT_8197F = 0x00,
75 HALMAC_NORMAL_PAGE_NUM_PUBQ_2BULKOUT_8197F = 0x756,
76 HALMAC_NORMAL_TX_PAGE_BOUNDARY_2BULKOUT_8197F = 2032,
77 } HALMAC_NORMAL_PAGE_NUM_2BULKOUT_8197F;
80 typedef enum _HALMAC_LOOBACK_PAGE_NUM_2BULKOUT_8197F {
81 HALMAC_LOOPBACK_PAGE_NUM_HPQ_2BULKOUT_8197F = 0x4C,
82 HALMAC_LOOPBACK_PAGE_NUM_NPQ_2BULKOUT_8197F = 0x4C,
83 HALMAC_LOOPBACK_PAGE_NUM_LPQ_2BULKOUT_8197F = 0x00,
84 HALMAC_LOOPBACK_PAGE_NUM_EXPQ_2BULKOUT_8197F = 0x00,
85 HALMAC_LOOPBACK_PAGE_NUM_PUBQ_2BULKOUT_8197F = 0x356,
86 HALMAC_LOOPBACK_TX_PAGE_BOUNDARY_2BULKOUT_8197F = 1008,
87 HALMAC_LOOPBACK_LB_BUF_PAGE_NUM_2BULKOUT_8197F = 0x600,
88 } HALMAC_LOOBACK_PAGE_NUM_2BULKOUT_8197F;
91 typedef enum _HALMAC_NORMAL_PAGE_NUM_3BULKOUT_8197F {
92 HALMAC_NORMAL_PAGE_NUM_HPQ_3BULKOUT_8197F = 0x4C,
93 HALMAC_NORMAL_PAGE_NUM_NPQ_3BULKOUT_8197F = 0x4C,
94 HALMAC_NORMAL_PAGE_NUM_LPQ_3BULKOUT_8197F = 0x4C,
95 HALMAC_NORMAL_PAGE_NUM_EXPQ_3BULKOUT_8197F = 0x00,
96 HALMAC_NORMAL_PAGE_NUM_PUBQ_3BULKOUT_8197F = 0x70A,
97 HALMAC_NORMAL_TX_PAGE_BOUNDARY_3BULKOUT_8197F = 2032,
98 } HALMAC_NORMAL_PAGE_NUM_3BULKOUT_8197F;
101 typedef enum _HALMAC_LOOBACK_PAGE_NUM_3BULKOUT_8197F {
102 HALMAC_LOOPBACK_PAGE_NUM_HPQ_3BULKOUT_8197F = 0x4C,
103 HALMAC_LOOPBACK_PAGE_NUM_NPQ_3BULKOUT_8197F = 0x4C,
104 HALMAC_LOOPBACK_PAGE_NUM_LPQ_3BULKOUT_8197F = 0x4C,
105 HALMAC_LOOPBACK_PAGE_NUM_EXPQ_3BULKOUT_8197F = 0x00,
106 HALMAC_LOOPBACK_PAGE_NUM_PUBQ_3BULKOUT_8197F = 0x30A,
107 HALMAC_LOOPBACK_TX_PAGE_BOUNDARY_3BULKOUT_8197F = 1008,
108 HALMAC_LOOPBACK_LB_BUF_PAGE_NUM_3BULKOUT_8197F = 0x600,
109 } HALMAC_LOOBACK_PAGE_NUM_3BULKOUT_8197F;