1 /* 2 * Copyright (c) 2021 Chipsea Technologies (Shenzhen) Corp., Ltd. All rights reserved. 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 */ 15 #ifndef _WIFI_NX_MSG_TX_H 16 #define _WIFI_NX_MSG_TX_H 17 18 #include "rwnx_defs.h" 19 20 /* 21 * c.f LMAC/src/co/mac/mac_frame.h 22 */ 23 #define MAC_RSNIE_CIPHER_WEP40 0x00 24 #define MAC_RSNIE_CIPHER_TKIP 0x01 25 #define MAC_RSNIE_CIPHER_CCMP 0x02 26 #define MAC_RSNIE_CIPHER_WEP104 0x03 27 #define MAC_RSNIE_CIPHER_SMS4 0x04 28 #define MAC_RSNIE_CIPHER_AES_CMAC 0x05 29 30 int rwnx_send_reset(void); 31 int rwnx_send_start(struct mm_start_req *start); 32 int rwnx_send_version_req(struct mm_version_cfm *cfm); 33 int rwnx_send_add_if(unsigned char *mac, uint8_t iftype, bool p2p, struct mm_add_if_cfm *cfm); 34 int rwnx_send_remove_if(uint8_t vif_index); 35 int rwnx_send_me_chan_config_req(struct me_chan_config_req *chan_cfg); 36 int rwnx_send_me_config_req(struct me_config_req *cfg_req); 37 int rwnx_set_hw_idle_req(uint8_t idle); 38 int rwnx_set_disable_agg_req(uint8_t agg_disable, uint8_t sta_idx); 39 int rwnx_set_coex_config_req(uint8_t disable_coexnull, uint8_t enable_periodic_timer, uint8_t enable_nullcts, 40 uint8_t coex_timeslot_set, uint32_t param1, uint32_t param2); 41 int rwnx_set_rf_config_req(void); 42 int rwnx_set_rf_calib_req(struct mm_set_rf_calib_cfm *cfm); 43 int rwnx_send_msg_tx(lmac_task_id_t dst_id, lmac_msg_id_t msg_id, uint16_t msg_len, void *msg, int reqcfm, lmac_msg_id_t reqid, void *cfm); 44 45 #endif // _WIFI_NX_MSG_TX_H 46