182 lines
3.3 KiB
C
182 lines
3.3 KiB
C
#ifndef __HAL_COM_TXBF_H__
|
|
#define __HAL_COM_TXBF_H__
|
|
|
|
/*
|
|
typedef BOOLEAN
|
|
(*TXBF_GET)(
|
|
IN PVOID pAdapter,
|
|
IN u1Byte getType,
|
|
OUT PVOID pOutBuf
|
|
);
|
|
|
|
typedef BOOLEAN
|
|
(*TXBF_SET)(
|
|
IN PVOID pAdapter,
|
|
IN u1Byte setType,
|
|
OUT PVOID pInBuf
|
|
);
|
|
*/
|
|
#define TxBF_Nr(a, b) ((a > b) ? (b) : (a))
|
|
|
|
typedef enum _TXBF_SET_TYPE{
|
|
TXBF_SET_SOUNDING_ENTER,
|
|
TXBF_SET_SOUNDING_LEAVE,
|
|
TXBF_SET_SOUNDING_RATE,
|
|
TXBF_SET_SOUNDING_STATUS,
|
|
TXBF_SET_SOUNDING_FW_NDPA,
|
|
TXBF_SET_SOUNDING_CLK,
|
|
TXBF_SET_TX_PATH_RESET,
|
|
TXBF_SET_GET_TX_RATE
|
|
}TXBF_SET_TYPE,*PTXBF_SET_TYPE;
|
|
|
|
|
|
typedef enum _TXBF_GET_TYPE{
|
|
TXBF_GET_EXPLICIT_BEAMFORMEE,
|
|
TXBF_GET_EXPLICIT_BEAMFORMER,
|
|
TXBF_GET_MU_MIMO_STA,
|
|
TXBF_GET_MU_MIMO_AP
|
|
}TXBF_GET_TYPE,*PTXBF_GET_TYPE;
|
|
|
|
|
|
|
|
//2 HAL TXBF related
|
|
typedef struct _HAL_TXBF_INFO {
|
|
u1Byte TXBFIdx;
|
|
u1Byte NdpaIdx;
|
|
u1Byte BW;
|
|
u1Byte Rate;
|
|
|
|
RT_TIMER Txbf_FwNdpaTimer;
|
|
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
|
|
RT_WORK_ITEM Txbf_EnterWorkItem;
|
|
RT_WORK_ITEM Txbf_LeaveWorkItem;
|
|
RT_WORK_ITEM Txbf_FwNdpaWorkItem;
|
|
RT_WORK_ITEM Txbf_ClkWorkItem;
|
|
RT_WORK_ITEM Txbf_StatusWorkItem;
|
|
RT_WORK_ITEM Txbf_RateWorkItem;
|
|
RT_WORK_ITEM Txbf_ResetTxPathWorkItem;
|
|
RT_WORK_ITEM Txbf_GetTxRateWorkItem;
|
|
#endif
|
|
|
|
} HAL_TXBF_INFO, *PHAL_TXBF_INFO;
|
|
|
|
#if (BEAMFORMING_SUPPORT == 1)
|
|
|
|
VOID
|
|
halComTxbf_beamformInit(
|
|
IN PVOID pDM_VOID
|
|
);
|
|
|
|
VOID
|
|
halComTxbf_ConfigGtab(
|
|
IN PVOID pDM_VOID
|
|
);
|
|
|
|
VOID
|
|
halComTxbf_EnterWorkItemCallback(
|
|
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
|
|
IN PADAPTER Adapter
|
|
#else
|
|
IN PVOID pDM_VOID
|
|
#endif
|
|
);
|
|
|
|
VOID
|
|
halComTxbf_LeaveWorkItemCallback(
|
|
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
|
|
IN PADAPTER Adapter
|
|
#else
|
|
IN PVOID pDM_VOID
|
|
#endif
|
|
);
|
|
|
|
VOID
|
|
halComTxbf_FwNdpaWorkItemCallback(
|
|
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
|
|
IN PADAPTER Adapter
|
|
#else
|
|
IN PVOID pDM_VOID
|
|
#endif
|
|
);
|
|
|
|
VOID
|
|
halComTxbf_ClkWorkItemCallback(
|
|
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
|
|
IN PADAPTER Adapter
|
|
#else
|
|
IN PVOID pDM_VOID
|
|
#endif
|
|
);
|
|
|
|
VOID
|
|
halComTxbf_ResetTxPathWorkItemCallback(
|
|
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
|
|
IN PADAPTER Adapter
|
|
#else
|
|
IN PVOID pDM_VOID
|
|
#endif
|
|
);
|
|
|
|
VOID
|
|
halComTxbf_GetTxRateWorkItemCallback(
|
|
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
|
|
IN PADAPTER Adapter
|
|
#else
|
|
IN PVOID pDM_VOID
|
|
#endif
|
|
);
|
|
|
|
VOID
|
|
halComTxbf_RateWorkItemCallback(
|
|
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
|
|
IN PADAPTER Adapter
|
|
#else
|
|
IN PVOID pDM_VOID
|
|
#endif
|
|
);
|
|
|
|
VOID
|
|
halComTxbf_FwNdpaTimerCallback(
|
|
IN PRT_TIMER pTimer
|
|
);
|
|
|
|
VOID
|
|
halComTxbf_StatusWorkItemCallback(
|
|
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
|
|
IN PADAPTER Adapter
|
|
#else
|
|
IN PVOID pDM_VOID
|
|
#endif
|
|
);
|
|
|
|
BOOLEAN
|
|
HalComTxbf_Set(
|
|
IN PVOID pDM_VOID,
|
|
IN u1Byte setType,
|
|
IN PVOID pInBuf
|
|
);
|
|
|
|
BOOLEAN
|
|
HalComTxbf_Get(
|
|
IN PADAPTER Adapter,
|
|
IN u1Byte getType,
|
|
OUT PVOID pOutBuf
|
|
);
|
|
|
|
#else
|
|
#define halComTxbf_beamformInit(pDM_VOID) NULL
|
|
#define halComTxbf_ConfigGtab(pDM_VOID) NULL
|
|
#define halComTxbf_EnterWorkItemCallback(_Adapter) NULL
|
|
#define halComTxbf_LeaveWorkItemCallback(_Adapter) NULL
|
|
#define halComTxbf_FwNdpaWorkItemCallback(_Adapter) NULL
|
|
#define halComTxbf_ClkWorkItemCallback(_Adapter) NULL
|
|
#define halComTxbf_RateWorkItemCallback(_Adapter) NULL
|
|
#define halComTxbf_FwNdpaTimerCallback(_Adapter) NULL
|
|
#define halComTxbf_StatusWorkItemCallback(_Adapter) NULL
|
|
#define HalComTxbf_Get(_Adapter, _getType, _pOutBuf)
|
|
|
|
#endif
|
|
|
|
#endif // #ifndef __HAL_COM_TXBF_H__
|
|
|