1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun /* Copyright(c) 2009-2012 Realtek Corporation.*/ 3*4882a593Smuzhiyun 4*4882a593Smuzhiyun #ifndef __RTL_CAM_H_ 5*4882a593Smuzhiyun #define __RTL_CAM_H_ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun #define CAM_CONTENT_COUNT 8 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun #define CFG_VALID BIT(15) 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun #define PAIRWISE_KEYIDX 0 12*4882a593Smuzhiyun #define CAM_PAIRWISE_KEY_POSITION 4 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun #define CAM_CONFIG_NO_USEDK 0 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun void rtl_cam_reset_all_entry(struct ieee80211_hw *hw); 17*4882a593Smuzhiyun u8 rtl_cam_add_one_entry(struct ieee80211_hw *hw, u8 *mac_addr, 18*4882a593Smuzhiyun u32 ul_key_id, u32 ul_entry_idx, u32 ul_enc_alg, 19*4882a593Smuzhiyun u32 ul_default_key, u8 *key_content); 20*4882a593Smuzhiyun int rtl_cam_delete_one_entry(struct ieee80211_hw *hw, u8 *mac_addr, 21*4882a593Smuzhiyun u32 ul_key_id); 22*4882a593Smuzhiyun void rtl_cam_mark_invalid(struct ieee80211_hw *hw, u8 uc_index); 23*4882a593Smuzhiyun void rtl_cam_empty_entry(struct ieee80211_hw *hw, u8 uc_index); 24*4882a593Smuzhiyun void rtl_cam_reset_sec_info(struct ieee80211_hw *hw); 25*4882a593Smuzhiyun u8 rtl_cam_get_free_entry(struct ieee80211_hw *hw, u8 *sta_addr); 26*4882a593Smuzhiyun void rtl_cam_del_entry(struct ieee80211_hw *hw, u8 *sta_addr); 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun #endif 29