| /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */ | 
| /* Copyright(c) 2018-2019  Realtek Corporation | 
|  */ | 
|   | 
| #ifndef __RTW_SEC_H_ | 
| #define __RTW_SEC_H_ | 
|   | 
| #define RTW_SEC_CMD_REG            0x670 | 
| #define RTW_SEC_WRITE_REG        0x674 | 
| #define RTW_SEC_READ_REG        0x678 | 
| #define RTW_SEC_CONFIG            0x680 | 
|   | 
| #define RTW_SEC_CAM_ENTRY_SHIFT        3 | 
| #define RTW_SEC_DEFAULT_KEY_NUM        4 | 
| #define RTW_SEC_CMD_WRITE_ENABLE    BIT(16) | 
| #define RTW_SEC_CMD_CLEAR        BIT(30) | 
| #define RTW_SEC_CMD_POLLING        BIT(31) | 
|   | 
| #define RTW_SEC_TX_UNI_USE_DK        BIT(0) | 
| #define RTW_SEC_RX_UNI_USE_DK        BIT(1) | 
| #define RTW_SEC_TX_DEC_EN        BIT(2) | 
| #define RTW_SEC_RX_DEC_EN        BIT(3) | 
| #define RTW_SEC_TX_BC_USE_DK        BIT(6) | 
| #define RTW_SEC_RX_BC_USE_DK        BIT(7) | 
|   | 
| #define RTW_SEC_ENGINE_EN        BIT(9) | 
|   | 
| int rtw_sec_get_free_cam(struct rtw_sec_desc *sec); | 
| void rtw_sec_write_cam(struct rtw_dev *rtwdev, | 
|                struct rtw_sec_desc *sec, | 
|                struct ieee80211_sta *sta, | 
|                struct ieee80211_key_conf *key, | 
|                u8 hw_key_type, u8 hw_key_idx); | 
| void rtw_sec_clear_cam(struct rtw_dev *rtwdev, | 
|                struct rtw_sec_desc *sec, | 
|                u8 hw_key_idx); | 
| u8 rtw_sec_cam_pg_backup(struct rtw_dev *rtwdev, u8 *used_cam); | 
| void rtw_sec_enable_sec_engine(struct rtw_dev *rtwdev); | 
|   | 
| #endif |