1 /* 2 * Copyright (c) 2020 HiSilicon (Shanghai) Technologies CO., LIMITED. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 * Description: wal ccpriv common api. 15 * Create: 2022-03-02 16 */ 17 18 #ifndef __WAL_CCPRIV_COMMON_H__ 19 #define __WAL_CCPRIV_COMMON_H__ 20 21 #include "wlan_types_common.h" 22 #include "wlan_spec.h" 23 #include "oal_ext_if.h" 24 #include "hmac_ext_if.h" 25 #include "wal_main.h" 26 #include "mac_device_ext.h" 27 #include "mac_vap_ext.h" 28 #include "wal_ext_if.h" 29 #include "wal_config.h" 30 #include "hmac_csa_ap.h" 31 #include "msg_alg_rom.h" 32 #include "wal_common.h" 33 #include "hmac_11k.h" 34 35 #ifdef __cplusplus 36 #if __cplusplus 37 extern "C" { 38 #endif 39 #endif 40 41 #define CCPRIV_U8_MAX 0xFF 42 #define CCPRIV_U16_MAX 0xFFFF 43 #define CCPRIV_S16_MAX 0x7FFF 44 #define CCPRIV_S32_MAX 0x7FFFFFFF 45 46 osal_u32 wal_get_user_by_mac(oal_net_device_stru *net_dev, osal_s8 *param, osal_u16 *user_idx); 47 osal_u32 uapi_ccpriv_set_one_arg_s32(oal_net_device_stru *net_dev, osal_s8 *param, const osal_char *cmd); 48 osal_u32 uapi_ccpriv_csi_set_config(oal_net_device_stru *net_dev, osal_s8 *param); 49 osal_u32 uapi_ccpriv_csi_get_config(oal_net_device_stru *net_dev, osal_s8 *param); 50 osal_u32 uapi_ccpriv_csi_set_buffer(oal_net_device_stru *net_dev, osal_s8 *param); 51 osal_u32 uapi_ccpriv_csi_switch(oal_net_device_stru *net_dev, osal_s8 *param); 52 osal_u32 uapi_ccpriv_send_random_mac_oui(oal_net_device_stru *net_dev, osal_s8 *param); 53 osal_u32 wal_ccpriv_check_scan_params(mac_cfg_set_scan_param *scan_param); 54 osal_u32 uapi_ccpriv_service_control_set(oal_net_device_stru *net_dev, osal_s8 *param); 55 osal_u32 uapi_ccpriv_service_control_get(oal_net_device_stru *net_dev, osal_s8 *param); 56 osal_u32 uapi_ccpriv_kick_user(oal_net_device_stru *netdev, osal_s8 *param); 57 osal_u32 uapi_ccpriv_get_tx_params(oal_net_device_stru *net_dev, osal_s8 *param); 58 osal_u32 wal_get_tx_params(hmac_user_stru *hmac_user, osal_u32 *tx_best_rate); 59 60 osal_u32 wal_ccpriv_get_mac_addr_etc(osal_s8 *param, osal_u8 mac_addr[], osal_u32 *total_offset); 61 62 osal_u32 uapi_ccpriv_set_rate_power(oal_net_device_stru *net_dev, osal_s8 *param); 63 osal_u32 uapi_ccpriv_set_cal_tone(oal_net_device_stru *net_dev, osal_s8 *param); 64 osal_u32 uapi_ccpriv_get_nvram_power(oal_net_device_stru *net_dev, osal_s8 *param); 65 #ifdef _PRE_WLAN_FEATURE_FTM 66 osal_u32 uapi_ccpriv_ftm(oal_net_device_stru *net_dev, osal_s8 *param); 67 #endif 68 osal_u32 wal_parse_csa_cmd(osal_s8 *param, mac_protocol_debug_switch_stru *info); 69 osal_u32 uapi_ccpriv_multi_bssid_enable(oal_net_device_stru *net_dev, osal_s8 *param); 70 osal_u32 uapi_ccpriv_set_opmode_notify(oal_net_device_stru *net_dev, osal_s8 *param); 71 #ifdef _PRE_WLAN_FEATURE_WOW_OFFLOAD 72 osal_u32 uapi_ccpriv_host_sleep_switch(oal_net_device_stru *netdev, osal_s8 *pc_param); 73 osal_u32 uapi_ccpriv_set_wow(oal_net_device_stru *netdev, osal_s8 *pc_param); 74 osal_u32 uapi_ccpriv_set_wow_pattern(oal_net_device_stru *netdev, osal_s8 *pc_param); 75 #endif 76 osal_u32 uapi_ccpriv_m2u_snoop_enable(oal_net_device_stru *net_dev, osal_s8 *param); 77 osal_u32 uapi_ccpriv_m2u_snoop_list(oal_net_device_stru *net_dev, osal_s8 *param); 78 osal_u32 uapi_ccpriv_m2u_snoop_deny_table(oal_net_device_stru *net_dev, osal_s8 *param); 79 osal_u32 uapi_ccpriv_m2u_snoop_send_igmp(oal_net_device_stru *net_dev, osal_s8 *param); 80 osal_u32 uapi_ccpriv_set_scan_param(oal_net_device_stru *net_dev, osal_s8 *param); 81 #ifdef _PRE_WLAN_CFGID_DEBUG 82 osal_u32 uapi_ccpriv_set_ampdu_amsdu(oal_net_device_stru *net_dev, osal_s8 *param); 83 osal_u32 uapi_ccpriv_set_keepalive_mode(oal_net_device_stru *net_dev, osal_s8 *param); 84 osal_u32 uapi_ccpriv_common_debug(oal_net_device_stru *net_dev, osal_s8 *param); 85 osal_u32 uapi_ccpriv_set_ap_user_aging_time(oal_net_device_stru *net_dev, osal_s8 *param); 86 #ifdef _PRE_WLAN_SMOOTH_PHASE 87 osal_u32 uapi_ccpriv_set_smooth_phase_en(oal_net_device_stru *net_dev, osal_s8 *param); 88 #endif 89 #endif 90 osal_u32 wal_handel_radio_meas_rpt_cmd(mac_cfg_radio_meas_info_stru *radio_meas_cfg, osal_s8 *param); 91 osal_u32 wal_post2hmac_uint32_data(oal_net_device_stru *net_dev, osal_s8 *param, osal_u16 msg_id); 92 osal_u32 uapi_ccpriv_dhcp_debug(oal_net_device_stru *net_dev, osal_s8 *param); 93 osal_u32 uapi_ccpriv_set_2040_coext_support(oal_net_device_stru *net_dev, osal_s8 *param); 94 oal_bool_enum_uint8 check_mac_str(osal_s8 *value); 95 #ifdef _PRE_WLAN_DFT_STAT 96 osal_u32 uapi_ccpriv_get_user_conn_record(oal_net_device_stru *net_dev, osal_s8 *param); 97 osal_u32 uapi_ccpriv_get_vap_sniffer_result(oal_net_device_stru *net_dev, osal_s8 *param); 98 #endif 99 osal_u32 wal_ccpriv_parse_ipv4(osal_char *ip_str, osal_u32 *result); 100 osal_void wal_mem_read(osal_u8 reg32, uintptr_t start_addr, osal_u32 read_number); 101 osal_u32 uapi_ccpriv_rssi_limit(oal_net_device_stru *net_dev, osal_s8 *param); 102 #ifdef _PRE_WLAN_FEATURE_11AX 103 osal_u32 uapi_ccpriv_set_sts_sung_mung(oal_net_device_stru *net_dev, osal_s8 *param); 104 #endif 105 osal_u8 wal_ccpriv_check_cfg_vap(oal_net_device_stru *net_dev); 106 #ifdef __cplusplus 107 #if __cplusplus 108 } 109 #endif 110 #endif 111 112 #endif 113