diff --git a/Makefile b/Makefile index fc78f3f..0fe8da7 100644 --- a/Makefile +++ b/Makefile @@ -7,9 +7,6 @@ ram_all: @$(MAKE) -f sdkbuild.mk @$(MAKE) -f flasher.mk genbin1 genbin23 -webfs: - @$(MAKE) -f webfs.mk webpages.espfs - .PHONY: ram_all_mp ram_all_mp: @$(MAKE) -f sdkbuild.mk mp @@ -29,11 +26,7 @@ flashburn: flash_OTA: @$(MAKE) -f flasher.mk flash_OTA - -flashwebfs: - @$(MAKE) -f webfs.mk webpages.espfs - @$(MAKE) -f flasher.mk flashwebfs - #JLinkGDB-WrWebFs.bat + runram: #JLink-RunRAM.bat diff --git a/README.md b/README.md index 9b3f39b..2628595 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ RTL00 module (RTL8710AF)
![SCH](https://github.com/pvvx/RTL00MP3/blob/master/RTL00_MP3_SCH.gif) -Толко Тест!
+Только Тест!
PWM Out GC_2 and PE_2 (2 канала по 96Bit на один исходный sample 48 кГц)
diff --git a/RTL00_SDKV35a/component/common/api/at_cmd/atcmd_wifi.c b/RTL00_SDKV35a/component/common/api/at_cmd/atcmd_wifi.c index daf851f..2f67666 100644 --- a/RTL00_SDKV35a/component/common/api/at_cmd/atcmd_wifi.c +++ b/RTL00_SDKV35a/component/common/api/at_cmd/atcmd_wifi.c @@ -948,13 +948,16 @@ void fATWC(void *arg){ if(assoc_by_bssid){ printf("Joining BSS by BSSID "MAC_FMT" ...\n", MAC_ARG(wifi.bssid.octet)); - ret = wifi_connect_bssid(wifi.bssid.octet, (char*)wifi.ssid.val, wifi.security_type, (char*)wifi.password, - ETH_ALEN, wifi.ssid.len, wifi.password_len, wifi.key_id, NULL); } else { printf("Joining BSS by SSID %s...\n", (char*)wifi.ssid.val); - ret = wifi_connect((char*)wifi.ssid.val, wifi.security_type, (char*)wifi.password, wifi.ssid.len, - wifi.password_len, wifi.key_id, NULL); } + ret = wifi_connect(wifi.bssid.octet, + assoc_by_bssid, + (char*)wifi.ssid.val, + wifi.security_type, + (char*)wifi.password, + wifi.key_id, + NULL); if(ret!= RTW_SUCCESS){ printf("ERROR: Can't connect to AP\n"); @@ -1652,19 +1655,10 @@ void fATPA(void *arg) goto exit; } - if(hidden_ssid){ - if(wifi_start_ap_with_hidden_ssid((char*)ap.ssid.val, ap.security_type, (char*)ap.password, ap.ssid.len, ap.password_len, ap.channel) < 0) { + if(wifi_start_ap((char*)ap.ssid.val, ap.security_type, (char*)ap.password, ap.channel, hidden_ssid) < 0) { //at_printf("\r\n[ATPA] ERROR : Start AP failed"); error_no = 4; goto exit; - } - } - else{ - if(wifi_start_ap((char*)ap.ssid.val, ap.security_type, (char*)ap.password, ap.ssid.len, ap.password_len, ap.channel) < 0) { - //at_printf("\r\n[ATPA] ERROR : Start AP failed"); - error_no = 4; - goto exit; - } } while(1) { @@ -1906,13 +1900,14 @@ void fATPN(void *arg) wifi_set_pscan_chan(&connect_channel, &pscan_config, 1); #endif - if(assoc_by_bssid){ - ret = wifi_connect_bssid(wifi.bssid.octet, (char*)wifi.ssid.val, wifi.security_type, (char*)wifi.password, - ETH_ALEN, wifi.ssid.len, wifi.password_len, wifi.key_id, NULL); - } else { - ret = wifi_connect((char*)wifi.ssid.val, wifi.security_type, (char*)wifi.password, wifi.ssid.len, - wifi.password_len, wifi.key_id, NULL); - } + ret = wifi_connect( + wifi.bssid.octet, + assoc_by_bssid, + (char*)wifi.ssid.val, + wifi.security_type, + (char*)wifi.password, + wifi.key_id, + NULL); if(ret!= RTW_SUCCESS){ //at_printf("\r\n[ATPN] ERROR: Can't connect to AP"); @@ -2345,8 +2340,14 @@ int atcmd_wifi_restore_from_flash(void) break; } - ret = wifi_connect((char*)wifi.ssid.val, wifi.security_type, (char*)wifi.password, wifi.ssid.len, - wifi.password_len, wifi.key_id, NULL); + ret = wifi_connect( + NULL, + 0, + (char*)wifi.ssid.val, + wifi.security_type, + (char*)wifi.password, + wifi.key_id, + NULL); if(ret == RTW_SUCCESS){ LwIP_DHCP(0, DHCP_START); ret = 0; diff --git a/RTL00_SDKV35a/component/common/api/platform/esp_comp.h b/RTL00_SDKV35a/component/common/api/platform/esp_comp.h index 6a6cb87..e89795c 100644 --- a/RTL00_SDKV35a/component/common/api/platform/esp_comp.h +++ b/RTL00_SDKV35a/component/common/api/platform/esp_comp.h @@ -7,17 +7,18 @@ #define ICACHE_FLASH_ATTR #define ICACHE_RODATA_ATTR #define DATA_IRAM_ATTR +#define ICACHE_RAM_ATTR #define os_printf(...) rtl_printf(__VA_ARGS__) #define os_printf_plus(...) rtl_printf(__VA_ARGS__) #define os_sprintf_fd(...) rtl_sprintf(__VA_ARGS__) #define ets_sprintf(...) rtl_sprintf(__VA_ARGS__) -/* +#ifndef os_malloc #define os_malloc pvPortMalloc #define os_zalloc pvPortZalloc #define os_calloc pvPortCalloc #define os_realloc pvPortRealloc -*/ +#endif #undef os_free #define os_free vPortFree #define system_get_free_heap_size xPortGetFreeHeapSize @@ -51,6 +52,7 @@ #define os_strncpy rtl_strncpy #define os_strstr rtl_strstr #define os_random Rand + //extern uint32 phy_get_rand(void); #define system_get_os_print() 1 @@ -102,7 +104,6 @@ extern SpiFlashChip * flashchip; // in RAM-BIOS: 0x3fffc714 #define spi_flash_read(faddr, pbuf, size) flash_stream_read(&flashobj, faddr, size, (uint8_t *)pbuf) #define spi_flash_erase_block(blk) flash_erase_block(&flashobj, (blk)<<16); - #define ip4_addr1(ipaddr) (((u8_t*)(ipaddr))[0]) #define ip4_addr2(ipaddr) (((u8_t*)(ipaddr))[1]) #define ip4_addr3(ipaddr) (((u8_t*)(ipaddr))[2]) @@ -121,6 +122,13 @@ extern SpiFlashChip * flashchip; // in RAM-BIOS: 0x3fffc714 #define IPSTR "%d.%d.%d.%d" +#ifndef MAC2STR +#define MAC2STR(a) (a)[0], (a)[1], (a)[2], (a)[3], (a)[4], (a)[5] +#define MACSTR "%02x:%02x:%02x:%02x:%02x:%02x" +#endif + + +#ifndef DEBUGSOO /* CONFIG_DEBUG_LOG: =0 Off all diag/debug msg, =1 Only errors, @@ -135,5 +143,12 @@ extern SpiFlashChip * flashchip; // in RAM-BIOS: 0x3fffc714 #else #define DEBUGSOO CONFIG_DEBUG_LOG #endif +#endif //#ifndef DEBUGSOO + +//#define system_get_sdk_version() "3.5.3" + +//#define system_get_time xTaskGetTickCount +//#define ets_get_cpu_frequency HalGetCpuClk + #endif // _INCLUDE_ESP_COMP_H_ diff --git a/RTL00_SDKV35a/component/common/api/wifi/rtw_wowlan/dev_wowlan.c b/RTL00_SDKV35a/component/common/api/wifi/rtw_wowlan/dev_wowlan.c index 929c014..b458346 100644 --- a/RTL00_SDKV35a/component/common/api/wifi/rtw_wowlan/dev_wowlan.c +++ b/RTL00_SDKV35a/component/common/api/wifi/rtw_wowlan/dev_wowlan.c @@ -1,7 +1,7 @@ #include #include #include -#include +#include #include #include diff --git a/RTL00_SDKV35a/component/common/api/wifi/rtw_wowlan/wifi_wowlan.h b/RTL00_SDKV35a/component/common/api/wifi/rtw_wowlan/wifi_wowlan.h index cdf2621..82355fe 100644 --- a/RTL00_SDKV35a/component/common/api/wifi/rtw_wowlan/wifi_wowlan.h +++ b/RTL00_SDKV35a/component/common/api/wifi/rtw_wowlan/wifi_wowlan.h @@ -212,16 +212,16 @@ struct rtw_wowlan_rx_filter { #if defined(__IAR_SYSTEMS_ICC__) #pragma pack(1) #else -//#error "this structure needs to be packed!" +#error "this structure needs to be packed!" #endif -struct rtw_wowlan { +struct rtw_wowlan_status { u32 wakeup_reasons; //record wake up reason u32 filter_id; //record which pattern is matched -} _status __attribute__ ((__packed__)); +}; #if defined(__IAR_SYSTEMS_ICC__) #pragma pack() #else -//#error "this structure needs to be packed!" +#error "this structure needs to be packed!" #endif /** diff --git a/RTL00_SDKV35a/component/common/api/wifi/rtw_wpa_supplicant/wpa_supplicant/wifi_eap_config.c b/RTL00_SDKV35a/component/common/api/wifi/rtw_wpa_supplicant/wpa_supplicant/wifi_eap_config.c index 320d9e0..a24c7b0 100644 --- a/RTL00_SDKV35a/component/common/api/wifi/rtw_wpa_supplicant/wpa_supplicant/wifi_eap_config.c +++ b/RTL00_SDKV35a/component/common/api/wifi/rtw_wpa_supplicant/wpa_supplicant/wifi_eap_config.c @@ -10,8 +10,10 @@ #include #include "wifi/wifi_conf.h" #include +#ifdef CONFIG_ENABLE_EAP #include #include +#endif #define WLAN0_NAME "wlan0" #ifndef ENABLE @@ -21,6 +23,21 @@ #define DISABLE (0) #endif +#ifndef CONFIG_ENABLE_EAP +int get_eap_phase(void){ + return 0; +} + +int get_eap_method(void){ + return 0; +} + +void eap_autoreconnect_hdl(u8 method_id) +{ + (void) method_id; +} +#else + u8 eap_phase = 0; u8 eap_method = 0; @@ -42,9 +59,6 @@ void eap_eapol_recvd_hdl(char *buf, int buf_len, int flags, void* handler_user_d void eap_eapol_start_hdl(char *buf, int buf_len, int flags, void* handler_user_data); #endif -void set_eap_phase(unsigned char is_trigger_eap){ - eap_phase = is_trigger_eap; -} int get_eap_phase(void){ return eap_phase; @@ -54,6 +68,10 @@ int get_eap_method(void){ return eap_method; } +void set_eap_phase(unsigned char is_trigger_eap){ + eap_phase = is_trigger_eap; +} + void reset_config(void){ eap_target_ssid = NULL; eap_identity = NULL; @@ -64,6 +82,8 @@ void reset_config(void){ eap_client_key_pwd = NULL; } +#ifdef CONFIG_ENABLE_EAP + void judge_station_disconnect(void) { int mode = 0; @@ -82,7 +102,7 @@ void judge_station_disconnect(void) wifi_disconnect(); } } -#ifdef CONFIG_ENABLE_EAP + void eap_disconnected_hdl(char *buf, int buf_len, int flags, void* handler_user_data){ // printf("disconnected\n"); wifi_unreg_event_handler(WIFI_EVENT_EAPOL_RECVD, eap_eapol_recvd_hdl); @@ -258,11 +278,12 @@ static int connect_by_open_system(char *target_ssid) if (target_ssid != NULL) { while (1) { rtw_msleep_os(500); //wait scan complete. - ret = wifi_connect(target_ssid, + ret = wifi_connect( + NULL, + 0, + target_ssid, RTW_SECURITY_OPEN, NULL, - strlen(target_ssid), - 0, 0, NULL); if (ret == RTW_SUCCESS) { @@ -451,3 +472,5 @@ int eap_cert_setup(ssl_context *ssl) #endif return 0; } + +#endif //#ifdef CONFIG_ENABLE_EAP diff --git a/RTL00_SDKV35a/component/common/api/wifi/rtw_wpa_supplicant/wpa_supplicant/wifi_wps_config.c b/RTL00_SDKV35a/component/common/api/wifi/rtw_wpa_supplicant/wpa_supplicant/wifi_wps_config.c index d8ba7e4..6641d2f 100644 --- a/RTL00_SDKV35a/component/common/api/wifi/rtw_wpa_supplicant/wpa_supplicant/wifi_wps_config.c +++ b/RTL00_SDKV35a/component/common/api/wifi/rtw_wpa_supplicant/wpa_supplicant/wifi_wps_config.c @@ -303,11 +303,12 @@ static int wps_connect_to_AP_by_certificate(rtw_network_info_t *wifi) printf("ssid_len = %d\n", wifi->ssid.len); printf("password_len = %d\n", wifi->password_len); while (1) { - ret = wifi_connect((char*)wifi->ssid.val, + ret = wifi_connect( + NULL, + 0, + (char*)wifi->ssid.val, wifi->security_type, (char*)wifi->password, - wifi->ssid.len, - wifi->password_len, wifi->key_id, NULL); if (ret == RTW_SUCCESS) { @@ -336,11 +337,11 @@ static int wps_connect_to_AP_by_open_system(char *target_ssid) if (target_ssid != NULL) { rtw_msleep_os(500); //wait scan complete. while (1) { - ret = wifi_connect(target_ssid, - RTW_SECURITY_OPEN, + ret = wifi_connect( NULL, - strlen(target_ssid), 0, + target_ssid, + RTW_SECURITY_OPEN, 0, NULL); if (ret == RTW_SUCCESS) { diff --git a/RTL00_SDKV35a/component/common/api/wifi/wifi_conf.c b/RTL00_SDKV35a/component/common/api/wifi/wifi_conf.c index b4f1f74..79956d7 100644 --- a/RTL00_SDKV35a/component/common/api/wifi/wifi_conf.c +++ b/RTL00_SDKV35a/component/common/api/wifi/wifi_conf.c @@ -9,6 +9,7 @@ #include #include #include +#include #include "tcpip.h" #include @@ -22,8 +23,6 @@ extern int inic_start(void); extern int inic_stop(void); #endif -#include "wifi_api.h" - #include "wlan_lib.h" #if CONFIG_DEBUG_LOG > 0 @@ -429,8 +428,18 @@ void restore_wifi_info_to_flash() { #endif //----------------------------------------------------------------------------// -int wifi_connect(char *ssid, rtw_security_t security_type, char *password, - int ssid_len, int password_len, int key_id, void *semaphore) { +int wifi_connect( + unsigned char bssid[ETH_ALEN], + char use_bssid, // flag + char *ssid, + rtw_security_t security_type, + char *password, + int key_id, + void *semaphore) { + + int ssid_len = 0; + int password_len = 0; + int bssid_len = 6; xSemaphoreHandle join_semaphore; rtw_result_t result = RTW_SUCCESS; u8 wep_hex = 0; @@ -441,7 +450,34 @@ int wifi_connect(char *ssid, rtw_security_t security_type, char *password, return RTW_ERROR; } + if(ssid) { + ssid_len = rtl_strlen(ssid); + if(ssid_len > NDIS_802_11_LENGTH_SSID) + ssid_len = NDIS_802_11_LENGTH_SSID; + } + if(password) { + password_len = rtl_strlen(password); + if(password_len > IW_PASSPHRASE_MAX_SIZE) + password_len = IW_PASSPHRASE_MAX_SIZE; + } + rtw_join_status = 0; //clear for last connect status + error_flag = RTW_UNKNOWN; //clear for last connect status + internal_join_result_t *join_result = + (internal_join_result_t *) rtw_zmalloc( + sizeof(internal_join_result_t)); + if (!join_result) { +#if CONFIG_DEBUG_LOG > 3 + error_printf("%s: Can't malloc memory!\n", __func__); +#endif + return RTW_NOMEM; + } + if (ssid_len && ssid) { + join_result->network_info.ssid.len = ssid_len > 32 ? 32 : ssid_len; + rtw_memcpy(join_result->network_info.ssid.val, ssid, ssid_len); + } + if(bssid) rtw_memcpy(join_result->network_info.bssid.octet, bssid, ETH_ALEN); + error_flag = RTW_UNKNOWN; //clear for last connect status if ((((password_len > RTW_MAX_PSK_LEN) || (password_len < RTW_MIN_PSK_LEN)) && ((security_type == RTW_SECURITY_WPA_TKIP_PSK) @@ -463,24 +499,24 @@ int wifi_connect(char *ssid, rtw_security_t security_type, char *password, if (password_len == 10) { - u32 p[5] = { 0 }; + u32 g[5] = { 0 }; u8 i = 0; - sscanf((const char*) password, "%02x%02x%02x%02x%02x", &p[0], - &p[1], &p[2], &p[3], &p[4]); + sscanf((const char*) password, "%02x%02x%02x%02x%02x", &g[0], + &g[1], &g[2], &g[3], &g[4]); for (i = 0; i < 5; i++) - wep_pwd[i] = (u8) p[i]; + wep_pwd[i] = (u8) g[i]; wep_pwd[5] = '\0'; password_len = 5; wep_hex = 1; } else if (password_len == 26) { - u32 p[13] = { 0 }; + u32 g[13] = { 0 }; u8 i = 0; sscanf((const char*) password, "%02x%02x%02x%02x%02x%02x%02x" - "%02x%02x%02x%02x%02x%02x", &p[0], &p[1], &p[2], &p[3], - &p[4], &p[5], &p[6], &p[7], &p[8], &p[9], &p[10], - &p[11], &p[12]); + "%02x%02x%02x%02x%02x%02x", &g[0], &g[1], &g[2], &g[3], + &g[4], &g[5], &g[6], &g[7], &g[8], &g[9], &g[10], + &g[11], &g[12]); for (i = 0; i < 13; i++) - wep_pwd[i] = (u8) p[i]; + wep_pwd[i] = (u8) g[i]; wep_pwd[13] = '\0'; password_len = 13; wep_hex = 1; @@ -488,20 +524,8 @@ int wifi_connect(char *ssid, rtw_security_t security_type, char *password, } } - internal_join_result_t *join_result = - (internal_join_result_t *) rtw_zmalloc( - sizeof(internal_join_result_t)); - if (!join_result) { -#if CONFIG_DEBUG_LOG > 3 - error_printf("%s: Can't malloc memory!\n", __func__); -#endif - return RTW_NOMEM; - } - - join_result->network_info.ssid.len = ssid_len > 32 ? 32 : ssid_len; - rtw_memcpy(join_result->network_info.ssid.val, ssid, ssid_len); - join_result->network_info.password_len = password_len; + if (password_len) { /* add \0 to the end */ join_result->network_info.password = rtw_zmalloc(password_len + 1); @@ -542,9 +566,33 @@ int wifi_connect(char *ssid, rtw_security_t security_type, char *password, #if DD_WIFI_CONN // дублирование с wifi_connect_bssid_local() wifi_connect_local(&join_result->network_info); #else - if (wifi_connect_local(&join_result->network_info) == 0) - wext_set_ssid(WLAN0_NAME, join_result->network_info.ssid.val, - join_result->network_info.ssid.len); + rtw_network_info_t *pWifi = &join_result->network_info; + + if (wifi_connect_local(pWifi) == 0) { + uint16 flg = 0; + if(use_bssid) { + struct { + u8 bssid[ETH_ALEN + 2]; + void * p; + } bs = { 0 }; + memcpy(bs.bssid, pWifi->bssid.octet, ETH_ALEN); + for(int i = 0; i < ETH_ALEN; i++) { + flg += bs.bssid[i]; + } + if(flg == 0x5FA || flg == 0) { // 0x5FA = 6*0xff + use_bssid = 0; + flg = 0; + } + else { + use_bssid = 1; + wext_set_bssid(WLAN0_NAME, bs.bssid); + } + } + if(!use_bssid) { + wext_set_ssid(WLAN0_NAME, join_result->network_info.ssid.val, + join_result->network_info.ssid.len); + }; + } #endif join_user_data = join_result; @@ -604,10 +652,18 @@ int wifi_connect(char *ssid, rtw_security_t security_type, char *password, wifi_handshake_done_hdl); return result; } +/* -int wifi_connect_bssid(unsigned char bssid[ETH_ALEN], char *ssid, - rtw_security_t security_type, char *password, int bssid_len, - int ssid_len, int password_len, int key_id, void *semaphore) { +int wifi_connect_bssid( + unsigned char bssid[ETH_ALEN], + char *ssid, + rtw_security_t security_type, + char *password, + int bssid_len, + int ssid_len, + int password_len, + int key_id, + void *semaphore) { xSemaphoreHandle join_semaphore; rtw_result_t result = RTW_SUCCESS; @@ -643,7 +699,7 @@ int wifi_connect_bssid(unsigned char bssid[ETH_ALEN], char *ssid, } join_result->network_info.password_len = password_len; if (password_len) { - /* add \0 to the end */ + // add \0 to the end join_result->network_info.password = rtw_zmalloc(password_len + 1); if (!join_result->network_info.password) { return RTW_NOMEM; @@ -726,6 +782,7 @@ int wifi_connect_bssid(unsigned char bssid[ETH_ALEN], char *ssid, wifi_handshake_done_hdl); return result; } +*/ int wifi_disconnect(void) { int ret = 0; @@ -740,7 +797,6 @@ int wifi_disconnect(void) { } return ret; } - //----------------------------------------------------------------------------// int wifi_is_connected_to_ap(void) { return rltk_wlan_is_connected_to_ap(); @@ -874,17 +930,23 @@ int wifi_get_drv_ability(uint32_t *ability) { //----------------------------------------------------------------------------// int wifi_set_country(rtw_country_code_t country_code) { - return wext_set_country(WLAN0_NAME, country_code); + int ret; + + ret = wext_set_country(WLAN0_NAME, country_code); + + return ret; } //----------------------------------------------------------------------------// int wifi_set_channel_plan(uint8_t channel_plan) { const char * ifname = WLAN0_NAME; + int ret = 0; char buf[24]; rtw_memset(buf, 0, sizeof(buf)); snprintf(buf, 24, "set_ch_plan %x", channel_plan); - return wext_private_command(ifname, buf, SHOW_PRIVATE_OUT); + ret = wext_private_command(ifname, buf, SHOW_PRIVATE_OUT); + return ret; } //----------------------------------------------------------------------------// @@ -918,12 +980,16 @@ void wifi_set_mib(void) { //----------------------------------------------------------------------------// int wifi_rf_on(void) { - return rltk_wlan_rf_on(); + int ret; + ret = rltk_wlan_rf_on(); + return ret; } //----------------------------------------------------------------------------// int wifi_rf_off(void) { - return rltk_wlan_rf_off(); + int ret; + ret = rltk_wlan_rf_off(); + return ret; } //----------------------------------------------------------------------------// @@ -1070,63 +1136,21 @@ int wifi_get_last_error(void) { int wpas_wps_init(const char* ifname); #endif -int wifi_start_ap_s(PSOFTAP_CONFIG p) { - const char *ifname = WLAN0_NAME; - int ret = 0; - - if (wifi_mode == RTW_MODE_STA_AP) { - ifname = WLAN1_NAME; - } - - if (is_promisc_enabled()) - promisc_set(0, NULL, 0); - - wifi_reg_event_handler(WIFI_EVENT_STA_ASSOC, wifi_ap_sta_assoc_hdl, NULL); - wifi_reg_event_handler(WIFI_EVENT_STA_DISASSOC, wifi_ap_sta_disassoc_hdl, - NULL); - - ret = wext_set_mode(ifname, IW_MODE_MASTER); - if (ret < 0) - goto exit; - ret = wext_set_channel(ifname, p->channel); //Set channel before starting ap - if (ret < 0) - goto exit; - - switch (p->security_type) { - case RTW_SECURITY_OPEN: - break; - case RTW_SECURITY_WPA2_AES_PSK: - ret = wext_set_auth_param(ifname, IW_AUTH_80211_AUTH_ALG, - IW_AUTH_ALG_OPEN_SYSTEM); - if (ret == 0) - ret = wext_set_key_ext(ifname, IW_ENCODE_ALG_CCMP, NULL, 0, 0, 0, 0, - NULL, 0); - if (ret == 0) - ret = wext_set_passphrase(ifname, (u8*) p->password, strlen(p->password)); - break; - default: - ret = -1; - printf("WIFICONF: security type is not supported\n"); - break; - } - if (ret < 0) - goto exit; - if(p->ssid_hidden) { - ret = set_hidden_ssid(ifname, 1); - if (ret < 0) - goto exit; - } - ret = wext_set_ap_ssid(ifname, (u8*) p->ssid, strlen(p->ssid)); -#if defined(CONFIG_ENABLE_WPS_AP) && CONFIG_ENABLE_WPS_AP - wpas_wps_init(ifname); -#endif -exit: return ret; -} - -int wifi_start_ap(char *ssid, rtw_security_t security_type, char *password, - int ssid_len, int password_len, int channel) { +int wifi_start_ap(char *ssid, rtw_security_t security_type, char *password, int channel, char ssid_hidden) { const char *ifname = WLAN0_NAME; + int ssid_len = 0; + int password_len = 0; int ret = 0; + if(ssid) { + ssid_len = rtl_strlen(ssid); + if(ssid_len > NDIS_802_11_LENGTH_SSID) + ssid_len = NDIS_802_11_LENGTH_SSID; + } + if(password) { + password_len = rtl_strlen(password); + if(password_len > IW_PASSPHRASE_MAX_SIZE) + password_len = IW_PASSPHRASE_MAX_SIZE; + } if (wifi_mode == RTW_MODE_STA_AP) { ifname = WLAN1_NAME; @@ -1142,6 +1166,7 @@ int wifi_start_ap(char *ssid, rtw_security_t security_type, char *password, ret = wext_set_mode(ifname, IW_MODE_MASTER); if (ret < 0) goto exit; +// if(!channel) channel = 1; ret = wext_set_channel(ifname, channel); //Set channel before starting ap if (ret < 0) goto exit; @@ -1166,13 +1191,19 @@ int wifi_start_ap(char *ssid, rtw_security_t security_type, char *password, if (ret < 0) goto exit; + if(ssid_hidden) { + ret = set_hidden_ssid(ifname, 1); + if (ret < 0) + goto exit; + } + ret = wext_set_ap_ssid(ifname, (u8*) ssid, ssid_len); #if defined(CONFIG_ENABLE_WPS_AP) && CONFIG_ENABLE_WPS_AP wpas_wps_init(ifname); #endif exit: return ret; } - +/* int wifi_start_ap_with_hidden_ssid(char *ssid, rtw_security_t security_type, char *password, int ssid_len, int password_len, int channel) { const char *ifname = WLAN0_NAME; @@ -1226,6 +1257,7 @@ int wifi_start_ap_with_hidden_ssid(char *ssid, rtw_security_t security_type, #endif exit: return ret; } +*/ void wifi_scan_each_report_hdl(char* buf, int buf_len, int flags, void* userdata) { @@ -1710,7 +1742,7 @@ void wifi_enter_promisc_mode() { } int wifi_restart_ap(unsigned char *ssid, rtw_security_t security_type, - unsigned char *password, int ssid_len, int password_len, int channel) { + unsigned char *password, int channel) { unsigned char idx = 0; struct ip_addr ipaddr; struct ip_addr netmask; @@ -1747,8 +1779,7 @@ int wifi_restart_ap(unsigned char *ssid, rtw_security_t security_type, wifi_on(RTW_MODE_AP); } // start ap - if (wifi_start_ap((char*) ssid, security_type, (char*) password, ssid_len, - password_len, channel) < 0) { + if (wifi_start_ap((char*) ssid, security_type, (char*) password, channel, 0) < 0) { printf("ERROR: Operation failed!\n"); return -1; } diff --git a/RTL00_SDKV35a/component/common/api/wifi/wifi_conf.h b/RTL00_SDKV35a/component/common/api/wifi/wifi_conf.h index ac8bbc0..9860a68 100644 --- a/RTL00_SDKV35a/component/common/api/wifi/wifi_conf.h +++ b/RTL00_SDKV35a/component/common/api/wifi/wifi_conf.h @@ -3,16 +3,18 @@ #define __WIFI_CONF_API_H #include "FreeRTOS.h" -#include "wifi_constants.h" +#include "wifi_constants.h" #include "wifi_structures.h" #include "wifi_util.h" -#include "wifi_ind.h" +#include "wifi_ind.h" #include +#include "wifi_api.h" #ifdef __cplusplus extern "C" { #endif + /****************************************************** * Macros ******************************************************/ @@ -137,14 +139,14 @@ int wifi_manager_init(void); * RTW_ERROR : if an error occurred */ int wifi_connect( + unsigned char bssid[ETH_ALEN], + char use_bssid, char *ssid, rtw_security_t security_type, char *password, - int ssid_len, - int password_len, int key_id, void *semaphore); - +/* int wifi_connect_bssid( unsigned char bssid[ETH_ALEN], char *ssid, @@ -155,7 +157,7 @@ int wifi_connect_bssid( int password_len, int key_id, void *semaphore); - +*/ /** Disassociates from a Wi-Fi network. * * @return RTW_SUCCESS : On successful disassociation from @@ -446,6 +448,8 @@ int wifi_get_lps_dtim(unsigned char *dtim); * @return RTW_SUCCESS : if successfully creates an AP * RTW_ERROR : if an error occurred */ +int wifi_start_ap(char *ssid, rtw_security_t security_type, char *password, int channel, char ssid_hidden); +/* int wifi_start_ap( char *ssid, rtw_security_t security_type, @@ -453,7 +457,7 @@ int wifi_start_ap( int ssid_len, int password_len, int channel); - +*/ /** Starts an infrastructure WiFi network with hidden SSID * * @warning If a STA interface is active when this function is called, the softAP will\n @@ -478,6 +482,7 @@ int wifi_start_ap( * @return RTW_SUCCESS : if successfully creates an AP * RTW_ERROR : if an error occurred */ +/* int wifi_start_ap_with_hidden_ssid( char *ssid, rtw_security_t security_type, @@ -485,7 +490,7 @@ int wifi_start_ap_with_hidden_ssid( int ssid_len, int password_len, int channel); - +*/ /** Initiates a scan to search for 802.11 networks. * * The scan progressively accumulates results over time, and @@ -638,8 +643,6 @@ int wifi_restart_ap( unsigned char *ssid, rtw_security_t security_type, unsigned char *password, - int ssid_len, - int password_len, int channel); int wifi_config_autoreconnect(__u8 mode, __u8 retyr_times, __u16 timeout); diff --git a/RTL00_SDKV35a/component/common/api/wifi/wifi_simple_config.c b/RTL00_SDKV35a/component/common/api/wifi/wifi_simple_config.c index 222e71e..924bb2a 100644 --- a/RTL00_SDKV35a/component/common/api/wifi/wifi_simple_config.c +++ b/RTL00_SDKV35a/component/common/api/wifi/wifi_simple_config.c @@ -530,8 +530,13 @@ enum sc_result SC_parse_scan_result_and_connect(scan_buf_arg* scan_buf, rtw_netw ret = SC_TARGET_CHANNEL_SCAN_FAIL; goto sc_connect_wifi_fail; } - ret = wifi_connect_bssid(scan_result.mac, (char*)wifi->ssid.val, SC_translate_iw_security_mode(scan_result.sec_mode), - (char*)wifi->password, ETH_ALEN, wifi->ssid.len, wifi->password_len, 0, NULL); + ret = wifi_connect( + scan_result.mac, + 1, + (char*)wifi->ssid.val, + SC_translate_iw_security_mode(scan_result.sec_mode), + (char*)wifi->password, + 0, NULL); if (ret == RTW_SUCCESS) goto sc_connect_wifi_success; } @@ -691,8 +696,13 @@ enum sc_result SC_connect_to_AP(void) goto wifi_connect_fail; } rtw_join_status = 0;//clear simple config status - ret = wifi_connect_bssid(g_bssid, (char*)wifi.ssid.val, wifi.security_type, (char*)wifi.password, - ETH_ALEN, wifi.ssid.len, wifi.password_len, wifi.key_id, NULL); + ret = wifi_connect(g_bssid, + 1, + (char*)wifi.ssid.val, + wifi.security_type, + (char*)wifi.password, + wifi.key_id, + NULL); if (ret == RTW_SUCCESS) goto wifi_connect_success; diff --git a/RTL00_SDKV35a/component/common/api/wifi/wifi_simple_config_parser.h b/RTL00_SDKV35a/component/common/api/wifi/wifi_simple_config_parser.h index 85d5d7d..330ecdb 100644 --- a/RTL00_SDKV35a/component/common/api/wifi/wifi_simple_config_parser.h +++ b/RTL00_SDKV35a/component/common/api/wifi/wifi_simple_config_parser.h @@ -68,15 +68,13 @@ struct simple_config_lib_config { }; - -#pragma pack(push, 1) +#pragma pack(1) struct rtk_test_sc { /* API exposed to user */ unsigned char ssid[32]; unsigned char password[65]; unsigned int ip_addr; }; -#pragma pack(pop) /* expose data */ extern s32 is_promisc_callback_unlock; diff --git a/RTL00_SDKV35a/component/common/api/wifi_api.c b/RTL00_SDKV35a/component/common/api/wifi_api.c index d28f280..aefcd94 100644 --- a/RTL00_SDKV35a/component/common/api/wifi_api.c +++ b/RTL00_SDKV35a/component/common/api/wifi_api.c @@ -36,6 +36,11 @@ #include "wifi_api.h" #include "wifi_user_set.h" +#ifdef CONFIG_ENABLE_WPS +extern void cmd_ap_wps(int argc, char **argv); +extern int wpas_wps_dev_config(u8 *dev_addr, u8 bregistrar); +#endif //CONFIG_WPS_AP + //========================================= //--- Wlan Config Init------------------- WIFI_CONFIG wifi_cfg = { @@ -68,6 +73,7 @@ STATION_CONFIG wifi_st_cfg = { .ssid = DEF_ST_SSID, .password = DEF_ST_PASSWORD, .bssid = DEF_ST_BSSID, + .flg = DEF_ST_BSSID, .security_type = DEF_ST_SECURITY, .autoreconnect = DEF_ST_AUTORECONNECT, .reconnect_pause = DEF_ST_RECONNECT_PAUSE @@ -115,9 +121,10 @@ uint32 write_wifi_cfg(uint32 flg) uint32 ret = 0; PFEEP_ELEMENT p = feep_tab; for(int m = 1; m && p->id != 0; m <<= 1, p++) { - if((flg & m) - && flash_write_cfg(p->obj, p->id, p->size) < p->size) { - ret |= m; + if(flg & m) { + if(!flash_write_cfg(p->obj, p->id, p->size)) { + ret |= m; + }; }; }; return ret; @@ -173,8 +180,6 @@ uint8 chk_ap_netif_num(void) return wlan_ap_netifn; } -extern int wifi_start_ap_s(PSOFTAP_CONFIG p); - rtw_result_t wifi_run_ap(void) { chk_ap_netif_num(); @@ -186,7 +191,18 @@ rtw_result_t wifi_run_ap(void) { if(wext_set_sta_num(wifi_ap_cfg.max_sta) != 0) { // Max number of STAs, should be 1..3, default is 3 error_printf("AP not set max connections %d!\n", wifi_ap_cfg.max_sta); }; - ret = wifi_start_ap_s(&wifi_ap_cfg); +#if defined(CONFIG_ENABLE_WPS_AP) && CONFIG_ENABLE_WPS_AP + // todo: ветка не доделана + wpas_wps_dev_config(xnetif[WLAN_AP_NETIF_NUM].hwaddr, 1); +#endif //CONFIG_WPS_AP + if(wifi_ap_cfg.channel == 0 || wifi_ap_cfg.channel > 14) { + wifi_ap_cfg.channel = 1; + } + ret = wifi_start_ap(wifi_ap_cfg.ssid, //char *ssid, + wifi_ap_cfg.security_type, //rtw_security_t ecurity_type, + wifi_ap_cfg.password, //char *password, + wifi_ap_cfg.channel, //int channel + wifi_ap_cfg.ssid_hidden); // wifi_run_mode |= RTW_MODE_AP; if (ret != RTW_SUCCESS) { error_printf("Error(%d): Start AP failed!\n\n", ret);; @@ -233,13 +249,13 @@ rtw_result_t StartStDHCPClient(void) struct netif * pnetif = &xnetif[WLAN_ST_NETIF_NUM]; DHCP_CONFIG *p = (dhcp_cfg *)&wifi_st_dhcp; unsigned char mode = p->mode; - if((mode == 3) - && (p->ip == IP4ADDR(255,255,255,255) - || p->ip == IP4ADDR(0,0,0,0))) { - mode = 2; + if((mode == 3) // Auto fix + && p->ip != IP4ADDR(255,255,255,255) + && p->ip != IP4ADDR(0,0,0,0)) { +// mode = 2; // fixed ip } - else mode = 1; - if(mode == 2) { + else mode = 1; // DHCP On + if(mode == 2) { // fixed ip netif_set_addr(pnetif, (ip_addr_t *)&p->ip, (ip_addr_t *)&p->mask, (ip_addr_t *)&p->gw); // dhcps_init(pnetif); } @@ -254,8 +270,8 @@ rtw_result_t StartStDHCPClient(void) p->ip = pnetif->ip_addr.addr; p->gw = pnetif->gw.addr; p->mask = pnetif->netmask.addr; - if(p->mode == 3) { - p->mode = 2; + if(p->mode == 3) { // Auto fix + p->mode = 2; // fixed ip write_wifi_cfg(BID_ST_DHCP_CFG); } ret = RTW_SUCCESS; @@ -282,9 +298,14 @@ rtw_result_t wifi_run_st(void) { } #endif info_printf("Connected to AP (%s, netif%d)...\n", wlan_st_name, wlan_st_netifn); - ret = wifi_connect(wifi_st_cfg.ssid, wifi_st_cfg.security_type, - wifi_st_cfg.password, strlen(wifi_st_cfg.ssid), - strlen(wifi_st_cfg.password), -1, NULL); + ret = wifi_connect( + wifi_st_cfg.bssid, + wifi_st_cfg.flg, + wifi_st_cfg.ssid, + wifi_st_cfg.security_type, + wifi_st_cfg.password, + -1, + NULL); wifi_run_mode |= RTW_MODE_STA; if (ret != RTW_SUCCESS) { error_printf("%s: Operation failed! Error(%d)\n", __func__, ret); @@ -328,7 +349,7 @@ int _wifi_on(rtw_mode_t mode) { // wext_set_adaptivity(RTW_ADAPTIVITY_NORMAL); // wext_set_adaptivity(RTW_ADAPTIVITY_CARRIER_SENSE); - devnum = (mode == RTW_MODE_STA_AP); + devnum = (mode == RTW_MODE_STA_AP); // flag use 2 netif ret = rltk_wlan_init(0, mode); if (ret < 0) return ret; @@ -390,8 +411,9 @@ void _LwIP_Init(void) netif_set_up(&xnetif[idx]); } info_printf("interface %d is initialized\n", idx); - wifi_mode = 0; lwip_init_done = 1; + // для отслеживания первого старта ? +// wifi_mode = RTW_MODE_NONE; } } @@ -400,9 +422,6 @@ int wifi_run(rtw_mode_t mode) { #if CONFIG_DEBUG_LOG > 4 debug_printf("\n%s(%d), %d\n", __func__, mode, wifi_run_mode); #endif - if(mode != RTW_MODE_NONE) { - _LwIP_Init(); - }; if(wifi_run_mode & RTW_MODE_AP) { info_printf("Deinit old AP...\n"); LwIP_DHCP(WLAN_AP_NETIF_NUM, DHCP_STOP); @@ -435,25 +454,37 @@ int wifi_run(rtw_mode_t mode) { if(wifi_set_country(wifi_cfg.country_code) != RTW_SUCCESS) { error_printf("Error set tx country_code (%d)!", wifi_cfg.country_code); }; -// extern uint8_t rtw_power_percentage_idx; // rtw_tx_pwr_percentage_t -#if 1 // rltk_set_tx_power_percentage() return all = 0 ! - rltk_set_tx_power_percentage(wifi_cfg.tx_pwr); -#else +// extern uint8_t rtw_power_percentage_idx; if(rtw_power_percentage_idx != wifi_cfg.tx_pwr) { if(rltk_set_tx_power_percentage(wifi_cfg.tx_pwr) != RTW_SUCCESS) { error_printf("Error set tx power (%d)!", wifi_cfg.tx_pwr); }; } -#endif debug_printf("mode == wifi_mode? (%d == %d?)\n", mode, wifi_mode); // if(mode == wifi_mode) { - if((wifi_mode == RTW_MODE_AP) || (wifi_mode == RTW_MODE_STA_AP)) { - wifi_run_ap(); - }; - if((wifi_mode == RTW_MODE_STA) || (wifi_mode == RTW_MODE_STA_AP)) { - wifi_run_st(); - }; + switch(wifi_mode) { + case RTW_MODE_STA_AP: + wifi_run_ap(); + wifi_run_st(); + break; + case RTW_MODE_STA: + wifi_run_st(); + break; + case RTW_MODE_AP: + wifi_run_ap(); + break; +#if 0// CONFIG_ENABLE_?? + case RTW_MODE_PROMISC: + break; +#endif +#if CONFIG_ENABLE_P2P + case RTW_MODE_P2P: + break; +#endif + default: + error_printf("Error WiFi mode(%d)\n", wifi_mode); + } #if CONFIG_INTERACTIVE_MODE /* Initial uart rx swmaphore*/ vSemaphoreCreateBinary(uart_rx_interrupt_sema); @@ -475,6 +506,7 @@ error_end: return ret; } +/* Load cfg, init WiFi + LwIP init, WiFi start if wifi_cfg.mode != RTW_MODE_NONE */ void wifi_init(void) { debug_printf("\nLoad Config\n"); read_wifi_cfg(wifi_cfg.load_flg); // DEF_LOAD_CFG @@ -483,13 +515,12 @@ void wifi_init(void) { // Call back from application layer after wifi_connection success // p_write_reconnect_ptr = wlan_write_reconnect_data_to_flash; p_wlan_autoreconnect_hdl = NULL; - if (wifi_cfg.mode != RTW_MODE_NONE) { - wifi_mode = wifi_cfg.mode; + _LwIP_Init(); #if CONFIG_WIFI_IND_USE_THREAD - wifi_manager_init(); + wifi_manager_init(); #endif - wifi_run(wifi_cfg.mode); - } +// wifi_cfg.mode = RTW_MODE_PROMISC; //RTW_MODE_P2P; + wifi_run(wifi_cfg.mode); } rtw_security_t translate_rtw_security(u8 security_type) @@ -519,6 +550,7 @@ rtw_security_t translate_rtw_security(u8 security_type) return security_mode; } + void show_wifi_ap_ip(void) { printf("SoftAP ip: " IPSTR "\n", IP2STR(&xnetif[WLAN_AP_NETIF_NUM].ip_addr)); } diff --git a/RTL00_SDKV35a/component/common/api/wifi_api.h b/RTL00_SDKV35a/component/common/api/wifi_api.h index 5a89c8c..129fe03 100644 --- a/RTL00_SDKV35a/component/common/api/wifi_api.h +++ b/RTL00_SDKV35a/component/common/api/wifi_api.h @@ -8,7 +8,6 @@ #ifndef _WIFI_API_H_ #define _WIFI_API_H_ #include "wifi_constants.h" -#include "wifi_conf.h" #define ip4_addr1(ipaddr) (((uint8_t*)(ipaddr))[0]) #define ip4_addr2(ipaddr) (((uint8_t*)(ipaddr))[1]) @@ -64,21 +63,21 @@ typedef struct _wifi_config { typedef struct _softap_config { unsigned char ssid[NDIS_802_11_LENGTH_SSID]; unsigned char password[IW_PASSPHRASE_MAX_SIZE]; - rtw_security_t security_type; // Only: RTW_SECURITY_OPEN, RTW_SECURITY_WPA2_AES_PSK - unsigned short beacon_interval; // default 100 + rtw_security_t security_type; // RTW_SECURITY_OPEN, RTW_SECURITY_WEP_PSK + uint16 beacon_interval; // Note: support 100 ~ 60000 ms, default 100 unsigned char channel; // 1..14 unsigned char ssid_hidden; // Note: default 0 unsigned char max_sta; // 1..3 -} SOFTAP_CONFIG, * PSOFTAP_CONFIG; +} SOFTAP_CONFIG, *PSOFTAP_CONFIG; //---- Interface 1 - wlan1 - ST - struct - typedef struct _station_config { unsigned char ssid[NDIS_802_11_LENGTH_SSID]; unsigned char password[IW_PASSPHRASE_MAX_SIZE]; rtw_security_t security_type; - unsigned char bssid[6]; // Note: If bssid set is not ff.ff.ff.ff.ff.ff, - // station will connect to the router with both ssid[] and bssid[] matched. + unsigned char bssid[6]; // Note: If bssid set is not ff.ff.ff.ff.ff.ff || 00:00:00:00:00:00 unsigned char autoreconnect; // 0 - none, 1..254 - count, 255 - all - unsigned char reconnect_pause; // in sec + unsigned char reconnect_pause; // in sec + unsigned char flg; // station will connect to the router with both ssid[], else if set flg - bssid[] matched. // rtw_adaptivity_mode_t } STATION_CONFIG, *PSTATION_CONFIG; //--- LwIP Config ------------------------- @@ -106,6 +105,7 @@ extern DHCP_CONFIG wifi_ap_dhcp; extern STATION_CONFIG wifi_st_cfg; extern DHCP_CONFIG wifi_st_dhcp; extern rtw_mode_t wifi_run_mode; +extern rtw_mode_t wifi_mode; extern char wlan_st_name[]; extern char wlan_ap_name[]; extern char wlan_st_netifn; diff --git a/RTL00_SDKV35a/component/common/api/wifi_interactive_mode.c b/RTL00_SDKV35a/component/common/api/wifi_interactive_mode.c index 45eba1a..a0d0436 100644 --- a/RTL00_SDKV35a/component/common/api/wifi_interactive_mode.c +++ b/RTL00_SDKV35a/component/common/api/wifi_interactive_mode.c @@ -124,9 +124,9 @@ extern void cmd_googlenest(int argc, char **argv); extern void cmd_jd_smart(int argc, char **argv); #endif #if CONFIG_WLAN -static void cmd_wifi_on(int argc, char **argv); -static void cmd_wifi_off(int argc, char **argv); -static void cmd_wifi_disconnect(int argc, char **argv); +void cmd_wifi_on(int argc, char **argv); +void cmd_wifi_off(int argc, char **argv); +void cmd_wifi_disconnect(int argc, char **argv); extern void cmd_promisc(int argc, char **argv); extern void cmd_simple_config(int argc, char **argv); @@ -222,9 +222,8 @@ static void cmd_wifi_sta_and_ap(int argc, char **argv) if(wifi_start_ap(argv[1], RTW_SECURITY_WPA2_AES_PSK, argv[3], - strlen((const char *)argv[1]), - strlen((const char *)argv[3]), - channel + channel, + 0 ) != RTW_SUCCESS) { printf("ERROR: Operation failed!\n\n"); return; @@ -234,9 +233,8 @@ static void cmd_wifi_sta_and_ap(int argc, char **argv) if(wifi_start_ap(argv[1], RTW_SECURITY_OPEN, NULL, - strlen((const char *)argv[1]), - 0, - channel + channel, + 0 ) != RTW_SUCCESS) { printf("ERROR: Operation failed!\n"); return; @@ -332,9 +330,8 @@ static void cmd_wifi_ap(int argc, char **argv) if(wifi_start_ap(argv[1], RTW_SECURITY_WPA2_AES_PSK, argv[3], - strlen((const char *)argv[1]), - strlen((const char *)argv[3]), - channel + channel, + 0 ) != RTW_SUCCESS) { printf("ERROR: Operation failed!\n"); return; @@ -344,9 +341,8 @@ static void cmd_wifi_ap(int argc, char **argv) if(wifi_start_ap(argv[1], RTW_SECURITY_OPEN, NULL, - strlen((const char *)argv[1]), - 0, - channel + channel, + 0 ) != RTW_SUCCESS) { printf("ERROR: Operation failed!\n"); return; @@ -443,11 +439,12 @@ static void cmd_wifi_connect(int argc, char **argv) semaphore = NULL; } - ret = wifi_connect(ssid, - security_type, - password, - ssid_len, - password_len, + ret = wifi_connect( + NULL, + 0, + ssid, + security_type, + password, key_id, semaphore); @@ -480,7 +477,6 @@ static void cmd_wifi_connect_bssid(int argc, char **argv) char *ssid = NULL; rtw_security_t security_type; char *password; - int bssid_len; int ssid_len = 0; int password_len; int key_id; @@ -525,21 +521,18 @@ static void cmd_wifi_connect_bssid(int argc, char **argv) if(argc == 3 + index){ security_type = RTW_SECURITY_OPEN; password = NULL; - bssid_len = ETH_ALEN; password_len = 0; key_id = 0; semaphore = NULL; }else if(argc ==4 + index){ security_type = RTW_SECURITY_WPA2_AES_PSK; password = argv[3 + index]; - bssid_len = ETH_ALEN; password_len = strlen((const char *)argv[3 + index]); key_id = 0; semaphore = NULL; }else{ security_type = RTW_SECURITY_WEP_PSK; password = argv[3 + index]; - bssid_len = ETH_ALEN; password_len = strlen((const char *)argv[3 + index]); key_id = atoi(argv[4 + index]); if(( password_len != 5) && (password_len != 13)) { @@ -553,13 +546,12 @@ static void cmd_wifi_connect_bssid(int argc, char **argv) semaphore = NULL; } - ret = wifi_connect_bssid(bssid, + ret = wifi_connect( + bssid, + 1, ssid, - security_type, - password, - bssid_len, - ssid_len, - password_len, + security_type, + password, key_id, semaphore); @@ -578,7 +570,7 @@ static void cmd_wifi_connect_bssid(int argc, char **argv) printf("Got IP after %dms.\n", (tick3-tick1)); } -static void cmd_wifi_disconnect(int argc, char **argv) +void cmd_wifi_disconnect(int argc, char **argv) { int timeout = 20; char essid[33]; @@ -714,14 +706,14 @@ static void cmd_wifi_info(int argc, char **argv) #endif } -static void cmd_wifi_on(int argc, char **argv) +void cmd_wifi_on(int argc, char **argv) { if(wifi_on(RTW_MODE_STA)<0){ printf("ERROR: Wifi on failed!\n"); } } -static void cmd_wifi_off(int argc, char **argv) +void cmd_wifi_off(int argc, char **argv) { #if CONFIG_WEBSERVER stop_web_server(); @@ -1059,7 +1051,7 @@ static const cmd_entry cmd_table[] = { {"wifi_wps", cmd_wps}, #endif #ifdef CONFIG_WPS_AP -//pvvx {"wifi_ap_wps", cmd_ap_wps}, + {"wifi_ap_wps", cmd_ap_wps}, #endif #if CONFIG_ENABLE_P2P {"wifi_p2p_start", cmd_wifi_p2p_start}, diff --git a/RTL00_SDKV35a/component/common/application/jd_joinlink/example_joinlink.c b/RTL00_SDKV35a/component/common/application/jd_joinlink/example_joinlink.c index eadcc1e..669095c 100644 --- a/RTL00_SDKV35a/component/common/application/jd_joinlink/example_joinlink.c +++ b/RTL00_SDKV35a/component/common/application/jd_joinlink/example_joinlink.c @@ -333,10 +333,14 @@ int joinlink_finish(unsigned char security_type) //printf("ap_bssid: 0x%02x 0x%02x 0x%02x 0x%02x 0x%02x 0x%02x\n", ap_bssid[0],ap_bssid[1],ap_bssid[2],ap_bssid[3],ap_bssid[4],ap_bssid[5]); - ret = wifi_connect((unsigned char *)result.ssid, security_mode, - (unsigned char *)result.pwd, result.ssid_length, - result.pwd_length, - 0,NULL); + ret = wifi_connect( + NULL, + 0, + (unsigned char *)result.ssid, + security_mode, + (unsigned char *)result.pwd, + 0, + NULL); if(ret == RTW_SUCCESS){ printf("Connect ok!\n"); diff --git a/RTL00_SDKV35a/component/common/application/uart_adapter/uart_adapter.c b/RTL00_SDKV35a/component/common/application/uart_adapter/uart_adapter.c index 1e39f30..db44023 100644 --- a/RTL00_SDKV35a/component/common/application/uart_adapter/uart_adapter.c +++ b/RTL00_SDKV35a/component/common/application/uart_adapter/uart_adapter.c @@ -1694,11 +1694,12 @@ int uartadapter_connect_wifi(rtw_network_info_t *p_wifi, uint32_t channel, uint8 return ret; } - ret = wifi_connect((char*)p_wifi->ssid.val, + ret = wifi_connect( + NULL, + 0, + (char*)p_wifi->ssid.val, p_wifi->security_type, (char*)p_wifi->password, - p_wifi->ssid.len, - p_wifi->password_len, p_wifi->key_id, NULL); diff --git a/RTL00_SDKV35a/component/common/drivers/sdio/realtek/sdio_host/src/sd.c b/RTL00_SDKV35a/component/common/drivers/sdio/realtek/sdio_host/src/sd.c index 722cef1..dd81f93 100644 --- a/RTL00_SDKV35a/component/common/drivers/sdio/realtek/sdio_host/src/sd.c +++ b/RTL00_SDKV35a/component/common/drivers/sdio/realtek/sdio_host/src/sd.c @@ -108,7 +108,7 @@ SD_RESULT SD_GetCapacity(uint32_t *sector_count) { //----- SD_ReadBlocks SD_RESULT SD_ReadBlocks(u32 sector, u8 *data, u32 count) { - int rd_count = 0; + int rd_count; unsigned char * buf; if ((u32) data & 3) { @@ -144,7 +144,7 @@ SD_RESULT SD_ReadBlocks(u32 sector, u8 *data, u32 count) { //----- SD_WriteBlocks SD_RESULT SD_WriteBlocks(u32 sector, const u8 *data, u32 count) { - int wr_count = 0; + int wr_count; unsigned char * buf; if ((u32) data & 3) { diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/drv_types.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/drv_types.h index f2dc7c1..49bedcc 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/drv_types.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/drv_types.h @@ -612,20 +612,20 @@ struct _ADAPTER{ u16 interface_type;//USB,SDIO,SPI,PCI u32 work_mode; //STA, AP, STA+AP, PROMISC, P2P - struct dvobj_priv *dvobj; //+8 - struct mlme_priv mlmepriv; //+12 [1244] - struct mlme_ext_priv mlmeextpriv; //+1256 [912] - struct cmd_priv cmdpriv; //+2168 + struct dvobj_priv *dvobj; + struct mlme_priv mlmepriv; + struct mlme_ext_priv mlmeextpriv; + struct cmd_priv cmdpriv; struct evt_priv evtpriv; //struct io_queue *pio_queue; struct io_priv iopriv; - struct xmit_priv xmitpriv; //+2248 - struct recv_priv recvpriv; //+2752 - struct sta_priv stapriv; //+3024 [164] + struct xmit_priv xmitpriv; + struct recv_priv recvpriv; + struct sta_priv stapriv; struct security_priv securitypriv; - struct registry_priv registrypriv; // registrypriv.power_percentage_idx +4929 - struct pwrctrl_priv pwrctrlpriv; // pwrctrlpriv.bInternalAutoSuspend //+5061 - struct eeprom_priv eeprompriv; //+5128? + struct registry_priv registrypriv; + struct pwrctrl_priv pwrctrlpriv; + struct eeprom_priv eeprompriv; //TODO // struct led_priv ledpriv; @@ -666,20 +666,20 @@ struct _ADAPTER{ struct wifi_display_info wfd_info; #endif //CONFIG_WFD - PVOID HalData; //+5656 - u32 hal_data_sz; //+5660 - struct hal_ops HalFunc; //+5664 + PVOID HalData; + u32 hal_data_sz; + struct hal_ops HalFunc; - s32 bDriverStopped; //+5880 - s32 bSurpriseRemoved; //+5884 - s32 bCardDisableWOHSM; //+5888 - u8 RxStop; //Used to stop rx thread as early as possible //+5892 + s32 bDriverStopped; + s32 bSurpriseRemoved; + s32 bCardDisableWOHSM; + u8 RxStop; //Used to stop rx thread as early as possible u32 IsrContent; u32 ImrContent; u8 EepromAddressSize; - u8 hw_init_completed; //+5905 + u8 hw_init_completed; u8 bDriverIsGoingToUnload; u8 init_adpt_in_progress; u8 bMpDriver; @@ -692,9 +692,9 @@ struct _ADAPTER{ _thread_hdl_ evtThread; #endif #if defined(CONFIG_ISR_THREAD_MODE_POLLING) || defined(CONFIG_ISR_THREAD_MODE_INTERRUPT) - struct task_struct isrThread; //+5888? + struct task_struct isrThread; #endif - struct task_struct cmdThread; //+5920 + struct task_struct cmdThread; #ifdef CONFIG_XMIT_THREAD_MODE struct task_struct xmitThread; #endif @@ -702,13 +702,13 @@ struct _ADAPTER{ struct task_struct recvThread; #endif #ifdef CONFIG_RECV_TASKLET_THREAD - struct task_struct recvtasklet_thread; //+5952 + struct task_struct recvtasklet_thread; #endif #ifdef CONFIG_XMIT_TASKLET_THREAD #ifdef PLATFORM_LINUX struct tasklet_struct xmit_tasklet; #else - struct task_struct xmittasklet_thread; //+5984 + struct task_struct xmittasklet_thread; #endif #endif #ifdef CONFIG_SDIO_XMIT_THREAD @@ -721,8 +721,8 @@ struct _ADAPTER{ void (*dvobj_deinit)(struct dvobj_priv *dvobj); #endif - void (*intf_start)(_adapter * adapter); //+6008 - void (*intf_stop)(_adapter * adapter); //+6012 + void (*intf_start)(_adapter * adapter); + void (*intf_stop)(_adapter * adapter); #ifdef PLATFORM_WINDOWS _nic_hdl hndis_adapter;//hNdisAdapter(NDISMiniportAdapterHandle); @@ -741,9 +741,9 @@ struct _ADAPTER{ #endif //#ifdef PLATFORM_ECOS #if defined(PLATFORM_FREERTOS) || defined (PLATFORM_CMSIS_RTOS) - _nic_hdl pnetdev; //+6016 - int bup; //+6020 - struct net_device_stats stats; //+6024 + _nic_hdl pnetdev; + int bup; + struct net_device_stats stats; #endif //#ifdef PLATFORM_FREERTOS #ifdef PLATFORM_LINUX @@ -773,7 +773,7 @@ struct _ADAPTER{ int bup; _lock glock; #endif //PLATFORM_FREEBSD - u8 net_closed; //+6052 + u8 net_closed; u8 bFWReady; //u8 bBTFWReady; @@ -785,20 +785,20 @@ struct _ADAPTER{ u8 bDisableAutosuspend; #endif - _adapter *pbuddy_adapter; //+6056 + _adapter *pbuddy_adapter; - _mutex *hw_init_mutex; //+6060 + _mutex *hw_init_mutex; #if defined(CONFIG_CONCURRENT_MODE) - u8 isprimary; //is primary adapter or not //+6064 - u8 adapter_type; //+6065 - u8 iface_type; //interface port type //+6056 + u8 isprimary; //is primary adapter or not + u8 adapter_type; + u8 iface_type; //interface port type //for global synchronization - _mutex *ph2c_fwcmd_mutex; //+6068 - _mutex *psetch_mutex; //+6072 - _mutex *psetbw_mutex; //+6076 + _mutex *ph2c_fwcmd_mutex; + _mutex *psetch_mutex; + _mutex *psetbw_mutex; - struct co_data_priv *pcodatapriv;//data buffer shared among interfaces //+6080 + struct co_data_priv *pcodatapriv;//data buffer shared among interfaces #endif #ifdef CONFIG_BR_EXT @@ -827,7 +827,7 @@ struct _ADAPTER{ PLOOPBACKDATA ploopback; #endif - u8 fix_rate; //+6084 + u8 fix_rate; #ifdef CONFIG_CAC_TEST unsigned char in_cta_test; #endif @@ -837,7 +837,7 @@ struct _ADAPTER{ u8 debug_level; #endif -}; // [6088] (!) +}; #define adapter_to_dvobj(adapter) (adapter->dvobj) #define adapter_to_pwrctl(adapter) (&adapter->pwrctrlpriv) diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/hal_intf.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/hal_intf.h index f9ae749..8457298 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/hal_intf.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/hal_intf.h @@ -234,7 +234,7 @@ struct hal_ops { void (*disable_interrupt)(_adapter *padapter); s32 (*interrupt_handler)(_adapter *padapter); -// void (*clear_interrupt)(_adapter *padapter); // None SDK3.5a + void (*clear_interrupt)(_adapter *padapter); #ifdef CONFIG_WOWLAN void (*disable_interrupt_but_cpwm2)(_adapter *padapter); diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_cmd.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_cmd.h index 45baff9..79b6ce1 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_cmd.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_cmd.h @@ -925,11 +925,11 @@ Result: #define H2C_RSP_OFFSET 512 -#define H2C_SUCCESS 0x00 +#define H2C_SUCCESS 0x00 #define H2C_SUCCESS_RSP 0x01 #define H2C_DUPLICATED 0x02 -#define H2C_DROPPED 0x03 -#define H2C_PARAMETERS_ERROR 0x04 +#define H2C_DROPPED 0x03 +#define H2C_PARAMETERS_ERROR 0x04 #define H2C_REJECTED 0x05 #define H2C_CMD_OVERFLOW 0x06 #define H2C_RESERVED 0x07 diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_ioctl_set.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_ioctl_set.h index 1d21ff7..8e247e3 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_ioctl_set.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_ioctl_set.h @@ -68,7 +68,7 @@ u8 rtw_validate_ssid(NDIS_802_11_SSID *ssid); u16 rtw_get_cur_max_rate(_adapter *adapter); //int rtw_set_scan_mode(_adapter *adapter, RT_SCAN_TYPE scan_mode); int rtw_set_channel_plan(_adapter *adapter, u8 channel_plan); -//int rtw_set_country(_adapter *adapter, const char *country_code); +int rtw_set_country(_adapter *adapter, const char *country_code); //int rtw_set_band(_adapter *adapter, enum _BAND band); #endif diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_mlme_ext.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_mlme_ext.h index 41733c6..b504f25 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_mlme_ext.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/rtw_mlme_ext.h @@ -481,13 +481,13 @@ typedef struct _RT_CHANNEL_INFO extern int rtw_is_channel_set_contains_channel(RT_CHANNEL_INFO *channel_set, const u32 channel_num, int *pchannel_idx); #ifdef CONFIG_CUSTOM_IE -#ifndef __CUS_IE_ -#define __CUS_IE_ -typedef struct __cus_ie +#ifndef _CUS_IE_ +#define _CUS_IE_ +typedef struct _cus_ie { u8 *ie; u8 type; -} rtw_custom_ie_t, *p_rtw_custom_ie_t; +}rtw_custom_ie_t, *p_rtw_custom_ie_t; #endif /* _CUS_IE_ */ #endif diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_constants.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_constants.h index 859fb9d..2ddf1c4 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_constants.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_constants.h @@ -491,7 +491,7 @@ typedef enum { RTW_TX_PWR_PERCENTAGE_75 = 1, /* 75% */ RTW_TX_PWR_PERCENTAGE_50 = 2, /* 50% */ RTW_TX_PWR_PERCENTAGE_25 = 3, /* 25% */ - RTW_TX_PWR_PERCENTAGE_12_5 = 4, /* 12.5% */ + RTW_TX_PWR_PERCENTAGE_12_5 = 4 /* 12.5% */ }rtw_tx_pwr_percentage_t; /** diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_lib.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_lib.h index c2d2856..76c9364 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_lib.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_lib.h @@ -7,13 +7,7 @@ #include "osdep_service.h" #include "freertos/wrapper.h" -//#include "wlan_bssdef.h" -//#include "wifi_simple_config_parser.h" -//#include "rtw_rf.h" #include "rtl_bios_data.h" -#include "drv_types.h" -#include "wlan/realtek/src/hal/hal_data.h" -//#include "phydm.h" #define _atr_aligned2_ __attribute__((aligned(2))) #define _atr_aligned4_ __attribute__((aligned(4))) @@ -60,16 +54,16 @@ typedef uint8_t BOOLEAN; typedef uint8_t u1Byte; typedef uint16_t u2Byte; -//typedef uint32_t u4Byte; +typedef uint32_t u4Byte; typedef uint64_t u8Byte; typedef uint64_t __attribute__((aligned(4))) _u8Byte; -//typedef sint8_t s1Byte; +typedef sint8_t s1Byte; typedef sint16_t s2Byte; -//typedef sint32_t s4Byte; -//typedef sint8_t *ps1Byte; +typedef sint32_t s4Byte; +typedef sint8_t *ps1Byte; typedef uint8_t *pu1Byte; typedef uint16_t *pu2Byte; -//typedef uint32_t *pu4Byte; +typedef uint32_t *pu4Byte; typedef uint32_t sizetype; typedef struct _ADAPTER _adapter; @@ -81,7 +75,6 @@ typedef void *_mutex; typedef int (*init_done_ptr)(void); -/* rtw_efuse.h enum _EFUSE_DEF_TYPE // : sint32_t { TYPE_EFUSE_MAX_SECTION = 0x0, @@ -97,9 +90,7 @@ enum _IFACE_TYPE //: sint32_t { IFACE_PORT0 = 0x0, IFACE_PORT1 = 0x1, MAX_IFACE_PORT = 0x2, }; -*/ -/* rtl8195a_pmu_task.h enum _FW_ERR0_STATUS_ //: sint32_t { FES0_H2C_CMDID = 0x1, @@ -363,7 +354,7 @@ struct atomic_t { _lock lock; }; */ -/* osdep_intf.h + struct iw_request_info { uint16_t cmd; uint16_t flags; @@ -371,9 +362,7 @@ struct iw_request_info { typedef int (*iw_handler)(struct net_device *, struct iw_request_info *, union iwreq_data *, char *); -*/ -/* wlan_bssdef.h struct _NDIS_802_11_SSID { uint32_t SsidLength; uint8_t Ssid[36]; @@ -466,7 +455,6 @@ struct wlan_network { WLAN_BSSID_EX network; WLAN_BCN_INFO BcnInfo; }; -*/ /* osdep_service.h typedef void *_timerHandle; @@ -479,13 +467,12 @@ struct wlan_network { }; typedef struct timer_list _timer; -*/ -/* rtw_qos.h + */ + struct qos_priv { uint32_t qos_option; }; - */ -/* wifi.h + struct __attribute__((packed)) _atr_aligned2_ rtw_ieee80211_ht_cap { uint16_t cap_info; uint8_t ampdu_params_info; @@ -494,9 +481,7 @@ struct __attribute__((packed)) _atr_aligned2_ rtw_ieee80211_ht_cap { uint32_t tx_BF_cap_info; uint8_t antenna_selection_info; }; -*/ -/* rtw_ht.h struct ht_priv { uint32_t ht_option; uint32_t ampdu_enable; @@ -508,8 +493,7 @@ struct ht_priv { uint8_t stbc_cap; struct rtw_ieee80211_ht_cap ht_cap; }; -*/ -/* rtw_mlme.h + struct _atr_aligned4_ _RT_LINK_DETECT_T { uint32_t NumTxOkInPeriod; uint32_t NumRxOkInPeriod; @@ -522,6 +506,7 @@ struct _atr_aligned4_ _RT_LINK_DETECT_T { BOOLEAN bHigherBusyTxTraffic; }; typedef struct _RT_LINK_DETECT_T RT_LINK_DETECT_T; + enum _RT_SCAN_TYPE //: sint32_t { SCAN_PASSIVE = 0x0, SCAN_ACTIVE = 0x1, SCAN_MIX = 0x2 @@ -584,8 +569,7 @@ struct mlme_priv { uint8_t scanning_via_buddy_intf; struct recv_frame *p_copy_recv_frame; }; -*/ -/* rtw_mlme_ext.h + struct _atr_aligned4_ _RT_CHANNEL_INFO { uint8_t ChannelNum; RT_SCAN_TYPE ScanType; // uint8_t ScanType; // byte/dword? @@ -600,8 +584,7 @@ struct ss_res { int scan_mode; NDIS_802_11_SSID ssid[1]; }; -*/ -/* wifi.h + struct __attribute__((packed)) __attribute__((aligned(1))) ADDBA_request { uint8_t dialog_token; uint16_t BA_para_set; @@ -640,8 +623,7 @@ struct HT_info_element { uint8_t infos[5]; uint8_t MCS_rate[16]; }; -*/ -/* rtw_mlme_ext.h + struct FW_Sta_Info { struct sta_info *psta; uint32_t status; @@ -690,17 +672,16 @@ struct mlme_ext_info { struct HT_info_element HT_info; struct FW_Sta_Info FW_sta_info[5]; }; -*/ -/* + #ifndef _CUS_IE_ #define _CUS_IE_ typedef struct _cus_ie{ __u8 *ie; __u8 type; } cus_ie, *p_cus_ie; -#endif */ +#endif /* _CUS_IE_ */ // typedef struct _cus_ie *p_cus_ie; -/* rtw_mlme_ext.h + struct mlme_ext_priv { //__attribute__((packed))? _adapter *padapter; //+0 padapter+1256 [912] uint8_t mlmeext_init; @@ -744,9 +725,7 @@ struct mlme_ext_priv { //__attribute__((packed))? uint8_t bChDeauthDisabled; uint8_t bConcurrentFlushingSTA; }; -*/ -/* rtw_cmd.h struct cmd_priv { _queue cmd_queue; uint8_t cmdthd_running; @@ -759,27 +738,6 @@ struct evt_priv { uint8_t *evt_allocated_buf; uint32_t evt_done_cnt; }; -*/ -/* drv_types.h -struct dvobj_priv -{ - void *if1; - void *if2; - void *padapters[2]; - uint8_t iface_nums; - uint8_t RtOutPipe[3]; - uint8_t Queue2Pipe[8]; - uint8_t irq_alloc; - uint8_t irq_enabled; - _lock irq_th_lock; -}; -*/ -/* trw_io.h - -struct fifo_more_data { - uint32_t more_data; - uint32_t len; -}; struct _io_ops { int (*init_io_priv)(struct dvobj_priv *); @@ -798,8 +756,7 @@ struct _io_ops { struct io_priv { struct _io_ops io_ops; }; -*/ -/* rtw_xmit.h + struct rtw_tx_ring { struct tx_buf_desc *desc; dma_addr_t dma; @@ -845,8 +802,7 @@ struct _atr_aligned8_ xmit_priv { uint32_t free_xmit_extbuf_cnt; uint16_t nqos_ssn; }; -*/ -/* trw_recv.h + struct rtw_rx_ring { struct recv_buf_stat *desc; dma_addr_t dma; @@ -909,8 +865,7 @@ struct _atr_aligned8_ recv_priv { uint16_t promisc_bk_rxfltmap2; uint8_t promisc_mgntframe_enabled; }; -*/ -/* sta_info.h + struct _atr_aligned4_ sta_priv { uint8_t *pallocated_stainfo_buf; uint32_t allocated_stainfo_size; @@ -934,13 +889,14 @@ struct _atr_aligned4_ sta_priv { uint16_t tim_bitmap; uint16_t max_num_sta; }; -*/ -/* trw_security.h + union Keytype { uint8_t skey[16]; uint32_t lkey[4]; }; + + union pn48 { u8Byte val; struct { @@ -954,9 +910,7 @@ union pn48 { uint8_t TSC7; }_byte_; }; -*/ -/* wlan_bssdef.h struct _NDIS_802_11_WEP { uint32_t Length; uint32_t KeyIndex; @@ -964,9 +918,7 @@ struct _NDIS_802_11_WEP { uint8_t KeyMaterial[16]; }; typedef struct _NDIS_802_11_WEP NDIS_802_11_WEP; -*/ -/* rtw_psk.h struct $D75518714447A990003EBC933C23F70E { uint32_t HighPart; uint32_t LowPart; @@ -1027,9 +979,7 @@ struct _wpa_global_info { typedef struct _wpa_global_info WPA_GLOBAL_INFO; typedef struct _wpa_sta_info WPA_STA_INFO; -*/ -/* rtw_security.h struct _atr_aligned4_ security_priv { uint32_t dot11AuthAlgrthm; uint32_t dot11PrivacyAlgrthm; @@ -1073,8 +1023,7 @@ struct _atr_aligned4_ security_priv { uint8_t wpa_passphrase[65]; uint8_t wps_phase; }; -*/ -/* derv_types.h + struct _atr_aligned4_ registry_priv { uint8_t chip_version; uint8_t hci; @@ -1118,8 +1067,7 @@ struct _atr_aligned4_ registry_priv { uint8_t adaptivity_dc_backoff; int8_t adaptivity_th_l2h_ini; }; -*/ -/* trw_powerctrl.h + typedef void *_sema; typedef _sema _pwrlock; @@ -1190,8 +1138,7 @@ struct _atr_aligned4_ pwrctrl_priv { uint8_t tdma_rfon_period_len_3; uint8_t lps_dtim; }; -*/ -/* rtw_eeprom.h + struct _atr_aligned2_ eeprom_priv { // __attribute__((packed))!? uint8_t bautoload_fail_flag; uint8_t mac_addr[6]; @@ -1201,8 +1148,7 @@ struct _atr_aligned2_ eeprom_priv { // __attribute__((packed))!? uint8_t EEPROMRFGainOffset; uint8_t EEPROMRFGainVal; }; -*/ -/* rtw_rf.h + enum _CHANNEL_WIDTH // : sint32_t { CHANNEL_WIDTH_20 = 0x0, @@ -1213,9 +1159,7 @@ enum _CHANNEL_WIDTH // : sint32_t CHANNEL_WIDTH_MAX = 0x5, }; typedef enum _CHANNEL_WIDTH CHANNEL_WIDTH; -*/ -/* hal_intf.h enum _HAL_DEF_VARIABLE // : sint32_t { HAL_DEF_UNDERCORATEDSMOOTHEDPWDB = 0x0, @@ -1252,11 +1196,11 @@ enum _HAL_ODM_VARIABLE // : sint32_t HAL_ODM_REGULATION = 0x4, }; typedef enum _HAL_ODM_VARIABLE HAL_ODM_VARIABLE; -*/ -/* freertos_service.h + typedef void *_thread_hdl_; -*/ -/* osdep_service.h + +/* + // osdep_service.h struct task_struct { const char *task_name; @@ -1282,7 +1226,19 @@ typedef struct net_device *_nic_hdl; uint32_t rx_overflow; }; */ -/* rtw_recv.h + +struct dvobj_priv { + void *if1; + void *if2; + void *padapters[2]; + uint8_t iface_nums; + uint8_t RtOutPipe[3]; + uint8_t Queue2Pipe[8]; + uint8_t irq_alloc; + uint8_t irq_enabled; + _lock irq_th_lock; +}; + struct phy_info { uint8_t RxPWDBAll; uint8_t SignalQuality; @@ -1358,7 +1314,7 @@ union { uint32_t mem[32]; }; }; - +/* union $AB04817EA6EB89125E28056B7464A4D7 { _list list; struct recv_frame_hdr hdr; @@ -1369,7 +1325,8 @@ union recv_frame { union $AB04817EA6EB89125E28056B7464A4D7 u; }; */ -/* skbuff.h +/* + // skbuff.h struct sk_buff { struct sk_buff *next; @@ -1390,7 +1347,7 @@ union recv_frame { uint32_t qlen; }; */ -/* rtw_xmit.h + struct tx_servq { _list tx_pending; _queue sta_pending; @@ -1409,12 +1366,6 @@ struct sta_xmit_priv { _list apsd; uint16_t txseq_tid[16]; }; -*/ -/* rtw_recv.h -struct recv_buf_stat { - uint32_t rxdw0; - uint32_t rxdw1; -}; struct stainfo_rxcache { uint16_t tid_rxseq[16]; @@ -1426,9 +1377,8 @@ struct sta_recv_priv { _queue defrag_q; struct stainfo_rxcache rxcache; }; -*/ -/* sta_info.h - struct stainfo_stats { + +struct stainfo_stats { u8Byte rx_mgnt_pkts; u8Byte rx_ctrl_pkts; u8Byte rx_data_pkts; @@ -1525,15 +1475,20 @@ struct sta_info { uint8_t RXEVM[4]; uint8_t RXSNR[4]; }; -*/ -/* wifi_conf.h +/* + // wifi_conf.h struct _atr_aligned4_ _cus_ie { uint8_t *ie; uint8_t type; }; */ -/* rtw_xmit.h + +struct fifo_more_data { + uint32_t more_data; + uint32_t len; +}; + struct hw_xmit { _queue *sta_queue; int accnt; @@ -1549,8 +1504,12 @@ struct tx_buf_desc { uint32_t txdw6; uint32_t txdw7; }; -*/ -/* rtw_psk.h + +struct recv_buf_stat { + uint32_t rxdw0; + uint32_t rxdw1; +}; + struct _wpa_sta_info { int state; int gstate; @@ -1577,8 +1536,7 @@ struct _wpa_sta_info { int clientGkeyUpdate; LARGE_INTEGER clientMICReportReplayCounter; }; -*/ -/* rtw_xmit.h + struct pkt_attrib { uint8_t type; uint8_t subtype; @@ -1669,7 +1627,6 @@ struct submit_ctx { uint32_t timeout_ms; int status; }; -*/ /* // wrapper.h struct net_device @@ -1755,15 +1712,12 @@ struct submit_ctx { union iwreq_data u; }; */ -/* drv_types.h struct co_data_priv { uint8_t co_ch; uint8_t co_bw; uint8_t co_ch_offset; uint8_t rsvd; }; -*/ -/* hal_intf.h enum _HARDWARE_TYPE // : sint32_t { @@ -1805,8 +1759,7 @@ enum _HARDWARE_TYPE // : sint32_t HARDWARE_TYPE_RTL8188FS = 0x23, HARDWARE_TYPE_MAX = 0x24, }; -*/ -/* hal_phy.h + struct RF_Shadow_Compare_Map { uint32_t Value; uint8_t Compare; @@ -1815,8 +1768,7 @@ struct RF_Shadow_Compare_Map { uint8_t Driver_Write; }; typedef struct RF_Shadow_Compare_Map RF_SHADOW_T; -*/ -/* rtw_powerctrl.h + enum _PS_BBRegBackup_ // : sint32_t { PSBBREG_RF0 = 0x0, @@ -1825,8 +1777,9 @@ enum _PS_BBRegBackup_ // : sint32_t PSBBREG_AFE0 = 0x3, PSBBREG_TOTALCNT = 0x4, }; -*/ -/* hal_irqn.h + +/* + // hal_irqn.h enum _IRQn_Type_ // : sint32_t { NonMaskableInt_IRQn = 0xFFFFFFF2, @@ -1899,8 +1852,9 @@ enum _PS_BBRegBackup_ // : sint32_t uint32_t Priority; }; typedef struct _IRQ_HANDLE_ IRQ_HANDLE; -*/ -/* hal_soc_ps_monitor.h + */ +/* + // hal_soc_ps_monitor.h struct _power_state_ { uint8_t FuncIdx; @@ -1922,9 +1876,9 @@ enum _PS_BBRegBackup_ // : sint32_t BOOL SleepFlag; }; typedef struct _power_mgn_ Power_Mgn; -*/ - /* hal_gpio.h + /* + // hal_gpio.h enum $E1AD70AB12E7AA6E98B8D89D9B965EB5 //: sint32_t { _PORT_A = 0x0, @@ -1959,7 +1913,7 @@ enum _PS_BBRegBackup_ // : sint32_t }; typedef struct _HAL_GPIO_ADAPTER_ *PHAL_GPIO_ADAPTER; */ -/* hal_intf.h + struct hal_ops { uint32_t (*hal_power_on)(_adapter *); uint32_t (*hal_init)(_adapter *); @@ -2022,8 +1976,66 @@ struct hal_ops { uint8_t); uint8_t (*hal_get_tx_buff_rsvd_page_num)(_adapter *, bool); }; -*/ -/* HalVerDef.h + +struct _atr_aligned4_ _ADAPTER { + uint16_t HardwareType; + uint16_t interface_type; //+2 + uint32_t work_mode; + struct dvobj_priv *dvobj; //+8 + struct mlme_priv mlmepriv; //+12 [1244] + struct mlme_ext_priv mlmeextpriv; //+1256 [912] + struct cmd_priv cmdpriv; //+2168 + struct evt_priv evtpriv; //+ + struct io_priv iopriv; + struct xmit_priv xmitpriv; //+2248 + struct recv_priv recvpriv; //+2752 + struct sta_priv stapriv; //+3024 [164] + struct security_priv securitypriv; + struct registry_priv registrypriv; + struct pwrctrl_priv pwrctrlpriv; // pwrctrlpriv.bInternalAutoSuspend //+5061 + struct eeprom_priv eeprompriv; + PVOID HalData; + uint32_t hal_data_sz; + struct hal_ops HalFunc; + int32_t bDriverStopped; //+5880 + int32_t bSurpriseRemoved; //+5884 + int32_t bCardDisableWOHSM; //+5888 + uint8_t RxStop; //+5892 + uint32_t IsrContent; + uint32_t ImrContent; + uint8_t EepromAddressSize; + uint8_t hw_init_completed; //+5905 + uint8_t bDriverIsGoingToUnload; + uint8_t init_adpt_in_progress; + uint8_t bMpDriver; + uint8_t bForwardingDisabled; + struct task_struct isrThread; //+5888 + struct task_struct cmdThread; //+5920 + struct task_struct recvtasklet_thread; //+5952 + struct task_struct xmittasklet_thread; //+5984 + void (*intf_start)(_adapter *); //+6008 + void (*intf_stop)(_adapter *); //+6012 + _nic_hdl pnetdev; //+6016 + int bup; //+6020 + struct net_device_stats stats; + uint8_t net_closed; //+6052 + uint8_t bFWReady; + uint8_t bLinkInfoDump; + uint8_t bRxRSSIDisplay; + _adapter *pbuddy_adapter; //+6056 + _mutex *hw_init_mutex; //+6060 + uint8_t isprimary; //+6064 + uint8_t adapter_type; //+6065 + uint8_t iface_type; //+6056 + _mutex *ph2c_fwcmd_mutex; //+6068 + _mutex *psetch_mutex; //+6072 + _mutex *psetbw_mutex; //+6076 + struct co_data_priv *pcodatapriv; //+6080 + uint8_t fix_rate; //+6084 +}; // [6088] (!) +typedef struct _ADAPTER *PADAPTER; +// if sizeof(struct _ADAPTER) != 6088 #error "Check aligned struct!" ! + enum tag_HAL_IC_Type_Definition // : sint32_t { CHIP_8192S = 0x0, @@ -2092,8 +2104,7 @@ struct _atr_aligned4_ tag_HAL_VERSION { uint8_t ROMVer; }; typedef struct tag_HAL_VERSION HAL_VERSION; -*/ -/* hal_intf.h + enum _HW_VARIABLES //: sint32_t { HW_VAR_MEDIA_STATUS = 0x0, @@ -2178,15 +2189,13 @@ enum _HW_VARIABLES //: sint32_t HW_VAR_ASIX_IOT = 0x4F, HW_VAR_PROMISC = 0x50, }; -*/ -/* hal_phy.h + enum _BAND_TYPE // : sint32_t { BAND_ON_2_4G = 0x0, BAND_ON_5G = 0x1, BAND_ON_BOTH = 0x2, BANDMAX = 0x3, }; typedef enum _BAND_TYPE BAND_TYPE; -*/ -/* hal_com_phycfg.h + struct _BB_REGISTER_DEFINITION { uint32_t rfintfs; uint32_t rfintfo; @@ -2197,8 +2206,7 @@ struct _BB_REGISTER_DEFINITION { uint32_t rfLSSIReadBackPi; }; typedef struct _BB_REGISTER_DEFINITION BB_REGISTER_DEFINITION_T; -*/ -/* rtw_mlme.h + enum dot11AuthAlgrthmNum //: sint32_t { dot11AuthAlgrthm_Open = 0x0, @@ -2208,8 +2216,7 @@ enum dot11AuthAlgrthmNum //: sint32_t dot11AuthAlgrthm_WAPI = 0x4, dot11AuthAlgrthm_MaxNum = 0x5, }; -*/ -/* rtw_mlme_ext.h + enum _RT_CHANNEL_DOMAIN //: sint32_t { RT_CHANNEL_DOMAIN_FCC = 0x0, @@ -2276,8 +2283,7 @@ enum _RT_CHANNEL_DOMAIN //: sint32_t RT_CHANNEL_DOMAIN_MAX = 0x59, RT_CHANNEL_DOMAIN_REALTEK_DEFINE = 0x7F, }; -*/ -/* freertos_intfs.h + struct _driver_priv { int drv_registered; _mutex hw_init_mutex; @@ -2286,9 +2292,7 @@ struct _driver_priv { _mutex setbw_mutex; }; typedef struct _driver_priv drv_priv; -*/ -/* PhyDM_Adaptivity.h struct _ADAPTIVITY_STATISTICS { s1Byte TH_L2H_ini_mode2; s1Byte TH_EDCCA_HL_diff_mode2; @@ -2305,14 +2309,12 @@ struct _ADAPTIVITY_STATISTICS { u1Byte AdajustIGILevel; }; typedef struct _ADAPTIVITY_STATISTICS ADAPTIVITY_STATISTICS; -*/ -/* phydm_NoiseMonitor.h + struct _ODM_NOISE_MONITOR_ { s1Byte noise[1]; s2Byte noise_all; }; typedef struct _ODM_NOISE_MONITOR_ ODM_NOISE_MONITOR; -*/ /* in rtl_bios_data.h struct _FALSE_ALARM_STATISTICS { u4Byte Cnt_Parity_Fail; @@ -2333,13 +2335,13 @@ struct _FALSE_ALARM_STATISTICS { }; typedef struct _FALSE_ALARM_STATISTICS FALSE_ALARM_STATISTICS; */ -/* phydm.h + enum _BASEBAND_CONFIG_PHY_REG_PG_VALUE_TYPE //: sint32_t { PHY_REG_PG_RELATIVE_VALUE = 0x0, PHY_REG_PG_EXACT_VALUE = 0x1, }; typedef enum _BASEBAND_CONFIG_PHY_REG_PG_VALUE_TYPE PHY_REG_PG_TYPE; -*/ + /* in rtl_bios_data.h struct _atr_aligned4_ _CFO_TRACKING_ { BOOLEAN bATCStatus; @@ -2368,13 +2370,11 @@ struct _atr_aligned8_ _ROM_INFO { }; typedef struct _ROM_INFO ROM_INFO; */ -/* ROM_RTL8195A_PHYDM.h + typedef struct _ROM_INFO *PROM_INFO; -*/ -/* phydm_types.h + typedef struct sta_info *PSTA_INFO_T; -*/ -/* phydm.h + struct _ODM_Phy_Dbg_Info_ { s1Byte RxSNRdB[4]; u4Byte NumQryPhyStatus; @@ -2717,73 +2717,7 @@ struct _atr_aligned8_ ODM_RF_Calibration_Structure { u4Byte DpkThermal[4]; }; typedef struct ODM_RF_Calibration_Structure ODM_RF_CAL_T; -*/ -/* drv_types.h -#include "ieee80211.h" -#include "rtw_cmd.h" -struct _atr_aligned4_ _ADAPTER { - uint16_t HardwareType; - uint16_t interface_type; //+2 - uint32_t work_mode; - struct dvobj_priv *dvobj; //+8 - struct mlme_priv mlmepriv; //+12 [1244] - struct mlme_ext_priv mlmeextpriv; //+1256 [912] - struct cmd_priv cmdpriv; //+2168 - struct evt_priv evtpriv; //+ - struct io_priv iopriv; - struct xmit_priv xmitpriv; //+2248 - struct recv_priv recvpriv; //+2752 - struct sta_priv stapriv; //+3024 [164] - struct security_priv securitypriv; - struct registry_priv registrypriv; - struct pwrctrl_priv pwrctrlpriv; // pwrctrlpriv.bInternalAutoSuspend //+5061 - struct eeprom_priv eeprompriv; - PVOID HalData; - uint32_t hal_data_sz; - struct hal_ops HalFunc; - int32_t bDriverStopped; //+5880 - int32_t bSurpriseRemoved; //+5884 - int32_t bCardDisableWOHSM; //+5888 - uint8_t RxStop; //+5892 - uint32_t IsrContent; - uint32_t ImrContent; - uint8_t EepromAddressSize; - uint8_t hw_init_completed; //+5905 - uint8_t bDriverIsGoingToUnload; - uint8_t init_adpt_in_progress; - uint8_t bMpDriver; - uint8_t bForwardingDisabled; - struct task_struct isrThread; //+5888 - struct task_struct cmdThread; //+5920 - struct task_struct recvtasklet_thread; //+5952 - struct task_struct xmittasklet_thread; //+5984 - void (*intf_start)(_adapter *); //+6008 - void (*intf_stop)(_adapter *); //+6012 - _nic_hdl pnetdev; //+6016 - int bup; //+6020 - struct net_device_stats stats; - uint8_t net_closed; //+6052 - uint8_t bFWReady; - uint8_t bLinkInfoDump; - uint8_t bRxRSSIDisplay; - _adapter *pbuddy_adapter; //+6056 - _mutex *hw_init_mutex; //+6060 - uint8_t isprimary; //+6064 - uint8_t adapter_type; //+6065 - uint8_t iface_type; //+6056 - _mutex *ph2c_fwcmd_mutex; //+6068 - _mutex *psetch_mutex; //+6072 - _mutex *psetbw_mutex; //+6076 - struct co_data_priv *pcodatapriv; //+6080 - uint8_t fix_rate; //+6084 -}; // [6088] (!) -typedef struct _ADAPTER *PADAPTER; -// if sizeof(struct _ADAPTER) != 6088 #error "Check aligned struct!" ! - -*/ - -/* phydm.h struct _atr_aligned8_ DM_Out_Source_Dynamic_Mechanism_Structure { PADAPTER Adapter; BOOLEAN odm_ready; @@ -2953,8 +2887,7 @@ struct _atr_aligned8_ DM_Out_Source_Dynamic_Mechanism_Structure { }; typedef struct DM_Out_Source_Dynamic_Mechanism_Structure DM_ODM_T; typedef struct DM_Out_Source_Dynamic_Mechanism_Structure *PDM_ODM_T; -*/ -/* halphy + enum _PWRTRACK_CONTROL_METHOD //: sint32_t { BBSWING = 0x0, TXAGC = 0x1, MIX_MODE = 0x2, @@ -3006,9 +2939,7 @@ struct _H2CParam_RsvdPage_ { }; typedef struct _H2CParam_RsvdPage_ H2CParam_RsvdPage; typedef struct _H2CParam_RsvdPage_ *PH2CParam_RsvdPage; -*/ -/* wlan_bssdef.h struct _NDIS_802_11_VARIABLE_IEs { uint8_t ElementID; uint8_t Length; @@ -3046,7 +2977,6 @@ enum _NDIS_802_11_WEP_STATUS //: sint32_t Ndis802_11_EncrypteionWAPI = 0x8, }; typedef enum _NDIS_802_11_WEP_STATUS NDIS_802_11_WEP_STATUS; -*/ struct __attribute__((packed)) __attribute__((aligned(1))) rtk_sc { u8 pattern_type; @@ -3093,7 +3023,7 @@ struct pattern_ops { sc_decode_profile_call_back decode_profile; sc_get_tlv_info_call_back get_tlv_info; }; -/* halpower + struct _atr_aligned2_ _WL_PWR_CFG_ { // __attribute__((packed))!? uint16_t offset; uint8_t cut_msk; @@ -3105,21 +3035,17 @@ struct _atr_aligned2_ _WL_PWR_CFG_ { // __attribute__((packed))!? uint8_t value; }; typedef struct _WL_PWR_CFG_ WLAN_PWR_CFG; -*/ -/* rtw_mlme.h struct cmd_hdl { uint32_t parmsize; uint8_t (*h2cfuns)(struct _ADAPTER *, uint8_t *); }; -*/ -/* rtw_cmd.h + struct _cmd_callback { uint32_t cmd_code; void (*callback)(_adapter *, struct cmd_obj *); }; -*/ -/* phydm.h + enum _ODM_Common_Info_Definition //: sint32_t { ODM_CMNINFO_PLATFORM = 0x0, @@ -3225,15 +3151,13 @@ enum _ODM_Support_Ability_Definition // : sint32_t ODM_RF_RX_GAIN_TRACK = 0x2000000, ODM_RF_CALIBRATION = 0x4000000, }; -*/ -/* hal_phy.h + enum _RF_PATH //: sint32_t { RF_PATH_A = 0x0, RF_PATH_B = 0x1, RF_PATH_C = 0x2, RF_PATH_D = 0x3, }; typedef enum _RF_PATH RF_PATH; -*/ -/* rtw_cmd.h + enum _EXTCHNL_OFFSET //: sint32_t { EXTCHNL_OFFSET_NO_EXT = 0x0, @@ -3332,8 +3256,7 @@ enum MGN_RATE //: sint32_t MGN_VHT4SS_MCS9 = 0xC7, MGN_UNKNOWN = 0xC8, }; -*/ -/* rtw_mlme.h rtw_mlme_ext.h + struct _RT_CHANNEL_PLAN_2G { uint8_t Channel[14]; uint8_t Len; @@ -3353,14 +3276,12 @@ struct mlme_handler { uint32_t num; uint32_t (*func)(_adapter *, struct recv_frame *); }; -*/ -/* rtw_event.h + struct fwevent { uint32_t parmsize; void (*event_callback)(_adapter *, uint8_t *); }; -*/ -/* rtw_recv.h + struct recv_buf { _list list; PADAPTER adapter; @@ -3381,8 +3302,7 @@ struct recv_reorder_ctrl { _queue pending_recvframe_queue; _timer reordering_ctrl_timer; }; -*/ -/* phydm.h + enum _ODM_RF_RADIO_PATH // : sint32_t { ODM_RF_PATH_A = 0x0, @@ -3483,8 +3403,7 @@ enum _ODM_FW_Config_Type //: sint32_t CONFIG_FW_BT = 0x7, }; typedef enum _ODM_FW_Config_Type ODM_FW_Config_Type; -*/ -/* hal_com_phycfg.h + enum _RATE_SECTION //: sint32_t { CCK = 0x0, @@ -3499,8 +3418,12 @@ enum _RATE_SECTION //: sint32_t VHT_4SSMCS0_4SSMCS9 = 0x9, }; typedef enum _RATE_SECTION RATE_SECTION; -*/ -/* hal_pg.h + +struct map_mask_s { + uint16_t mask_start; + uint16_t mask_end; +}; + struct _TxPowerInfo24G { uint8_t IndexCCK_Base[1][6]; uint8_t IndexBW40_Base[1][6]; @@ -3509,69 +3432,6 @@ struct _TxPowerInfo24G { }; typedef struct _TxPowerInfo24G TxPowerInfo24G; typedef struct _TxPowerInfo24G *PTxPowerInfo24G; -*/ -/* wifi_constants.h -enum rtw_bss_type_t // __int32 -{ - RTW_BSS_TYPE_INFRASTRUCTURE = 0x0, - RTW_BSS_TYPE_ADHOC = 0x1, - RTW_BSS_TYPE_ANY = 0x2, - RTW_BSS_TYPE_UNKNOWN = 0xFFFFFFFF, -}; - -enum rtw_security_t // __int32 -{ - RTW_SECURITY_OPEN = 0x0, - RTW_SECURITY_WEP_PSK = 0x1, - RTW_SECURITY_WEP_SHARED = 0x8001, - RTW_SECURITY_WPA_TKIP_PSK = 0x200002, - RTW_SECURITY_WPA_AES_PSK = 0x200004, - RTW_SECURITY_WPA2_AES_PSK = 0x400004, - RTW_SECURITY_WPA2_TKIP_PSK = 0x400002, - RTW_SECURITY_WPA2_MIXED_PSK = 0x400006, - RTW_SECURITY_WPA_WPA2_MIXED = 0x600000, - RTW_SECURITY_WPS_OPEN = 0x10000000, - RTW_SECURITY_WPS_SECURE = 0x10000004, - RTW_SECURITY_UNKNOWN = 0xFFFFFFFF, - RTW_SECURITY_FORCE_32_BIT = 0x7FFFFFFF, -}; - -enum rtw_802_11_band_t // __int32 -{ - RTW_802_11_BAND_5GHZ = 0x0, - RTW_802_11_BAND_2_4GHZ = 0x1, -}; - -*/ -/* wifi_structures.h -struct rtw_ssid -{ - unsigned int8_t len; - unsigned int8_t val[33]; -}; - -typedef rtw_ssid rtw_ssid_t; - -struct rtw_mac -{ - unsigned int8_t octet[6]; -}; - -typedef rtw_mac rtw_mac_t; - -struct rtw_scan_result -{ - rtw_ssid_t SSID; - rtw_mac_t BSSID; - sint16_t signal_strength; - enum rtw_bss_type_t bss_type; - enum rtw_security_t security; - enum rtw_wps_type_t wps_type; - unsigned int channel; - enum rtw_802_11_band_t band; -}; - -*/ #endif // _WLAN_LIB_H diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_structures.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_structures.h index fb2d019..06e5a1e 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_structures.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wifi_structures.h @@ -31,7 +31,7 @@ extern "C" { #endif #if defined(__IAR_SYSTEMS_ICC__) -//#pragma pack(1) +#pragma pack(1) #endif /** @@ -86,7 +86,7 @@ typedef struct rtw_network_info { int key_id; }rtw_network_info_t; -#if defined(__IAR_SYSTEMS_ICC__)// || defined(__GNUC__) +#if defined(__IAR_SYSTEMS_ICC__) || defined(__GNUC__) #pragma pack(1) #endif @@ -96,14 +96,14 @@ typedef struct rtw_network_info { typedef struct rtw_scan_result { rtw_ssid_t SSID; /**< Service Set Identification (i.e. Name of Access Point) */ rtw_mac_t BSSID; /**< Basic Service Set Identification (i.e. MAC address of Access Point) */ - signed short signal_strength; /**< Receive Signal Strength Indication in dBm. <-90=Very poor, >-30=Excellent */ + signed short signal_strength; /**< Receive Signal Strength Indication in dBm. <-90=Very poor, >-30=Excellent */ rtw_bss_type_t bss_type; /**< Network type */ rtw_security_t security; /**< Security type */ rtw_wps_type_t wps_type; /**< WPS type */ - unsigned int channel; /**< Radio channel that the AP beacon was received on */ + unsigned int channel; /**< Radio channel that the AP beacon was received on */ rtw_802_11_band_t band; /**< Radio band */ } rtw_scan_result_t; -#if defined(__IAR_SYSTEMS_ICC__) //|| defined(__GNUC__) +#if defined(__IAR_SYSTEMS_ICC__) || defined(__GNUC__) #pragma pack() #endif @@ -117,7 +117,7 @@ typedef struct rtw_scan_handler_result { } rtw_scan_handler_result_t; -#if defined(__IAR_SYSTEMS_ICC__) //|| defined(__GNUC__) +#if defined(__IAR_SYSTEMS_ICC__) || defined(__GNUC__) #pragma pack(1) #endif @@ -125,14 +125,14 @@ typedef struct rtw_scan_handler_result { * @brief The structure is used to store the WIFI setting gotten from WIFI driver. */ typedef struct rtw_wifi_setting { - rtw_mode_t mode; + rtw_mode_t mode; unsigned char ssid[33]; unsigned char channel; rtw_security_t security_type; unsigned char password[65]; unsigned char key_idx; }rtw_wifi_setting_t; -#if defined(__IAR_SYSTEMS_ICC__) //|| defined(__GNUC__) +#if defined(__IAR_SYSTEMS_ICC__) || defined(__GNUC__) #pragma pack() #endif @@ -167,7 +167,7 @@ typedef struct { unsigned int version; /**< version field */ unsigned int length; /**< byte length of data in this record, */ /* starting at version and including IEs */ - rtw_mac_t BSSID; + rtw_mac_t BSSID; unsigned short beacon_period; /**< units are Kusec */ unsigned short capability; /**< Capability information */ unsigned char SSID_len; diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wlan_lib.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wlan_lib.h index caef2ee..0c5936b 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wlan_lib.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/include/wlan_lib.h @@ -14,7 +14,6 @@ extern "C" { #include "wireless.h" #include "wifi_lib.h" -#include "freertos/freertos_xmit.h" // rom_rtw_message.o //-------------------------------- @@ -45,7 +44,7 @@ extern void rtw_indicate_sta_assoc(uint64_t padapter, uint64_t buf); extern void rtw_indicate_sta_disassoc(_adapter *padapter, uint8_t *addr); extern void rtw_indicate_wx_assoc_event(uint64_t padapter, uint64_t a2); extern void rtw_indicate_wx_disassoc_event(uint64_t padapter, uint64_t a2); -// extern int rtw_set_wpa_ie(_adapter *padapter, char *pie, int ielen); +extern int rtw_set_wpa_ie(_adapter *padapter, char *pie, int ielen); extern void strtopsk(uint8_t *des, uint8_t *src, int len); extern int rtw_wx_get_passphrase(struct net_device *dev, struct iw_request_info *a, union iwreq_data *wrqu, char *extra); extern int rtw_wx_set_ap_essid(struct net_device *dev, struct iw_request_info *a, union iwreq_data *wrqu, char *extra); @@ -58,7 +57,7 @@ extern int rtw_set_sta_num(int ap_sta_num); extern int rtw_del_sta(struct net_device *dev, u8 *sta_addr); extern int rtw_ex_get_drv_ability(struct net_device *dev, struct iw_request_info *info, struct iw_point *wrqu, char *extra); extern int rtw_ex_get(struct net_device *dev, struct iw_request_info *info, union iwreq_data *wdata, char *extra); -//extern void *rtw_ioctl(struct net_device *dev, struct iwreq *rq, int cmd); +extern void *rtw_ioctl(struct net_device *dev, struct iwreq *rq, int cmd); // Data declarations extern u8 g_user_ap_sta_num; // = 5u; extern const struct iw_priv_args rtw_private_args[26]; /* = @@ -122,21 +121,21 @@ extern void rtw_reset_securitypriv(_adapter *adapter); extern void rtw_os_indicate_disconnect(_adapter *adapter); extern int rtw_init_netdev_name(struct net_device *pnetdev, const char *ifname); extern struct net_device *rtw_init_netdev(_adapter *old_padapter); -//extern int rtw_init_io_priv(_adapter *padapter, void (*set_intf_ops)(struct _io_ops *)); -//extern _adapter *rtw_drv_if2_init(_adapter *primary_padapter, char *name, void (*set_intf_ops)(struct _io_ops *)); +extern int rtw_init_io_priv(_adapter *padapter, void (*set_intf_ops)(struct _io_ops *)); +extern _adapter *rtw_drv_if2_init(_adapter *primary_padapter, char *name, void (*set_intf_ops)(struct _io_ops *)); extern void rtw_drv_if2_stop(_adapter *if2); extern void rtw_drv_if2_free(_adapter *primary_padapter); extern init_done_ptr netdev_open(struct net_device *pnetdev); extern int netdev_if2_open(struct net_device *pnetdev); extern int netdev_if2_open(struct net_device *pnetdev); extern init_done_ptr netdev_open(struct net_device *pnetdev); -//extern struct net_device *rtw_drv_probe(struct net_device *parent_dev, uint32_t mode); +extern struct net_device *rtw_drv_probe(struct net_device *parent_dev, uint32_t mode); extern int rtw_dev_remove(struct net_device *pnetdev); extern void rtw_drv_entry(); extern void rtw_drv_halt(); // Data declarations extern init_done_ptr p_wlan_init_done_callback; -extern uint8_t rtw_power_percentage_idx; // rtw_tx_pwr_percentage_t +extern uint8_t rtw_power_percentage_idx; extern init_done_ptr p_wlan_uart_adapter_callback; extern uint8_t rtw_adaptivity_en; extern uint8_t rtw_adaptivity_mode; @@ -144,16 +143,16 @@ extern int8_t rtw_adaptivity_th_l2h_ini; extern drv_priv drvpriv; //-------------------------------- // hal_com.o -//extern void dump_chip_info(int a1, int a2, int a3, int a4, HAL_VERSION ChipVersion); -//extern int hal_com_get_channel_plan(_adapter *padapter, uint8_t hw_channel_plan, int sw_channel_plan, int def_channel_plan, BOOLEAN AutoLoadFail); -//extern int HAL_IsLegalChannel(_adapter *Adapter, uint32_t Channel); -//extern int MRateToHwRate(uint8_t rate); +extern void dump_chip_info(int a1, int a2, int a3, int a4, HAL_VERSION ChipVersion); +extern int hal_com_get_channel_plan(_adapter *padapter, uint8_t hw_channel_plan, int sw_channel_plan, int def_channel_plan, BOOLEAN AutoLoadFail); +extern int HAL_IsLegalChannel(_adapter *Adapter, uint32_t Channel); +extern int MRateToHwRate(uint8_t rate); extern signed int HwRateToMRate(uint8_t rate); extern void HalSetBrateCfg(_adapter *Adapter, uint8_t *mBratesOS, uint16_t *pBrateCfg); -//extern signed int Hal_MappingOutPipe(_adapter *pAdapter, uint8_t NumOutPipe); +extern signed int Hal_MappingOutPipe(_adapter *pAdapter, uint8_t NumOutPipe); extern void hal_init_macaddr(_adapter *adapter); extern void hw_var_port_switch(_adapter *adapter); -//extern void SetHwReg(PADAPTER padapter, int variable, uint8_t *val); +extern void SetHwReg(PADAPTER padapter, int variable, uint8_t *val); extern signed int eqNByte(uint8_t *str1, uint8_t *str2, uint32_t num); extern signed int GetU1ByteIntegerFromStringInDecimal(char *Str, uint8_t *pInt); extern void switch_power_saving_mode(_adapter *padapter, int benable); @@ -164,22 +163,18 @@ extern u8 CSWTCH_17[19]; //-------------------------------- // HalHWImg8195A_MAC.o // Function declarations -extern void ODM_ReadAndConfig_MP_8195A_MAC_REG(PDM_ODM_T pDM_Odm); -/* -extern signed int ODM_GetVersion_MP_8195A_MAC_REG(void); // return 26; -*/ +extern void ODM_ReadAndConfig_MP_8195A_MAC_REG(PDM_ODM_T pDM_Odm); +extern signed int ODM_GetVersion_MP_8195A_MAC_REG(); // return 26; // Data declarations extern u32 Array_MP_8195A_MAC_REG[194]; //-------------------------------- // HalHWImg8195A_RF.o // Function declarations extern signed int CheckPositive(PDM_ODM_T pDM_Odm, const u4Byte Condition1, const u4Byte Condition2, const u4Byte Condition3, const u4Byte Condition4); -extern void ODM_ReadAndConfig_MP_8195A_RadioA(PDM_ODM_T pDM_Odm); -/* +extern void ODM_ReadAndConfig_MP_8195A_RadioA(PDM_ODM_T pDM_Odm); extern signed int ODM_GetVersion_MP_8195A_RadioA(); extern void ODM_ReadAndConfig_MP_8195A_RADIO_DIFF(PDM_ODM_T pDM_Odm, u4Byte *Array, u4Byte ArrayLen, u4Byte a4); extern signed int ODM_GetVersion_MP_8195A_RADIO_DIFF(); -*/ extern void ODM_ReadAndConfig_MP_8195A_TxPowerTrack_QFN48(PDM_ODM_T pDM_Odm); extern void ODM_ReadAndConfig_MP_8195A_TxPowerTrack_QFN56(PDM_ODM_T pDM_Odm); extern void ODM_ReadAndConfig_MP_8195A_TxPowerTrack_TFBGA96(PDM_ODM_T pDM_Odm); @@ -205,11 +200,8 @@ extern void GetDeltaSwingTable_8195A(PDM_ODM_T pDM_Odm, ps1Byte *TemperatureUP_A extern void GetDeltaSwingXtalTable_8195A(PDM_ODM_T pDM_Odm, ps1Byte *TemperatureUP_Xtal, ps1Byte *TemperatureDOWN_Xtal); extern void ODM_TxXtalTrackSetXtal_8195A(PDM_ODM_T pDM_Odm); extern void setIqkMatrix_8195A(PDM_ODM_T pDM_Odm, int OFDM_index, int RFPath, s4Byte IqkResult_X, s4Byte IqkResult_Y); -extern void Hal_MPT_CCKTxPowerAdjust(PADAPTER Adapter); -/* +extern void Hal_MPT_CCKTxPowerAdjust(PADAPTER Adapter); extern void ODM_TxPwrTrackSetPwr_8195A(PDM_ODM_T pDM_Odm, PWRTRACK_METHOD Method, int RFPath, u8 ChannelMappedIndex); -extern void PHY_IQCalibrate_8195A(PADAPTER pAdapter, int bReCovery, int bRestore); -*/ extern void ConfigureTxpowerTrack_8195A(PTXPWRTRACK_CFG pConfig); extern int phy_PathA_IQK_8195A(PADAPTER pAdapter, BOOLEAN configPathB); extern signed int phy_PathA_RxIQK8195A(PADAPTER pAdapter, BOOLEAN configPathB); @@ -230,6 +222,7 @@ extern signed int phy_SimularityCompare_8195A(PADAPTER pAdapter, s4Byte (*result extern void phy_IQCalibrate_8195A(PADAPTER pAdapter, s4Byte (*result)[8], int t, int is2T); extern void phy_LCCalibrate_8195A(PDM_ODM_T pDM_Odm, BOOLEAN is2T); extern void PHY_LCCalibrate_8195A(PDM_ODM_T pDM_Odm); +extern void PHY_IQCalibrate_8195A(PADAPTER pAdapter, int bReCovery, int bRestore); extern void DoIQK_8195A(PDM_ODM_T pDM_Odm, u8 DeltaThermalIndex, u8 ThermalValue, u8 Threshold); extern void phy_SetRFPathSwitch_8195A(PADAPTER pAdapter, int bMain, BOOLEAN is2T); extern void PHY_SetRFPathSwitch_8195A(PADAPTER pAdapter, int bMain); @@ -284,16 +277,14 @@ extern int max_timer_used_num; //-------------------------------- // rtl8195a_cmd.o // Function declarations -/* extern int32_t FillH2CCmd8195A(PADAPTER padapter, int ElementID, uint64_t CmdLen); +extern void rtl8195a_set_FwRsvdPage_cmd(PADAPTER padapter, PH2CParam_RsvdPage pRsvdPage); extern void rtl8195a_set_FwMediaStatusRpt_cmd(PADAPTER padapter, int mstatus, int macid); extern void rtl8195a_set_FwMacIdConfig_cmd(_adapter *padapter, int mac_id, int raid, int bw, uint8_t sgi, uint32_t mask); extern void rtl8195a_set_FwPwrMode_cmd(PADAPTER padapter, int psmode); extern void rtl8195a_download_rsvd_page(PADAPTER padapter, int mstatus); extern void rtl8195a_set_FwJoinBssRpt_cmd(PADAPTER padapter, int mstatus); extern void rtl8195a_Add_RateATid(PADAPTER pAdapter, uint32_t bitmap, uint8_t *arg_ary, int rssi_level); -*/ -extern void rtl8195a_set_FwRsvdPage_cmd(PADAPTER padapter, PH2CParam_RsvdPage pRsvdPage); extern PADAPTER rtl8195a_set_BcnIgnoreEDCCA_cmd(PADAPTER result, int enable, int a3); //-------------------------------- // rtl8195a_rf6052.o @@ -304,72 +295,59 @@ extern int PHY_RF6052_Config8195A(PADAPTER Adapter); //-------------------------------- // rtw_efuse.o // Function declarations -/* rtw_efuse.h extern void Efuse_PowerSwitch(PADAPTER pAdapter, uint8_t bWrite, uint8_t PwrState); extern int Efuse_GetCurrentSize(PADAPTER pAdapter, uint8_t efuseType, BOOLEAN bPseudoTest); extern int Efuse_CalculateWordCnts(uint8_t word_en); extern void EFUSE_GetEfuseDefinition(PADAPTER pAdapter, int efuseType, uint8_t type, void *pOut, BOOLEAN bPseudoTest); extern int efuse_OneByteRead(PADAPTER pAdapter, int addr, uint8_t *data, int bPseudoTest); +extern int efuse_read8(PADAPTER padapter, int address, uint8_t *value); extern int efuse_OneByteWrite(PADAPTER pAdapter, int addr, int data, int bPseudoTest); +extern int efuse_write8(PADAPTER padapter, int address, uint8_t *value); extern int Efuse_PgPacketWrite(PADAPTER pAdapter, int offset, int word_en, uint8_t *data, BOOLEAN bPseudoTest); +extern void efuse_WordEnableDataRead(uint8_t word_en, uint8_t *sourdata, uint8_t *targetdata); extern int Efuse_WordEnableDataWrite(PADAPTER pAdapter, int efuse_addr, uint8_t word_en, uint8_t *data, BOOLEAN bPseudoTest); extern int rtw_efuse_access(PADAPTER padapter, int bWrite, int start_addr, int cnts, uint8_t *data); extern signed int efuse_GetCurrentSize(PADAPTER padapter, uint16_t *size); extern signed int rtw_efuse_map_read(PADAPTER padapter, int addr, int cnts, uint8_t *data); extern signed int rtw_efuse_map_write(PADAPTER padapter, int addr, int cnts, uint8_t *data); +extern void Efuse_ReadAllMap(PADAPTER pAdapter, int efuseType, uint8_t *Efuse, BOOLEAN bPseudoTest); extern void EFUSE_ShadowRead(PADAPTER pAdapter, int Type, int Offset, uint32_t *Value); extern void EFUSE_ShadowMapUpdate(PADAPTER pAdapter, int efuseType, BOOLEAN bPseudoTest, int a4); -*/ -extern void efuse_WordEnableDataRead(uint8_t word_en, uint8_t *sourdata, uint8_t *targetdata); -extern void Efuse_ReadAllMap(PADAPTER pAdapter, int efuseType, uint8_t *Efuse, BOOLEAN bPseudoTest); -extern int efuse_write8(PADAPTER padapter, int address, uint8_t *value); -extern int efuse_read8(PADAPTER padapter, int address, uint8_t *value); //-------------------------------- // rtw_ieee80211.o // Function declarations -/* ieee80211.h extern void rtw_macaddr_cfg(uint8_t *mac_addr, int a2); -extern void rtw_get_bcn_info(struct wlan_network *pnetwork); -*/ extern int rtw_get_cipher_info(struct wlan_network *pnetwork); +extern void rtw_get_bcn_info(struct wlan_network *pnetwork); //-------------------------------- // rtw_wlan_util.o // Function declarations -/* rtw_mlme_ext.h -extern int get_beacon_interval(WLAN_BSSID_EX *bss, int a2, int a3); -extern int is_client_associated_to_ap(int result); -extern BOOL is_client_associated_to_ibss(_adapter *padapter); -extern void write_cam(_adapter *padapter, uint8_t entry, int ctrl, uint8_t *mac, uint8_t *key); -extern void VCS_update(_adapter *padapter, struct sta_info *psta); -extern int rtw_check_bcn_info(_adapter *Adapter, uint8_t *pframe, uint32_t packet_len); -extern void update_beacon_info(_adapter *padapter, uint8_t *pframe, unsigned int pkt_len, struct sta_info *psta); -extern signed int is_ap_in_tkip(_adapter *padapter); -extern int update_basic_rate(u8 *ptn, unsigned int ptn_sz); -extern int update_supported_rate(u8 *ptn, unsigned int ptn_sz); -extern int update_MCS_rate(struct HT_caps_element *pHT_caps); -extern int get_highest_rate_idx(uint32_t mask); -extern void Update_RA_Entry(_adapter *padapter, struct sta_info *psta); -extern void set_sta_rate(_adapter *padapter, struct sta_info *psta); -extern void update_tx_basic_rate(_adapter *padapter, int wirelessmode); -extern signed int check_assoc_AP(uint8_t *pframe, unsigned int len); - -extern void update_capinfo(PADAPTER Adapter, uint16_t updateCap); -extern void update_wireless_mode(_adapter *padapter, uint32_t a2, int a3); -extern void update_bmc_sta_support_rate(_adapter *padapter, uint32_t mac_id); -extern void Switch_DM_Func(_adapter *padapter, uint32_t mode, int enable); +extern int cckrates_included(u8 *rate, int ratelen); +extern int cckratesonly_included(u8 *rate, int ratelen); +extern signed int networktype_to_raid_ex(PADAPTER padapter, int network_type); extern signed int judge_network_type(_adapter *padapter, u8 *rate, int ratelen); +extern int ratetbl_val_2wifirate(u8 rate); +extern int is_basicrate(_adapter *padapter, int rate); +extern int ratetbl2rateset(_adapter *padapter, u8 *rateset); extern void get_rate_set(_adapter *padapter, u8 *pbssrate, int *bssrate_len, int a4); extern void UpdateBrateTbl(PADAPTER Adapter, uint8_t *mBratesOS); extern void UpdateBrateTblForSoftAP(uint8_t *bssrateset, uint32_t bssratelen); extern void Save_DM_Func_Flag(_adapter *padapter, int a2, int a3); +extern void Restore_DM_Func_Flag(_adapter *padapter); +extern void Switch_DM_Func(_adapter *padapter, uint32_t mode, int enable); extern void Set_MSR(_adapter *padapter, uint8_t type); extern int set_opmode(_adapter *padapter, NDIS_802_11_NETWORK_INFRASTRUCTURE networktype); extern void SelectChannel(_adapter *padapter, int channel); extern void SetBWMode(_adapter *padapter, int bwmode, int channel_offset); extern void set_channel_bwmode(_adapter *padapter, int channel, int channel_offset, int bwmode); -*/ -extern int wifirate2_ratetbl_inx(u8 rate); -extern int support_short_GI(_adapter *padapter, struct HT_caps_element *pHT_caps); +extern uint8_t *get_my_bssid(WLAN_BSSID_EX *pnetwork); +extern int get_beacon_interval(WLAN_BSSID_EX *bss, int a2, int a3); +extern int is_client_associated_to_ap(int result); +extern BOOL is_client_associated_to_ibss(_adapter *padapter); +extern int is_IBSS_empty(_adapter *padapter); +extern unsigned int decide_wait_for_beacon_timeout(unsigned int bcn_interval); +extern void invalidate_cam_all(_adapter *padapter); +extern void write_cam(_adapter *padapter, uint8_t entry, int ctrl, uint8_t *mac, uint8_t *key); extern void clear_cam_entry(_adapter *padapter, uint8_t entry); extern void flush_all_cam_entry(_adapter *padapter); extern int WMM_param_handler(_adapter *padapter, PNDIS_802_11_VARIABLE_IEs pIE); @@ -378,19 +356,25 @@ extern void HT_caps_handler(_adapter *padapter, PNDIS_802_11_VARIABLE_IEs pIE); extern void HT_info_handler(_adapter *padapter, PNDIS_802_11_VARIABLE_IEs pIE); extern void HTOnAssocRsp(_adapter *padapter); extern void ERP_IE_handler(_adapter *padapter, PNDIS_802_11_VARIABLE_IEs pIE); -extern int is_IBSS_empty(_adapter *padapter); -extern unsigned int decide_wait_for_beacon_timeout(unsigned int bcn_interval); -extern void invalidate_cam_all(_adapter *padapter); +extern void VCS_update(_adapter *padapter, struct sta_info *psta); +extern int rtw_check_bcn_info(_adapter *Adapter, uint8_t *pframe, uint32_t packet_len); +extern void update_beacon_info(_adapter *padapter, uint8_t *pframe, unsigned int pkt_len, struct sta_info *psta); +extern signed int is_ap_in_tkip(_adapter *padapter); +extern int wifirate2_ratetbl_inx(u8 rate); +extern int update_basic_rate(u8 *ptn, unsigned int ptn_sz); +extern int update_supported_rate(u8 *ptn, unsigned int ptn_sz); +extern int update_MCS_rate(struct HT_caps_element *pHT_caps); +extern int support_short_GI(_adapter *padapter, struct HT_caps_element *pHT_caps); +extern int get_highest_rate_idx(uint32_t mask); +extern void Update_RA_Entry(_adapter *padapter, struct sta_info *psta); extern void enable_rate_adaptive(_adapter *padapter, struct sta_info *psta); +extern void set_sta_rate(_adapter *padapter, struct sta_info *psta); +extern void update_tx_basic_rate(_adapter *padapter, int wirelessmode); +extern signed int check_assoc_AP(uint8_t *pframe, unsigned int len); extern void update_IOT_info(_adapter *padapter); -extern int cckrates_included(u8 *rate, int ratelen); -extern int cckratesonly_included(u8 *rate, int ratelen); -extern signed int networktype_to_raid_ex(PADAPTER padapter, int network_type); -extern int ratetbl_val_2wifirate(u8 rate); -extern int is_basicrate(_adapter *padapter, int rate); -extern int ratetbl2rateset(_adapter *padapter, u8 *rateset); -extern void Restore_DM_Func_Flag(_adapter *padapter); -extern uint8_t *get_my_bssid(WLAN_BSSID_EX *pnetwork); +extern void update_capinfo(PADAPTER Adapter, uint16_t updateCap); +extern void update_wireless_mode(_adapter *padapter, uint32_t a2, int a3); +extern void update_bmc_sta_support_rate(_adapter *padapter, uint32_t mac_id); extern void update_TSF(struct mlme_ext_priv *pmlmeext, uint8_t *pframe, unsigned int len); extern void correct_TSF(_adapter *padapter, struct mlme_ext_priv *pmlmeext); // Data declarations @@ -543,15 +527,14 @@ extern _sema *pExportWlanIrqSemaphore; // freertos_recv.o // Function declarations extern int rtw_os_recv_resource_init(struct recv_priv *precvpriv, _adapter *padapter); +extern int rtw_os_recv_resource_alloc(_adapter *padapter, struct recv_frame *precvframe); extern int rtw_os_recvbuf_resource_alloc(_adapter *padapter, struct recv_buf *precvbuf); extern int rtw_os_recvbuf_resource_free(_adapter *padapter, struct recv_buf *precvbuf); extern int rtw_tkip_countermeasure(_adapter *padapter); -extern void rtw_init_recv_timer(struct recv_reorder_ctrl *preorder_ctrl); -/* -extern int rtw_os_recv_resource_alloc(_adapter *padapter, union recv_frame *precvframe); extern void rtw_handle_tkip_mic_err(_adapter *padapter, int bgroup); -extern int rtw_recv_indicatepkt(_adapter *padapter, union recv_frame *precv_frame); -*/ +extern int rtw_recv_indicatepkt(_adapter *padapter, struct recv_frame *precv_frame); +extern void rtw_init_recv_timer(struct recv_reorder_ctrl *preorder_ctrl); + //-------------------------------- // freertos_skbuff.o // Function declarations @@ -598,8 +581,7 @@ extern int skb_fail_count; extern int max_skb_buf_num; // = 8; //-------------------------------- // freertos_xmit.o -// Function declarations -> freertos_xmit.h -/* +// Function declarations extern signed int rtw_remainder_len(struct pkt_file *pfile); extern void rtw_open_pktfile(_pkt *pktptr, struct pkt_file *pfile); extern unsigned int rtw_pktfile_read(struct pkt_file *pfile, uint8_t *rmem, unsigned int rlen); @@ -610,60 +592,57 @@ extern void rtw_os_xmit_complete(_adapter *padapter, struct xmit_frame *pxframe) extern void rtw_os_xmit_schedule(_adapter *padapter, _irqL a2, int a3); extern int rtw_xmit_entry(_pkt *pkt, _nic_hdl pnetdev, int a3); extern int rtw_os_can_xmit(struct net_device *dev); -*/ //-------------------------------- // hal_intf.o // Function declarations -/* hal_intf.h extern int32_t rtw_hal_fill_h2c_cmd(int32_t result, uint8_t ElementID, uint32_t CmdLen, uint8_t *pCmdBuffer); extern void rtw_hal_fill_fake_txdesc(_adapter *padapter, uint8_t *pDesc, uint32_t BufferLen, uint8_t IsPsPoll, uint8_t IsBTQosNull, uint8_t bDataFrame); extern _adapter *rtw_hal_get_txbuff_rsvd_page_num(_adapter *result, bool wowlan); +extern void rtw_hal_chip_configure(_adapter *padapter); +extern void rtw_hal_read_chip_info(_adapter *padapter); +extern void rtw_hal_read_chip_version(_adapter *padapter); +extern void rtw_hal_def_value_init(_adapter *padapter); +extern void rtw_hal_free_data(_adapter *padapter); +extern void rtw_hal_dm_init(_adapter *padapter); +extern void rtw_hal_dm_deinit(_adapter *padapter); extern int rtw_hal_init(_adapter *padapter); extern int rtw_hal_deinit(_adapter *padapter); +extern void rtw_hal_set_hwreg(_adapter *padapter, uint8_t variable, uint8_t *val); +extern void rtw_hal_get_hwreg(_adapter *padapter, uint8_t variable, uint8_t *val); extern int rtw_hal_set_def_var(_adapter *padapter, HAL_DEF_VARIABLE eVariable, PVOID pValue); extern int rtw_hal_get_def_var(_adapter *padapter, HAL_DEF_VARIABLE eVariable, PVOID pValue); +extern void rtw_hal_set_odm_var(_adapter *padapter, HAL_ODM_VARIABLE eVariable, PVOID pValue1, BOOLEAN bSet); +extern void rtw_hal_get_odm_var(_adapter *padapter, HAL_ODM_VARIABLE eVariable, PVOID pValue1, BOOLEAN bSet); +extern void rtw_hal_enable_interrupt(_adapter *padapter); +extern void rtw_hal_disable_interrupt(_adapter *padapter); extern int rtw_hal_inirp_init(_adapter *padapter); extern int rtw_hal_inirp_deinit(_adapter *padapter); +extern void rtw_hal_irp_reset(_adapter *padapter); extern int32_t rtw_hal_xmit(_adapter *padapter, struct xmit_frame *pxmitframe); extern int32_t rtw_hal_mgnt_xmit(_adapter *padapter, struct xmit_frame *pmgntframe); extern int32_t rtw_hal_init_xmit_priv(_adapter *padapter); +extern void rtw_hal_free_xmit_priv(_adapter *padapter); extern int32_t rtw_hal_init_recv_priv(_adapter *padapter); +extern void rtw_hal_free_recv_priv(_adapter *padapter); extern void rtw_hal_update_ra_mask(struct sta_info *psta, uint8_t rssi_level); extern void rtw_hal_add_ra_tid(_adapter *padapter, uint32_t bitmap, uint8_t *arg, uint8_t rssi_level); extern void rtw_hal_update_txdesc(_adapter *padapter, struct xmit_frame *pxmitframe, uint8_t *pbuf); +extern void rtw_hal_clone_data(_adapter *dst_padapter, _adapter *src_padapter); +extern void rtw_hal_start_thread(_adapter *padapter); +extern void rtw_hal_stop_thread(_adapter *padapter); extern int rtw_hal_read_bbreg(_adapter *padapter, uint32_t RegAddr, uint32_t BitMask); extern void rtw_hal_write_bbreg(_adapter *padapter, uint32_t RegAddr, uint32_t BitMask, uint32_t Data); extern int rtw_hal_read_rfreg(_adapter *padapter, uint32_t eRFPath, uint32_t RegAddr, uint32_t BitMask); extern void rtw_hal_write_rfreg(_adapter *padapter, uint32_t eRFPath, uint32_t RegAddr, uint32_t BitMask, uint32_t Data); extern int32_t rtw_hal_interrupt_handler(_adapter *padapter); +extern void rtw_hal_set_bwmode(_adapter *padapter, CHANNEL_WIDTH Bandwidth, uint8_t Offset); +extern void rtw_hal_set_chan(_adapter *padapter, uint8_t channel); extern void rtw_hal_set_chnl_bw(_adapter *padapter, int channel, CHANNEL_WIDTH Bandwidth, uint8_t Offset40, uint8_t Offset80); +extern void rtw_hal_dm_watchdog(_adapter *padapter); extern int32_t rtw_hal_recv_tasklet(_adapter *padapter); -*/ extern int32_t rtw_hal_macid_sleep(PADAPTER padapter, int macid, int a3); extern int32_t rtw_hal_macid_wakeup(PADAPTER padapter, int macid, int a3); -extern void decide_chip_type_by_device_id(_adapter *padapter); -extern void rtw_hal_dm_watchdog(_adapter *padapter); -extern void rtw_hal_set_bwmode(_adapter *padapter, CHANNEL_WIDTH Bandwidth, uint8_t Offset); -extern void rtw_hal_set_chan(_adapter *padapter, uint8_t channel); -extern void rtw_hal_clone_data(_adapter *dst_padapter, _adapter *src_padapter); -extern void rtw_hal_start_thread(_adapter *padapter); -extern void rtw_hal_stop_thread(_adapter *padapter); -extern void rtw_hal_free_recv_priv(_adapter *padapter); -extern void rtw_hal_free_xmit_priv(_adapter *padapter); -extern void rtw_hal_irp_reset(_adapter *padapter); -extern void rtw_hal_set_odm_var(_adapter *padapter, HAL_ODM_VARIABLE eVariable, PVOID pValue1, BOOLEAN bSet); -extern void rtw_hal_get_odm_var(_adapter *padapter, HAL_ODM_VARIABLE eVariable, PVOID pValue1, BOOLEAN bSet); -extern void rtw_hal_enable_interrupt(_adapter *padapter); -extern void rtw_hal_disable_interrupt(_adapter *padapter); -extern void rtw_hal_set_hwreg(_adapter *padapter, uint8_t variable, uint8_t *val); -extern void rtw_hal_get_hwreg(_adapter *padapter, uint8_t variable, uint8_t *val); -extern void rtw_hal_chip_configure(_adapter *padapter); -extern void rtw_hal_read_chip_info(_adapter *padapter); -extern void rtw_hal_read_chip_version(_adapter *padapter); -extern void rtw_hal_def_value_init(_adapter *padapter); -extern void rtw_hal_free_data(_adapter *padapter); -extern void rtw_hal_dm_init(_adapter *padapter); -extern void rtw_hal_dm_deinit(_adapter *padapter); +extern void decide_chip_type_by_device_id(_adapter *padapter); //-------------------------------- // hal_phy.o // Function declarations @@ -696,10 +675,8 @@ extern void TryDone(PDM_ODM_T pDM_Odm, PODM_RA_INFO_T pRaInfo); extern void RateDownStepRAM8195A(PDM_ODM_T pDM_Odm, PODM_RA_INFO_T pRaInfo, int step); extern void RateDecisionRAM8195A(PDM_ODM_T pDM_Odm, PODM_RA_INFO_T pRaInfo); extern void ArfrRefresh(PDM_ODM_T pDM_Odm, PODM_RA_INFO_T pRaInfo); -extern void H2CHDL_Set_MACID_Config(PDM_ODM_T pDM_Odm, u8 *pbuf); -/* +extern void H2CHDL_Set_MACID_Config(PDM_ODM_T pDM_Odm, u8 *pbuf); extern void PHY_DM_RA_SetRSSI_8195A(PDM_ODM_T pDM_Odm, int MacID, u8 Rssi); -*/ // Data declarations extern u8 Noisy_State; extern u8 ARFB_table[9][7]; /* = @@ -740,17 +717,13 @@ extern u8 PER_RATE_DOWN[20]; /* = extern void ConfigureTxpowerTrack(PDM_ODM_T pDM_Odm, PTXPWRTRACK_CFG pConfig); extern void ODM_ClearTxPowerTrackingState(PDM_ODM_T pDM_Odm); extern void ODM_TXPowerTrackingCallback_ThermalMeter(PADAPTER Adapter); -//extern void ODM_ResetIQKResult(PDM_ODM_T pDM_Odm); -/* +extern void ODM_ResetIQKResult(PDM_ODM_T pDM_Odm); extern int ODM_GetRightChnlPlaceforIQK(int chnl); -*/ // Data declarations //-------------------------------- // HalPwrSeqCmd.o // Function declarations -/* extern signed int HalPwrSeqCmdParsing(_adapter *padapter, uint8_t CutVersion, uint8_t FabVersion, int InterfaceType, WLAN_PWR_CFG *PwrSeqCmd); -*/ // Data declarations //-------------------------------- // hci_intfs.o @@ -763,20 +736,17 @@ extern void hci_dvobj_free_irq(struct dvobj_priv *dvobj); //-------------------------------- // rtw_ioctl_set.o // Function declarations -/* +extern int rtw_do_join(_adapter *padapter, _irqL a2); extern int rtw_set_802_11_bssid(_adapter *padapter, uint8_t *bssid); extern int rtw_set_802_11_ssid(_adapter *padapter, NDIS_802_11_SSID *ssid, int a3); extern signed int rtw_set_802_11_infrastructure_mode(_adapter *padapter, NDIS_802_11_NETWORK_INFRASTRUCTURE networktype); extern signed int rtw_set_802_11_bssid_list_scan(_adapter *padapter, NDIS_802_11_SSID *pssid, int ssid_max_num); extern int rtw_set_802_11_authentication_mode(_adapter *padapter, struct NDIS_802_11_AUTHENTICATION_MODE authmode); extern int rtw_set_802_11_add_wep(_adapter *padapter, NDIS_802_11_WEP *wep); -*/ -extern int rtw_do_join(_adapter *padapter, _irqL a2); // Data declarations //-------------------------------- // rtw_io.o // Function declarations -/* extern int rtw_read8(_adapter *adapter, uint32_t addr); extern int rtw_read16(_adapter *adapter, uint32_t addr); extern int rtw_read32(_adapter *adapter, uint32_t addr); @@ -785,35 +755,28 @@ extern int32_t rtw_write16(_adapter *adapter, uint32_t addr, int val); extern int32_t rtw_write32(_adapter *adapter, uint32_t addr, uint32_t val); extern signed int rtw_read_port(_adapter *adapter, uint32_t addr, uint32_t cnt, uint8_t *mem, struct fifo_more_data *more_data); extern signed int rtw_write_port(_adapter *adapter, uint32_t addr, uint32_t cnt, uint8_t *mem); -extern int rtw_get_chip_endian(_adapter padapter); -*/ extern void rtw_set_chip_endian(_adapter *adapter); +extern int rtw_get_chip_endian(_adapter padapter); // Data declarations //-------------------------------- // rtw_cmd.o -// Function declarations -> rtw_cmd.h -/* +// Function declarations extern sint rtw_init_cmd_priv(struct cmd_priv *pcmdpriv); extern sint rtw_init_evt_priv(struct evt_priv *pevtpriv); extern void rtw_free_cmd_priv(struct cmd_priv *pcmdpriv); extern sint rtw_enqueue_cmd(_queue *queue, struct cmd_obj *obj); extern struct cmd_obj *rtw_dequeue_cmd(_queue *queue, _irqL a2, int a3); -extern signed int rtw_init_cmd_priv(struct cmd_priv *pcmdpriv); -*/ extern struct list_head *rtw_observequeue_cmd(_queue *queue); +extern signed int rtw_init_cmd_priv(struct cmd_priv *pcmdpriv); extern int rtw_cmd_filter(struct cmd_priv *pcmdpriv, struct cmd_obj *cmd_obj); extern void rtw_free_cmd_obj(struct cmd_obj *pcmd); //extern int rtw_enqueue_cmd(struct cmd_priv *pcmdpriv, struct cmd_obj *cmd_obj); extern void rtw_set_channel_plan_cmd_callback(_adapter *padapter, struct cmd_obj *pcmd); extern void rtw_survey_cmd_callback(_adapter *padapter, struct cmd_obj *pcmd); -extern void rpt_timer_setting_wk_hdl(_adapter *padapter, uint16_t minRptTime, int a3); +extern void rtw_disassoc_cmd_callback(_adapter *padapter, struct cmd_obj *pcmd, int a3); extern void rtw_joinbss_cmd_callback(_adapter *padapter, struct cmd_obj *pcmd); extern void rtw_setstaKey_cmdrsp_callback(_adapter *padapter, struct cmd_obj *pcmd); extern void rtw_cmd_thread(thread_context context); -extern void dynamic_chk_wk_hdl(_adapter *padapter, uint8_t *pbuf, int sz); -extern void lps_ctrl_wk_hdl(_adapter *padapter, int lps_ctrl_type, int a3); -/* trw_cmd.h -extern void rtw_disassoc_cmd_callback(_adapter *padapter, struct cmd_obj *pcmd, int a3); extern int rtw_createbss_cmd(_adapter *padapter); extern int rtw_joinbss_cmd(_adapter *padapter, struct wlan_network *pnetwork); extern int rtw_disassoc_cmd(_adapter *padapter); @@ -823,14 +786,16 @@ extern int rtw_clearstakey_cmd(_adapter *padapter, uint8_t *psta, uint8_t entry, extern int rtw_addbareq_cmd(_adapter *padapter, int tid, uint8_t *addr); extern int rtw_dynamic_chk_wk_cmd(_adapter *padapter); extern struct cmd_obj *rtw_set_chplan_cmd(_adapter *padapter, int chplan, int enqueue); +extern void dynamic_chk_wk_hdl(_adapter *padapter, uint8_t *pbuf, int sz); +extern void lps_ctrl_wk_hdl(_adapter *padapter, int lps_ctrl_type, int a3); extern int rtw_lps_ctrl_wk_cmd(_adapter *padapter, int lps_ctrl_type, int enqueue); extern struct cmd_obj *rtw_sitesurvey_cmd(_adapter *padapter, NDIS_802_11_SSID *pssid, int ssid_max_num); +extern void rpt_timer_setting_wk_hdl(_adapter *padapter, uint16_t minRptTime, int a3); extern int rtw_rpt_timer_cfg_cmd(_adapter *padapter, int minRptTime); extern int rtw_ps_cmd(_adapter *padapter); extern int rtw_chk_hi_queue_cmd(_adapter *padapter); extern signed int rtw_drvextra_cmd_hdl(_adapter *padapter, u8 *pbuf, int a3); extern int rtw_c2h_wk_cmd(PADAPTER padapter); -*/ // Data declarations extern const struct cmd_hdl wlancmds[63]; extern const struct _cmd_callback rtw_cmd_callback[63]; @@ -844,43 +809,34 @@ extern void rtw_free_netdev(struct net_device *netdev); //-------------------------------- // phydm.o // Function declarations -/* -extern void ODM_CmnInfoHook(PDM_ODM_T pDM_Odm, ODM_CMNINFO_E CmnInfo, PVOID pValue); -extern void ODM_DMInit(PDM_ODM_T pDM_Odm); -extern void ODM_DMWatchdog(PDM_ODM_T pDM_Odm); -*/ extern void ODM_CmnInfoInit(PDM_ODM_T pDM_Odm, ODM_CMNINFO_E CmnInfo, u4Byte Value); +extern void ODM_CmnInfoHook(PDM_ODM_T pDM_Odm, ODM_CMNINFO_E CmnInfo, PVOID pValue); +extern void ODM_CmnInfoPtrArrayHook(PDM_ODM_T pDM_Odm, ODM_CMNINFO_E CmnInfo, int Index, PVOID pValue); extern void ODM_CmnInfoUpdate(PDM_ODM_T pDM_Odm, u4Byte CmnInfo, u8Byte Value); extern void odm_CommonInfoSelfInit(PDM_ODM_T pDM_Odm); +extern void ODM_DMInit(PDM_ODM_T pDM_Odm); extern void odm_CommonInfoSelfUpdate(PDM_ODM_T pDM_Odm); +extern void ODM_DMWatchdog(PDM_ODM_T pDM_Odm); extern void odm_CommonInfoSelfReset(PDM_ODM_T pDM_Odm); -extern void odm_SwAntDetectInit(PDM_ODM_T pDM_Odm); -/* -extern void ODM_CmnInfoPtrArrayHook(PDM_ODM_T pDM_Odm, ODM_CMNINFO_E CmnInfo, int Index, PVOID pValue); extern ADAPTIVITY_STATISTICS *PhyDM_Get_Structure(PDM_ODM_T pDM_Odm, int Structure_Type); -*/ +extern void odm_SwAntDetectInit(PDM_ODM_T pDM_Odm); // Data declarations //-------------------------------- // rtl8195a_phycfg.o // Function declarations -/* extern int PHY_QueryBBReg_8195A_Safe(PADAPTER Adapter, uint32_t RegAddr, uint32_t BitMask); extern void PHY_SetBBReg_8195A_Safe(PADAPTER Adapter, uint32_t RegAddr, uint32_t BitMask, uint32_t Data); +extern int phy_RFSerialRead_8195A(PADAPTER Adapter, RF_PATH eRFPath, uint32_t Offset); extern uint32_t PHY_QueryRFReg_8195A(PADAPTER Adapter, uint32_t eRFPath, uint32_t RegAddr, uint32_t BitMask); extern void PHY_SetRFReg_8195A(PADAPTER Adapter, uint32_t eRFPath, uint32_t RegAddr, uint32_t BitMask, uint32_t Data); extern BOOL PHY_MACConfig8195A(PADAPTER Adapter); -extern int PHY_GetTxPowerIndex_8195A(PADAPTER pAdapter, int RFPath, int Rate, CHANNEL_WIDTH BandWidth, uint8_t Channel); -extern void PHY_SetTxPowerLevel8195A(PADAPTER Adapter, int Channel); -extern void PHY_SetBWMode8195A(PADAPTER Adapter, CHANNEL_WIDTH Bandwidth, int Offset); -extern void PHY_SetSwChnlBWMode8195A(PADAPTER Adapter, uint8_t channel, CHANNEL_WIDTH Bandwidth, int Offset40, uint8_t Offset80); -*/ -extern void PHY_SwChnl8195A(PADAPTER Adapter, uint8_t channel); -extern int phy_RFSerialRead_8195A(PADAPTER Adapter, RF_PATH eRFPath, uint32_t Offset); extern int PHY_BBConfig8195A(PADAPTER Adapter); extern int PHY_ConfigRFWithParaFile_8195A(PADAPTER Adapter, uint8_t *pFileName, RF_PATH eRFPath); extern void phy_PowerIndexCheck8195A(PADAPTER Adapter, uint8_t channel, uint8_t *cckPowerLevel, uint8_t *ofdmPowerLevel, uint8_t *BW20PowerLevel, uint8_t *BW40PowerLevel); extern void PHY_SetTxPowerIndex_8195A(PADAPTER Adapter, uint32_t PowerIndex, int RFPath, int Rate); extern void phy_TxPwrAdjInPercentage(PADAPTER Adapter, uint8_t *pTxPwrIdx); +extern int PHY_GetTxPowerIndex_8195A(PADAPTER pAdapter, int RFPath, int Rate, CHANNEL_WIDTH BandWidth, uint8_t Channel); +extern void PHY_SetTxPowerLevel8195A(PADAPTER Adapter, int Channel); extern void phy_SpurCalibration_8195A(PADAPTER pAdapter); extern void phy_SetRegBW_8195A(PADAPTER Adapter, CHANNEL_WIDTH CurrentBW); extern int phy_GetSecondaryChnl_8195A(PADAPTER Adapter); @@ -888,6 +844,9 @@ extern void phy_PostSetBwMode8195A(PADAPTER Adapter); extern void phy_SwChnl8195A(PADAPTER pAdapter); extern void phy_SwChnlAndSetBwMode8195A(PADAPTER Adapter); extern void PHY_HandleSwChnlAndSetBW8195A(PADAPTER Adapter, int bSwitchChannel, int bSetBandWidth, uint8_t ChannelNum, CHANNEL_WIDTH ChnlWidth, EXTCHNL_OFFSET ExtChnlOffsetOf40MHz, EXTCHNL_OFFSET ExtChnlOffsetOf80MHz, uint8_t CenterFrequencyIndex1); +extern void PHY_SetBWMode8195A(PADAPTER Adapter, CHANNEL_WIDTH Bandwidth, int Offset); +extern void PHY_SwChnl8195A(PADAPTER Adapter, uint8_t channel); +extern void PHY_SetSwChnlBWMode8195A(PADAPTER Adapter, uint8_t channel, CHANNEL_WIDTH Bandwidth, int Offset40, uint8_t Offset80); // Data declarations //-------------------------------- // rtl8195a_pmu_cmd.o @@ -897,10 +856,8 @@ extern void MediaDisconnection(PADAPTER padapter, int macid); extern void RATaskEnable(PADAPTER padapter); extern void SetMediaStatus(PADAPTER padapter, int macid, int status); extern void H2CHDL_JoinInfo(PADAPTER padapter, uint8_t *pCmdBuffer); -extern void H2CHDL_SetRsvdPage(PADAPTER padapter, uint8_t *pCmdBuffer); -/* +extern void H2CHDL_SetRsvdPage(PADAPTER padapter, uint8_t *pCmdBuffer); extern uint32_t H2CCmdCommon(PADAPTER padapter, int ElementID, uint8_t *pCmdBuffer); -*/ // Data declarations //-------------------------------- // rtl8195a_pmu_task.o @@ -911,13 +868,27 @@ extern void ChangeStateByTDMA(PADAPTER padapter); extern void GetMinRateInRRSR(PADAPTER padapter); extern void CheckInReqState(PADAPTER padapter); extern void InitCheckStateTimer(); +extern void InitGTimer1ms(PADAPTER padapter, uint8_t IRQDis, int TimerID, uint32_t Period); +extern void DeInitGTimer1ms(PADAPTER padapter, int TimerID); +extern void ChangeTransmiteRate(int offset, uint8_t rate); +extern void PowerBitSetting(int bPowerBit, int offset); +extern void ChkandChangePS(PPS_PARM pPSParm, int bPowerBit); +extern int IssueRsvdPagePacketSetting(int PageNum, int bHwSEQEn, uint8_t RtyLmt); extern void InitRsvdPgPkt(); extern void IssuePSPoll(); +extern signed int WaitTxStateMachineOk(); +extern signed int IssueNullData(PPS_PARM pPSParm, int bPowerBit, uint8_t RtyLmt); extern void WriteTxPause(uint8_t value, uint8_t rcode); extern void PsCloseRF(); extern void PsOpenRF(); +extern void SetPwrStateReg(PPS_PARM pPSParm, int PwrStateType, uint8_t value); extern BOOL ChkTxQueueIsEmpty(); extern void InitPS(PADAPTER padapter); +extern void ConfigListenBeaconPeriod(PPS_PARM pPSParm, int RLBM, int AwakeInterval); +extern signed int PS_S2_Condition_Match(PPS_PARM pPSParm); +extern signed int PS_S4_Condition_Match(PADAPTER padapter); +extern unsigned int PS_32K_Condition_Match(); +extern void PS_S2ToS3ToS0State(PADAPTER padapter, int nulldata0Allow); extern void PS_S2ToS0State(PPS_PARM pPSParm); extern void PS_S3ToS2orS0State(PPS_PARM pPSParm); extern void PS_S0ToS1ToS2State(PADAPTER padapter); @@ -927,14 +898,19 @@ extern void PS_S2ToS5State(PPS_PARM pPSParm); extern void PS_S5ToS2State(PPS_PARM pPSParm); extern void PS_S0ToS6State(PADAPTER padapter); extern void PS_S6ToS0State(PPS_PARM pPSParm); +extern void CheckTSFIsStable(int ReqState); extern void WaitHWStateReady(); extern void SysClkDown(PPS_PARM pPSParm); extern void SysClkUp(PPS_PARM pPSParm); extern void ResetPSParm(PADAPTER padapter); +extern void PS_S4ToS2State(PPS_PARM pPSParm, int ReleaseTxPause); extern void SleepTo32K(PPS_PARM pPSParm); +extern void Change_PS_State(PADAPTER padapter, int request_ps_state, int nulldata0Allow); extern void Legacy_PS_Setting(PADAPTER padapter); +extern void PSModeSetting(PADAPTER padapter, int on); extern void ChangePSStateByRPWM(PADAPTER padapter); extern void ChangeTDMAState(PADAPTER padapter); +extern void TDMAChangeStateTask(PADAPTER padapter, _irqL a2); extern void EnterPS(PADAPTER padapter); extern void SetSmartPSTimer(PADAPTER padapter); extern void GTimer7Handle(void *Data); @@ -946,6 +922,7 @@ extern void PSRxBcnProcess(PADAPTER padapter); extern void TxPktInPSOn(PADAPTER padapter); extern void PsBcnToProcess(PADAPTER padapter); extern void GTimer6Handle(void *Data); +extern signed int RPWMProcess(PADAPTER padapter, int benter32k); extern void PSSetMode(PADAPTER padapter, PLEGACY_PS_PARM pparm); extern void SpeRPT(PADAPTER padapter); extern void ISR_BcnEarly(PADAPTER padapter); @@ -957,53 +934,27 @@ extern void ISR_RxUCMD1(PADAPTER padapter); extern void ISR_RxUCMD0(PADAPTER padapter); extern void ISR_TxPktIn(PADAPTER padapter); extern void H2CHDL_SetPwrMode(PADAPTER padapter, uint8_t *pCmdBuffer); +extern void CheckInReqStateTask(PADAPTER padapter, int a2, int a3); +extern uint32_t HalGetNullTxRpt(PADAPTER padapter); extern void ISR_TBTT(PADAPTER padapter); extern void H2CHDL_BcnIgnoreEDCCA(PADAPTER padapter, uint8_t *pCmdBuffer); extern void PMUInitial(PADAPTER padapter); extern void PMUTask(PADAPTER padapter); -/* -extern void InitGTimer1ms(PADAPTER padapter, uint8_t IRQDis, int TimerID, uint32_t Period); -extern void DeInitGTimer1ms(PADAPTER padapter, int TimerID); -extern void ChangeTransmiteRate(int offset, uint8_t rate); -extern void PowerBitSetting(int bPowerBit, int offset); -extern void ChkandChangePS(PPS_PARM pPSParm, int bPowerBit); -extern int IssueRsvdPagePacketSetting(int PageNum, int bHwSEQEn, uint8_t RtyLmt); -extern signed int WaitTxStateMachineOk(); -extern signed int IssueNullData(PPS_PARM pPSParm, int bPowerBit, uint8_t RtyLmt); -extern void SetPwrStateReg(PPS_PARM pPSParm, int PwrStateType, uint8_t value); -extern void ConfigListenBeaconPeriod(PPS_PARM pPSParm, int RLBM, int AwakeInterval); -extern signed int PS_S2_Condition_Match(PPS_PARM pPSParm); -extern signed int PS_S4_Condition_Match(PADAPTER padapter); -extern unsigned int PS_32K_Condition_Match(); -extern void PS_S2ToS3ToS0State(PADAPTER padapter, int nulldata0Allow); -extern void CheckTSFIsStable(int ReqState); -extern void PS_S4ToS2State(PPS_PARM pPSParm, int ReleaseTxPause); -extern void Change_PS_State(PADAPTER padapter, int request_ps_state, int nulldata0Allow); -extern void PSModeSetting(PADAPTER padapter, int on); -extern void TDMAChangeStateTask(PADAPTER padapter, _irqL a2); -extern signed int RPWMProcess(PADAPTER padapter, int benter32k); -extern void CheckInReqStateTask(PADAPTER padapter, int a2, int a3); -extern uint32_t HalGetNullTxRpt(PADAPTER padapter); -*/ // Data declarations extern BOOL bCheckStateTIMER; extern uint32_t WifiMcuCmdBitMap_20974; //-------------------------------- // rtl8195a_recv.o // Function declarations -/* -extern int32_t rtl8195a_init_recv_priv(_adapter *padapter); -*/ +extern int32_t rtl8195a_init_recv_priv(_adapter *padapter); // Data declarations //-------------------------------- // rtl8195a_rxdesc.o // Function declarations +extern void process_rssi(_adapter *padapter, struct recv_frame *prframe); extern int32_t translate2dbm(int signal_strength_idx); -/* -extern void process_rssi(_adapter *padapter, union recv_frame *prframe); -extern void rtl8195a_query_rx_desc_status(union recv_frame *precvframe, uint8_t *pdesc); -extern void rtl8195a_query_rx_phy_status(union recv_frame *precvframe, uint8_t *pphy_status, int a3); -*/ +extern void rtl8195a_query_rx_desc_status(struct recv_frame *precvframe, uint8_t *pdesc); +extern void rtl8195a_query_rx_phy_status(struct recv_frame *precvframe, uint8_t *pphy_status, int a3); // Data declarations //-------------------------------- // rtl8195a_xmit.o @@ -1011,24 +962,20 @@ extern void rtl8195a_query_rx_phy_status(union recv_frame *precvframe, uint8_t * extern uint8_t *GetTxBufDesc(_adapter *padapter, int queue_index); extern void UpdateFirstTxbdtoXmitBuf(_adapter *padapter, struct xmit_frame *pxmitframe); extern BOOL check_nic_enough_desc(_adapter *padapter, struct pkt_attrib *pattrib); +extern int32_t rtl8195ab_init_xmit_priv(PADAPTER padapter); extern void rtl8195ab_free_xmit_priv(PADAPTER padapter); +extern uint32_t GetDmaTxbdIdx(uint32_t ff_hwaddr); extern struct xmit_buf *rtl8195a_enqueue_xmitbuf(struct rtw_tx_ring *ring, struct xmit_buf *pxmitbuf); +extern struct list_head *rtl8195a_dequeue_xmitbuf(struct rtw_tx_ring *ring); extern signed int SetTxbdForLxDMARtl8195ab(_adapter *padapter, struct xmit_frame *pxmitframe, struct tx_buf_desc *pTxbd); extern void UpdateTxbdHostIndex(_adapter *padapter, uint32_t ff_hwaddr); extern struct xmit_buf *SetXimtBuf(struct xmit_frame *pxmitframe); +extern int FreeXimtBuf(struct xmit_buf *pxmitbuf); extern int rtw_dump_xframe(_adapter *padapter, struct xmit_frame *pxmitframe); extern BOOL check_tx_desc_resource(_adapter *padapter, int prio); -extern void rtl8195ab_xmitframe_resume(_adapter *padapter); -/* -extern int32_t rtl8195ab_init_xmit_priv(PADAPTER padapter); -extern uint32_t GetDmaTxbdIdx(uint32_t ff_hwaddr); -extern struct list_head *rtl8195a_dequeue_xmitbuf(struct rtw_tx_ring *ring); -extern int FreeXimtBuf(struct xmit_buf *pxmitbuf); -*/ -/* extern struct list_head *rtw_dequeue_xframe(struct xmit_priv *pxmitpriv, struct hw_xmit *phwxmit_i, sint entry); extern int32_t rtw_xmitframe_coalesce(_adapter *padapter, _pkt *pkt, struct xmit_frame *pxmitframe); -*/ +extern void rtl8195ab_xmitframe_resume(_adapter *padapter); extern int32_t rtl8195ab_mgnt_xmit(_adapter *padapter, struct xmit_frame *pmgntframe); extern int32_t rtl8195ab_hal_xmit(_adapter *padapter, struct xmit_frame *pxmitframe); extern int32_t rtl8195ab_hal_xmitframe_enqueue(_adapter *padapter, struct xmit_frame *pxmitframe); @@ -1036,15 +983,13 @@ extern int32_t rtl8195ab_hal_xmitframe_enqueue(_adapter *padapter, struct xmit_f //-------------------------------- // rtw_intfs.o // Function declarations -/* extern signed int rtw_init_default_value(_adapter *padapter); +extern void rtw_cancel_all_timer(_adapter *padapter); extern signed int rtw_free_drv_sw(_adapter *padapter); extern signed int rtw_reset_drv_sw(_adapter *padapter); extern signed int rtw_init_drv_sw(_adapter *padapter); extern int rtw_start_drv_threads(_adapter *padapter); -*/ extern void rtw_stop_drv_threads(_adapter *padapter); -extern void rtw_cancel_all_timer(_adapter *padapter); // Data declarations //-------------------------------- // rtw_mlme.o @@ -1053,6 +998,7 @@ extern void rtw_free_mlme_ie_data(uint8_t **ppie, uint32_t *plen); extern void rtw_init_mlme_timer(_adapter *padapter); extern void rtw_del_mlme_timer(struct mlme_priv *pmlmepriv); extern void reconnect_timer_hdl(void *FunctionContext); +extern uint8_t *rtw_init_mlme_priv(_adapter *padapter, int a2, int a3); extern void rtw_mfree_mlme_priv_lock(struct mlme_priv *pmlmepriv); extern void rtw_free_mlme_priv_ie_data(struct mlme_priv *pmlmepriv); extern void rtw_free_mlme_priv(struct mlme_priv *pmlmepriv); @@ -1060,12 +1006,21 @@ extern sint rtw_enqueue_network(_queue *queue, struct wlan_network *pnetwork); extern struct list_head *rtw_alloc_network(struct mlme_priv *pmlmepriv, _irqL a2, int a3); extern void rtw_free_network(struct mlme_priv *pmlmepriv, struct wlan_network *pnetwork, int isfreeall); extern void rtw_free_network_nolock(struct mlme_priv *pmlmepriv, struct wlan_network *pnetwork); +extern _queue *rtw_find_network(_queue *scanned_queue, uint8_t *addr); +extern void rtw_free_network_queue(_adapter *padapter, int isfreeall, int a3); extern sint rtw_if_up(_adapter *padapter); extern void rtw_generate_random_ibss(uint8_t *pibss); extern uint8_t *rtw_get_capability_from_ie(uint8_t *ie); +extern int rtw_get_capability(WLAN_BSSID_EX *bss, int a2, int a3); extern uint8_t *rtw_get_beacon_interval_from_ie(uint8_t *ie); +extern uint8_t *rtw_init_mlme_priv(_adapter *padapter, int a2, int a3); +extern uint32_t rtw_is_same_ibss(_adapter *adapter, struct wlan_network *pnetwork); +extern int is_same_network(WLAN_BSSID_EX *src, WLAN_BSSID_EX *dst, int a3); +extern struct list_head *rtw_get_oldest_wlan_network(_queue *scanned_queue); +extern void update_network(WLAN_BSSID_EX *dst, WLAN_BSSID_EX *src, _adapter *padapter, int update_ie); extern void rtw_update_scanned_network(_adapter *adapter, WLAN_BSSID_EX *target); extern void rtw_add_network(_adapter *adapter, WLAN_BSSID_EX *pnetwork, int a3); +extern void rtw_survey_event_callback(_adapter *adapter, uint8_t *pbuf, int a3); extern void rtw_free_assoc_resources(_adapter *adapter, int lock_scanned_queue); extern void rtw_indicate_connect(_adapter *padapter); extern void rtw_indicate_disconnect(_adapter *padapter); @@ -1075,77 +1030,93 @@ extern void rtw_stassoc_hw_rpt(_adapter *adapter, struct sta_info *psta); extern void rtw_stassoc_event_callback(_adapter *adapter, uint8_t *pbuf); extern void rtw_stadel_event_callback(_adapter *adapter, uint8_t *pbuf); extern void rtw_join_timeout_handler(_adapter *adapter, _irqL a2, int a3, int a4); +//void rtw_join_timeout_handler(void *FunctionContext, _irqL a2, int a3, int a4); +extern void rtw_scan_timeout_handler(_adapter *adapter, _irqL a2, int a3); +//void rtw_scan_timeout_handler(void *FunctionContext); extern void rtw_dynamic_check_timer_handlder(_adapter *adapter); extern void dynamic_check_timer_handlder(void *FunctionContext); +extern int rtw_select_and_join_from_scanned_queue(struct mlme_priv *pmlmepriv, _irqL a2, int a3); extern void rtw_surveydone_event_callback(_adapter *adapter, uint8_t *pbuf); extern sint rtw_set_auth(_adapter *adapter, struct security_priv *psecuritypriv); extern sint rtw_set_key(_adapter *adapter, struct security_priv *psecuritypriv, sint keyid, uint8_t set_tx); +extern unsigned int rtw_restruct_wmm_ie(_adapter *adapter, uint8_t *in_ie, uint8_t *out_ie, unsigned int in_len, unsigned int initial_out_len); extern sint rtw_restruct_sec_ie(_adapter *adapter, uint8_t *in_ie, uint8_t *out_ie, unsigned int in_len); extern void rtw_joinbss_reset(_adapter *padapter); extern unsigned int rtw_restructure_ht_ie(_adapter *padapter, uint8_t *in_ie, uint8_t *out_ie, unsigned int in_len, unsigned int *pout_len); extern void rtw_update_ht_cap(_adapter *padapter, uint8_t *pie, unsigned int ie_len); -extern sint rtw_linked_check(_adapter *padapter); -/* -extern uint8_t *rtw_init_mlme_priv(_adapter *padapter, int a2, int a3); -extern int rtw_get_capability(WLAN_BSSID_EX *bss, int a2, int a3); -extern _queue *rtw_find_network(_queue *scanned_queue, uint8_t *addr); -extern void rtw_free_network_queue(_adapter *padapter, int isfreeall, int a3); -extern uint8_t *rtw_init_mlme_priv(_adapter *padapter, int a2, int a3); -extern uint32_t rtw_is_same_ibss(_adapter *adapter, struct wlan_network *pnetwork); -extern int is_same_network(WLAN_BSSID_EX *src, WLAN_BSSID_EX *dst, int a3); -extern struct list_head *rtw_get_oldest_wlan_network(_queue *scanned_queue); -extern void update_network(WLAN_BSSID_EX *dst, WLAN_BSSID_EX *src, _adapter *padapter, int update_ie); -extern void rtw_survey_event_callback(_adapter *adapter, uint8_t *pbuf, int a3); -//void rtw_join_timeout_handler(void *FunctionContext, _irqL a2, int a3, int a4); -//void rtw_scan_timeout_handler(void *FunctionContext); -extern void rtw_scan_timeout_handler(_adapter *adapter, _irqL a2, int a3); -extern int rtw_select_and_join_from_scanned_queue(struct mlme_priv *pmlmepriv, _irqL a2, int a3); -extern unsigned int rtw_restruct_wmm_ie(_adapter *adapter, uint8_t *in_ie, uint8_t *out_ie, unsigned int in_len, unsigned int initial_out_len); extern void rtw_joinbss_event_prehandle(_adapter *adapter, uint8_t *pbuf, int a3); extern void rtw_issue_addbareq_cmd(_adapter *padapter, struct xmit_frame *pxmitframe); +extern sint rtw_linked_check(_adapter *padapter); extern sint rtw_buddy_adapter_up(sint result); extern sint check_buddy_fwstate(sint result, sint state); -*/ // Data declarations extern uint8_t auto_reconnect_running; extern void (*p_wlan_autoreconnect_hdl)(rtw_security_t, char *, int, char *, int, int); //-------------------------------- // rtw_mlme_ext.o // Function declarations -/* -extern signed int OnAction(_adapter *padapter, union recv_frame *precv_frame); -extern signed int DoReserved(_adapter *padapter, union recv_frame *precv_frame); -extern void mgt_dispatcher(_adapter *padapter, struct mlme_handler *ptable, union recv_frame *precv_frame); +extern u8 *get_da(u8 *pframe); +extern u8 *get_sa(u8 *pframe); +extern signed int OnAction(_adapter *padapter, struct recv_frame *precv_frame); +extern signed int DoReserved(_adapter *padapter, struct recv_frame *precv_frame); +extern void mgt_dispatcher(_adapter *padapter, struct mlme_handler *ptable, struct recv_frame *precv_frame); extern int rtw_is_channel_set_contains_channel(RT_CHANNEL_INFO *channel_set, const uint32_t channel_num, int *pchannel_idx); -//void mgt_dispatcher(_adapter *padapter, union recv_frame *precv_frame, int a3); -extern unsigned int OnAction_public(_adapter *padapter, union recv_frame *precv_frame); -extern signed int OnAction_p2p(_adapter *padapter, union recv_frame *precv_frame); +extern int init_hw_mlme_ext(_adapter *padapter); +extern unsigned int init_channel_set(_adapter *padapter, int ChannelPlan, RT_CHANNEL_INFO *channel_set); +extern void free_mlme_ext_priv(struct mlme_ext_priv *pmlmeext); +//void mgt_dispatcher(_adapter *padapter, struct recv_frame *precv_frame, int a3); +extern unsigned int OnAction_public(_adapter *padapter, struct recv_frame *precv_frame); +extern signed int OnAction_p2p(_adapter *padapter, struct recv_frame *precv_frame); extern struct xmit_frame *alloc_mgtxmitframe(struct xmit_priv *pxmitpriv); extern struct xmit_frame *alloc_FwRsvdframe(struct xmit_priv *pxmitpriv, uint32_t size); +extern void update_mgnt_tx_rate(_adapter *padapter, uint8_t rate); extern void update_mgntframe_attrib(_adapter *padapter, struct pkt_attrib *pattrib); +extern struct xmit_frame *rtw_build_mgnt_frame(_adapter *padapter, uint8_t *data, int len); extern void dump_mgntframe(_adapter *padapter, struct xmit_frame *pmgntframe); -extern signed int OnProbeReq(_adapter *padapter, union recv_frame *precv_frame); +extern int rtw_send_mgnt(_adapter *padapter, uint8_t *data, int len, uint16_t flags); +extern void issue_action_BSSCoexistPacket(_adapter *padapter); +extern uint32_t update_hidden_ssid(uint8_t *ies, uint32_t ies_len, int hidden_ssid_mode); +extern void issue_beacon(_adapter *padapter); +extern void issue_probersp(_adapter *padapter, u8 *da, uint8_t is_valid_p2p_probereq); +extern signed int OnProbeReq(_adapter *padapter, struct recv_frame *precv_frame); extern void issue_probereq(_adapter *padapter, NDIS_802_11_SSID *pssid, int blnbc); extern void issue_auth(_adapter *padapter, struct sta_info *psta, int status); -extern signed int OnAuth(_adapter *padapter, union recv_frame *precv_frame); +extern signed int OnAuth(_adapter *padapter, struct recv_frame *precv_frame); extern void issue_asocrsp(_adapter *padapter, uint16_t status, struct sta_info *pstat, int pkt_type); +extern void issue_assocreq(_adapter *padapter); +extern void issue_nulldata(_adapter *padapter, unsigned int power_mode); +extern void issue_qos_nulldata(_adapter *padapter, u8 *da, uint16_t tid); extern void issue_deauth(_adapter *padapter, u8 *da, uint32_t reason); -extern signed int OnAction_back(_adapter *padapter, union recv_frame *precv_frame); +extern void issue_action_BA(_adapter *padapter, u8 *raddr, u8 action, uint16_t status); +extern signed int OnAction_back(_adapter *padapter, struct recv_frame *precv_frame); extern signed int send_beacon(_adapter *padapter); -extern signed int collect_bss_info(_adapter *padapter, union recv_frame *precv_frame, WLAN_BSSID_EX *bssid); -extern signed int OnAuthClient(_adapter *padapter, union recv_frame *precv_frame); -extern void report_survey_event(_adapter *padapter, union recv_frame *precv_frame); -extern signed int OnProbeRsp(_adapter *padapter, union recv_frame *precv_frame); -extern signed int OnAssocRsp(_adapter *padapter, union recv_frame *precv_frame); +extern signed int collect_bss_info(_adapter *padapter, struct recv_frame *precv_frame, WLAN_BSSID_EX *bssid); +extern void start_clnt_auth(_adapter *padapter); +extern void start_clnt_assoc(_adapter *padapter); +extern signed int OnAuthClient(_adapter *padapter, struct recv_frame *precv_frame); +extern int report_scan_result_one(_adapter *padapter, WLAN_BSSID_EX *bssid); +extern int add_site_survey(_adapter *padapter, WLAN_BSSID_EX *bssid); +extern void report_survey_event(_adapter *padapter, struct recv_frame *precv_frame); +extern signed int OnProbeRsp(_adapter *padapter, struct recv_frame *precv_frame); +extern void report_surveydone_event(_adapter *padapter); +extern void report_join_res(_adapter *padapter, int res); +extern signed int OnAssocRsp(_adapter *padapter, struct recv_frame *precv_frame); +extern void report_del_sta_event(_adapter *padapter, u8 *MacAddr, uint16_t reason); extern signed int receive_disconnect(_adapter *padapter, u8 *MacAddr, uint16_t reason); -extern signed int OnBeacon(_adapter *padapter, union recv_frame *precv_frame); -extern signed int OnDeAuth(_adapter *padapter, union recv_frame *precv_frame); -extern signed int OnDisassoc(_adapter *padapter, union recv_frame *precv_frame); -extern signed int OnAssocReq(_adapter *padapter, union recv_frame *precv_frame); +extern signed int OnBeacon(_adapter *padapter, struct recv_frame *precv_frame); +extern signed int OnDeAuth(_adapter *padapter, struct recv_frame *precv_frame); +extern signed int OnDisassoc(_adapter *padapter, struct recv_frame *precv_frame); +extern void report_add_sta_event(_adapter *padapter, u8 *MacAddr, int cam_idx); +extern signed int OnAssocReq(_adapter *padapter, struct recv_frame *precv_frame); +extern signed int rtw_port_switch_chk(_adapter *adapter); extern void update_sta_info(_adapter *padapter, struct sta_info *psta); +extern void mlmeext_sta_del_event_callback(_adapter *padapter); +extern void linked_info_dump(_adapter *padapter, _irqL a2, int a3); +extern void linked_rx_signal_strehgth_display(_adapter *padapter, int a2); extern void linked_status_chk(_adapter *padapter, int a2); extern void survey_timer_hdl(_adapter *padapter, int a2); //void survey_timer_hdl(void *FunctionContext); +extern void link_timer_hdl(_adapter *padapter); //void link_timer_hdl(void *FunctionContext); extern void addba_timer_hdl(struct sta_info *psta); extern int NULL_hdl(_adapter *padapter, uint8_t *pbuf); @@ -1160,42 +1131,12 @@ extern int tx_beacon_hdl(_adapter *padapter, u8 *pbuf, int a3); extern sint check_buddy_mlmeinfo_state(sint result, uint32_t state); extern void site_survey(_adapter *padapter, int a2, int a3); extern int sitesurvey_cmd_hdl(_adapter *padapter, uint8_t *pbuf, int a3); +extern int concurrent_chk_start_clnt_join(_adapter *padapter); extern void start_clnt_join(_adapter *padapter, int a2, int a3); extern signed int join_cmd_hdl(_adapter *padapter, uint8_t *pbuf, int a3); +extern void concurrent_chk_joinbss_done(_adapter *padapter, int join_res); extern void mlmeext_joinbss_event_callback(_adapter *padapter, int join_res, int a3); extern signed int set_chplan_hdl(_adapter *padapter, u8 *pbuf); -*/ -extern struct xmit_frame *rtw_build_mgnt_frame(_adapter *padapter, uint8_t *data, int len); -extern void update_mgnt_tx_rate(_adapter *padapter, uint8_t rate); -extern int rtw_send_mgnt(_adapter *padapter, uint8_t *data, int len, uint16_t flags); -extern void issue_action_BSSCoexistPacket(_adapter *padapter); -extern uint32_t update_hidden_ssid(uint8_t *ies, uint32_t ies_len, int hidden_ssid_mode); -extern void issue_beacon(_adapter *padapter); -extern void issue_probersp(_adapter *padapter, u8 *da, uint8_t is_valid_p2p_probereq); -extern void issue_assocreq(_adapter *padapter); -extern void issue_nulldata(_adapter *padapter, unsigned int power_mode); -extern void issue_qos_nulldata(_adapter *padapter, u8 *da, uint16_t tid); -extern void issue_action_BA(_adapter *padapter, u8 *raddr, u8 action, uint16_t status); -extern void start_clnt_auth(_adapter *padapter); -extern void start_clnt_assoc(_adapter *padapter); -extern int report_scan_result_one(_adapter *padapter, WLAN_BSSID_EX *bssid); -extern int add_site_survey(_adapter *padapter, WLAN_BSSID_EX *bssid); -extern void report_surveydone_event(_adapter *padapter); -extern void report_join_res(_adapter *padapter, int res); -extern void report_del_sta_event(_adapter *padapter, u8 *MacAddr, uint16_t reason); -extern void report_add_sta_event(_adapter *padapter, u8 *MacAddr, int cam_idx); -extern void mlmeext_sta_del_event_callback(_adapter *padapter); -extern void linked_info_dump(_adapter *padapter, _irqL a2, int a3); -extern void linked_rx_signal_strehgth_display(_adapter *padapter, int a2); -extern signed int rtw_port_switch_chk(_adapter *adapter); -extern void link_timer_hdl(_adapter *padapter); -extern u8 *get_da(u8 *pframe); -extern u8 *get_sa(u8 *pframe); -extern int concurrent_chk_start_clnt_join(_adapter *padapter); -extern void concurrent_chk_joinbss_done(_adapter *padapter, int join_res); -extern int init_hw_mlme_ext(_adapter *padapter); -extern unsigned int init_channel_set(_adapter *padapter, int ChannelPlan, RT_CHANNEL_INFO *channel_set); -extern void free_mlme_ext_priv(struct mlme_ext_priv *pmlmeext); extern void init_mlme_ext_timer(_adapter *padapter); extern int init_mlme_ext_priv(_adapter *padapter); // Data declarations @@ -1210,8 +1151,7 @@ extern const RT_CHANNEL_PLAN_2G RTW_ChannelPlan2G[8]; /* = { { 1u, 2u, 3u, 4u, 5u, 6u, 7u, 8u, 9u, 10u, 11u, 12u, 13u, 0u }, 13u }, { { 1u, 2u, 3u, 4u, 5u, 6u, 7u, 8u, 9u, 10u, 11u, 12u, 13u, 0u }, 13u } }; */ -extern const uint8_t WPS_OUI[4]; // = { 0u, 80u, 242u, 4u }; -typedef int (*mac_monitor_ptr)(uint8_t *, char); +extern const uint8_t WPS_OUI[4]; // = { 0u, 80u, 242u, 4u }; extern mac_monitor_ptr mac_monitor_callback; extern struct mlme_handler mlme_sta_tbl[14]; /* = { @@ -1282,18 +1222,16 @@ extern const struct fwevent wlanevents[24]; /* = extern u8 *get_hdr_bssid(u8 *pframe); extern int filter_packet(u8 *buf, int length); extern signed int promisc_get_encrypt(_adapter *padapter, uint8_t *bssid); +extern void promisc_info_get(_adapter *padapter, struct recv_frame *prframe, ieee80211_frame_info_t *ppromisc_info, int a4); extern void promisc_set_enable(_adapter *padapter, int enabled, int len_used); extern void promisc_deinit(_adapter *padapter); +extern int promisc_recv_func(_adapter *padapter, struct recv_frame *rframe); extern int promisc_set(rtw_rcr_level_t enabled, void (*callback)(u8 *, unsigned int, void *), int len_used); extern int promisc_set_mgntframe(int result); extern int is_promisc_enabled(); extern void promisc_issue_probereq(); extern void promisc_issue_probersp(u8 *da); -extern int promisc_get_fixed_channel(void *fixed_bssid, uint8_t *ssid, int *ssid_length); -/* -extern void promisc_info_get(_adapter *padapter, union recv_frame *prframe, ieee80211_frame_info_t *ppromisc_info, int a4); -extern int promisc_recv_func(_adapter *padapter, union recv_frame *rframe); -*/ +extern int promisc_get_fixed_channel(void *fixed_bssid, uint8_t *ssid, int *ssid_length); // Data declarations extern void (*promisc_callback_all)(u8 *, unsigned int, void *); extern _sema promisc_sema; @@ -1316,20 +1254,18 @@ extern void CalcMIC(OCTET_STRING EAPOLMsgSend, int algo, u8 *key, int keylen); extern int DecWPA2KeyData(WPA_STA_INFO *pStaInfo, u8 *key, int keylen, u8 *kek, int keklen, u8 *kout); extern int DecGTK(OCTET_STRING EAPOLMsgRecvd, u8 *kek, int keklen, int keylen, u8 *kout); extern void ToDrv_SetGTK(_adapter *padapter); -extern void ResendTimeout(void *task_psta, _irqL a2); -extern void set_wpa_global_PSK(u8 *key); -extern void psk_derive(_adapter *padapter, u8 *passphrase, u8 *ssid); -extern int tkip_send_mic_failure_report(_adapter *padapter); -/* extern void init_wpa_sta_info(_adapter *padapter, struct sta_info *psta); extern void SendEAPOL(_adapter *padapter, struct sta_info *psta, int resend); extern void ClientSendEAPOL(_adapter *padapter, struct sta_info *psta, int resend); +extern void ResendTimeout(void *task_psta, _irqL a2); extern void EAPOLKeyRecvd(_adapter *padapter, struct sta_info *psta); extern void ClientEAPOLKeyRecvd(_adapter *padapter, struct sta_info *psta); +extern void set_wpa_global_PSK(u8 *key); +extern void psk_derive(_adapter *padapter, u8 *passphrase, u8 *ssid); extern void psk_init(_adapter *padapter, u8 *pie, int ielen); extern int psk_strip_rsn_pairwise(uint8_t *ie, int ie_len); extern int psk_strip_wpa_pairwise(uint8_t *ie, int ie_len); -*/ +extern int tkip_send_mic_failure_report(_adapter *padapter); // Data declarations extern uint8_t psk_essid[2][36]; extern uint8_t psk_passphrase[2][65]; @@ -1343,11 +1279,8 @@ extern void ips_enter(_adapter *padapter); extern int ips_leave(_adapter *padapter); extern signed int rtw_pwr_unassociated_idle(_adapter *adapter); extern void rtw_ps_processor(_adapter *padapter); -extern int PS_RDY_CHECK(_adapter *padapter); -extern int rtw_pm_set_tdma_param(_adapter *padapter, uint8_t tdma_slot_period, uint8_t tdma_rfon_period_len_1, uint8_t tdma_rfon_period_len_2, uint8_t tdma_rfon_period_len_3); -extern int rtw_pm_set_lps_dtim(_adapter *padapter, uint8_t lps_dtim); -/* extern void rtw_set_rpwm(PADAPTER padapter, uint8_t pslv); +extern int PS_RDY_CHECK(_adapter *padapter); extern void rtw_set_ps_mode(PADAPTER padapter, int ps_mode, int smart_ps, int bcn_ant_mode); extern int32_t LPS_RF_ON_check(PADAPTER padapter, uint32_t delay_ms); extern void LPS_Enter(PADAPTER padapter); @@ -1358,61 +1291,60 @@ extern void rtw_free_pwrctrl_priv(PADAPTER adapter); extern int rtw_pwr_wakeup(_adapter *padapter, uint32_t ips_deffer_ms, const char *caller); extern int rtw_pm_set_lps(_adapter *padapter, int mode); extern int rtw_pm_set_ips(_adapter *padapter, int mode); +extern int rtw_pm_set_tdma_param(_adapter *padapter, uint8_t tdma_slot_period, uint8_t tdma_rfon_period_len_1, uint8_t tdma_rfon_period_len_2, uint8_t tdma_rfon_period_len_3); +extern int rtw_pm_set_lps_dtim(_adapter *padapter, uint8_t lps_dtim); extern int rtw_pm_get_lps_dtim(_adapter *padapter); -*/ // Data declarations //-------------------------------- // rtw_recv.o // Function declarations +extern uint8_t *recvframe_pull(uint8_t *result, sint sz); +extern uint8_t *recvframe_pull_tail(uint8_t *result, sint sz); extern void rtw_signal_stat_timer_hdl(void *FunctionContext); extern void rtw_init_sta_recv_priv(struct sta_recv_priv *psta_recvpriv); extern sint rtw_init_recv_priv(struct recv_priv *precvpriv, _adapter *padapter); extern void rtw_mfree_recv_priv_lock(struct recv_priv *precvpriv); -extern void rtw_free_recvframe_queue(_queue *pframequeue, _queue *pfree_recv_queue); -extern union recv_frame *portctrl(_adapter *adapter, union recv_frame *precv_frame); -extern sint recv_decache(union recv_frame *precv_frame, uint8_t bretry, struct stainfo_rxcache *prxcache); -extern void process_pwrbit_data(_adapter *padapter, union recv_frame *precv_frame, int a3, int a4); -extern void process_wmmps_data(_adapter *padapter, union recv_frame *precv_frame); -extern void count_rx_stats(_adapter *padapter, union recv_frame *prframe, struct sta_info *sta); -extern sint sta2sta_data_frame(_adapter *adapter, union recv_frame *precv_frame, struct sta_info **psta, int a4); -extern sint ap2sta_data_frame(_adapter *adapter, union recv_frame *precv_frame, struct sta_info **psta); -extern sint sta2ap_data_frame(_adapter *adapter, union recv_frame *precv_frame, struct sta_info **psta); -extern sint validate_recv_ctrl_frame(_adapter *padapter, union recv_frame *precv_frame); -extern sint validate_recv_data_frame(_adapter *adapter, union recv_frame *precv_frame); -extern sint wlanhdr_to_ethhdr(union recv_frame *precvframe, int a2, int a3); -extern union recv_frame *recvframe_defrag(_adapter *adapter, _queue *defrag_q); -extern _queue *recvframe_chk_defrag(PADAPTER padapter, union recv_frame *precv_frame); -extern sint validate_recv_mgnt_frame(PADAPTER padapter, union recv_frame **pprecv_frame); -extern sint validate_recv_frame(_adapter *adapter, union recv_frame **pprecv_frame); -extern int amsdu_to_msdu(_adapter *padapter, union recv_frame *prframe); -extern int check_indicate_seq(struct recv_reorder_ctrl *preorder_ctrl, int seq_num); -extern int enqueue_reorder_recvframe(struct recv_reorder_ctrl *preorder_ctrl, union recv_frame *prframe); -extern int recv_indicatepkts_in_order(_adapter *padapter, struct recv_reorder_ctrl *preorder_ctrl, int bforced); -extern int recv_indicatepkt_reorder(_adapter *padapter, union recv_frame *prframe, int a3); -extern void rtw_free_recv_priv(struct recv_priv *precvpriv); -extern int recv_func_prehandle(_adapter *padapter, union recv_frame *rframe, int a3); -extern int recv_func_posthandle(_adapter *padapter, union recv_frame *prframe); -extern int recv_func(_adapter *padapter, union recv_frame *rframe, int a3); -extern void rtw_recv_tasklet(thread_context context); -/* -extern sint recvframe_chkmic(_adapter *adapter, union recv_frame *precvframe, int a3, int a4); -extern union recv_frame *decryptor(_adapter *padapter, union recv_frame *precv_frame); -extern uint8_t *recvframe_pull(uint8_t *result, sint sz); -extern uint8_t *recvframe_pull_tail(uint8_t *result, sint sz); extern struct list_head *rtw_alloc_recvframe(_queue *pfree_recv_queue); //struct list_head *rtw_alloc_recvframe(_queue *pfree_recv_queue, _irqL a2, int a3); -extern int rtw_free_recvframe(union recv_frame *precvframe, _queue *pfree_recv_queue); -extern sint rtw_enqueue_recvframe(union recv_frame *precvframe, _queue *queue); -extern sint rtw_enqueue_recvframe(union recv_frame *precvframe, _queue *queue); +extern int rtw_free_recvframe(struct recv_frame *precvframe, _queue *pfree_recv_queue); +extern sint rtw_enqueue_recvframe(struct recv_frame *precvframe, _queue *queue); +extern sint rtw_enqueue_recvframe(struct recv_frame *precvframe, _queue *queue); +extern void rtw_free_recvframe_queue(_queue *pframequeue, _queue *pfree_recv_queue); extern int rtw_free_uc_swdec_pending_queue(_adapter *adapter, _irqL a2, int a3); +extern void rtw_free_recv_priv(struct recv_priv *precvpriv); extern sint rtw_enqueue_recvbuf_to_head(struct recv_buf *precvbuf, _queue *queue); -extern uint32_t rtw_free_buf_pending_queue(_adapter *adapter); +extern uint32_t rtw_free_buf_pending_queue(_adapter *adapter); extern sint rtw_enqueue_recvbuf(struct recv_buf *precvbuf, _queue *queue); extern struct list_head *rtw_dequeue_recvbuf(_queue *queue, _irqL a2, int a3); +extern sint recvframe_chkmic(_adapter *adapter, struct recv_frame *precvframe, int a3, int a4); +extern struct recv_frame *decryptor(_adapter *padapter, struct recv_frame *precv_frame); +extern struct recv_frame *portctrl(_adapter *adapter, struct recv_frame *precv_frame); +extern sint recv_decache(struct recv_frame *precv_frame, uint8_t bretry, struct stainfo_rxcache *prxcache); +extern void process_pwrbit_data(_adapter *padapter, struct recv_frame *precv_frame, int a3, int a4); +extern void process_wmmps_data(_adapter *padapter, struct recv_frame *precv_frame); +extern void count_rx_stats(_adapter *padapter, struct recv_frame *prframe, struct sta_info *sta); +extern sint sta2sta_data_frame(_adapter *adapter, struct recv_frame *precv_frame, struct sta_info **psta, int a4); +extern sint ap2sta_data_frame(_adapter *adapter, struct recv_frame *precv_frame, struct sta_info **psta); +extern sint sta2ap_data_frame(_adapter *adapter, struct recv_frame *precv_frame, struct sta_info **psta); +extern sint validate_recv_ctrl_frame(_adapter *padapter, struct recv_frame *precv_frame); +extern sint validate_recv_data_frame(_adapter *adapter, struct recv_frame *precv_frame); +extern sint wlanhdr_to_ethhdr(struct recv_frame *precvframe, int a2, int a3); +extern struct recv_frame *recvframe_defrag(_adapter *adapter, _queue *defrag_q); +extern _queue *recvframe_chk_defrag(PADAPTER padapter, struct recv_frame *precv_frame); +extern sint validate_recv_mgnt_frame(PADAPTER padapter, struct recv_frame **pprecv_frame); +extern sint validate_recv_frame(_adapter *adapter, struct recv_frame **pprecv_frame); +extern int amsdu_to_msdu(_adapter *padapter, struct recv_frame *prframe); +extern int check_indicate_seq(struct recv_reorder_ctrl *preorder_ctrl, int seq_num); +extern int enqueue_reorder_recvframe(struct recv_reorder_ctrl *preorder_ctrl, struct recv_frame *prframe); +extern int recv_indicatepkts_in_order(_adapter *padapter, struct recv_reorder_ctrl *preorder_ctrl, int bforced); +extern int recv_indicatepkt_reorder(_adapter *padapter, struct recv_frame *prframe, int a3); extern void rtw_reordering_ctrl_timeout_handler(void *pcontext, _irqL a2); -extern int process_recv_indicatepkts(_adapter *padapter, union recv_frame *prframe, int a3); -extern int32_t rtw_recv_entry(union recv_frame *precvframe, int a2, int a3); -*/ +extern int process_recv_indicatepkts(_adapter *padapter, struct recv_frame *prframe, int a3); +extern int recv_func_prehandle(_adapter *padapter, struct recv_frame *rframe, int a3); +extern int recv_func_posthandle(_adapter *padapter, struct recv_frame *prframe); +extern int recv_func(_adapter *padapter, struct recv_frame *rframe, int a3); +extern int32_t rtw_recv_entry(struct recv_frame *precvframe, int a2, int a3); +extern void rtw_recv_tasklet(thread_context context); // Data declarations extern const uint8_t SNAP_ETH_TYPE_APPLETALK_AARP[2]; // = { 128u, 243u }; extern const uint8_t SNAP_ETH_TYPE_IPX[2]; // = { 129u, 55u }; @@ -1427,27 +1359,24 @@ extern const uint8_t oui_rfc1042[3]; // = { 0u, 0u, 0u }; // Function declarations extern void rtw_wep_encrypt(_adapter *padapter, uint8_t *pxmitframe); extern void rtw_wep_decrypt(_adapter *padapter, uint8_t *precvframe); -extern void rtw_use_tkipkey_handler(void *FunctionContext); -extern void rtw_free_sec_priv(struct security_priv *psecpriv); -/* extern signed int rtw_tkip_encrypt(_adapter *padapter, uint8_t *pxmitframe); extern int rtw_tkip_decrypt(_adapter *padapter, uint8_t *precvframe); extern signed int rtw_aes_encrypt(_adapter *padapter, uint8_t *pxmitframe, int a3, int a4); extern int rtw_aes_decrypt(_adapter *padapter, uint8_t *precvframe, int a3, int a4); +extern void rtw_use_tkipkey_handler(void *FunctionContext); extern int rtw_init_sec_priv(_adapter *padapter); -*/ +extern void rtw_free_sec_priv(struct security_priv *psecpriv); // Data declarations //-------------------------------- // rtw_sta_mgt.o // Function declarations +extern int wifi_mac_hash(uint8_t *mac); extern void rtw_init_stainfo(struct sta_info *psta); extern int rtw_init_sta_priv(_adapter *padapter); extern void rtw_free_sta_xmit_priv_lock(struct sta_xmit_priv *psta_xmitpriv); extern void rtw_mfree_stainfo(struct sta_info *psta); extern void rtw_mfree_sta_priv_lock(struct sta_priv *pstapriv); extern signed int rtw_free_sta_priv(struct sta_priv *pstapriv); -/* -extern int wifi_mac_hash(uint8_t *mac); extern void init_addba_retry_timer(_adapter *padapter, struct sta_info *psta); extern struct sta_info *rtw_alloc_stainfo(struct sta_priv *pstapriv, uint8_t *hwaddr, _irqL a3, _irqL a4); extern signed int rtw_free_stainfo(_adapter *padapter, struct sta_info *psta, int a3); @@ -1455,7 +1384,6 @@ extern struct sta_info *rtw_get_stainfo(struct sta_priv *pstapriv, uint8_t *hwad extern signed int rtw_init_bcmc_stainfo(_adapter *padapter, int a2, int a3); extern struct sta_info *rtw_get_bcmc_stainfo(_adapter *padapter, int a2, int a3); extern void rtw_free_all_stainfo(_adapter *padapter, _irqL a2, int a3); -*/ // Data declarations //-------------------------------- // rtw_xmit.o @@ -1464,16 +1392,6 @@ extern void init_txservq(struct tx_servq *ptxservq); extern void set_qos(struct pkt_file *ppktfile, struct pkt_attrib *pattrib); extern void rtw_init_sta_xmit_priv(struct sta_xmit_priv *psta_xmitpriv); extern void rtw_mfree_xmit_priv_lock(struct xmit_priv *pxmitpriv); -extern void rtw_update_protection(_adapter *padapter, uint8_t *ie, unsigned int ie_len); -extern void rtw_free_xmitframe_queue(struct xmit_priv *pxmitpriv, _queue *pframequeue); -extern void rtw_alloc_hwxmits(_adapter *padapter); -extern void rtw_free_hwxmits(_adapter *padapter); -extern void rtw_free_xmit_priv(struct xmit_priv *pxmitpriv); -extern int32_t rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, _adapter *padapter); -extern void dequeue_xmitframes_to_sleeping_queue(_adapter *padapter, struct sta_info *psta, _queue *pframequeue); -extern void rtw_xmit_tasklet(thread_context context); -extern BOOL rtw_sctx_chk_waring_status(int status); -/* extern int qos_acm(uint8_t acm_mask, int priority); extern int32_t xmitframe_addmic(_adapter *padapter, struct xmit_frame *pxmitframe); extern int32_t xmitframe_swencrypt(_adapter *padapter, struct xmit_frame *pxmitframe); @@ -1483,26 +1401,34 @@ extern int32_t rtw_txframes_sta_ac_pending(_adapter *padapter, struct pkt_attrib extern void rtw_txframes_update_attrib_vcs_info(_adapter *padapter, struct xmit_frame *pxmitframe); extern int rtw_calculate_wlan_pkt_size_by_attribue(struct pkt_attrib *pattrib); extern int32_t rtw_put_snap(uint8_t *data, int h_proto); +extern void rtw_update_protection(_adapter *padapter, uint8_t *ie, unsigned int ie_len); extern void rtw_count_tx_stats(PADAPTER padapter, struct xmit_frame *pxmitframe, uint64_t sz); extern int32_t rtw_free_xmitbuf_ext(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf, int a3); extern struct list_head *rtw_alloc_xmitframe(struct xmit_priv *pxmitpriv, _irqL a2); extern int32_t rtw_free_xmitframe(struct xmit_priv *pxmitpriv, struct xmit_frame *pxmitframe); +extern void rtw_free_xmitframe_queue(struct xmit_priv *pxmitpriv, _queue *pframequeue); extern struct tx_servq *rtw_get_sta_pending(_adapter *padapter, struct sta_info *psta, sint up, uint8_t *ac); extern struct sta_info *rtw_xmit_classifier(_adapter *padapter, struct xmit_frame *pxmitframe); extern BOOL rtw_xmitframe_enqueue(_adapter *padapter, struct xmit_frame *pxmitframe); +extern void rtw_alloc_hwxmits(_adapter *padapter); +extern void rtw_free_hwxmits(_adapter *padapter); +extern void rtw_free_xmit_priv(struct xmit_priv *pxmitpriv); extern void rtw_init_hwxmits(struct hw_xmit *phwxmit, sint entry); +extern int32_t rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, _adapter *padapter); extern signed int rtw_get_ff_hwaddr(struct xmit_frame *pxmitframe); extern sint xmitframe_enqueue_for_sleeping_sta(_adapter *padapter, struct xmit_frame *pxmitframe); +extern void dequeue_xmitframes_to_sleeping_queue(_adapter *padapter, struct sta_info *psta, _queue *pframequeue); extern void stop_sta_xmit(_adapter *padapter, struct sta_info *psta); extern void wakeup_sta_to_xmit(_adapter *padapter, struct sta_info *psta); extern void xmit_delivery_enabled_frames(_adapter *padapter, struct sta_info *psta, int a3); +extern void rtw_xmit_tasklet(thread_context context); extern int32_t rtw_xmit(_adapter *padapter, _pkt **ppkt); +extern BOOL rtw_sctx_chk_waring_status(int status); extern void rtw_sctx_done_err(struct submit_ctx **sctx, int status); extern struct list_head *rtw_alloc_xmitbuf(struct xmit_priv *pxmitpriv, _irqL a2); extern int32_t rtw_free_xmitbuf(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf, int a3); extern struct xmit_buf *rtw_alloc_xmitbuf_ext(struct xmit_priv *pxmitpriv, uint32_t size, int a3); extern void rtw_sctx_done(struct submit_ctx **sctx); -*/ // Data declarations //-------------------------------- // phydm_RegConfig8195A.o @@ -1512,9 +1438,7 @@ extern void odm_ConfigRF_RadioA_8195A(PDM_ODM_T pDM_Odm, u4Byte Addr, u4Byte Dat extern void odm_ConfigBB_AGC_8195A(PDM_ODM_T pDM_Odm, u4Byte Addr, u4Byte Bitmask, u4Byte Data); extern void odm_ConfigBB_PHY_REG_PG_8195A(PDM_ODM_T pDM_Odm, u4Byte Band, u4Byte RfPath, u4Byte TxNum, u4Byte Addr, u4Byte Bitmask, u4Byte Data); extern void odm_ConfigBB_PHY_8195A(PDM_ODM_T pDM_Odm, u4Byte Addr, u4Byte Bitmask, u4Byte Data); -/* extern void odm_ConfigBB_TXPWR_LMT_8195A(PDM_ODM_T pDM_Odm, int Regulation, int Band, int Bandwidth, u1Byte RateSection, u1Byte RfPath, u1Byte Channel, u1Byte PowerLimit); -*/ // Data declarations //-------------------------------- // lxbus_hci_intf.o @@ -1523,16 +1447,12 @@ extern struct dvobj_priv *hci_lxbus_dvobj_init(); extern void hci_lxbus_dvobj_deinit(struct dvobj_priv *dvobj); extern void hci_lxbus_dvobj_request_irq(struct dvobj_priv *dvobj); extern void hci_lxbus_free_irq(struct dvobj_priv *dvobj); -/* extern void hci_lxbus_intf_stop(PADAPTER padapter); -*/ // Data declarations //-------------------------------- // lxbus_intf.o // Function declarations -/* extern signed int lextra_bus_dma_Interrupt(void *data); -*/ // Data declarations //-------------------------------- // lxbus_ops.o @@ -1545,20 +1465,14 @@ extern uint32_t bus_read32(struct dvobj_priv *pintfhdl, uint32_t addr, int32_t * extern int bus_read16(struct dvobj_priv *pintfhdl, uint32_t addr, int32_t *err); extern int bus_read8(struct dvobj_priv *pintfhdl, uint32_t addr, int32_t *err); extern void rtl8195a_free_tx_ring(_adapter *padapter, unsigned int prio); +extern signed int rtl8195a_init_desc_ring(_adapter *padapter); +extern signed int rtl8195a_free_desc_ring(_adapter *padapter); +extern void rtl8195a_reset_desc_ring(_adapter *padapter, _irqL a2, int a3); extern void InitLxDmaRtl8195a(_adapter *Adapter); extern void rtl8195a_prepare_bcn_tasklet(void *priv); extern signed int get_txdesc_buf_addr(int ff_hwaddr); extern signed int rtl8195a_check_txdesc_closed(_adapter *padapter, uint32_t queue_idx, uint32_t index); extern void rtl8195a_tx_isr(PADAPTER Adapter, int prio); -extern signed int CheckRxTgRtl8195a(_adapter *padapter, uint8_t *rx_desc, uint16_t rx_queue_idx); -extern int rtl8192ee_check_rxdesc_remain(_adapter *padapter, int rx_queue_idx); -extern void rtl8195a_recv_tasklet(void *priv); -extern void rtl8195a_xmit_tasklet(void *priv); -extern void lxbus_set_intf_ops(struct _io_ops *pops); -/* -extern signed int rtl8195a_init_desc_ring(_adapter *padapter); -extern signed int rtl8195a_free_desc_ring(_adapter *padapter); -extern void rtl8195a_reset_desc_ring(_adapter *padapter, _irqL a2, int a3); extern signed int InterruptRecognized8195a(PADAPTER Adapter); extern void InitInterrupt8195a(PADAPTER padapter); extern void EnableDMA8195a(PADAPTER padapter); @@ -1566,9 +1480,13 @@ extern void EnableInterrupt8195a(PADAPTER padapter); extern void DisableDMA8195a(PADAPTER padapter); extern void DisableInterrupt8195a(PADAPTER padapter); extern void UpdateInterruptMask8195a(PADAPTER Adapter, uint32_t *pAddMSRB, uint32_t *pRemoveMSR); +extern signed int CheckRxTgRtl8195a(_adapter *padapter, uint8_t *rx_desc, uint16_t rx_queue_idx); +extern int rtl8192ee_check_rxdesc_remain(_adapter *padapter, int rx_queue_idx); +extern void rtl8195a_recv_tasklet(void *priv); extern void rtl8195a_tx_int_handler(_adapter *padapter, int a2, int a3); extern int32_t InterruptHandle8195a(_adapter *padapter, int a2, int a3); -*/ +extern void rtl8195a_xmit_tasklet(void *priv); +extern void lxbus_set_intf_ops(struct _io_ops *pops); // Data declarations extern uint8_t rx_ring_pool[4][2104]; extern u16 CSWTCH_48[8]; // = { 928, 932, 936, 940, 936, 944, 952, 936 }; @@ -1600,9 +1518,7 @@ extern BOOL Phydm_CalNHMcnt(PVOID pDM_VOID); extern void Phydm_CheckEnvironment(PVOID pDM_VOID); extern void Phydm_SearchPwdBLowerBound(PVOID pDM_VOID); extern void Phydm_AdaptivityInit(PVOID pDM_VOID); -/* extern void Phydm_Adaptivity(PVOID pDM_VOID, int IGI); -*/ // Data declarations //-------------------------------- // PhyDM_AntDiv.o @@ -1614,9 +1530,7 @@ extern void ODM_SwAntDivRestAfterLink(PDM_ODM_T pDM_Odm); // Function declarations extern void ODM_CfoTrackingInit(PVOID pDM_VOID); extern void ODM_CfoTracking(PVOID pDM_VOID); -/* extern void ODM_ParsingCFO(PVOID pDM_VOID, PVOID pPktinfo_VOID, s1Byte *pcfotail); -*/ // Data declarations //-------------------------------- // phydm_debug.o @@ -1689,8 +1603,7 @@ extern void odm_TXPowerTrackingThermalMeterInit(PVOID pDM_VOID); extern void odm_TXPowerTrackingCheckIOT(PVOID pDM_VOID); extern void ODM_TXPowerTrackingCheck(PVOID pDM_VOID); // Data declarations -/* -extern const u4Byte OFDMSwingTable_New[43] = +extern const u4Byte OFDMSwingTable_New[43]; /* = { 188743725u, 201326640u, 213909555u, 226492470u, 239075385u, 251658300u, 268435520u, 285212740u, 301989960u, 318767180u, 339738705u, 360710230u, 381681755u, 402653280u, @@ -1715,33 +1628,31 @@ extern u4Byte ODM_Get_Rate_Bitmap(PVOID pDM_VOID, u4Byte macid, u4Byte ra_mask, //------------------------------------------------------------------------- // hal_com_phycfg.o // Function declarations -/* extern int PHY_GetTxPowerByRateBase(PADAPTER Adapter, int Band, int RfPath, int TxNum, RATE_SECTION RateSection); +extern void phy_SetTxPowerByRateBase(PADAPTER Adapter, int Band, int RfPath, RATE_SECTION RateSection, uint8_t TxNum, uint8_t Value); extern void PHY_GetRateValuesOfTxPowerByRate(PADAPTER pAdapter, uint32_t RegAddr, uint32_t BitMask, uint32_t Value, uint8_t *RateIndex, int8_t *PwrByRateVal, uint8_t *RateNum); +extern void PHY_StoreTxPowerByRateNew(PADAPTER pAdapter, uint32_t Band, uint32_t RfPath, uint32_t TxNum, uint32_t RegAddr, uint32_t BitMask, uint32_t Data); +extern void PHY_InitTxPowerByRate(PADAPTER pAdapter); extern void PHY_StoreTxPowerByRate(PADAPTER pAdapter, uint32_t Band, uint32_t RfPath, uint32_t TxNum, uint32_t RegAddr, uint32_t BitMask, uint32_t Data); +extern signed int phy_GetChnlIndex(int Channel, uint8_t *ChannelIdx); extern signed int PHY_GetTxPowerIndexBase(PADAPTER pAdapter, int RFPath, int Rate, CHANNEL_WIDTH BandWidth, uint8_t Channel, PBOOLEAN bIn24G); extern PADAPTER PHY_GetTxPowerTrackingOffset(PADAPTER result, int RFPath, int Rate); extern int PHY_GetRateIndexOfTxPowerByRate(uint8_t Rate); extern unsigned int PHY_GetTxPowerByRate(PADAPTER pAdapter, int Band, int RFPath, int TxNum, uint8_t Rate); +extern void phy_StoreTxPowerByRateBase(PADAPTER pAdapter); extern void PHY_SetTxPowerByRate(PADAPTER pAdapter, int Band, int RFPath, int TxNum, uint8_t Rate, int8_t Value); +extern void phy_ConvertTxPowerByRateInDbmToRelativeValues(PADAPTER pAdapter); +extern void PHY_TxPowerByRateConfiguration(PADAPTER pAdapter); extern void PHY_SetTxPowerIndexByRateArray(PADAPTER pAdapter, int RFPath, CHANNEL_WIDTH BandWidth, uint8_t Channel, uint8_t *Rates, uint8_t RateArraySize); extern void PHY_SetTxPowerIndexByRateSection(PADAPTER pAdapter, int RFPath, uint8_t Channel, int RateSection); extern void PHY_SetTxPowerLevelByPath(PADAPTER Adapter, uint8_t channel, int path); -extern int PHY_GetTxPowerLimit(PADAPTER Adapter, uint32_t RegPwrTblSel, BAND_TYPE Band, CHANNEL_WIDTH Bandwidth, uint8_t RfPath, uint8_t DataRate, uint8_t Channel); -extern void PHY_SetTxPowerLimit(PADAPTER Adapter, int Regulation, int Band, int Bandwidth, uint8_t RateSection, uint8_t RfPath, uint8_t Channel, uint8_t PowerLimit); -extern int PHY_GetTxPowerIndex(PADAPTER pAdapter, int RFPath, int Rate, CHANNEL_WIDTH BandWidth, uint8_t Channel); -*/ -extern void PHY_ConvertTxPowerLimitToPowerIndex(PADAPTER Adapter); -extern void PHY_InitTxPowerLimit(PADAPTER Adapter); -extern void phy_StoreTxPowerByRateBase(PADAPTER pAdapter); -extern void phy_ConvertTxPowerByRateInDbmToRelativeValues(PADAPTER pAdapter); -extern void PHY_TxPowerByRateConfiguration(PADAPTER pAdapter); extern signed int phy_GetWorldWideLimit(int8_t *LimitTable, int regulation, int16_t channel); extern int phy_GetChannelIndexOfTxPowerLimit(int Band, uint8_t Channel); -extern void PHY_StoreTxPowerByRateNew(PADAPTER pAdapter, uint32_t Band, uint32_t RfPath, uint32_t TxNum, uint32_t RegAddr, uint32_t BitMask, uint32_t Data); -extern void phy_SetTxPowerByRateBase(PADAPTER Adapter, int Band, int RfPath, RATE_SECTION RateSection, uint8_t TxNum, uint8_t Value); -extern void PHY_InitTxPowerByRate(PADAPTER pAdapter); -extern signed int phy_GetChnlIndex(int Channel, uint8_t *ChannelIdx); +extern int PHY_GetTxPowerLimit(PADAPTER Adapter, uint32_t RegPwrTblSel, BAND_TYPE Band, CHANNEL_WIDTH Bandwidth, uint8_t RfPath, uint8_t DataRate, uint8_t Channel); +extern void PHY_ConvertTxPowerLimitToPowerIndex(PADAPTER Adapter); +extern void PHY_InitTxPowerLimit(PADAPTER Adapter); +extern void PHY_SetTxPowerLimit(PADAPTER Adapter, int Regulation, int Band, int Bandwidth, uint8_t RateSection, uint8_t RfPath, uint8_t Channel, uint8_t PowerLimit); +extern int PHY_GetTxPowerIndex(PADAPTER pAdapter, int RFPath, int Rate, CHANNEL_WIDTH BandWidth, uint8_t Channel); // Data declarations //------------------------------------------------------------------------- // Data declarations @@ -1772,6 +1683,7 @@ extern signed int Hal_EfuseWordEnableDataWrite(PADAPTER padapter, int efuse_addr extern void Hal_EfusePowerSwitch(PADAPTER padapter, int bWrite, int PwrState); extern void rtl8195a_free_hal_data(PADAPTER padapter); extern void StopTxBeacon(PADAPTER padapter); +extern void SetHalODMVar8195A(PADAPTER Adapter, HAL_ODM_VARIABLE eVariable, PVOID pValue1, int bSet); extern void rtl8195a_start_thread(_adapter *padapter); extern void rtl8195a_stop_thread(_adapter *padapter); extern void Hal_ReadEFuse(PADAPTER padapter, int efuseType, int _offset, int _size_byte, uint8_t *pbuf, uint8_t bPseudoTest); @@ -1781,43 +1693,36 @@ extern void rtw_flash_map_erase(PADAPTER padapter, int a2, int a3, uint32_t a4); extern int32_t Hal_EfusePgPacketWrite(PADAPTER padapter, uint8_t offset, int word_en, uint8_t *pData, uint8_t bPseudoTest); extern int Hal_EfuseGetCurrentSize(PADAPTER pAdapter, uint8_t efuseType, int bPseudoTest); extern signed int rtw_flash_map_write(PADAPTER padapter, uint16_t addr, uint16_t cnts, uint8_t *data); +extern int32_t rtl8195a_FirmwareDownload(PADAPTER padapter, BOOLEAN bUsedWoWLANFw); extern void rtl8195a_InitBeaconParameters(PADAPTER padapter); extern void InitBurstPktLen_8195AB(PADAPTER Adapter); extern void rtl8195a_set_hal_ops(struct hal_ops *pHalFunc); -extern signed int Hal_GetChnlGroup8195A(int Channel, uint8_t *pGroup); -extern void Hal_EfuseParseIDCode(PADAPTER padapter, uint8_t *hwinfo); -extern void Hal_ReadPowerValueFromPROM_8195A(PADAPTER Adapter, PTxPowerInfo24G pwrInfo24G, uint8_t *PROMContent, int AutoLoadFail); -extern void Hal_EfuseParsePackageType_8195A(PADAPTER pAdapter, uint8_t *hwinfo, int a3); -extern void Hal_EfuseParseChnlPlan_8195A(PADAPTER padapter, uint8_t *hwinfo, BOOLEAN AutoLoadFail); -extern int BWMapping_8195A(PADAPTER Adapter, struct pkt_attrib *pattrib); -extern signed int SCMapping_8195A(PADAPTER Adapter, struct pkt_attrib *pattrib); -extern void rtl8195a_update_txdesc(struct xmit_frame *pxmitframe, uint8_t *pbuf); -/* -extern void SetHalODMVar8195A(PADAPTER Adapter, HAL_ODM_VARIABLE eVariable, PVOID pValue1, int bSet); -extern int32_t rtl8195a_FirmwareDownload(PADAPTER padapter, BOOLEAN bUsedWoWLANFw); extern int32_t rtl8195a_InitLLTTable(PADAPTER padapter); +extern signed int Hal_GetChnlGroup8195A(int Channel, uint8_t *pGroup); extern signed int rtw_flash_read(PADAPTER padapter, int addr, int cnts, uint8_t *data); extern signed int rtw_flash_write(PADAPTER padapter, int addr, int cnts, uint8_t *data); extern int rtw_config_map_read(PADAPTER padapter, int addr, int cnts, uint8_t *data, uint8_t efuse); extern int rtw_config_map_write(PADAPTER padapter, int addr, int cnts, uint8_t *data, uint8_t efuse); extern void Hal_InitPGData(PADAPTER padapter, uint8_t *PROMContent, int a3, int a4); +extern void Hal_EfuseParseIDCode(PADAPTER padapter, uint8_t *hwinfo); +extern void Hal_ReadPowerValueFromPROM_8195A(PADAPTER Adapter, PTxPowerInfo24G pwrInfo24G, uint8_t *PROMContent, int AutoLoadFail); extern void Hal_EfuseParseTxPowerInfo_8195A(PADAPTER padapter, uint8_t *PROMContent, int AutoLoadFail); extern void Hal_EfuseParseEEPROMVer_8195A(PADAPTER padapter, uint8_t *hwinfo, int AutoLoadFail); +extern void Hal_EfuseParsePackageType_8195A(PADAPTER pAdapter, uint8_t *hwinfo, int a3); +extern void Hal_EfuseParseChnlPlan_8195A(PADAPTER padapter, uint8_t *hwinfo, BOOLEAN AutoLoadFail); extern void Hal_EfuseParseCustomerID_8195A(PADAPTER padapter, uint8_t *hwinfo, int AutoLoadFail); extern void Hal_EfuseParseXtal_8195A(PADAPTER pAdapter, uint8_t *hwinfo, int AutoLoadFail); extern void Hal_EfuseParseThermalMeter_8195A(PADAPTER padapter, uint8_t *PROMContent, int AutoLoadFail); extern void Hal_ReadRFGainOffset(PADAPTER Adapter, uint8_t *PROMContent, int AutoloadFail); +extern int BWMapping_8195A(PADAPTER Adapter, struct pkt_attrib *pattrib); +extern signed int SCMapping_8195A(PADAPTER Adapter, struct pkt_attrib *pattrib); +extern void rtl8195a_update_txdesc(struct xmit_frame *pxmitframe, uint8_t *pbuf); extern void rtl8195a_fill_fake_txdesc(PADAPTER padapter, uint8_t *pDesc, uint32_t BufferLen, int IsPsPoll, uint8_t IsBTQosNull, uint8_t bDataFrame); extern void SetHwReg8195A(PADAPTER padapter, int variable, uint8_t *val); extern void GetHwReg8195A(PADAPTER padapter, int variable, uint8_t *val); extern signed int SetHalDefVar8195A(PADAPTER padapter, HAL_DEF_VARIABLE variable, void *pval); extern signed int GetHalDefVar8195A(PADAPTER padapter, HAL_DEF_VARIABLE variable, void *pval); -*/ // Data declarations -struct map_mask_s { - uint16_t mask_start; - uint16_t mask_end; -}; extern const struct map_mask_s efuse_map_mask[4]; // = { { 32u, 207u }, { 220u, 221u }, { 282u, 311u }, { 313u, 319u } }; extern const struct map_mask_s flash_map_mask[2]; // = { { 32u, 311u }, { 313u, 319u } }; //-------------------------------- @@ -1826,26 +1731,24 @@ extern const struct map_mask_s flash_map_mask[2]; // = { { 32u, 311u }, { 313u, extern int rtw_ht_operation_update(_adapter *padapter); extern void associated_clients_update_0(_adapter *padapter, int updated, int a3); extern signed int chk_sta_is_alive(struct sta_info *psta); +extern void add_RATid(_adapter *padapter, struct sta_info *psta, int rssi_level); +extern void update_sta_info_apmode(_adapter *padapter, struct sta_info *psta, int a3); +extern void update_beacon(_adapter *padapter, int ie_id, uint8_t *oui, uint8_t tx); extern int rtw_check_beacon_data(_adapter *padapter, uint8_t *pbuf, int len); +extern void associated_clients_update(_adapter *padapter, int updated, int a3); extern void bss_cap_update_on_sta_join(_adapter *padapter, struct sta_info *psta); +extern signed int bss_cap_update_on_sta_leave(_adapter *padapter, struct sta_info *psta); +extern signed int ap_free_sta(_adapter *padapter, struct sta_info *psta, int reason); extern void expire_timeout_chk(_adapter *padapter); extern int rtw_sta_flush(_adapter *padapter); +extern void free_mlme_ap_info(_adapter *padapter, _irqL a2); extern void sta_info_update(_adapter *padapter, struct sta_info *psta); extern void ap_sta_info_defer_update(_adapter *padapter, struct sta_info *psta); extern void start_ap_mode(_adapter *padapter); extern void init_mlme_ap_info(_adapter *padapter); -extern int set_hidden_ssid(const char *ifname, uint8_t value); -/* -extern void add_RATid(_adapter *padapter, struct sta_info *psta, int rssi_level); -extern void update_sta_info_apmode(_adapter *padapter, struct sta_info *psta, int a3); -extern void update_beacon(_adapter *padapter, int ie_id, uint8_t *oui, uint8_t tx); -extern void associated_clients_update(_adapter *padapter, int updated, int a3); -extern signed int bss_cap_update_on_sta_leave(_adapter *padapter, struct sta_info *psta); -extern signed int ap_free_sta(_adapter *padapter, struct sta_info *psta, int reason); -extern void free_mlme_ap_info(_adapter *padapter, _irqL a2); extern void stop_ap_mode(_adapter *padapter, _irqL a2); extern uint32_t rtw_generate_bcn_ie(_adapter *adapter, uint8_t *ssid, int ssid_len, uint8_t *ie); -*/ +extern int set_hidden_ssid(const char *ifname, uint8_t value); // Data declarations //-------------------------------- diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/phydm.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/phydm.h index ac34dbb..e7f015e 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/phydm.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/phydm.h @@ -1277,7 +1277,7 @@ typedef struct DM_Out_Source_Dynamic_Mechanism_Structure //-----------HOOK BEFORE REG INIT-----------// // ODM Platform info AP/ADSL/CE/MP = 1/2/3/4 u1Byte SupportPlatform; - // ODM Support Ability DIG/RATR/TX_PWR_TRACK/ �K�K = 1/2/3/�K + // ODM Support Ability DIG/RATR/TX_PWR_TRACK/ KK = 1/2/3/K u4Byte SupportAbility; // ODM PCIE/USB/SDIO = 1/2/3 u1Byte SupportInterface; @@ -1491,7 +1491,7 @@ typedef struct DM_Out_Source_Dynamic_Mechanism_Structure PROM_INFO pROMInfo; FALSE_ALARM_STATISTICS FalseAlmCnt; - CFO_TRACKING DM_CfoTrack; + CFO_TRACKING DM_CfoTrack; FALSE_ALARM_STATISTICS FlaseAlmCntBuddyAdapter; //#ifdef CONFIG_ANTENNA_DIVERSITY diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/phydm_types.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/phydm_types.h index 07332d5..71cbafc 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/phydm_types.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/phydm_types.h @@ -375,10 +375,10 @@ typedef enum _RT_SPINLOCK_TYPE{ typedef unsigned short u2Byte,*pu2Byte; typedef unsigned int u4Byte,*pu4Byte; typedef unsigned long long u8Byte,*pu8Byte; - typedef signed char s1Byte,*ps1Byte; /* GCC ROM char = unsigned char */ + typedef signed char s1Byte,*ps1Byte; /* GCC ROM char = unsigned char */ typedef signed short s2Byte,*ps2Byte; - typedef signed long s4Byte,*ps4Byte; - typedef long long s8Byte,*ps8Byte; + typedef signed long s4Byte,*ps4Byte; + typedef long long s8Byte,*ps8Byte; typedef struct sta_info STA_INFO_T,*PSTA_INFO_T; diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/rtl8195a/ROM_RTL8195A_PHYDM.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/rtl8195a/ROM_RTL8195A_PHYDM.h index 09ce243..7123055 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/rtl8195a/ROM_RTL8195A_PHYDM.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/hal/OUTSRC/rtl8195a/ROM_RTL8195A_PHYDM.h @@ -20,7 +20,6 @@ #ifndef __ROM_RTL8195A_PHYDM_H__ #define __ROM_RTL8195A_PHYDM_H__ -#ifndef _RTL_BIOS_DATA_H_ typedef struct _FALSE_ALARM_STATISTICS{ u4Byte Cnt_Parity_Fail; u4Byte Cnt_Rate_Illegal; @@ -57,19 +56,16 @@ typedef struct _CFO_TRACKING_ u1Byte CFO_TH_ATC; }CFO_TRACKING, *PCFO_TRACKING; - -extern FALSE_ALARM_STATISTICS FalseAlmCnt; -extern CFO_TRACKING DM_CfoTrack; - typedef struct _ROM_INFO{ u1Byte EEPROMVersion; u1Byte CrystalCap; u8Byte DebugComponents; u4Byte DebugLevel; -} ROM_INFO, *PROM_INFO; +}ROM_INFO, *PROM_INFO; +extern FALSE_ALARM_STATISTICS FalseAlmCnt; +extern CFO_TRACKING DM_CfoTrack; extern ROM_INFO ROMInfo; -#endif u1Byte ROM_odm_QueryRxPwrPercentage( diff --git a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/osdep/freertos/wrapper.h b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/osdep/freertos/wrapper.h index c2ddd40..52870d2 100644 --- a/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/osdep/freertos/wrapper.h +++ b/RTL00_SDKV35a/component/common/drivers/wlan/realtek/src/osdep/freertos/wrapper.h @@ -414,7 +414,7 @@ struct net_device_stats { struct net_device { char name[16]; void *priv; /* pointer to private data */ - unsigned char dev_addr[6]; /* set during bootup */ + unsigned char dev_addr[6]; /* set during bootup */ int (*init)(void); int (*open)(struct net_device *dev); int (*stop)(struct net_device *dev); @@ -444,13 +444,11 @@ int dev_alloc_name(struct net_device *net_dev, const char *ifname); //----- ------------------------------------------------------------------ void init_timer(struct timer_list *timer); void mod_timer(struct timer_list *timer, u32 delay_time_ms); -void cancel_timer_ex(struct timer_list * timer); +void cancel_timer_ex(struct timer_list * timer); void del_timer_sync(struct timer_list * timer); void init_timer_wrapper(void); void deinit_timer_wrapper(void); -typedef void (*TIMER_FUN)(void *context); - void rtw_init_timer(_timer *ptimer, void *adapter, TIMER_FUN pfunc,void* cntx, const char *name); void rtw_set_timer(_timer *ptimer,u32 delay_time); u8 rtw_cancel_timer(_timer *ptimer); diff --git a/RTL00_SDKV35a/component/common/example/uart_atcmd/example_uart_atcmd.c b/RTL00_SDKV35a/component/common/example/uart_atcmd/example_uart_atcmd.c index 4ce302f..7cf064c 100644 --- a/RTL00_SDKV35a/component/common/example/uart_atcmd/example_uart_atcmd.c +++ b/RTL00_SDKV35a/component/common/example/uart_atcmd/example_uart_atcmd.c @@ -165,7 +165,7 @@ int read_uart_atcmd_setting_from_system_data(UART_LOG_CONF* uartconf) if(load_default == _TRUE){ // load default setting - uartconf->BaudRate = UART_BAUD_RATE_38400; + uartconf->BaudRate = DEFAULT_BAUDRATE; uartconf->DataBits = 8; uartconf->Parity = ParityNone; uartconf->StopBits = 1; diff --git a/RTL00_SDKV35a/component/common/example/wlan_fast_connect/example_wlan_fast_connect.c b/RTL00_SDKV35a/component/common/example/wlan_fast_connect/example_wlan_fast_connect.c index c9fa95e..0db5390 100644 --- a/RTL00_SDKV35a/component/common/example/wlan_fast_connect/example_wlan_fast_connect.c +++ b/RTL00_SDKV35a/component/common/example/wlan_fast_connect/example_wlan_fast_connect.c @@ -107,7 +107,14 @@ int wlan_init_done_callback() // rtw_network_info_t *wifi; // SC_connect_to_candidate_AP // SC_parse_scan_result_and_connect(); - if (wifi_connect(data->psk_essid, data->security_type, data->psk_passphrase, strlen(data->psk_essid), strlen(data->psk_passphrase), RTW_SECURITY_OPEN, NULL) == RTW_SUCCESS) { + if (wifi_connect( + NULL, + 0, + data->psk_essid, + data->security_type, + data->psk_passphrase, + RTW_SECURITY_OPEN, + NULL) == RTW_SUCCESS) { #else //set partial scan for entering to listen beacon quickly channel = data->channel & 0xFF; @@ -124,7 +131,14 @@ int wlan_init_done_callback() u8 bssid[ETH_ALEN] = { 0xbc,0xae,0xc5,0xeb,0x09,0x90 }; // if (wifi_connect(data->psk_essid, data->security_type, data->psk_passphrase, strlen(data->psk_essid), strlen(data->psk_passphrase), RTW_SECURITY_OPEN, NULL) == RTW_SUCCESS) { - if (wifi_connect_bssid(bssid, data->psk_essid, data->security_type, data->psk_passphrase, ETH_ALEN, strlen(data->psk_essid), strlen(data->psk_passphrase), data->channel>>28, NULL) == RTW_SUCCESS) { + if (wifi_connect( + bssid, + 1, + data->psk_essid, + data->security_type, + data->psk_passphrase, + data->channel>>28, + NULL) == RTW_SUCCESS) { #endif // DBG_8195A("WiFi connected at start %dms\n", xTaskGetTickCount()); #if CONFIG_LWIP_LAYER diff --git a/RTL00_SDKV35a/component/common/mbed/hal/analogin_api.h b/RTL00_SDKV35a/component/common/mbed/hal/analogin_api.h index 98d02c1..57d25eb 100644 --- a/RTL00_SDKV35a/component/common/mbed/hal/analogin_api.h +++ b/RTL00_SDKV35a/component/common/mbed/hal/analogin_api.h @@ -24,7 +24,7 @@ extern "C" { #endif -typedef struct analogin_s analogin_t; +typedef struct analogin_s analogin_t; // 444 bytes! void analogin_init (analogin_t *obj, PinName pin); float analogin_read (analogin_t *obj); diff --git a/RTL00_SDKV35a/component/common/mbed/hal/pwmout_api.h b/RTL00_SDKV35a/component/common/mbed/hal/pwmout_api.h index 6557fcd..5e94363 100644 --- a/RTL00_SDKV35a/component/common/mbed/hal/pwmout_api.h +++ b/RTL00_SDKV35a/component/common/mbed/hal/pwmout_api.h @@ -26,19 +26,19 @@ extern "C" { typedef struct pwmout_s pwmout_t; -void pwmout_init (pwmout_t* obj, PinName pin); +int pwmout_init (pwmout_t* obj, PinName pin); // != 0 - error void pwmout_free (pwmout_t* obj); -void pwmout_write (pwmout_t* obj, float percent); -float pwmout_read (pwmout_t* obj); +//void pwmout_write (pwmout_t* obj, float percent); +//float pwmout_read (pwmout_t* obj); -void pwmout_period (pwmout_t* obj, float seconds); -void pwmout_period_ms (pwmout_t* obj, int ms); -void pwmout_period_us (pwmout_t* obj, int us); +//void pwmout_period (pwmout_t* obj, float seconds); +//void pwmout_period_ms (pwmout_t* obj, int ms); +void pwmout_period_us (pwmout_t* obj, uint32_t us); -void pwmout_pulsewidth (pwmout_t* obj, float seconds); -void pwmout_pulsewidth_ms(pwmout_t* obj, int ms); -void pwmout_pulsewidth_us(pwmout_t* obj, int us); +//void pwmout_pulsewidth (pwmout_t* obj, float seconds); +//void pwmout_pulsewidth_ms(pwmout_t* obj, uint32_t ms); +void pwmout_pulsewidth_us(pwmout_t* obj, uint32_t us); #ifdef __cplusplus } diff --git a/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/analogin_api.c b/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/analogin_api.c index d39f24c..09b6cf6 100644 --- a/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/analogin_api.c +++ b/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/analogin_api.c @@ -119,6 +119,14 @@ void analogin_init (analogin_t *obj, PinName pin){ float analogin_read(analogin_t *obj){ float value; + union { + unsigned int ui[2]; + unsigned short us[4]; + } adata; + PSAL_ADC_HND p = &((&(obj->SalADCMngtAdpt))->pSalHndPriv->SalADCHndPriv); + RtkADCReceiveBuf(p, &adata.ui); + return (float)(adata.us[p->DevNum]) / (float)(0xCE80); +/* uint32_t AnaloginTmp[2] = {0,0}; uint32_t AnaloginDatMsk = 0xFFFF; uint8_t AnaloginIdx = 0; @@ -144,9 +152,18 @@ float analogin_read(analogin_t *obj){ value = (float)(AnalogDat) / (float)(AnalogDatFull); return (float)value; +*/ } uint16_t analogin_read_u16(analogin_t *obj){ + union { + unsigned int ui[2]; + unsigned short us[4]; + } adata; + PSAL_ADC_HND p = &((&(obj->SalADCMngtAdpt))->pSalHndPriv->SalADCHndPriv); + RtkADCRxManualRotate(p, &adata.ui); + return adata.us[p->DevNum]; +/* uint32_t AnaloginTmp[2] = {0,0}; uint32_t AnaloginDatMsk = 0xFFFF; uint8_t AnaloginIdx = 0; @@ -166,20 +183,23 @@ uint16_t analogin_read_u16(analogin_t *obj){ AnalogDat = AnaloginTmp[(AnaloginIdx/2)]; AnalogDat = (AnalogDat & AnaloginDatMsk); AnalogDat = (AnalogDat>>((u32)(16*(AnaloginIdx&0x01)))); - return (uint16_t)AnalogDat; +*/ } void analogin_deinit(analogin_t *obj){ - PSAL_ADC_MNGT_ADPT pSalADCMngtAdpt = NULL; +/* + PSAL_ADC_MNGT_ADPT pSalADCMngtAdpt = NULL; PSAL_ADC_HND pSalADCHND = NULL; pSalADCMngtAdpt = &(obj->SalADCMngtAdpt); - pSalADCHND = &(pSalADCMngtAdpt->pSalHndPriv->SalADCHndPriv); + p = &(pSalADCMngtAdpt->pSalHndPriv->SalADCHndPriv); */ + + PSAL_ADC_HND p = &((&(obj->SalADCMngtAdpt))->pSalHndPriv->SalADCHndPriv); /* To deinit analogin */ - RtkADCDeInit(pSalADCHND); + RtkADCDeInit(p); } #endif diff --git a/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/log_uart_api.c b/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/log_uart_api.c index 321c152..fc284a7 100644 --- a/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/log_uart_api.c +++ b/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/log_uart_api.c @@ -119,7 +119,7 @@ void log_uart_free(log_uart_t *obj) ACTCK_LOG_UART_CCTRL(ON); //4 Inital Log uart - UartAdapter.BaudRate = UART_BAUD_RATE_38400; + UartAdapter.BaudRate = DEFAULT_BAUDRATE; UartAdapter.DataLength = UART_DATA_LEN_8BIT; UartAdapter.FIFOControl = 0xC1; UartAdapter.IntEnReg = 0x00; diff --git a/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/pwmout_api.c b/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/pwmout_api.c index 40802d3..d2d7d31 100644 --- a/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/pwmout_api.c +++ b/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/pwmout_api.c @@ -3,9 +3,8 @@ * Copyright (c) 2014, Realtek Semiconductor Corp. * All rights reserved. * - * This module is a confidential and proprietary property of RealTek and - * possession or use of this module requires written permission of RealTek. ******************************************************************************* + * bug fixing: pvvx */ #include "device.h" @@ -18,8 +17,10 @@ #ifdef CONFIG_PWM_EN #include "pwmout_api.h" #include "objects.h" + +extern u32 gTimerRecord; -static const PinMap PinMap_PWM[] = { +const PinMap PinMap_PWM[] = { {PB_4, RTL_PIN_PERI(PWM0, 0, S0), RTL_PIN_FUNC(PWM0, S0)}, {PB_5, RTL_PIN_PERI(PWM1, 1, S0), RTL_PIN_FUNC(PWM1, S0)}, {PB_6, RTL_PIN_PERI(PWM2, 2, S0), RTL_PIN_FUNC(PWM2, S0)}, @@ -43,7 +44,7 @@ static const PinMap PinMap_PWM[] = { {NC, NC, 0} }; -void pwmout_init(pwmout_t* obj, PinName pin) +int pwmout_init(pwmout_t* obj, PinName pin) { uint32_t peripheral; u32 pwm_idx; @@ -56,7 +57,7 @@ void pwmout_init(pwmout_t* obj, PinName pin) if (unlikely(peripheral == NC)) { DBG_PWM_ERR("%s: Cannot find matched pwm for this pin(0x%x)\n", __FUNCTION__, pin); - return; + return -1; } pwm_idx = RTL_GET_PERI_IDX(peripheral); @@ -66,75 +67,33 @@ void pwmout_init(pwmout_t* obj, PinName pin) obj->pin_sel = pin_sel; obj->period = 0; obj->pulse = 0; - _memset((void *)&obj->pwm_hal_adp, 0, sizeof(HAL_PWM_ADAPTER)); + rtl_memset((void *)&obj->pwm_hal_adp, 0, sizeof(HAL_PWM_ADAPTER)); if (HAL_OK != HAL_Pwm_Init(&obj->pwm_hal_adp, pwm_idx, pin_sel)) { DBG_PWM_ERR("pwmout_init Err!\n"); - return; + return -1; } - pwmout_period_us(obj, 20000); // 20 ms per default - HAL_Pwm_Enable(&obj->pwm_hal_adp); +// pwmout_period_us(obj, 20000); // 20 ms per default +// HAL_Pwm_Enable(&obj->pwm_hal_adp); + return 0; } void pwmout_free(pwmout_t* obj) { HAL_Pwm_Disable(&obj->pwm_hal_adp); + gTimerRecord &= ~(1 << obj->pwm_hal_adp.gtimer_id); } -void pwmout_write(pwmout_t* obj, float value) +void pwmout_period_us(pwmout_t* obj, uint32_t us) { - if (value < (float)0.0) { - value = 0.0; - } - else if (value > (float)1.0) { - value = 1.0; - } - - obj->pulse = (uint32_t)((float)obj->period * value); - HAL_Pwm_SetDuty(&obj->pwm_hal_adp, obj->period, obj->pulse); + obj->period = us; + HAL_Pwm_SetDuty(&obj->pwm_hal_adp, us, obj->pulse); } -float pwmout_read(pwmout_t* obj) +void pwmout_pulsewidth_us(pwmout_t* obj, uint32_t us) { - float value = 0; - if (obj->period > 0) { - value = (float)(obj->pulse) / (float)(obj->period); - } - return ((value > (float)1.0) ? (float)(1.0) : (value)); -} - -void pwmout_period(pwmout_t* obj, float seconds) -{ - pwmout_period_us(obj, (int)(seconds * 1000000.0f)); -} - -void pwmout_period_ms(pwmout_t* obj, int ms) -{ - pwmout_period_us(obj, (int)(ms * 1000)); -} - -void pwmout_period_us(pwmout_t* obj, int us) -{ - float dc = pwmout_read(obj); - - obj->period = us; - // Set duty cycle again - pwmout_write(obj, dc); -} - -void pwmout_pulsewidth(pwmout_t* obj, float seconds) -{ - pwmout_pulsewidth_us(obj, (int)(seconds * 1000000.0f)); -} - -void pwmout_pulsewidth_ms(pwmout_t* obj, int ms) -{ - pwmout_pulsewidth_us(obj, ms * 1000); -} - -void pwmout_pulsewidth_us(pwmout_t* obj, int us) -{ - float value = (float)us / (float)obj->period; - pwmout_write(obj, value); + obj->pulse = us; + if(us > obj->period) obj->period = us; + HAL_Pwm_SetDuty(&obj->pwm_hal_adp, obj->period, us); } #endif // #ifdef CONFIG_PWM_EN diff --git a/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/sys_api.c b/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/sys_api.c index ef90f22..85b152a 100644 --- a/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/sys_api.c +++ b/RTL00_SDKV35a/component/common/mbed/targets/hal/rtl8195a/sys_api.c @@ -158,12 +158,10 @@ void sys_log_uart_off(void) void sys_adc_calibration(u8 write, u16 *offset, u16 *gain) { - flash_t flash; - u8* pbuf; - +extern flash_t flash; if(write){ // backup - pbuf = RtlMalloc(FLASH_SECTOR_SIZE); + u8 *pbuf = RtlMalloc(FLASH_SECTOR_SIZE); if(!pbuf) return; device_mutex_lock(RT_DEV_LOCK_FLASH); flash_stream_read(&flash, FLASH_SYSTEM_DATA_ADDR, FLASH_SECTOR_SIZE, pbuf); @@ -172,7 +170,7 @@ void sys_adc_calibration(u8 write, u16 *offset, u16 *gain) flash_erase_sector(&flash, FLASH_RESERVED_DATA_BASE); flash_stream_write(&flash, FLASH_RESERVED_DATA_BASE, FLASH_SECTOR_SIZE, pbuf); // Write - flash_stream_read(&flash, FLASH_RESERVED_DATA_BASE, FLASH_SECTOR_SIZE, pbuf); +// flash_stream_read(&flash, FLASH_RESERVED_DATA_BASE, FLASH_SECTOR_SIZE, pbuf); flash_erase_sector(&flash, FLASH_SYSTEM_DATA_ADDR); flash_stream_write(&flash, FLASH_SYSTEM_DATA_ADDR, FLASH_SECTOR_SIZE, pbuf); device_mutex_unlock(RT_DEV_LOCK_FLASH); diff --git a/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/api/err.c b/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/api/err.c index 92fa8b7..51b32ea 100644 --- a/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/api/err.c +++ b/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/api/err.c @@ -41,22 +41,22 @@ #ifdef LWIP_DEBUG static const char *err_strerr[] = { - "Ok.", /* ERR_OK 0 */ - "Out of memory error.", /* ERR_MEM -1 */ - "Buffer error.", /* ERR_BUF -2 */ - "Timeout.", /* ERR_TIMEOUT -3 */ - "Routing problem.", /* ERR_RTE -4 */ - "Operation in progress.", /* ERR_INPROGRESS -5 */ - "Illegal value.", /* ERR_VAL -6 */ - "Operation would block.", /* ERR_WOULDBLOCK -7 */ - "Address in use.", /* ERR_USE -8 */ - "Already connected.", /* ERR_ISCONN -9 */ - "Connection aborted.", /* ERR_ABRT -10 */ - "Connection reset.", /* ERR_RST -11 */ - "Connection closed.", /* ERR_CLSD -12 */ - "Not connected.", /* ERR_CONN -13 */ - "Illegal argument.", /* ERR_ARG -14 */ - "Low-level netif error.", /* ERR_IF -15 */ + "Ok", /* ERR_OK 0 */ + "Out of memory error", /* ERR_MEM -1 */ + "Buffer error", /* ERR_BUF -2 */ + "Timeout", /* ERR_TIMEOUT -3 */ + "Routing problem", /* ERR_RTE -4 */ + "Operation in progress", /* ERR_INPROGRESS -5 */ + "Illegal value", /* ERR_VAL -6 */ + "Operation would block", /* ERR_WOULDBLOCK -7 */ + "Address in use", /* ERR_USE -8 */ + "Already connected", /* ERR_ISCONN -9 */ + "Connection aborted", /* ERR_ABRT -10 */ + "Connection reset", /* ERR_RST -11 */ + "Connection closed", /* ERR_CLSD -12 */ + "Not connected", /* ERR_CONN -13 */ + "Illegal argument", /* ERR_ARG -14 */ + "Low-level netif error", /* ERR_IF -15 */ }; /** diff --git a/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/api/sockets.c b/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/api/sockets.c index 9458895..5669497 100644 --- a/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/api/sockets.c +++ b/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/api/sockets.c @@ -184,7 +184,6 @@ void lwip_socket_init(void) { } - /** * Map a externally used socket index to the internal socket representation. * @@ -213,6 +212,14 @@ get_socket(int s) return sock; } +/* + * pvvx: errno + */ +int lwip_last_err_socket(int s) { + struct lwip_sock * sc = get_socket(s); + if(sc) return sc->err; + else return EBADF; +} /** * Same as get_socket but doesn't set errno * diff --git a/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/include/lwip/sockets.h b/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/include/lwip/sockets.h index 3ea32f1..167ec1c 100644 --- a/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/include/lwip/sockets.h +++ b/RTL00_SDKV35a/component/common/network/lwip/lwip_v1.4.1/src/include/lwip/sockets.h @@ -342,6 +342,8 @@ int lwip_select(int maxfdp1, fd_set *readset, fd_set *writeset, fd_set *exceptse int lwip_ioctl(int s, long cmd, void *argp); int lwip_fcntl(int s, int cmd, int val); +int lwip_last_err_socket(int s); // errno + #if LWIP_COMPAT_SOCKETS #define accept(a,b,c) lwip_accept(a,b,c) #define bind(a,b,c) lwip_bind(a,b,c) @@ -361,6 +363,7 @@ int lwip_fcntl(int s, int cmd, int val); #define select(a,b,c,d,e) lwip_select(a,b,c,d,e) #define ioctlsocket(a,b,c) lwip_ioctl(a,b,c) + #if LWIP_POSIX_SOCKETS_IO_NAMES #define read(a,b,c) lwip_read(a,b,c) #define write(a,b,c) lwip_write(a,b,c) diff --git a/RTL00_SDKV35a/component/common/network/netbios/netbios.c b/RTL00_SDKV35a/component/common/network/netbios/netbios.c index 1b4a066..cb0db96 100644 --- a/RTL00_SDKV35a/component/common/network/netbios/netbios.c +++ b/RTL00_SDKV35a/component/common/network/netbios/netbios.c @@ -163,13 +163,12 @@ PACK_STRUCT_END # include "arch/epstruct.h" #endif -LOCAL char toupper(char ch) { - return ((ch >= 'a' && ch <= 'z') ? ch - 'a' + 'A' : ch); -} +//#define toupper(CH) \ +// (((CH) >= 'a' && (CH) <= 'z') ? ((CH) - 'a' + 'A') : (CH)) /** NetBIOS decoding name */ -LOCAL int8_t NETBIOS_CODE_ATTR NBNS_decode(char *dst, char *src) +static int8_t NETBIOS_CODE_ATTR NBNS_decode(char *dst, char *src) { uint8_t i, j; char c; @@ -218,7 +217,7 @@ static void NBNS_encode(char *dst, char *src, uint8_t type) #endif /** NetBIOS Name service recv callback */ -LOCAL void NETBIOS_CODE_ATTR +static void NETBIOS_CODE_ATTR netbios_recv(void *arg, struct udp_pcb *upcb, struct pbuf *p, ip_addr_t *addr, u16_t port) { LWIP_UNUSED_ARG(arg); @@ -227,7 +226,7 @@ netbios_recv(void *arg, struct udp_pcb *upcb, struct pbuf *p, ip_addr_t *addr, if (current_netif != NULL && current_netif->num < NET_IF_NUM) { uint32 ip = current_netif->ip_addr.addr; char *curbiosname = netbios_name[current_netif->num]; - if (curbiosname[0] != '\0' && ip != 0 + if (curbiosname[0] != '\0' && ip != NULL /* we only answer if we got a default interface */ && (((ip ^ addr->addr) & current_netif->netmask.addr) == 0)) { // запрет ответа другой подсети #if DEBUGSOO > 3 @@ -309,7 +308,7 @@ netbios_recv(void *arg, struct udp_pcb *upcb, struct pbuf *p, ip_addr_t *addr, } } -LOCAL struct udp_pcb * NETBIOS_CODE_ATTR netbios_pcb(void) { +struct udp_pcb * NETBIOS_CODE_ATTR netbios_pcb(void) { struct udp_pcb *pcb; for (pcb = udp_pcbs; pcb != NULL; pcb = pcb->next) { if (pcb->local_port == NETBIOS_PORT) diff --git a/RTL00_SDKV35a/component/common/network/websocket/wsclient_api.h b/RTL00_SDKV35a/component/common/network/websocket/wsclient_api.h index 0b5b423..77a53f1 100644 --- a/RTL00_SDKV35a/component/common/network/websocket/wsclient_api.h +++ b/RTL00_SDKV35a/component/common/network/websocket/wsclient_api.h @@ -8,7 +8,6 @@ /****************Define if using the polarssl*******************/ #define USING_SSL - /******************Define the function used*********************/ #ifdef USING_SSL int wss_set_fun_ops(wsclient_context *wsclient); @@ -19,9 +18,6 @@ int ws_set_fun_ops(wsclient_context *wsclient); #endif /***************************************************************/ - - - /************************************************************************************************* ** Function Name : create_wsclient ** Description : Creating the websocket client context structure @@ -31,7 +27,7 @@ int ws_set_fun_ops(wsclient_context *wsclient); ** Return : Created: websocket client context structure ** Failed: NULL **************************************************************************************************/ -wsclient_context *create_wsclient(char *url, int port,char *path, char* origin); +wsclient_context *create_wsclient(char *url, int port, char *path, char* origin); /************************************************************************************************* ** Function Name : ws_connect_url @@ -105,4 +101,4 @@ readyStateValues ws_getReadyState(wsclient_context *wsclient); **************************************************************************************************/ void ws_close(wsclient_context *wsclient); -#endif \ No newline at end of file +#endif diff --git a/RTL00_SDKV35a/component/common/utilities/webserver.c b/RTL00_SDKV35a/component/common/utilities/webserver.c index aa87c73..880dd54 100644 --- a/RTL00_SDKV35a/component/common/utilities/webserver.c +++ b/RTL00_SDKV35a/component/common/utilities/webserver.c @@ -740,8 +740,8 @@ static void RestartSoftAP() wifi_restart_ap(wifi_setting.ssid, wifi_setting.security_type, wifi_setting.password, - strlen((char*)wifi_setting.ssid), - strlen((char*)wifi_setting.password), +// strlen((char*)wifi_setting.ssid), +// strlen((char*)wifi_setting.password), wifi_setting.channel); } diff --git a/RTL00_SDKV35a/component/os/freertos/cmsis_os.c b/RTL00_SDKV35a/component/os/freertos/cmsis_os.c index ba3430d..f89830a 100644 --- a/RTL00_SDKV35a/component/os/freertos/cmsis_os.c +++ b/RTL00_SDKV35a/component/os/freertos/cmsis_os.c @@ -74,12 +74,12 @@ static int inHandlerMode (void) #if configSignalManagementSupport // the older FreeRTOS version didn't support Signal Management functions static void add_thread_signal_map (osThreadId thread_id, EventGroupHandle_t signals) { - uint32_t dummy; + int dummy; // uint32_t i; ThreadSignalRec *prec_entity; if (inHandlerMode()) { - dummy = portSET_INTERRUPT_MASK_FROM_ISR(); + dummy = portSET_INTERRUPT_MASK_FROM_ISR(); } else { vPortEnterCritical(); @@ -135,7 +135,7 @@ static EventGroupHandle_t find_signal_by_thread (osThreadId thread_id) { EventGroupHandle_t signals_hdl=NULL; // uint32_t i; - uint32_t dummy; + int dummy; ThreadSignalRec *prec_entity; if (inHandlerMode()) { @@ -185,7 +185,7 @@ static EventGroupHandle_t remove_thread_signal_map (osThreadId thread_id) { EventGroupHandle_t signals_hdl=NULL; // uint32_t i; - uint32_t dummy; + int dummy; ThreadSignalRec *prec_entity; ThreadSignalRec *pprev_entity; @@ -989,7 +989,7 @@ osPoolId osPoolCreate (const osPoolDef_t *pool_def) /// \note MUST REMAIN UNCHANGED: \b osPoolAlloc shall be consistent in every CMSIS-RTOS. void *osPoolAlloc (osPoolId pool_id) { - uint32_t dummy; + int dummy; void *p = NULL; uint32_t i; uint32_t index; @@ -1047,7 +1047,7 @@ void *osPoolCAlloc (osPoolId pool_id) /// \note MUST REMAIN UNCHANGED: \b osPoolFree shall be consistent in every CMSIS-RTOS. osStatus osPoolFree (osPoolId pool_id, void *block) { - uint32_t dummy; + int dummy; uint32_t index; if (pool_id == NULL) { diff --git a/RTL00_SDKV35a/component/os/freertos/freertos_v8.1.2/Source/portable/MemMang/heap_5.c b/RTL00_SDKV35a/component/os/freertos/freertos_v8.1.2/Source/portable/MemMang/heap_5.c index 9150e15..84cde2a 100644 --- a/RTL00_SDKV35a/component/os/freertos/freertos_v8.1.2/Source/portable/MemMang/heap_5.c +++ b/RTL00_SDKV35a/component/os/freertos/freertos_v8.1.2/Source/portable/MemMang/heap_5.c @@ -1,67 +1,67 @@ /* - FreeRTOS V8.1.2 - Copyright (C) 2014 Real Time Engineers Ltd. - All rights reserved + FreeRTOS V8.1.2 - Copyright (C) 2014 Real Time Engineers Ltd. + All rights reserved - VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION. + VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION. - *************************************************************************** - * * - * FreeRTOS provides completely free yet professionally developed, * - * robust, strictly quality controlled, supported, and cross * - * platform software that has become a de facto standard. * - * * - * Help yourself get started quickly and support the FreeRTOS * - * project by purchasing a FreeRTOS tutorial book, reference * - * manual, or both from: http://www.FreeRTOS.org/Documentation * - * * - * Thank you! * - * * - *************************************************************************** + *************************************************************************** + * * + * FreeRTOS provides completely free yet professionally developed, * + * robust, strictly quality controlled, supported, and cross * + * platform software that has become a de facto standard. * + * * + * Help yourself get started quickly and support the FreeRTOS * + * project by purchasing a FreeRTOS tutorial book, reference * + * manual, or both from: http://www.FreeRTOS.org/Documentation * + * * + * Thank you! * + * * + *************************************************************************** - This file is part of the FreeRTOS distribution. + This file is part of the FreeRTOS distribution. - FreeRTOS is free software; you can redistribute it and/or modify it under - the terms of the GNU General Public License (version 2) as published by the - Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception. + FreeRTOS is free software; you can redistribute it and/or modify it under + the terms of the GNU General Public License (version 2) as published by the + Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception. - >>! NOTE: The modification to the GPL is included to allow you to !<< - >>! distribute a combined work that includes FreeRTOS without being !<< - >>! obliged to provide the source code for proprietary components !<< - >>! outside of the FreeRTOS kernel. !<< + >>! NOTE: The modification to the GPL is included to allow you to !<< + >>! distribute a combined work that includes FreeRTOS without being !<< + >>! obliged to provide the source code for proprietary components !<< + >>! outside of the FreeRTOS kernel. !<< - FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS - FOR A PARTICULAR PURPOSE. Full license text is available from the following - link: http://www.freertos.org/a00114.html + FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + FOR A PARTICULAR PURPOSE. Full license text is available from the following + link: http://www.freertos.org/a00114.html - 1 tab == 4 spaces! + 1 tab == 4 spaces! - *************************************************************************** - * * - * Having a problem? Start by reading the FAQ "My application does * - * not run, what could be wrong?" * - * * - * http://www.FreeRTOS.org/FAQHelp.html * - * * - *************************************************************************** + *************************************************************************** + * * + * Having a problem? Start by reading the FAQ "My application does * + * not run, what could be wrong?" * + * * + * http://www.FreeRTOS.org/FAQHelp.html * + * * + *************************************************************************** - http://www.FreeRTOS.org - Documentation, books, training, latest versions, - license and Real Time Engineers Ltd. contact details. + http://www.FreeRTOS.org - Documentation, books, training, latest versions, + license and Real Time Engineers Ltd. contact details. - http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products, - including FreeRTOS+Trace - an indispensable productivity tool, a DOS - compatible FAT file system, and our tiny thread aware UDP/IP stack. + http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products, + including FreeRTOS+Trace - an indispensable productivity tool, a DOS + compatible FAT file system, and our tiny thread aware UDP/IP stack. - http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High - Integrity Systems to sell under the OpenRTOS brand. Low cost OpenRTOS - licenses offer ticketed support, indemnification and middleware. + http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High + Integrity Systems to sell under the OpenRTOS brand. Low cost OpenRTOS + licenses offer ticketed support, indemnification and middleware. - http://www.SafeRTOS.com - High Integrity Systems also provide a safety - engineered and independently SIL3 certified version for use in safety and - mission critical applications that require provable dependability. + http://www.SafeRTOS.com - High Integrity Systems also provide a safety + engineered and independently SIL3 certified version for use in safety and + mission critical applications that require provable dependability. - 1 tab == 4 spaces! -*/ + 1 tab == 4 spaces! + */ /* * A sample implementation of pvPortMalloc() that allows the heap to be defined @@ -111,10 +111,9 @@ #include "platform_autoconf.h" #include "hal_misc.h" - /* Defining MPU_WRAPPERS_INCLUDED_FROM_API_FILE prevents task.h from redefining -all the API functions to use the MPU wrappers. That should only be done when -task.h is included from an application file. */ + all the API functions to use the MPU wrappers. That should only be done when + task.h is included from an application file. */ #define MPU_WRAPPERS_INCLUDED_FROM_API_FILE #include "FreeRTOS.h" @@ -129,11 +128,10 @@ task.h is included from an application file. */ #define heapBITS_PER_BYTE ( ( size_t ) 8 ) /* Define the linked list structure. This is used to link free blocks in order -of their memory address. */ -typedef struct A_BLOCK_LINK -{ - struct A_BLOCK_LINK *pxNextFreeBlock; /*<< The next free block in the list. */ - size_t xBlockSize; /*<< The size of the free block. */ + of their memory address. */ +typedef struct A_BLOCK_LINK { + struct A_BLOCK_LINK *pxNextFreeBlock; /*<< The next free block in the list. */ + size_t xBlockSize; /*<< The size of the free block. */ } BlockLink_t; /*-----------------------------------------------------------*/ @@ -144,31 +142,33 @@ typedef struct A_BLOCK_LINK * the block in front it and/or the block behind it if the memory blocks are * adjacent to each other. */ -static void prvInsertBlockIntoFreeList( BlockLink_t *pxBlockToInsert ); +static void prvInsertBlockIntoFreeList(BlockLink_t *pxBlockToInsert); /*-----------------------------------------------------------*/ /* The size of the structure placed at the beginning of each allocated memory -block must by correctly byte aligned. */ -static const uint32_t uxHeapStructSize = ( ( sizeof ( BlockLink_t ) + ( portBYTE_ALIGNMENT - 1 ) ) & ~portBYTE_ALIGNMENT_MASK ); + block must by correctly byte aligned. */ +static const uint32_t uxHeapStructSize = ((sizeof(BlockLink_t) + + ( portBYTE_ALIGNMENT - 1)) & ~portBYTE_ALIGNMENT_MASK); /* Create a couple of list links to mark the start and end of the list. */ static BlockLink_t xStart, *pxEnd = NULL; /* Keeps track of the number of free bytes remaining, but says nothing about -fragmentation. */ + fragmentation. */ static size_t xFreeBytesRemaining = 0; static size_t xMinimumEverFreeBytesRemaining = 0; /* Gets set to the top bit of an size_t type. When this bit in the xBlockSize -member of an BlockLink_t structure is set then the block belongs to the -application. When the bit is free the block is still part of the free heap -space. */ + member of an BlockLink_t structure is set then the block belongs to the + application. When the bit is free the block is still part of the free heap + space. */ //static size_t xBlockAllocatedBit = 0; /* Work out the position of the top bit in a size_t variable. */ #define xBlockAllocatedBit (( ( size_t ) 1 ) << ( ( sizeof( size_t ) * heapBITS_PER_BYTE ) - 1 )) /* Realtek test code start */ +//TODO: remove section when combine BD and BF #if (defined(CONFIG_PLATFORM_8195A) || defined(CONFIG_PLATFORM_8711B)) #include "section_config.h" SRAM_HEAP_SECTION @@ -184,18 +184,18 @@ extern HeapRegion_t xHeapRegions[]; #if defined(CONFIG_PLATFORM_8195A) HeapRegion_t xHeapRegions[] = { - { (uint8_t*)0x10003000, 0x10006000 - 0x10003000 }, // __ram_heap1_start__, __ram_heap1_end__ - __ram_heap1_start__ - { ucHeap, sizeof(ucHeap) }, // Defines a block from ucHeap + { (uint8_t*)0x10003000, 0x10006000 - 0x10003000}, // __ram_heap1_start__, __ram_heap1_end__ - __ram_heap1_start__ + { ucHeap, sizeof(ucHeap)}, // Defines a block from ucHeap #ifdef CONFIG_SDR_EN - { (uint8_t*)&__sdram_bss_end__, 0x80000 }, + { (uint8_t*)&__sdram_bss_end__, 0x80000}, #endif - { NULL, 0 } // Terminates the array. + { NULL, 0} // Terminates the array. }; #elif (defined CONFIG_PLATFORM_8711B) HeapRegion_t xHeapRegions[] = { - { ucHeap, sizeof(ucHeap) }, // Defines a block from ucHeap - { NULL, 0 } // Terminates the array. + { ucHeap, sizeof(ucHeap)}, // Defines a block from ucHeap + { NULL, 0} // Terminates the array. }; #else #error NOT SUPPORT CHIP @@ -204,152 +204,138 @@ HeapRegion_t xHeapRegions[] = /*-----------------------------------------------------------*/ /* - Dump xBlock list -*/ -void dump_mem_block_list(void) -{ - if(pxEnd == NULL) vPortDefineHeapRegions( xHeapRegions ); + Dump xBlock list + */ +void dump_mem_block_list(void) { + if (pxEnd == NULL) + vPortDefineHeapRegions(xHeapRegions); #if CONFIG_DEBUG_LOG > 1 // if(pxEnd == NULL) vPortDefineHeapRegions( xHeapRegions ); // test code start BlockLink_t *pxBlock = &xStart; int count = 0; DBG_8195A("RAM Free Heap Memory List:\n"); - for(pxBlock = pxBlock->pxNextFreeBlock; pxBlock->pxNextFreeBlock != NULL; pxBlock = pxBlock->pxNextFreeBlock) { + for (pxBlock = pxBlock->pxNextFreeBlock; pxBlock->pxNextFreeBlock != NULL; + pxBlock = pxBlock->pxNextFreeBlock) { DBG_8195A(" [%d]=%p, %d\n", ++count, pxBlock, pxBlock->xBlockSize); } #endif } -void *pvPortMalloc( size_t xWantedSize ) -{ -BlockLink_t *pxBlock, *pxPreviousBlock, *pxNewBlockLink; -void *pvReturn = NULL; +void *pvPortMalloc(size_t xWantedSize) { + BlockLink_t *pxBlock, *pxPreviousBlock, *pxNewBlockLink; + void *pvReturn = NULL; /* Realtek test code start */ - if(pxEnd == NULL) vPortDefineHeapRegions( xHeapRegions ); + if (pxEnd == NULL) + vPortDefineHeapRegions(xHeapRegions); /* Realtek test code end */ /* The heap must be initialised before the first call to - prvPortMalloc(). */ + prvPortMalloc(). */ configASSERT( pxEnd ); vTaskSuspendAll(); { /* Check the requested block size is not so large that the top bit is - set. The top bit of the block size member of the BlockLink_t structure - is used to determine who owns the block - the application or the - kernel, so it must be free. */ - if( ( xWantedSize & xBlockAllocatedBit ) == 0 ) - { + set. The top bit of the block size member of the BlockLink_t structure + is used to determine who owns the block - the application or the + kernel, so it must be free. */ + if ((xWantedSize & xBlockAllocatedBit) == 0) { /* The wanted size is increased so it can contain a BlockLink_t - structure in addition to the requested amount of bytes. */ - if( xWantedSize > 0 ) - { + structure in addition to the requested amount of bytes. */ + if (xWantedSize > 0) { xWantedSize += uxHeapStructSize; /* Ensure that blocks are always aligned to the required number - of bytes. */ - if( ( xWantedSize & portBYTE_ALIGNMENT_MASK ) != 0x00 ) - { + of bytes. */ + if ((xWantedSize & portBYTE_ALIGNMENT_MASK) != 0x00) { /* Byte alignment required. */ - xWantedSize += ( portBYTE_ALIGNMENT - ( xWantedSize & portBYTE_ALIGNMENT_MASK ) ); - } - else - { + xWantedSize += ( portBYTE_ALIGNMENT + - (xWantedSize & portBYTE_ALIGNMENT_MASK)); + } else { mtCOVERAGE_TEST_MARKER(); } - } - else - { + } else { mtCOVERAGE_TEST_MARKER(); } - if( ( xWantedSize > 0 ) && ( xWantedSize <= xFreeBytesRemaining ) ) - { + if ((xWantedSize > 0) && (xWantedSize <= xFreeBytesRemaining)) { /* Traverse the list from the start (lowest address) block until - one of adequate size is found. */ + one of adequate size is found. */ pxPreviousBlock = &xStart; pxBlock = xStart.pxNextFreeBlock; - while( ( pxBlock->xBlockSize < xWantedSize ) && ( pxBlock->pxNextFreeBlock != NULL ) ) - { + while ((pxBlock->xBlockSize < xWantedSize) + && (pxBlock->pxNextFreeBlock != NULL)) { pxPreviousBlock = pxBlock; pxBlock = pxBlock->pxNextFreeBlock; } /* If the end marker was reached then a block of adequate size - was not found. */ - if( pxBlock != pxEnd ) - { + was not found. */ + if (pxBlock != pxEnd) { /* Return the memory space pointed to - jumping over the - BlockLink_t structure at its start. */ - pvReturn = ( void * ) ( ( ( uint8_t * ) pxPreviousBlock->pxNextFreeBlock ) + uxHeapStructSize ); + BlockLink_t structure at its start. */ + pvReturn = + (void *) (((uint8_t *) pxPreviousBlock->pxNextFreeBlock) + + uxHeapStructSize); /* This block is being returned for use so must be taken out - of the list of free blocks. */ + of the list of free blocks. */ pxPreviousBlock->pxNextFreeBlock = pxBlock->pxNextFreeBlock; /* If the block is larger than required it can be split into - two. */ - if( ( pxBlock->xBlockSize - xWantedSize ) > heapMINIMUM_BLOCK_SIZE ) - { + two. */ + if ((pxBlock->xBlockSize - xWantedSize) + > heapMINIMUM_BLOCK_SIZE) { /* This block is to be split into two. Create a new - block following the number of bytes requested. The void - cast is used to prevent byte alignment warnings from the - compiler. */ - pxNewBlockLink = ( void * ) ( ( ( uint8_t * ) pxBlock ) + xWantedSize ); + block following the number of bytes requested. The void + cast is used to prevent byte alignment warnings from the + compiler. */ + pxNewBlockLink = (void *) (((uint8_t *) pxBlock) + + xWantedSize); /* Calculate the sizes of two blocks split from the - single block. */ - pxNewBlockLink->xBlockSize = pxBlock->xBlockSize - xWantedSize; + single block. */ + pxNewBlockLink->xBlockSize = pxBlock->xBlockSize + - xWantedSize; pxBlock->xBlockSize = xWantedSize; /* Insert the new block into the list of free blocks. */ - prvInsertBlockIntoFreeList( ( pxNewBlockLink ) ); - } - else - { + prvInsertBlockIntoFreeList((pxNewBlockLink)); + } else { mtCOVERAGE_TEST_MARKER(); } xFreeBytesRemaining -= pxBlock->xBlockSize; - if( xFreeBytesRemaining < xMinimumEverFreeBytesRemaining ) - { + if (xFreeBytesRemaining < xMinimumEverFreeBytesRemaining) { xMinimumEverFreeBytesRemaining = xFreeBytesRemaining; - } - else - { + } else { mtCOVERAGE_TEST_MARKER(); } /* The block is being returned - it is allocated and owned - by the application and has no "next" block. */ + by the application and has no "next" block. */ pxBlock->xBlockSize |= xBlockAllocatedBit; pxBlock->pxNextFreeBlock = NULL; - } - else - { + } else { mtCOVERAGE_TEST_MARKER(); } - } - else - { + } else { mtCOVERAGE_TEST_MARKER(); } - } - else - { + } else { mtCOVERAGE_TEST_MARKER(); - } - traceMALLOC( pvReturn, xWantedSize ); + } traceMALLOC( pvReturn, xWantedSize ); } - ( void ) xTaskResumeAll(); - if(pvReturn == NULL) { - DBG_RAM_HEAP_WARN("ram_alloc(%d): freeSpace(%d)!\n", xWantedSize, xFreeBytesRemaining); + (void) xTaskResumeAll(); + if (pvReturn == NULL) { + DBG_RAM_HEAP_WARN("ram_alloc(%d): freeSpace(%d)!\n", xWantedSize, + xFreeBytesRemaining); } else { // DBG_RAM_HEAP_INFO("ram_alloc:%p[%d]\n", pvReturn , xWantedSize); } - #if( configUSE_MALLOC_FAILED_HOOK == 1 ) +#if( configUSE_MALLOC_FAILED_HOOK == 1 ) { if( pvReturn == NULL ) { @@ -361,36 +347,31 @@ void *pvReturn = NULL; mtCOVERAGE_TEST_MARKER(); } } - #endif +#endif return pvReturn; } /*-----------------------------------------------------------*/ -void __vPortFree( void *pv ) -{ -uint8_t *puc = ( uint8_t * ) pv; -BlockLink_t *pxLink; +void __vPortFree(void *pv) { + uint8_t *puc = (uint8_t *) pv; + BlockLink_t *pxLink; - if( pv != NULL ) - { + if (pv != NULL) { /* The memory being freed will have an BlockLink_t structure immediately - before it. */ + before it. */ puc -= uxHeapStructSize; /* This casting is to keep the compiler from issuing warnings. */ - pxLink = ( void * ) puc; + pxLink = (void *) puc; /* Check the block is actually allocated. */ - configASSERT( ( pxLink->xBlockSize & xBlockAllocatedBit ) != 0 ); - configASSERT( pxLink->pxNextFreeBlock == NULL ); + configASSERT( ( pxLink->xBlockSize & xBlockAllocatedBit ) != 0 ); configASSERT( pxLink->pxNextFreeBlock == NULL ); - if( ( pxLink->xBlockSize & xBlockAllocatedBit ) != 0 ) - { - if( pxLink->pxNextFreeBlock == NULL ) - { + if ((pxLink->xBlockSize & xBlockAllocatedBit) != 0) { + if (pxLink->pxNextFreeBlock == NULL) { /* The block is being returned to the heap - it is no longer - allocated. */ + allocated. */ pxLink->xBlockSize &= ~xBlockAllocatedBit; vTaskSuspendAll(); @@ -398,17 +379,13 @@ BlockLink_t *pxLink; /* Add this block to the list of free blocks. */ xFreeBytesRemaining += pxLink->xBlockSize; traceFREE( pv, pxLink->xBlockSize ); - prvInsertBlockIntoFreeList( ( ( BlockLink_t * ) pxLink ) ); + prvInsertBlockIntoFreeList(((BlockLink_t *) pxLink)); } - ( void ) xTaskResumeAll(); - } - else - { + (void) xTaskResumeAll(); + } else { mtCOVERAGE_TEST_MARKER(); } - } - else - { + } else { mtCOVERAGE_TEST_MARKER(); } // DBG_RAM_HEAP_INFO("ram_free:%p[%d]\n", pv , pxLink->xBlockSize); @@ -417,136 +394,120 @@ BlockLink_t *pxLink; /*-----------------------------------------------------------*/ /* Add by Alfa 2015/02/04 -----------------------------------*/ -static void (*ext_free)( void *p ) = NULL; +static void (*ext_free)(void *p) = NULL; //static uint32_t ext_upper = 0; //static uint32_t ext_lower = 0; -void vPortSetExtFree( void (*free)( void *p ), uint32_t upper, uint32_t lower ) -{ +void vPortSetExtFree(void (*free)(void *p), uint32_t upper, uint32_t lower) { ext_free = free; ext_upper = upper; ext_lower = lower; } -void vPortFree( void *pv ) -{ - if( ((uint32_t)pv >= ext_lower) && ((uint32_t)pv < ext_upper) ){ +void vPortFree(void *pv) { + if (((uint32_t) pv >= ext_lower) && ((uint32_t) pv < ext_upper)) { // use external free function - if( ext_free ) ext_free( pv ); - }else - __vPortFree( pv ); + if (ext_free) + ext_free(pv); + } else + __vPortFree(pv); } /*-----------------------------------------------------------*/ -size_t xPortGetFreeHeapSize( void ) -{ +size_t xPortGetFreeHeapSize(void) { return xFreeBytesRemaining; } /*-----------------------------------------------------------*/ -size_t xPortGetMinimumEverFreeHeapSize( void ) -{ +size_t xPortGetMinimumEverFreeHeapSize(void) { return xMinimumEverFreeBytesRemaining; } /*-----------------------------------------------------------*/ -static void prvInsertBlockIntoFreeList( BlockLink_t *pxBlockToInsert ) -{ -BlockLink_t *pxIterator; -uint8_t *puc; +static void prvInsertBlockIntoFreeList(BlockLink_t *pxBlockToInsert) { + BlockLink_t *pxIterator; + uint8_t *puc; /* Iterate through the list until a block is found that has a higher address - than the block being inserted. */ - for( pxIterator = &xStart; pxIterator->pxNextFreeBlock < pxBlockToInsert; pxIterator = pxIterator->pxNextFreeBlock ) - { + than the block being inserted. */ + for (pxIterator = &xStart; pxIterator->pxNextFreeBlock < pxBlockToInsert; + pxIterator = pxIterator->pxNextFreeBlock) { /* Nothing to do here, just iterate to the right position. */ } /* Do the block being inserted, and the block it is being inserted after - make a contiguous block of memory? */ - puc = ( uint8_t * ) pxIterator; - if( ( puc + pxIterator->xBlockSize ) == ( uint8_t * ) pxBlockToInsert ) - { + make a contiguous block of memory? */ + puc = (uint8_t *) pxIterator; + if ((puc + pxIterator->xBlockSize) == (uint8_t *) pxBlockToInsert) { pxIterator->xBlockSize += pxBlockToInsert->xBlockSize; pxBlockToInsert = pxIterator; - } - else - { + } else { mtCOVERAGE_TEST_MARKER(); } /* Do the block being inserted, and the block it is being inserted before - make a contiguous block of memory? */ - puc = ( uint8_t * ) pxBlockToInsert; - if( ( puc + pxBlockToInsert->xBlockSize ) == ( uint8_t * ) pxIterator->pxNextFreeBlock ) - { - if( pxIterator->pxNextFreeBlock != pxEnd ) - { + make a contiguous block of memory? */ + puc = (uint8_t *) pxBlockToInsert; + if ((puc + pxBlockToInsert->xBlockSize) + == (uint8_t *) pxIterator->pxNextFreeBlock) { + if (pxIterator->pxNextFreeBlock != pxEnd) { /* Form one big block from the two blocks. */ - pxBlockToInsert->xBlockSize += pxIterator->pxNextFreeBlock->xBlockSize; - pxBlockToInsert->pxNextFreeBlock = pxIterator->pxNextFreeBlock->pxNextFreeBlock; - } - else - { + pxBlockToInsert->xBlockSize += + pxIterator->pxNextFreeBlock->xBlockSize; + pxBlockToInsert->pxNextFreeBlock = + pxIterator->pxNextFreeBlock->pxNextFreeBlock; + } else { pxBlockToInsert->pxNextFreeBlock = pxEnd; } - } - else - { + } else { pxBlockToInsert->pxNextFreeBlock = pxIterator->pxNextFreeBlock; } /* If the block being inserted plugged a gab, so was merged with the block - before and the block after, then it's pxNextFreeBlock pointer will have - already been set, and should not be set here as that would make it point - to itself. */ - if( pxIterator != pxBlockToInsert ) - { + before and the block after, then it's pxNextFreeBlock pointer will have + already been set, and should not be set here as that would make it point + to itself. */ + if (pxIterator != pxBlockToInsert) { pxIterator->pxNextFreeBlock = pxBlockToInsert; - } - else - { + } else { mtCOVERAGE_TEST_MARKER(); } } /*-----------------------------------------------------------*/ -static void vPortDefineHeapRegions( const HeapRegion_t * const pxHeapRegions ) -{ -BlockLink_t *pxFirstFreeBlockInRegion = NULL, *pxPreviousFreeBlock; -uint8_t *pucAlignedHeap; -size_t xTotalRegionSize, xTotalHeapSize = 0; -BaseType_t xDefinedRegions = 0; -uint32_t ulAddress; -const HeapRegion_t *pxHeapRegion; +static void vPortDefineHeapRegions(const HeapRegion_t * const pxHeapRegions) { + BlockLink_t *pxFirstFreeBlockInRegion = NULL, *pxPreviousFreeBlock; + uint8_t *pucAlignedHeap; + size_t xTotalRegionSize, xTotalHeapSize = 0; + BaseType_t xDefinedRegions = 0; + uint32_t ulAddress; + const HeapRegion_t *pxHeapRegion; #if defined(CONFIG_PLATFORM_8195A) -/* - xHeapRegions[0].pucStartAddress = (uint8_t*)&__ram_heap1_start__; - xHeapRegions[0].xSizeInBytes = (u32)&__ram_heap1_end__ - (u32)xHeapRegions[0].pucStartAddress; - xHeapRegions[1].pucStartAddress = &ucHeap; // (uint8_t*)&__ram_heap2_start__; - xHeapRegions[1].xSizeInBytes = (u32)0x10070000 - (u32)xHeapRegions[1].pucStartAddress; - xHeapRegions[2].pucStartAddress = (uint8_t*)&__sdram_data_start__; - xHeapRegions[2].xSizeInBytes = (u32)0x30200000 - (u32)xHeapRegions[2].pucStartAddress; -*/ + /* + xHeapRegions[0].pucStartAddress = (uint8_t*)&__ram_heap1_start__; + xHeapRegions[0].xSizeInBytes = (u32)&__ram_heap1_end__ - (u32)xHeapRegions[0].pucStartAddress; + xHeapRegions[1].pucStartAddress = &ucHeap; // (uint8_t*)&__ram_heap2_start__; + xHeapRegions[1].xSizeInBytes = (u32)0x10070000 - (u32)xHeapRegions[1].pucStartAddress; + xHeapRegions[2].pucStartAddress = (uint8_t*)&__sdram_data_start__; + xHeapRegions[2].xSizeInBytes = (u32)0x30200000 - (u32)xHeapRegions[2].pucStartAddress; + */ #endif /* Can only call once! */ configASSERT( pxEnd == NULL ); - pxHeapRegion = &( pxHeapRegions[ xDefinedRegions ] ); + pxHeapRegion = &(pxHeapRegions[xDefinedRegions]); uint8 chip_id = HalGetChipId(); - while( pxHeapRegion->xSizeInBytes > 0 ) - { - if(pxHeapRegion->pucStartAddress > (uint8_t *)0x20000000 - && chip_id >= CHIP_ID_8711AN && chip_id <= CHIP_ID_8711AF) { + while (pxHeapRegion->xSizeInBytes > 0) { + if (pxHeapRegion->pucStartAddress + > 0x20000000 && chip_id >= CHIP_ID_8711AN && chip_id <= CHIP_ID_8711AF) { // pxHeapRegion->pucStartAddress = 0; // pxHeapRegion->xSizeInBytes = 0; // DBG_8195A("ChipID: %p !\n", chip_id); - } - else { + } else { #if CONFIG_DEBUG_LOG > 2 DBG_8195A("Init Heap Region: %p[%d]\n", pxHeapRegion->pucStartAddress, pxHeapRegion->xSizeInBytes); #endif @@ -555,30 +516,27 @@ const HeapRegion_t *pxHeapRegion; #endif xTotalRegionSize = pxHeapRegion->xSizeInBytes; /* Ensure the heap region starts on a correctly aligned boundary. */ - ulAddress = ( uint32_t ) pxHeapRegion->pucStartAddress; - if( ( ulAddress & portBYTE_ALIGNMENT_MASK ) != 0 ) - { - ulAddress += ( portBYTE_ALIGNMENT - 1 ); + ulAddress = (uint32_t) pxHeapRegion->pucStartAddress; + if ((ulAddress & portBYTE_ALIGNMENT_MASK) != 0) { + ulAddress += ( portBYTE_ALIGNMENT - 1); ulAddress &= ~portBYTE_ALIGNMENT_MASK; /* Adjust the size for the bytes lost to alignment. */ - xTotalRegionSize -= ulAddress - ( uint32_t ) pxHeapRegion->pucStartAddress; + xTotalRegionSize -= ulAddress + - (uint32_t) pxHeapRegion->pucStartAddress; } - pucAlignedHeap = ( uint8_t * ) ulAddress; + pucAlignedHeap = (uint8_t *) ulAddress; /* Set xStart if it has not already been set. */ - if( xDefinedRegions == 0 ) - { + if (xDefinedRegions == 0) { /* xStart is used to hold a pointer to the first item in the list of - free blocks. The void cast is used to prevent compiler warnings. */ - xStart.pxNextFreeBlock = ( BlockLink_t * ) pucAlignedHeap; - xStart.xBlockSize = ( size_t ) 0; - } - else - { + free blocks. The void cast is used to prevent compiler warnings. */ + xStart.pxNextFreeBlock = (BlockLink_t *) pucAlignedHeap; + xStart.xBlockSize = (size_t) 0; + } else { /* Should only get here if one region has already been added to the - heap. */ + heap. */ configASSERT( pxEnd != NULL ); /* Check blocks are passed in with increasing start addresses. */ @@ -586,29 +544,29 @@ const HeapRegion_t *pxHeapRegion; } /* Remember the location of the end marker in the previous region, if - any. */ + any. */ pxPreviousFreeBlock = pxEnd; /* pxEnd is used to mark the end of the list of free blocks and is - inserted at the end of the region space. */ - ulAddress = ( ( uint32_t ) pucAlignedHeap ) + xTotalRegionSize; + inserted at the end of the region space. */ + ulAddress = ((uint32_t) pucAlignedHeap) + xTotalRegionSize; ulAddress -= uxHeapStructSize; ulAddress &= ~portBYTE_ALIGNMENT_MASK; - pxEnd = ( BlockLink_t * ) ulAddress; + pxEnd = (BlockLink_t *) ulAddress; pxEnd->xBlockSize = 0; pxEnd->pxNextFreeBlock = NULL; /* To start with there is a single free block in this region that is - sized to take up the entire heap region minus the space taken by the - free block structure. */ - pxFirstFreeBlockInRegion = ( BlockLink_t * ) pucAlignedHeap; - pxFirstFreeBlockInRegion->xBlockSize = ulAddress - ( uint32_t ) pxFirstFreeBlockInRegion; + sized to take up the entire heap region minus the space taken by the + free block structure. */ + pxFirstFreeBlockInRegion = (BlockLink_t *) pucAlignedHeap; + pxFirstFreeBlockInRegion->xBlockSize = ulAddress + - (uint32_t) pxFirstFreeBlockInRegion; pxFirstFreeBlockInRegion->pxNextFreeBlock = pxEnd; /* If this is not the first region that makes up the entire heap space - then link the previous region to this region. */ - if( pxPreviousFreeBlock != NULL ) - { + then link the previous region to this region. */ + if (pxPreviousFreeBlock != NULL) { pxPreviousFreeBlock->pxNextFreeBlock = pxFirstFreeBlockInRegion; } @@ -616,7 +574,7 @@ const HeapRegion_t *pxHeapRegion; } /* Move onto the next HeapRegion_t structure. */ xDefinedRegions++; - pxHeapRegion = &( pxHeapRegions[ xDefinedRegions ] ); + pxHeapRegion = &(pxHeapRegions[xDefinedRegions]); } xMinimumEverFreeBytesRemaining = xTotalHeapSize; @@ -627,72 +585,68 @@ const HeapRegion_t *pxHeapRegion; } -void* pvPortReAlloc( void *pv, size_t xWantedSize ) -{ +void* pvPortReAlloc(void *pv, size_t xWantedSize) { BlockLink_t *pxLink; - if( ((uint32_t)pv >= ext_lower) && ((uint32_t)pv < ext_upper) ){ - if( ext_free ) ext_free( pv ); + if (((uint32_t) pv >= ext_lower) && ((uint32_t) pv < ext_upper)) { + if (ext_free) + ext_free(pv); pv = NULL; } - unsigned char *puc = ( unsigned char * ) pv; + unsigned char *puc = (unsigned char *) pv; - if( pv ) - { - if( !xWantedSize ) - { - vPortFree( pv ); + if (pv) { + if (!xWantedSize) { + vPortFree(pv); return NULL; } - void *newArea = pvPortMalloc( xWantedSize ); - if( newArea ) - { + void *newArea = pvPortMalloc(xWantedSize); + if (newArea) { /* The memory being freed will have an xBlockLink structure immediately - before it. */ + before it. */ puc -= uxHeapStructSize; /* This casting is to keep the compiler from issuing warnings. */ - pxLink = ( void * ) puc; + pxLink = (void *) puc; - int oldSize = (pxLink->xBlockSize & ~xBlockAllocatedBit) - uxHeapStructSize; - int copySize = ( oldSize < xWantedSize ) ? oldSize : xWantedSize; - memcpy( newArea, pv, copySize ); + int oldSize = (pxLink->xBlockSize & ~xBlockAllocatedBit) - uxHeapStructSize; + int copySize = (oldSize < xWantedSize) ? oldSize : xWantedSize; + rtl_memcpy(newArea, pv, copySize); vTaskSuspendAll(); { /* Add this block to the list of free blocks. */ pxLink->xBlockSize &= ~xBlockAllocatedBit; xFreeBytesRemaining += pxLink->xBlockSize; - prvInsertBlockIntoFreeList( ( ( BlockLink_t * ) pxLink ) ); + prvInsertBlockIntoFreeList(((BlockLink_t *) pxLink)); } xTaskResumeAll(); return newArea; } - } - else if( xWantedSize ) - return pvPortMalloc( xWantedSize ); + } else if (xWantedSize) + return pvPortMalloc(xWantedSize); else return NULL; return NULL; } -extern _LONG_CALL_ROM_ void *_memset( void *s, int c, SIZE_T n ); +extern _LONG_CALL_ROM_ void *_memset(void *s, int c, SIZE_T n); -void *pvPortZalloc( size_t xWantedSize ) -{ +void *pvPortZalloc(size_t xWantedSize) { void * prt = pvPortMalloc(xWantedSize); - if(prt) _memset(prt, 0, xWantedSize); + if (prt) + _memset(prt, 0, xWantedSize); return prt; } /* -#ifdef ARDUINO_SDK -int vPortAddHeapRegion(uint8_t *addr, size_t size) -{ - return 0; -} -#endif -*/ + #ifdef ARDUINO_SDK + int vPortAddHeapRegion(uint8_t *addr, size_t size) + { + return 0; + } + #endif + */ diff --git a/RTL00_SDKV35a/component/os/os_dep/include/osdep_api.h b/RTL00_SDKV35a/component/os/os_dep/include/osdep_api.h index 2bcab43..a6583c3 100644 --- a/RTL00_SDKV35a/component/os/os_dep/include/osdep_api.h +++ b/RTL00_SDKV35a/component/os/os_dep/include/osdep_api.h @@ -79,7 +79,7 @@ typedef struct _RTL_TIMER{ u32 msPeriod; // The period of this timer void *Context; // Timer specific context. u8 isPeriodical; // is a periodical timer - u8 TimerName[35]; // the Name of timer + u8 TimerName[15]; // the Name of timer }RTL_TIMER, *PRTL_TIMER; __inline static VOID diff --git a/RTL00_SDKV35a/component/os/os_dep/osdep_api.c b/RTL00_SDKV35a/component/os/os_dep/osdep_api.c index f938be2..15c63ec 100644 --- a/RTL00_SDKV35a/component/os/os_dep/osdep_api.c +++ b/RTL00_SDKV35a/component/os/os_dep/osdep_api.c @@ -22,7 +22,6 @@ #define _OSDEP_API_C_ #include -#include extern _LONG_CALL_ char *_strcpy(char *dest, const char *src); extern _LONG_CALL_ VOID *_memset(void *dst0, int Val,SIZE_T length); diff --git a/RTL00_SDKV35a/component/os/os_dep/osdep_service.c b/RTL00_SDKV35a/component/os/os_dep/osdep_service.c index 24d4e4b..f1f095b 100644 --- a/RTL00_SDKV35a/component/os/os_dep/osdep_service.c +++ b/RTL00_SDKV35a/component/os/os_dep/osdep_service.c @@ -1082,12 +1082,12 @@ int rtw_create_worker_thread( rtw_worker_thread_t* worker_thread, u8 priority, u memset( worker_thread, 0, sizeof( *worker_thread ) ); - if ( rtw_init_xqueue( &worker_thread->event_queue, "worker queue", sizeof(rtw_event_message_t), event_queue_size ) != SUCCESS ) + if ( rtw_init_xqueue( &worker_thread->event_queue, "worker", sizeof(rtw_event_message_t), event_queue_size ) != SUCCESS ) { return FAIL; } - if ( !rtw_create_task( &worker_thread->thread, "worker thread", stack_size, priority, worker_thread_main, (void*) worker_thread ) ) + if ( !rtw_create_task( &worker_thread->thread, "worker", stack_size, priority, worker_thread_main, (void*) worker_thread ) ) { rtw_deinit_xqueue( &worker_thread->event_queue ); return FAIL; diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/cmsis/device/diag.h b/RTL00_SDKV35a/component/soc/realtek/8195a/cmsis/device/diag.h index c025f98..b81c084 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/cmsis/device/diag.h +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/cmsis/device/diag.h @@ -89,6 +89,8 @@ prvDiagSPrintf( IN const char *fmt, ... ); +extern char print_off; + #if CONFIG_DEBUG_LOG > 3 #define debug_printf(fmt, ...) rtl_printf(fmt, ##__VA_ARGS__) #define info_printf(fmt, ...) rtl_printf(fmt, ##__VA_ARGS__) diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/hal_diag.h b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/hal_diag.h index 8bacf16..3594b89 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/hal_diag.h +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/hal_diag.h @@ -51,6 +51,9 @@ #define UART_STOP_1BIT 0x0 #define UART_STOP_2BIT 0x4 +#ifndef DEFAULT_BAUDRATE +#define DEFAULT_BAUDRATE UART_BAUD_RATE_38400 +#endif #define HAL_UART_READ32(addr) HAL_READ32(LOG_UART_REG_BASE, addr) #define HAL_UART_WRITE32(addr, value) HAL_WRITE32(LOG_UART_REG_BASE, addr, value) diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/ram_lib/hal_misc_v0.c b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/ram_lib/hal_misc_v0.c index 3520a32..7c8906b 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/ram_lib/hal_misc_v0.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/ram_lib/hal_misc_v0.c @@ -336,7 +336,7 @@ PatchHalInitPlatformLogUart( UartIrqHandle.Priority = 0; //4 Inital Log uart - UartAdapter.BaudRate = UART_BAUD_RATE_38400; + UartAdapter.BaudRate = DEFAULT_BAUDRATE; UartAdapter.DataLength = UART_DATA_LEN_8BIT; UartAdapter.FIFOControl = 0xC1; UartAdapter.IntEnReg = 0x00; diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/ram_lib/rtl_boot.c b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/ram_lib/rtl_boot.c index 99582c8..519105a 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/ram_lib/rtl_boot.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/ram_lib/rtl_boot.c @@ -13,8 +13,9 @@ //------------------------------------------------------------------------- // Data declarations - -#define DEFAULT_BAUDRATE UART_BAUD_RATE_38400 +#ifndef DEFAULT_BAUDRATE +#define DEFAULT_BAUDRATE 38400 +#endif /* 0 - 166666666 Hz, 1 - 83333333 Hz, 2 - 41666666 Hz, 3 - 20833333 Hz, 4 - 10416666 Hz, 5 - 4000000? Hz, 6 - 200000000 Hz, 7 - 10000000 Hz, 8 - 50000000 Hz, 9 - 25000000 Hz, 10 - 12500000 Hz, 11 - 4000000? Hz */ diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/rtl8195a_sys_on.h b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/rtl8195a_sys_on.h index f82b9b4..236c0bc 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/rtl8195a_sys_on.h +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/rtl8195a_sys_on.h @@ -616,6 +616,7 @@ #define BIT_MASK_XTAL_DRV_RF_LATCH 0xffffffffL #define BIT_XTAL_DRV_RF_LATCH(x) (((x) & BIT_MASK_XTAL_DRV_RF_LATCH) << BIT_SHIFT_XTAL_DRV_RF_LATCH) +// BIT25 - To release DAC delta sigma clock gating //2 REG_RSVD diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/src/rtl8195a_pwm.c b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/src/rtl8195a_pwm.c index 156c4c1..007eeb8 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/src/rtl8195a_pwm.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/src/rtl8195a_pwm.c @@ -3,8 +3,8 @@ * * Copyright (c) 2013 Realtek Semiconductor Corp. * - * This module is a confidential and proprietary property of RealTek and - * possession or use of this module requires written permission of RealTek. + * -------------------------- + * bug fixing: pvvx */ @@ -15,9 +15,10 @@ #include "rtl8195a_pwm.h" #include "hal_pwm.h" -extern HAL_PWM_ADAPTER PWMPin[]; +//extern HAL_PWM_ADAPTER PWMPin[]; -extern HAL_TIMER_OP HalTimerOp; +//extern HAL_TIMER_OP HalTimerOp; +extern u32 gTimerRecord; /** * @brief Configure a G-Timer to generate a tick with certain time. @@ -33,33 +34,30 @@ Pwm_SetTimerTick_8195a( u32 tick_time ) { - TIMER_ADAPTER TimerAdapter; - - if (tick_time <= MIN_GTIMER_TIMEOUT) { tick_time = MIN_GTIMER_TIMEOUT; } - else { - tick_time = (((tick_time-1)/TIMER_TICK_US)+1) * TIMER_TICK_US; - } - // Initial a G-Timer for the PWM pin if (pPwmAdapt->tick_time != tick_time) { - TimerAdapter.IrqDis = 1; // Disable Irq - TimerAdapter.IrqHandle.IrqFun = (IRQ_FUN) NULL; - TimerAdapter.IrqHandle.IrqNum = TIMER2_7_IRQ; - TimerAdapter.IrqHandle.Priority = 10; - TimerAdapter.IrqHandle.Data = (u32)NULL; - TimerAdapter.TimerId = pPwmAdapt->gtimer_id; - TimerAdapter.TimerIrqPriority = 0; - TimerAdapter.TimerLoadValueUs = tick_time-1; - TimerAdapter.TimerMode = 1; // auto-reload with user defined value - - HalTimerOp.HalTimerInit((VOID*) &TimerAdapter); pPwmAdapt->tick_time = tick_time; DBG_PWM_INFO("%s: Timer_Id=%d Count=%d\n", __FUNCTION__, pPwmAdapt->gtimer_id, tick_time); + // if timer is running ? + if(gTimerRecord & (1 << pPwmAdapt->gtimer_id)) { + HalTimerReLoadRtl8195a_Patch(pPwmAdapt->gtimer_id, tick_time); + } else { + TIMER_ADAPTER TimerAdapter; + TimerAdapter.IrqDis = 1; // Disable Irq + TimerAdapter.IrqHandle.IrqFun = (IRQ_FUN) NULL; + TimerAdapter.IrqHandle.IrqNum = TIMER2_7_IRQ; + TimerAdapter.IrqHandle.Priority = 10; + TimerAdapter.IrqHandle.Data = (u32)NULL; + TimerAdapter.TimerId = pPwmAdapt->gtimer_id; + TimerAdapter.TimerIrqPriority = 0; + TimerAdapter.TimerLoadValueUs = tick_time-1; + TimerAdapter.TimerMode = 1; // auto-reload with user defined value + HalTimerInitRtl8195a_Patch((VOID*) &TimerAdapter); + } } - } @@ -95,7 +93,7 @@ HAL_Pwm_SetDuty_8195a( period = MIN_GTIMER_TIMEOUT*2; } else { - tick_time = period / 0x3fc; // a duty cycle be devided into 1020 ticks + tick_time = period / 1020; // 0x3fc; // a duty cycle be devided into 1020 ticks if (tick_time < MIN_GTIMER_TIMEOUT) { tick_time = MIN_GTIMER_TIMEOUT; } @@ -103,36 +101,24 @@ HAL_Pwm_SetDuty_8195a( Pwm_SetTimerTick_8195a(pPwmAdapt, tick_time); tick_time = pPwmAdapt->tick_time; -#if 0 - // Check if current tick time needs adjustment - if ((pPwmAdapt->tick_time << 12) <= period) { - // need a longger tick time - } - else if ((pPwmAdapt->tick_time >> 2) >= period) { - // need a shorter tick time - } -#endif + period_tick = period/tick_time; if (period_tick == 0) { period_tick = 1; } if (pulse_width >= period) { -// pulse_width = period-1; pulse_width = period; } pulsewidth_tick = pulse_width/tick_time; - if (pulsewidth_tick == 0) { -// pulsewidth_tick = 1; - } timer_id = pPwmAdapt->gtimer_id; - pPwmAdapt->period = period_tick & 0x3ff; - pPwmAdapt->pulsewidth = pulsewidth_tick & 0x3ff; + pPwmAdapt->period = period_tick & BIT_MASK_PERI_PWM0_PERIOD; + pPwmAdapt->pulsewidth = pulsewidth_tick & BIT_MASK_PERI_PWM0_DUTY; RegAddr = REG_PERI_PWM0_CTRL + (pwm_id*4); - RegValue = BIT31 | (timer_id<<24) | (pulsewidth_tick<<12) | period_tick; + RegValue = BIT_PERI_PWM0_EN | BIT_PERI_PWM0_GT_SEL(timer_id) | BIT_PERI_PWM0_DUTY(pulsewidth_tick) | BIT_PERI_PWM0_PERIOD(period_tick); HAL_WRITE32(PERI_ON_BASE, RegAddr, RegValue); } @@ -157,10 +143,10 @@ HAL_Pwm_Init_8195a( pwm_id = pPwmAdapt->pwm_id; pin_sel = pPwmAdapt->sel; // Initial a G-Timer for the PWM pin - Pwm_SetTimerTick_8195a(pPwmAdapt, MIN_GTIMER_TIMEOUT); +//p/ Pwm_SetTimerTick_8195a(pPwmAdapt, MIN_GTIMER_TIMEOUT); // Set default duty ration - HAL_Pwm_SetDuty_8195a(pPwmAdapt, 20000, 10000); +//p/ HAL_Pwm_SetDuty_8195a(pPwmAdapt, 20000, 10000); // Configure the Pin Mux PinCtrl((PWM0+pwm_id), pin_sel, 1); @@ -187,7 +173,7 @@ HAL_Pwm_Enable_8195a( // Configure the Pin Mux if (!pPwmAdapt->enable) { PinCtrl((PWM0+pwm_id), pPwmAdapt->sel, 1); - HalTimerOp.HalTimerEn(pPwmAdapt->gtimer_id); + HalTimerEnRtl8195a_Patch(pPwmAdapt->gtimer_id); pPwmAdapt->enable = 1; } } @@ -211,7 +197,7 @@ HAL_Pwm_Disable_8195a( // Configure the Pin Mux if (pPwmAdapt->enable) { PinCtrl((PWM0+pwm_id), pPwmAdapt->sel, 0); - HalTimerOp.HalTimerDis(pPwmAdapt->gtimer_id); + HalTimerDisRtl8195a(pPwmAdapt->gtimer_id); pPwmAdapt->enable = 0; } } diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/src/rtl8195a_uart.c b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/src/rtl8195a_uart.c index da20edb..bb014c6 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/src/rtl8195a_uart.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/rtl8195a/src/rtl8195a_uart.c @@ -142,8 +142,6 @@ HalRuartResetTRxFifoRtl8195a( return HAL_OK; } -extern u64 div_u64(u64 dividend, u32 divisor); - HAL_Status HalRuartGenBaudRateRtl8195a( IN RUART_SPEED_SETTING *pBaudSetting @@ -154,7 +152,7 @@ HalRuartGenBaudRateRtl8195a( u32 min_err=0xffffffff; u32 uart_ovsr; u32 uart_ovsr_mod; - u32 min_uart_ovsr =0; // ovsr with mini err + u32 min_uart_ovsr; // ovsr with mini err u32 min_uart_ovsr_mod; u64 uart_clock; u32 divisor_temp; diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_adc.c b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_adc.c index ed21f08..fee78fe 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_adc.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_adc.c @@ -650,7 +650,7 @@ RtkADCPinMuxInit( ADCLocalTemp |= BIT25; /* To release DAC delta sigma clock gating */ - HAL_WRITE32(SYSTEM_CTRL_BASE,REG_SYS_SYSPLL_CTRL2,ADCLocalTemp); + HAL_WRITE32(SYSTEM_CTRL_BASE, REG_SYS_SYSPLL_CTRL2, ADCLocalTemp); /* Turn on DAC active clock */ ACTCK_ADC_CCTRL(ON); @@ -1267,12 +1267,14 @@ RtkADCReceive( pHALADCGdmaAdpt->MuliBlockCunt = 0; pHALADCGdmaOp->HalGdmaChSeting(pHALADCGdmaAdpt); - pHALADCGdmaOp->HalGdmaChEn(pHALADCGdmaAdpt); - pSalADCHND->DevSts = ADC_STS_RX_ING; AdcTempDat = HAL_ADC_READ32(REG_ADC_POWER); AdcTempDat |= BIT_ADC_PWR_AUTO; HAL_ADC_WRITE32(REG_ADC_POWER, AdcTempDat); + + pHALADCGdmaOp->HalGdmaChEn(pHALADCGdmaAdpt); + + pSalADCHND->DevSts = ADC_STS_RX_ING; return _EXIT_SUCCESS; } return _EXIT_FAILURE; @@ -1288,9 +1290,6 @@ RtkADCReceiveBuf( PSAL_ADC_HND pSalADCHND = (PSAL_ADC_HND) Data; PSAL_ADC_HND_PRIV pSalADCHNDPriv = NULL; PSAL_ADC_MNGT_ADPT pSalADCMngtAdpt = NULL; - - - PHAL_ADC_OP pHalADCOP = NULL; //PIRQ_HANDLE pIrqHandleADCGdma = NULL; @@ -1299,13 +1298,8 @@ RtkADCReceiveBuf( /* To Get the SAL_I2C_MNGT_ADPT Pointer */ pSalADCHNDPriv = CONTAINER_OF(pSalADCHND, SAL_ADC_HND_PRIV, SalADCHndPriv); pSalADCMngtAdpt = CONTAINER_OF(pSalADCHNDPriv->ppSalADCHnd, SAL_ADC_MNGT_ADPT, pSalHndPriv); - - - - pHalADCOP = pSalADCMngtAdpt->pHalOp; - - + pHalADCOP = pSalADCMngtAdpt->pHalOp; /* Clear ADC Status */ //HAL_ADC_READ32(REG_ADC_INTR_STS); @@ -1315,11 +1309,12 @@ RtkADCReceiveBuf( //DBG_8195A(">>INTR:%x\n",AdcTempDat); ADCFullStsFlag = 0; - HalDelayUs(2000); +/// HalDelayUs(2000); ? + HalDelayUs(20); DBG_ADC_INFO("RtkADCReceiveBuf, Check to enable ADC manully or not\n"); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_POWER); - if (unlikely((AdcTempDat & 0x00000008) == 0)) { + if (unlikely((AdcTempDat & BIT_ADC_ISO_MANUAL) == 0)) { ; } else { @@ -1329,23 +1324,22 @@ RtkADCReceiveBuf( //AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_POWER); } - pSalADCHND->pInitDat->ADCIntrMSK = (BIT_ADC_FIFO_FULL_EN); pHalADCOP->HalADCIntrCtrl(pSalADCHND->pInitDat); pSalADCHND->DevSts = ADC_STS_IDLE; AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD0); - if ((AdcTempDat & 0x00000001) == 0){ + if ((AdcTempDat & BIT_ADC_EN_MANUAL) == 0){ AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD1); DBG_ADC_INFO("RtkADCReceiveBuf, Before set, Reg AD1:%x\n", AdcTempDat); - AdcTempDat |= (0x01); + AdcTempDat |= BIT_ADC_EN_MANUAL; HAL_ADC_WRITE32(REG_ADC_ANAPAR_AD1, AdcTempDat); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD1); DBG_ADC_INFO("RtkADCReceiveBuf, After set, Reg AD1:%x\n", AdcTempDat); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD0); DBG_ADC_INFO("RtkADCReceiveBuf, Before set, Reg AD0:%x\n", AdcTempDat); - AdcTempDat |= (0x01); + AdcTempDat |= BIT_ADC_EN_MANUAL; HAL_ADC_WRITE32(REG_ADC_ANAPAR_AD0, AdcTempDat); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD0); DBG_ADC_INFO("RtkADCReceiveBuf, After set, Reg AD0:%x\n", AdcTempDat); @@ -1359,14 +1353,14 @@ RtkADCReceiveBuf( AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD0); DBG_ADC_INFO("RtkADCReceiveBuf, End of ADC, Before set, AD0:%x\n", AdcTempDat); - AdcTempDat &= (~0x01); + AdcTempDat &= (~BIT_ADC_EN_MANUAL); HAL_ADC_WRITE32(REG_ADC_ANAPAR_AD0, AdcTempDat); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD0); DBG_ADC_INFO("RtkADCReceiveBuf, End of ADC, After set, AD0:%x\n", AdcTempDat); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD1); DBG_ADC_INFO("RtkADCReceiveBuf, End of ADC, Before set, AD1:%x\n", AdcTempDat); - AdcTempDat &= (~0x01); + AdcTempDat &= (~BIT_ADC_EN_MANUAL); HAL_ADC_WRITE32(REG_ADC_ANAPAR_AD1, AdcTempDat); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD1); DBG_ADC_INFO("RtkADCReceiveBuf, End of ADC, After set, AD1:%x\n", AdcTempDat); @@ -1410,7 +1404,7 @@ RtkADCRxManualRotate( DBG_ADC_INFO("RtkADCRxManualRotate, Check to enable ADC manully or not\n"); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_POWER); - if (unlikely((AdcTempDat & 0x00000008) == 0)) { + if (unlikely((AdcTempDat & BIT_ADC_ISO_MANUAL) == 0)) { ; } else { @@ -1426,7 +1420,7 @@ RtkADCRxManualRotate( pSalADCHND->DevSts = ADC_STS_IDLE; AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD0); - if ((AdcTempDat & 0x00000001) == 0){ + if ((AdcTempDat & BIT_ADC_EN_MANUAL) == 0){ AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD1); DBG_ADC_INFO("RtkADCRxManualRotate, Before set, Reg AD1:%x\n", AdcTempDat); /* Clear for manual rotrate first*/ @@ -1435,7 +1429,7 @@ RtkADCRxManualRotate( AdcTempDat |= (BIT0); /* Enable manual mode, this is to turn cali. off */ - AdcTempDat &= ~(BIT11); +// AdcTempDat &= ~(BIT11); AdcTempDat |= (BIT11); /* Set rotation to default state @@ -1476,7 +1470,7 @@ RtkADCRxManualRotate( /* Read Content */ for (tempcnt=0; tempcnt<16; tempcnt++){ - ADCDatBuf[0] = (u32)HAL_ADC_READ32(REG_ADC_FIFO_READ); + ADCDatBuf[0] = (u32)HAL_ADC_READ32(REG_ADC_FIFO_READ); } /* Close ADC */ @@ -1507,7 +1501,7 @@ RtkADCRxManualRotate( AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD0); DBG_ADC_INFO("RtkADCRxManualRotate, Before set, Reg AD0:%x\n", AdcTempDat); - AdcTempDat |= (0x01); + AdcTempDat |= BIT_ADC_EN_MANUAL; HAL_ADC_WRITE32(REG_ADC_ANAPAR_AD0, AdcTempDat); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD0); DBG_ADC_INFO("RtkADCRxManualRotate, After set, Reg AD0:%x\n", AdcTempDat); @@ -1537,14 +1531,14 @@ RtkADCRxManualRotate( /* Close ADC */ AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD0); DBG_ADC_INFO("RtkADCRxManualRotate, End of ADC, Before set, AD0:%x\n", AdcTempDat); - AdcTempDat &= (~0x01); + AdcTempDat &= (~BIT_ADC_EN_MANUAL); HAL_ADC_WRITE32(REG_ADC_ANAPAR_AD0, AdcTempDat); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD0); DBG_ADC_INFO("RtkADCRxManualRotate, End of ADC, After set, AD0:%x\n", AdcTempDat); AdcTempDat = (u32)HAL_ADC_READ32(REG_ADC_ANAPAR_AD1); DBG_ADC_INFO("RtkADCRxManualRotate, End of ADC, Before set, AD1:%x\n", AdcTempDat); - AdcTempDat &= (~0x01); + AdcTempDat &= (~BIT0); /* Disable manual mode */ AdcTempDat &= (~BIT11); diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_log_uart.c b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_log_uart.c index 12fc92a..90582ff 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_log_uart.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_log_uart.c @@ -161,7 +161,7 @@ void HalLogUartIrqHandle(VOID * Data) { void HalLogUartSetBaudRate(HAL_LOG_UART_ADAPTER *pUartAdapter) { u32 clk4 = HalGetCpuClk() >> 2; // PLATFORM_CLOCK/2; // (unsigned int) HalGetCpuClk() >> 2; // div 4 if (pUartAdapter->BaudRate == 0) - pUartAdapter->BaudRate = UART_BAUD_RATE_38400; + pUartAdapter->BaudRate = DEFAULT_BAUDRATE; u32 br16 = pUartAdapter->BaudRate << 4; // * 16 if ((br16 != 0) && (br16 <= clk4)) { unsigned int dll = clk4 / br16; @@ -200,7 +200,7 @@ u32 HalLogUartInitSetting(HAL_LOG_UART_ADAPTER *pUartAdapter) { // HalPinCtrlRtl8195A(LOG_UART, 0, 1); ???? u32 clk4 = HalGetCpuClk() >> 2; // PLATFORM_CLOCK/2; // (unsigned int) HalGetCpuClk() >> 2; // div 4 if (pUartAdapter->BaudRate == 0) - pUartAdapter->BaudRate = UART_BAUD_RATE_38400; + pUartAdapter->BaudRate = DEFAULT_BAUDRATE; u32 br16 = pUartAdapter->BaudRate << 4; // * 16 HAL_UART_WRITE32(UART_INTERRUPT_EN_REG_OFF, 0); // 40003004 = 0; if (br16 <= clk4) { @@ -418,7 +418,7 @@ void HalInitLogUart(void) { HAL_PERI_ON_WRITE32(REG_PESOC_CLK_CTRL, HAL_PERI_ON_READ32(REG_PESOC_CLK_CTRL) | BIT_SOC_ACTCK_LOG_UART_EN); // 40000230 |= 0x1000u; HalPinCtrlRtl8195A(LOG_UART, 0, 1); - UartAdapter.BaudRate = UART_BAUD_RATE_38400; + UartAdapter.BaudRate = DEFAULT_BAUDRATE; UartAdapter.DataLength = UART_DATA_LEN_8BIT; UartAdapter.FIFOControl = FCR_RX_TRIG_MASK | FCR_FIFO_EN; // 0xC1; UartAdapter.IntEnReg = IER_ERBFI | IER_ELSI; // 5 diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_pwm.c b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_pwm.c index 674e091..147d239 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_pwm.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_pwm.c @@ -3,8 +3,8 @@ * * Copyright (c) 2013 Realtek Semiconductor Corp. * - * This module is a confidential and proprietary property of RealTek and - * possession or use of this module requires written permission of RealTek. + * -------------------------- + * bug fixing: pvvx */ diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_soc_ps_monitor.c b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_soc_ps_monitor.c index 9d8605f..abaeafa 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_soc_ps_monitor.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_soc_ps_monitor.c @@ -46,7 +46,6 @@ PatchHalLogUartInit( u32 Divisor; u32 Dlh; u32 Dll; - u32 SysClock; /* Interrupt enable Register @@ -71,21 +70,11 @@ PatchHalLogUartInit( // set up buad rate division #ifdef CONFIG_FPGA - SysClock = SYSTEM_CLK; - Divisor = (SysClock / (16 * (UartAdapter.BaudRate))); + Divisor = (SYSTEM_CLK / (16 * (UartAdapter.BaudRate))); #else { - u32 SampleRate, Remaind; - - SysClock = HalGetCpuClk() >> 2; - - SampleRate = (16 * (UartAdapter.BaudRate)); - - Divisor= SysClock/SampleRate; - - Remaind = ((SysClock*10)/SampleRate) - (Divisor*10); - - if (Remaind > 4) Divisor++; + Divisor = HalGetCpuClk()/(32 * UartAdapter.BaudRate); + Divisor = (Divisor & 1) + (Divisor >> 1); } #endif @@ -98,7 +87,7 @@ PatchHalLogUartInit( HAL_UART_WRITE32(UART_DLL_OFF, Dll); HAL_UART_WRITE32(UART_DLH_OFF, Dlh); // clear DLAB bit - HAL_UART_WRITE32(UART_LINE_CTL_REG_OFF, 0); +// HAL_UART_WRITE32(UART_LINE_CTL_REG_OFF, 0); // есть далее // set data format SetData = UartAdapter.Parity | UartAdapter.Stop | UartAdapter.DataLength; @@ -160,7 +149,7 @@ PSHalInitPlatformLogUart( UartIrqHandle.Priority = 0; //4 Inital Log uart - UartAdapter.BaudRate = UART_BAUD_RATE_38400; + UartAdapter.BaudRate = DEFAULT_BAUDRATE; UartAdapter.DataLength = UART_DATA_LEN_8BIT; UartAdapter.FIFOControl = 0xC1; UartAdapter.IntEnReg = 0x00; diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_ssi.c b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_ssi.c index 7003be7..96c92f9 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_ssi.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/fwlib/src/hal_ssi.c @@ -547,13 +547,13 @@ HalSsiInit(VOID *Data) DBG_SSI_ERR("Invalid SPI Index.\n"); break; } -/* + ret = FunctionChk(Function, (u32)PinmuxSelect); if(ret == _FALSE){ DBG_SSI_ERR("Invalid Pinmux Setting.\n"); return HAL_ERR_PARA; } -*/ + #ifdef CONFIG_SOC_PS_MODULE REG_POWER_STATE SsiPwrState; #endif diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/driver/rtl_console_new.c b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/driver/rtl_console_new.c index abc5dc3..1295239 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/driver/rtl_console_new.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/driver/rtl_console_new.c @@ -6,11 +6,9 @@ */ //====================================================== #ifndef LOGUART_STACK_SIZE -#define LOGUART_STACK_SIZE 400 // USE_MIN_STACK_SIZE to 128 +#define LOGUART_STACK_SIZE 400 // USE_MIN_STACK_SIZE modify from 512 to 128 #endif -#ifndef CONSOLE_PRIORITY #define CONSOLE_PRIORITY 0 -#endif //====================================================== #include "rtl8195a.h" #include "rtl_bios_data.h" @@ -43,7 +41,7 @@ _LONG_CALL_ extern void UartLogHistoryCmd( IN u8 RevData, IN UART_LOG_CTL *prvUartLogCtl, IN u8 EchoFlag); -_LONG_CALL_ extern void UartLogCmdExecute(IN PUART_LOG_CTL pUartLogCtlExe); +//_LONG_CALL_ extern void UartLogCmdExecute(IN PUART_LOG_CTL pUartLogCtlExe); //====================================================== extern PCOMMAND_TABLE UartLogRamCmdTable[]; extern UartLogRamCmdTableSize; @@ -128,9 +126,9 @@ void UartLogIrqHandleRam(void * Data) { // для передачи ' ' или ','. // Начальные пробелы cmd или arg удаляются. //====================================================== -int GetArgvRam(IN u8 *pstr) { +int GetArgvRam(IN u8 *pstr, u8** argv) { int arvc = 0; - u8** argv = ArgvArray; +// u8** argv = ArgvArray; u8* p = pstr; u8 t, n = ' '; int m = 0; @@ -213,7 +211,7 @@ MON_RAM_TEXT_SECTION void RtlConsolTaskRam(void *Data) { RtlDownSema(&p->Sema); if (p->ExecuteCmd) { // UartLogCmdExecute(pUartLogCtl); - int argc = GetArgvRam(p->pTmpLogBuf->UARTLogBuf); + int argc = GetArgvRam(p->pTmpLogBuf->UARTLogBuf, ArgvArray); if(argc) { StrUpr(ArgvArray[0]); PCOMMAND_TABLE pcmd = p->pCmdTbl; @@ -329,8 +327,13 @@ _WEAK void console_help(int argc, char *argv[]) { // Help } DiagPrintf(&str_rom_57ch3Dch0A[25]); // DiagPrintf("==============================\n"); } +LOCAL void print_on(int argc, char *argv[]) +{ + print_off = argv[1][0]!='1'; +} // (!) размещается в специальном сегменте '.mon.tab*' (см. *.ld файл) MON_RAM_TAB_SECTION COMMAND_TABLE console_commands[] = { + {"PR", 1, print_on, "<1/0>: Printf on/off"}, // Help {"?", 0, console_help, ": This Help"} // Help // {"HELP", 0, console_help, ": Help"} // Help }; diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/include/rtl_bios_data.h b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/include/rtl_bios_data.h index 2a4cd72..cc58bb5 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/include/rtl_bios_data.h +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/include/rtl_bios_data.h @@ -92,7 +92,7 @@ typedef struct _FALSE_ALARM_STATISTICS { u32 Cnt_CCA_all; u32 Cnt_BW_USC; u32 Cnt_BW_LSC; -} FALSE_ALARM_STATISTICS, *PFALSE_ALARM_STATISTICS; +} FALSE_ALARM_STATISTICS; extern FALSE_ALARM_STATISTICS FalseAlmCnt; // 100006E0 typedef struct _rom_info { @@ -100,7 +100,7 @@ typedef struct _rom_info { u8 CrystalCap; u64 DebugComponents; u32 DebugLevel; -} ROM_INFO, *PROM_INFO; +} ROM_INFO; extern ROM_INFO ROMInfo; // 10000720 typedef struct _CFO_TRACKING_ { @@ -118,7 +118,7 @@ typedef struct _CFO_TRACKING_ { u8 CFO_TH_XTAL_HIGH; u8 CFO_TH_XTAL_LOW; u8 CFO_TH_ATC; -} CFO_TRACKING, *PCFO_TRACKING;; +}CFO_TRACKING; extern CFO_TRACKING DM_CfoTrack; // 10000738 /* in rom_libgloss_retarget.h diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/c_stdio.c b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/c_stdio.c index b8bddaf..4ff3a67 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/c_stdio.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/c_stdio.c @@ -4,7 +4,6 @@ #include #include #include "libc/rom/string/rom_libc_string.h" -#include "strproc.h" #define memchr __rtl_memchr_v1_00 #define memcmp __rtl_memcmp_v1_00 @@ -23,6 +22,10 @@ #define strsep __rtl_strsep_v1_00 #define strtok __rtl_strtok_v1_00 +static char toupper(char ch) { + return ((ch >= 'a' && ch <= 'z') ? ch - 'a' + 'A' : ch); +}; + #define NEWFP 1 #define ENDIAN_LITTLE 1234 #define ENDIAN_BIG 4321 @@ -188,13 +191,6 @@ str_fmt(char *p, int size, int fmt) /* * strtoupper() */ -#define strtoupper StrUpr -/* - -LOCAL char toupper(char ch) { - return ((ch >= 'a' && ch <= 'z') ? ch - 'a' + 'A' : ch); -}; - void strtoupper(char *p) { @@ -203,7 +199,7 @@ strtoupper(char *p) for (; *p; p++) *p = toupper (*p); } -*/ + /* $Id: atob.c,v 1.1.1.1 2006/08/23 17:03:06 pefo Exp $ */ /* @@ -637,7 +633,7 @@ c_vsprintf (char *d, const char *s, va_list ap) } else if (*s == 'o') base = 8; - else //if (*s == 'b') + else if (*s == 'b') base = 2; if (longlong) llbtoa(d, va_arg (ap, quad_t), @@ -1078,12 +1074,9 @@ int c_printf(const char *fmt, ...) int puts (const char *s) { - int i = 0; while(*s) { HalSerialPutcRtl8195a(*s++); - i++; } - return i; } void vTaskDelete(void *); diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/ram_libc.c b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/ram_libc.c index 704a9d2..79739ac 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/ram_libc.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/ram_libc.c @@ -62,7 +62,8 @@ char * rtl_strtok(char *s, const char *delim); extern struct _reent * _rtl_impure_ptr; -int libc_has_init; +char libc_has_init; +char print_off; // extern rtl_impure_ptr // extern impure_ptr @@ -139,14 +140,17 @@ int rtl_printf(const char *fmt, ...) { if (!libc_has_init) { rtl_libc_init(); } -#endif - va_list args; - va_start (args, fmt); - int result = __rtl_vfprintf_r_v1_00(_rtl_impure_ptr, - _rtl_impure_ptr->_stdout, fmt, args); - __rtl_fflush_r_v1_00(_rtl_impure_ptr, _rtl_impure_ptr->_stdout); - // va_end (args); - return result; +#endif + if(!print_off) { + va_list args; + va_start (args, fmt); + int result = __rtl_vfprintf_r_v1_00(_rtl_impure_ptr, + _rtl_impure_ptr->_stdout, fmt, args); + __rtl_fflush_r_v1_00(_rtl_impure_ptr, _rtl_impure_ptr->_stdout); + // va_end (args); + return result; + } + else return 0; } //----- rtl_vprintf() diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/ram_pvvx_libc.c b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/ram_pvvx_libc.c index b65497e..b2490fd 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/ram_pvvx_libc.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/ram_pvvx_libc.c @@ -6,8 +6,6 @@ #include "rtl_bios_data.h" #include "va_list.h" -#include "strproc.h" -#include "rt_lib_rom.h" #define CHECK_LIBC_INIT 0 //------------------------------------------------------------------------- @@ -69,10 +67,8 @@ unsigned long long __aeabi_llsr(unsigned long long val, unsigned int shift); extern struct _reent * _rtl_impure_ptr; -#if CHECK_LIBC_INIT -extern int libc_has_init; -#endif -// extern impure_ptr +extern char libc_has_init; +extern char print_off; //------------------------------------------------------------------------- // Function @@ -142,13 +138,17 @@ int printf(const char *fmt, ...) { rtl_libc_init(); } #endif - va_list args; - va_start (args, fmt); - int result = __rtl_vfprintf_r_v1_00(_rtl_impure_ptr, - _rtl_impure_ptr->_stdout, fmt, args); - __rtl_fflush_r_v1_00(_rtl_impure_ptr, _rtl_impure_ptr->_stdout); - // va_end (args); - return result; + if(!print_off) { + + va_list args; + va_start (args, fmt); + int result = __rtl_vfprintf_r_v1_00(_rtl_impure_ptr, + _rtl_impure_ptr->_stdout, fmt, args); + __rtl_fflush_r_v1_00(_rtl_impure_ptr, _rtl_impure_ptr->_stdout); + // va_end (args); + return result; + } + else return 0; } //----- vprintf() @@ -169,6 +169,7 @@ int vprintf(const char * fmt, __VALIST param) { int vsnprintf(char *str, size_t size, const char *fmt, __VALIST param) { int result; int w; + int v11; FILE f; #if CHECK_LIBC_INIT if (!libc_has_init) { @@ -299,9 +300,9 @@ int sscanf(const char *buf, const char *fmt, ...) { return i; } -LOCAL char toupper(char ch) { +char toupper(char ch) { return ((ch >= 'a' && ch <= 'z') ? ch - 'a' + 'A' : ch); -} +}; int _stricmp (const char *s1, const char *s2) { @@ -378,15 +379,12 @@ int __aeabi_dtoi(double d) return __rtl_dtoi_v1_00(d); } -extern _LONG_CALL_ int __rtl_dtoui_v1_00(double d); - //----- __aeabi_dtoui() int __aeabi_dtoui(double d) { return __rtl_dtoui_v1_00(d); } -extern _LONG_CALL_ float __rtl_itof_v1_00(int val); //----- __aeabi_i2f() float __aeabi_i2f(int val) { @@ -411,7 +409,6 @@ int __aeabi_ui2d(unsigned int val) return __rtl_uitod_v1_00(val); } -extern _LONG_CALL_ char * __rtl_ltoa_v1_00(int value, char *string, int radix); //----- __aeabi_itoa() char * __aeabi_itoa(int value, char *string, int radix) { @@ -424,7 +421,6 @@ char * __aeabi_ltoa(int value, char *string, int radix) return (char *)__rtl_ltoa_v1_00(value, string, radix); } -extern _LONG_CALL_ char * __rtl_ultoa_v1_00(unsigned int value, char *string, int radix); //----- __aeabi_utoa() char * __aeabi_utoa(unsigned int value, char *string, int radix) { @@ -437,49 +433,42 @@ char * __aeabi_ultoa(unsigned int value, char *string, int radix) return (char *)__rtl_ultoa_v1_00(value, string, radix); } -extern _LONG_CALL_ long long __rtl_ftol_v1_00(float f); //----- __aeabi_ftol() -long long __aeabi_ftol(float f) +int __aeabi_ftol(float f) { return __rtl_ftol_v1_00(f); } -extern _LONG_CALL_ double __rtl_ftod_v1_00(float f); //----- __aeabi_ftod() -double __aeabi_ftod(float f) +int __aeabi_ftod(float f) { return __rtl_ftod_v1_00(f); } -extern _LONG_CALL_ float __rtl_dtof_v1_00(double d); //----- __aeabi_dtof() float __aeabi_dtof(double d) { return __rtl_dtof_v1_00(d); } -extern _LONG_CALL_ float __rtl_fadd_v1_00(float a, float b); //----- __aeabi_fadd() float __aeabi_fadd(float a, float b) { return __rtl_fadd_v1_00(a, b); } -extern _LONG_CALL_ float __rtl_fsub_v1_00(float a, float b); //----- __aeabi_fsub() float __aeabi_fsub(float a, float b) { return __rtl_fsub_v1_00(a, b); } -extern _LONG_CALL_ float __rtl_fmul_v1_00(float a, float b); //----- __aeabi_fmul() float __aeabi_fmul(float a, float b) { return __rtl_fmul_v1_00(a, b); } -extern _LONG_CALL_ float __rtl_fdiv_v1_00(float a, float b); //----- __aeabi_fdiv() float __aeabi_fdiv(float a, float b) { @@ -487,25 +476,25 @@ float __aeabi_fdiv(float a, float b) } //----- __aeabi_dadd() -double __aeabi_dadd(double a, double b) +int __aeabi_dadd(double a, double b) { return __rtl_dadd_v1_00(a, b); } //----- __aeabi_dsub() -double __aeabi_dsub(double a, double b) +int __aeabi_dsub(double a, double b) { return __rtl_dsub_v1_00(a, b); } //----- __aeabi_dmul() -double __aeabi_dmul(double a, double b) +int __aeabi_dmul(double a, double b) { return __rtl_dmul_v1_00(a, b); } //----- __aeabi_ddiv() -double __aeabi_ddiv(double a, double b) +int __aeabi_ddiv(double a, double b) { return __rtl_ddiv_v1_00(a, b); } @@ -522,7 +511,6 @@ int __aeabi_dcmplt(double a, double b) return __rtl_dcmplt_v1_00(a, b); } -extern _LONG_CALL_ int __rtl_dcmple_v1_00(double a, double b); //----- __aeabi_dcmple() int __aeabi_dcmple(double a, double b) { @@ -535,13 +523,12 @@ int __aeabi_dcmpgt(double a, double b) return __rtl_dcmpgt_v1_00(a, b); } -extern _LONG_CALL_ int __rtl_fcmplt_v1_00(float a, float b); //----- __aeabi_fcmplt() int __aeabi_fcmplt(float a, float b) { return __rtl_fcmplt_v1_00(a, b); } -extern _LONG_CALL_ int __rtl_fcmpgt_v1_00(float a, float b); + //----- __aeabi_fcmpgt() int __aeabi_fcmpgt(float a, float b) { diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/rtl_eabi_cast_ram.c b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/rtl_eabi_cast_ram.c index 7f4b2ad..8f7589a 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/rtl_eabi_cast_ram.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/rtl_eabi_cast_ram.c @@ -4,7 +4,6 @@ */ #include "basic_types.h" -#include "rt_lib_rom.h" //------------------------------------------------------------------------- // Function declarations @@ -72,15 +71,12 @@ int rtl_dtoi(double d) return __rtl_dtoi_v1_00(d); } -extern _LONG_CALL_ int __rtl_dtoui_v1_00(double d); - //----- rtl_dtoui() int rtl_dtoui(double d) { return __rtl_dtoui_v1_00(d); } -extern _LONG_CALL_ float __rtl_itof_v1_00(int val); //----- rtl_i2f() float rtl_i2f(int val) { @@ -105,7 +101,6 @@ int rtl_ui2d(unsigned int val) return __rtl_uitod_v1_00(val); } -extern _LONG_CALL_ char * __rtl_ltoa_v1_00(int value, char *string, int radix); //----- rtl_itoa() char *rtl_itoa(int value, char *string, int radix) { @@ -118,7 +113,6 @@ char *rtl_ltoa(int value, char *string, int radix) return (char *)__rtl_ltoa_v1_00(value, string, radix); } -extern _LONG_CALL_ char * __rtl_ultoa_v1_00(unsigned int value, char *string, int radix); //----- rtl_utoa() char *rtl_utoa(unsigned int value, char *string, int radix) { @@ -131,7 +125,6 @@ char *rtl_ultoa(unsigned int value, char *string, int radix) return (char *)__rtl_ultoa_v1_00(value, string, radix); } -extern _LONG_CALL_ double __rtl_ftod_v1_00(float f); //----- rtl_ftol() int rtl_ftol(float f) { @@ -144,7 +137,6 @@ int rtl_ftod(float f) return __rtl_ftod_v1_00(f); } -extern _LONG_CALL_ float __rtl_fsub_v1_00(float a, float b); //----- rtl_dtof() float rtl_dtof(double d) { @@ -163,14 +155,12 @@ float rtl_fsub(float a, float b) return __rtl_fsub_v1_00(a, b); } -extern _LONG_CALL_ float __rtl_fmul_v1_00(float a, float b); //----- rtl_fmul() float rtl_fmul(float a, float b) { return __rtl_fmul_v1_00(a, b); } -extern _LONG_CALL_ float __rtl_fdiv_v1_00(float a, float b); //----- rtl_fdiv() float rtl_fdiv(float a, float b) { @@ -213,7 +203,6 @@ int rtl_dcmplt(double a, double b) return __rtl_dcmplt_v1_00(a, b); } -extern _LONG_CALL_ int __rtl_dcmple_v1_00(double a, double b); //----- rtl_dcmple() int rtl_dcmple(double a, double b) { @@ -225,13 +214,13 @@ int rtl_dcmpgt(double a, double b) { return __rtl_dcmpgt_v1_00(a, b); } -extern _LONG_CALL_ int __rtl_fcmplt_v1_00(float a, float b); + //----- rtl_fcmplt() int rtl_fcmplt(float a, float b) { return __rtl_fcmplt_v1_00(a, b); } -extern _LONG_CALL_ int __rtl_fcmpgt_v1_00(float a, float b); + //----- rtl_fcmpgt() int rtl_fcmpgt(float a, float b) { diff --git a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/rtl_math_ram.c b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/rtl_math_ram.c index 4809b33..7fa3703 100644 --- a/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/rtl_math_ram.c +++ b/RTL00_SDKV35a/component/soc/realtek/8195a/misc/rtl_std_lib/lib_rtlstd/rtl_math_ram.c @@ -20,28 +20,25 @@ float rtl_sin_f32(float a); // int __rtl_cos_f32_v1_00(); // int __rtl_sin_f32_v1_00(); -extern _LONG_CALL_ float __rtl_fabsf_v1_00(float a); + //----- rtl_fabsf() float rtl_fabsf(float a) { return __rtl_fabsf_v1_00(a); } -extern _LONG_CALL_ double __rtl_fabs_v1_00(double number); //----- rtl_fabs() int rtl_fabs(double a) { return __rtl_fabs_v1_00(a); } -extern _LONG_CALL_ float __rtl_cos_f32_v1_00(float a); //----- rtl_cos_f32() float rtl_cos_f32(float a) { return __rtl_cos_f32_v1_00(a); } -extern _LONG_CALL_ float __rtl_sin_f32_v1_00(float a); //----- rtl_sin_f32() float rtl_sin_f32(float a) { diff --git a/build/bin/ota.bin b/build/bin/ota.bin index bdbc710..f238190 100644 Binary files a/build/bin/ota.bin and b/build/bin/ota.bin differ diff --git a/build/bin/ram_2.bin b/build/bin/ram_2.bin index 26e4e3b..bb4ca0c 100644 Binary files a/build/bin/ram_2.bin and b/build/bin/ram_2.bin differ diff --git a/build/bin/ram_2.ns.bin b/build/bin/ram_2.ns.bin index b8d9805..e4b78c6 100644 Binary files a/build/bin/ram_2.ns.bin and b/build/bin/ram_2.ns.bin differ diff --git a/build/bin/ram_2.p.bin b/build/bin/ram_2.p.bin index b27ed61..53615e6 100644 Binary files a/build/bin/ram_2.p.bin and b/build/bin/ram_2.p.bin differ diff --git a/build/bin/ram_all.bin b/build/bin/ram_all.bin index 3f664c1..e6aba08 100644 Binary files a/build/bin/ram_all.bin and b/build/bin/ram_all.bin differ diff --git a/build/obj/build.nmap b/build/obj/build.nmap index 148ebd6..69b716d 100644 --- a/build/obj/build.nmap +++ b/build/obj/build.nmap @@ -4,10 +4,10 @@ 00000000 A __vectors_table 00000000 D __rom_image_end__ 00000000 D __rom_image_start__ -000000e0 A UartLogRamCmdTableSize 00000101 A Reset_Handler 00000109 A NMI_Handler 0000010d A HardFault_Handler +00000110 A UartLogRamCmdTableSize 00000121 A MemManage_Handler 00000125 A BusFault_Handler 00000129 A UsageFault_Handler @@ -851,2349 +851,2354 @@ 100076d0 T vWFSSVCHandler 100076d6 t svcing 100076f0 T PatchHalLogUartInit -100077a4 T PSHalInitPlatformLogUart -10007868 T InitSYSIRQ -100078a4 T DurationScaleAndPeriodOP -100078dc T CLKCal -10007938 T BackupCPUClk -10007958 T ReFillCpuClk -10007978 T SYSIrqHandle -100079b8 T WakeFromSLPPG -10007af0 T InitSoCPM -10007b28 T RegPowerState -10007b94 T ReadHWPwrState -10007e10 T QueryRegPwrState -10007e48 T SetSYSTimer -10007e80 T SleepCG -10007f70 T DeepSleep -100080b4 T HALEFUSEOneByteReadRAM -100080d4 T HALEFUSEOneByteWriteRAM -100080d8 T HalLogUartWaitTxFifoEmpty -100080f0 T FunctionChk -100080f4 T HalReInitPlatformTimer -10008164 T HalGetChipId -1000818c W __low_level_init -1000818e t get_addr_fobj -100081d8 t get_addr_fobj_save -10008224 t _fwrite_word -10008250 t get_addr_bscfg -100082cc T copy_align4_to_align1 -10008356 T cmp_align1_align4 -10008400 T flash_write_cfg -10008640 T flash_read_cfg -100086d4 T rtl_libc_init -100086f0 T rtl_snprintf -10008750 T rtl_sprintf -1000879c T rtl_printf -100087d4 T rtl_memcmp -100087dc T rtl_memcpy -100087e4 T rtl_memmove -100087ec T rtl_memset -100087f4 T rtl_strcmp -100087fc T rtl_strcpy -10008804 T rtl_strlen -1000880c T rtl_strncmp -10008814 T rtl_strncpy -1000881c T rtl_strsep -10008824 T ram_libgloss_close -10008834 T ram_libgloss_fstat -10008854 T ram_libgloss_isatty -10008860 T ram_libgloss_lseek -10008870 T ram_libgloss_read -10008880 T ram_libgloss_sbrk -1000889c T ram_libgloss_write -100088bc T ram_libgloss_open -100088f8 T init_rom_libgloss_ram_map -10008940 T memcpy -10008948 T memset -10008950 T sscanf -1000896a T __aeabi_llsr -10008980 T wlan_init_done_callback -10008984 T read_wifi_cfg -100089cc T write_wifi_cfg -10008a14 T chk_ap_netif_num -10008a60 T StartStDHCPClient -10008aec T _wifi_on -10008b98 T _LwIP_Init -10008c4c T translate_rtw_security -10008c70 T show_wifi_ap_ip -10008ca4 T wifi_run_ap -10008dc4 T show_wifi_st_ip -10008df8 T wifi_run_st -10008eb4 T wifi_run -10008fa4 T wifi_init -10008fe0 T show_wifi_st_cfg -10009030 T show_wifi_ap_cfg -1000909c T show_wifi_cfg -100090fc T user_init_thrd -10009110 t mp3_cfg_read -10009170 T tskmad -1000938c T render_sample_block -10009400 T set_dac_sample_rate -10009444 T getIpForHost -10009468 T openConn -1000958c T http_head_read -100096c4 T tskreader -1000988c T connect_close -100098b4 T connect_start -10009954 T fATWS -10009a34 T ShowMemInfo -10009a60 T main -10009ab8 t _scan_result_handler -10009bb8 t fATSN -10009c40 t fATWI -10009d78 t fATWR -10009d94 t fATPA -10009e70 t fATPN -10009f40 t fATSP -10009f84 t fATDS -10009fac t fATSW -10009fb4 t fATSD -10009fbc t fATST -1000a02c T print_hex_dump -1000a05c T dump_bytes -1000a0f0 t fATSB -1000a128 T print_udp_pcb -1000a194 T print_tcp_pcb -1000a26c t fATLW -1000a27c T RamFifoClose -1000a2d8 T RamFifoInit -1000a42c T RamFifoRead -1000a4e8 T RamFifoWrite -1000a59c T RamFifoFill -1000a5c8 T RamFifoFree -1000a5dc T RamFifoLen -1000a5e8 t decode_header -1000a758 T mad_header_init -1000a784 T mad_frame_finish -1000a79c T mad_header_decode -1000aa38 T mad_frame_decode -1000aabc T mad_frame_mute -1000ab06 T mad_frame_init -1000ab24 t III_requantize -1000aba0 t III_aliasreduce -1000ac08 t fastsdct -1000ad40 t III_imdct_l -1000b158 t III_imdct_s -1000b2ac t III_overlap -1000b2d6 t III_freqinver -1000b320 t III_decode -1000c33c T mad_layer_III -1000c7a0 T mad_bit_init -1000c7ac T mad_bit_length -1000c7c4 T mad_bit_nextbyte -1000c7d0 T mad_bit_skip -1000c800 T mad_bit_read -1000c86c T mad_bit_crc -1000c960 t scale -1000c96c t dct32 -1000d200 t synth_half -1000d644 t synth_full -1000da98 T mad_synth_mute -1000dad0 T mad_synth_init -1000daf4 T mad_synth_frame -1000db88 t scale_rational -1000dbfc T mad_timer_set -1000dce4 T mad_stream_init -1000dd16 T mad_stream_finish -1000dd28 T mad_stream_buffer -1000dd3c T mad_stream_sync -1000dd84 T mad_stream_errorstr -1000dee0 t i2s_test_tx_complete -1000def8 T i2sClose -1000df84 T i2sInit -1000e0f8 T i2sSetRate -1000e180 T i2sPushPWMSamples -1000e2e8 T SystemCoreClockUpdate -1000e2fc W console_help -1000e33c T GetArgvRam -1000e3f4 T get_eap_phase -1000e400 T get_eap_method -1000e40c T eap_autoreconnect_hdl -1000e410 t wifi_no_network_hdl -1000e428 t wifi_ap_sta_disassoc_hdl -1000e42c T wifi_scan_done_hdl -1000e49c t wifi_handshake_done_hdl -1000e4b8 t wifi_disconn_hdl -1000e520 t wifi_connected_hdl -1000e554 t wifi_connect_local -1000e668 T wifi_scan_each_report_hdl -1000e7a8 T wifi_autoreconnect_hdl -1000e7e4 t wifi_ap_sta_assoc_hdl -1000e7e6 T wifi_rx_beacon_hdl -1000e7e8 T wifi_connect -1000ea6c t wifi_autoreconnect_thread -1000ead4 T wifi_set_country -1000eae0 T wifi_off -1000eb4c T wifi_start_ap -1000ec2c T wifi_scan -1000ec84 T wifi_scan_networks -1000ed34 T wifi_set_pscan_chan -1000ed4c T wifi_get_setting -1000edfc T wifi_show_setting -1000eec0 T wifi_config_autoreconnect -1000eee4 T wifi_indication -1000ef20 T wifi_reg_event_handler -1000ef74 T wifi_unreg_event_handler -1000efb8 T init_event_callback_list -1000efc8 T promisc_deinit -1000efcc T promisc_recv_func -1000efd0 T promisc_set -1000efd4 T is_promisc_enabled -1000efde T iw_ioctl -1000effa T wext_get_ssid -1000f044 T wext_set_ssid -1000f078 T is_broadcast_ether_addr -1000f09a T wext_set_auth_param -1000f0c8 T wext_set_key_ext -1000f1c8 T wext_get_enc_ext -1000f22a T wext_set_passphrase -1000f25e T wext_get_passphrase -1000f28e T wext_set_mode -1000f2b2 T wext_get_mode -1000f2dc T wext_set_ap_ssid -1000f310 T wext_set_country -1000f334 T wext_set_pscan_channel -1000f3b4 T wext_set_channel -1000f3e2 T wext_get_channel -1000f40e T wext_set_scan -1000f43e T wext_get_scan -1000f470 T wext_wlan_indicate -1000f5b8 T wext_set_autoreconnect -1000f608 T wext_set_adaptivity -1000f630 T wext_set_sta_num -1000f634 T LwIP_DHCP -1000f728 T LwIP_GetIP -1000f72c T LwIP_AUTOIP -1000f7a8 t netconn_recv_data -1000f878 T netconn_new_with_proto_and_callback -1000f8d8 T netconn_delete -1000f8fc T netconn_getaddr -1000f940 T netconn_connect -1000f980 T netconn_recv_tcp_pbuf -1000f994 T netconn_recv -1000fa1c T netconn_recved -1000fa48 T netconn_send -1000fa84 T netconn_write_partly -1000fb14 T netconn_gethostbyname -1000fb6c t recv_udp -1000fbdc t recv_raw -1000fc60 t setup_tcp -1000fca4 t err_tcp -1000fd3c t do_connected -1000fda8 t do_writemore -1000fea8 t do_close_internal -1000ff94 t poll_tcp -1000ffe4 t do_dns_found -10010010 t sent_tcp -1001005e t recv_tcp -100100d8 T do_newconn -10010168 T netconn_alloc -100101d4 T netconn_free -10010200 t netconn_drain -10010290 T do_delconn -1001031c T do_connect -100103b0 T do_send -10010420 T do_recv -10010460 T do_write -1001049a T do_getaddr -10010510 T do_gethostbyname -1001053c T netbuf_delete -1001055c T netbuf_free -10010572 T netbuf_ref -100105ac T lwip_gethostbyname -100105f8 t get_socket -10010618 t alloc_socket -10010688 t event_callback -100107b8 T lwip_socket_init -100107ba T lwip_close -1001080c T lwip_connect -10010868 T lwip_recvfrom -10010a20 T lwip_read -10010a34 T lwip_sendto -10010ae0 T lwip_send -10010b58 T lwip_socket -10010bcc T lwip_write -10010bd4 t tcpip_thread -10010c58 T tcpip_input -10010ca0 T tcpip_callback_with_block -10010cf4 T tcpip_timeout -10010d38 T tcpip_apimsg -10010d90 T tcpip_init -10010dd4 t autoip_start_probing -10010e20 t autoip_arp_announce -10010e4c T autoip_start -10010ee0 T autoip_tmr -10010ff0 T autoip_arp_reply -10011098 t icmp_send_response.isra.0 -10011108 T icmp_input -1001122c T icmp_dest_unreach -10011236 T icmp_time_exceeded -10011240 t igmp_send -100112e4 t igmp_delaying_member -1001131c t igmp_lookup_group.part.1 -10011354 T igmp_init -10011370 T igmp_report_groups -10011394 T igmp_lookfor_group -100113b4 T igmp_start -100113f0 T igmp_input -100114b4 T igmp_tmr -100114e0 t lwip_standard_chksum -10011538 T inet_chksum_pseudo -100115be T inet_chksum -100115ca T inet_chksum_pbuf -10011610 T ip_route -1001164c T ip_input -10011824 T ip_output_if_opt -10011978 T ip_output_if -1001199a T ip_output -100119d2 T ip4_addr_isbroadcast -10011a0a T ipaddr_aton -10011b20 T ipaddr_addr -10011b38 T ipaddr_ntoa_r -10011bd0 T ipaddr_ntoa -10011bdc t ipfrag_free_pbuf_custom -10011bf4 t ip_reass_free_complete_datagram -10011c74 t ip_reass_remove_oldest_datagram -10011ce8 T ip_reass_tmr -10011d10 T ip_reass -10011fc0 T ip_frag -1001212c T lwip_htons -10012132 T lwip_ntohs -10012138 T lwip_htonl -1001213c T lwip_ntohl -10012140 t dhcp_set_state -10012150 t dhcp_option -10012170 t dhcp_option_byte -10012182 t dhcp_option_short -100121a4 t dhcp_option_long -100121e8 t dhcp_create_msg -10012338 t dhcp_delete_msg -1001234e t dhcp_check -10012374 t dhcp_bind -10012448 t dhcp_option_trailer -10012474 t dhcp_discover -10012528 t dhcp_reboot -100125cc t dhcp_option_hostname.isra.1 -1001260c t dhcp_rebind -100126a0 t dhcp_select -1001278c t dhcp_recv -10012b90 T dhcp_arp_reply -10012c10 T dhcp_renew -10012ca4 T dhcp_release -10012d4c T dhcp_coarse_tmr -10012dd8 T dhcp_fine_tmr -10012e74 T dhcp_release_unicast -10012f38 T dhcp_stop -10012f68 T dhcp_start -10013008 t dns_parse_name -10013024 t dns_recv -100131b8 t dns_send -10013288 t dns_check_entry -10013338 T dns_setserver -10013358 T dns_init -100133b0 T dns_tmr -100133dc T dns_gethostbyname -1001351c T lwip_init -10013544 T sys_timeout -100135a4 T tcp_timer_needed -100135d8 t tcpip_tcp_timer -10013610 T sys_timeouts_init -10013684 t dns_timer -100136a0 t igmp_timer -100136b8 t autoip_timer -100136d0 t dhcp_timer_fine -100136ec t dhcp_timer_coarse -10013708 t arp_timer -10013724 t ip_reass_timer -10013740 T sys_untimeout -10013788 T sys_timeouts_mbox_fetch -100137ec T netif_init -100137f0 T netif_set_ipaddr -10013848 T netif_set_addr -10013864 T netif_add -100138c8 T netif_set_gw -100138d0 T netif_set_netmask -100138d8 T netif_set_default -100138e4 T netif_set_up -1001391a T netif_set_down -10013934 t pbuf_free_ooseq_callback -10013968 t pbuf_pool_is_empty -100139a4 T pbuf_alloced_custom -100139f8 T pbuf_header -10013a50 T pbuf_free -10013a90 T pbuf_alloc -10013bb4 T pbuf_realloc -10013be8 T pbuf_clen -10013bf8 T pbuf_ref -10013c12 T pbuf_cat -10013c2e T pbuf_chain -10013c3e T pbuf_copy -10013cda T pbuf_copy_partial -10013d42 T pbuf_coalesce -10013d70 T raw_input -10013de8 T raw_connect -10013df2 T raw_recv -10013df8 T raw_sendto -10013e88 T raw_send -10013e90 T raw_remove -10013eb8 T raw_new -10013eec t tcp_new_port -10013f3c T tcp_init -10013f54 T tcp_update_rcv_ann_wnd -10013f8a T tcp_recved -10013fc4 T tcp_seg_free -10013fde T tcp_segs_free -10013ff0 T tcp_seg_copy -10014018 T tcp_arg -1001401c T tcp_recv -10014022 T tcp_sent -10014028 T tcp_err -1001402e T tcp_accept -10014032 T tcp_poll -1001403c T tcp_pcb_purge -1001407c T tcp_slowtmr -10014338 T tcp_pcb_remove -100143a0 t tcp_close_shutdown -100144d0 T tcp_close -100144e8 T tcp_recv_null -1001450c T tcp_process_refused_data -1001456c T tcp_fasttmr -100145e4 T tcp_tmr -10014608 T tcp_shutdown -10014658 T tcp_abandon -100146f0 T tcp_abort -100146f8 T tcp_next_iss -10014710 T tcp_alloc -10014830 T tcp_new -10014836 T tcp_eff_send_mss -10014854 T tcp_connect -100149b0 t tcp_oos_insert_segment -10014a30 t tcp_receive -10015208 t tcp_parseopt.isra.0 -1001528c T tcp_input -10015ae4 t tcp_pbuf_prealloc -10015b38 t tcp_create_segment -10015c00 t tcp_output_alloc_header.constprop.0 -10015c6a T tcp_write -10015fba T tcp_enqueue_flags -10016062 T tcp_send_fin -100160aa T tcp_send_empty_ack -10016108 T tcp_output -10016380 T tcp_rst -10016418 T tcp_rexmit_rto -10016446 T tcp_rexmit -10016496 T tcp_rexmit_fast -100164ec T tcp_keepalive -1001653e T tcp_zero_window_probe -100165e8 T udp_init -10016600 T udp_input -10016788 T udp_bind -10016830 T udp_sendto_if -1001692e T udp_sendto -10016964 T udp_send -10016970 T udp_connect -100169b8 T udp_disconnect -100169c8 T udp_recv -100169d0 T udp_remove -100169f8 T udp_new -10016a1c t etharp_free_entry -10016a4c t etharp_find_entry -10016b28 t etharp_send_ip -10016b5c T etharp_tmr -10016b9c T etharp_cleanup_netif -10016bc4 T etharp_raw -10016c80 T etharp_request -10016cac t etharp_output_to_arp_index -10016cf4 T etharp_query -10016df8 T etharp_output -10016ef0 T ethernet_input -100170e0 t low_level_output -1001713c t arp_timer -10017158 T ethernetif_recv -100171d0 T ethernetif_init -10017214 T lwip_POST_SLEEP_PROCESSING -10017230 T rltk_wlan_set_netif_info -10017250 T rltk_wlan_send -100172e4 T rltk_wlan_recv -10017350 T netif_is_valid_IP -10017384 T netif_get_idx -1001739c T netif_rx -100173ac T netif_post_sleep_processing -100173b0 T sys_mbox_new -100173ca T sys_mbox_free -100173de T sys_mbox_post -100173fe T sys_mbox_trypost -10017420 T sys_arch_mbox_fetch -1001746a T sys_arch_mbox_tryfetch -1001748a T sys_mbox_valid -10017494 T sys_mbox_set_invalid -1001749a T sys_sem_new -100174d6 T sys_arch_sem_wait -10017516 T sys_sem_signal -10017522 T sys_sem_free -10017528 T sys_sem_valid -10017532 T sys_sem_set_invalid -10017538 T sys_init -1001755c T sys_thread_new_tcm -100175c4 T sys_arch_protect -100175ce T sys_arch_unprotect -100175d4 t add_offer_options -10017690 t mark_ip_in_table -100176d4 t dhcps_initialize_message -10017784 T dhcps_handle_state_machine_change -10017854 t dhcps_receive_udp_packet_handler -10017b20 T dhcps_deinit -10017b48 T dhcps_init -10017c50 t prvInsertBlockIntoFreeList -10017c98 t vPortDefineHeapRegions.constprop.1 -10017d38 T pvPortMalloc -10017e18 T __vPortFree -10017e5c T vPortSetExtFree -10017e78 T vPortFree -10017ea8 T xPortGetFreeHeapSize -10017eb4 t prvPortStartFirstTask -10017ed4 T pxPortInitialiseStack -10017ef0 T vPortSVCHandler -10017f10 t pxCurrentTCBConst2 -10017f14 T vPortYield -10017f2c T ulPortSetInterruptMask -10017f3c t prvTaskExitError -10017f44 T vPortEnterCritical -10017f60 T vPortClearInterruptMask -10017f68 T vPortExitCritical -10017f7c T xPortPendSVHandler -10017fbc t pxCurrentTCBConst -10017fc0 T xPortSysTickHandler -10017fe4 W vPortSuppressTicksAndSleep -100180fc W vPortSetupTimerInterrupt -1001814c T xPortStartScheduler -1001817c T vApplicationIdleHook -10018180 T vApplicationStackOverflowHook -1001819c T osKernelSysTick -100181a0 T vListInitialise -100181b6 T vListInitialiseItem -100181bc T vListInsertEnd -100181d4 T vListInsert -10018204 T uxListRemove -10018224 t prvCopyDataToQueue -1001828e t prvCopyDataFromQueue -100182b6 t prvUnlockQueue -1001831e T xQueueGenericReset -10018378 T xQueueGenericCreate -100183c4 T xQueueCreateCountingSemaphore -100183d6 T xQueueGenericSend -100184b4 T xQueueCreateMutex -100184fe T xQueueGenericSendFromISR -10018562 T xQueueGenericReceive -10018666 T uxQueueMessagesWaiting -10018678 T vQueueDelete -1001868e T vQueueWaitForMessageRestricted -100186c8 t prvGenerateRunTimeOfPeroid -10018708 t prvGetExpectedIdleTime -10018738 t prvListTaskWithinSingleList -10018820 t prvResetNextTaskUnblockTime -10018844 t prvAddCurrentTaskToDelayedList -10018894 T xTaskGenericCreate -10018a48 T vTaskDelete -10018ae8 T uxTaskPriorityGet -10018b04 T vTaskPrioritySet -10018bbc T vTaskStartScheduler -10018c14 T vTaskSuspendAll -10018c24 T xTaskGetTickCount -10018c3c T pcTaskGetTaskName -10018c4c T vTaskStepTick -10018c5c T xTaskIncrementTick -10018ddc T xTaskResumeAll -10018ea4 T vTaskDelay -10018ef4 t prvIdleTask -10018f7c T uxTaskGetSystemState -1001902c T vTaskSwitchContext -100190e4 T vTaskPlaceOnEventList -10019140 T vTaskPlaceOnEventListRestricted -10019184 T xTaskRemoveFromEventList -100191f4 T vTaskSetTimeOutState -1001920c T xTaskCheckForTimeOut -10019258 T vTaskMissedYield -10019264 T eTaskConfirmSleepModeStatus -10019284 T xTaskGetSchedulerState -100192a4 T vTaskPriorityInherit -10019338 T xTaskPriorityDisinherit -100193a8 T sprintf_pcTaskName -100193c8 T vTaskList -10019478 T vTaskGetRunTimeStats -10019538 T pvTaskIncrementMutexHeldCount -10019550 T vTaskGetCurrentTCB -1001955c t prvCheckForValidListAndQueue -100195a8 t prvInsertTimerInActiveList -100195e4 T xTimerCreateTimerTask -10019620 T xTimerCreate -1001965c T xTimerGenericCommand -100196f0 t prvSwitchTimerLists -10019760 t prvTimerTask -100198c4 T xTimerIsTimerActive -100198dc t device_mutex_init -10019920 T device_mutex_lock -10019950 T device_mutex_unlock -1001996c t _freertos_systime_to_sec -10019976 t _freertos_ms_to_systime -10019978 t _freertos_sec_to_systime -10019980 t _freertos_usleep_os -10019982 t _freertos_ATOMIC_SET -10019986 t _freertos_ATOMIC_READ -1001998a t _freertos_modular64 -100199fe t _freertos_thread_enter -10019a00 t _freertos_enter_critical -10019a04 t _freertos_exit_critical -10019a08 t _freertos_ATOMIC_SUB_RETURN -10019a20 t _freertos_ATOMIC_DEC_RETURN -10019a36 t _freertos_ATOMIC_ADD_RETURN -10019a4e t _freertos_ATOMIC_INC_RETURN -10019a64 t _freertos_ATOMIC_SUB -10019a7c t _freertos_ATOMIC_DEC -10019a82 t _freertos_ATOMIC_ADD -10019a9a t _freertos_ATOMIC_INC -10019aa0 t _freertos_enter_critical_from_isr -10019ab0 T _freertos_malloc -10019ab4 T _freertos_zmalloc -10019acc t _freertos_memset -10019ad0 T _freertos_mfree -10019ad4 t _freertos_get_current_time -10019ad8 t _freertos_spinunlock_irqsave -10019aee t _freertos_spinunlock -10019afa t _freertos_mutex_put -10019afe T _freertos_wakeup_task -10019b04 t _freertos_up_sema -10019b08 t _freertos_exit_critical_mutex -10019b14 T _freertos_timerCreate -10019b18 T _freertos_timerDelete -10019b2c T _freertos_timerStop -10019b40 T _freertos_timerChangePeriod -10019b5a T _freertos_timerIsTimerActive -10019b5e T _freertos_acquire_wakelock -10019b64 T _freertos_release_wakelock -10019b6a T _freertos_get_scheduler_state -10019b8a t _freertos_thread_exit -10019b90 t _freertos_GetFreeHeapSize -10019b94 t _freertos_yield_os -10019b98 t _freertos_udelay_os -10019b9c t _freertos_mdelay_os -10019ba0 t _freertos_deinit_xqueue -10019bba t _freertos_spinlock_free -10019bcc t _freertos_mutex_free -10019bd0 t _freertos_free_sema -10019bd4 t _freertos_push_to_xqueue -10019bfc t _freertos_pop_from_xqueue -10019c24 t _freertos_down_sema -10019c46 t _freertos_init_xqueue -10019c60 t _freertos_spinlock_irqsave -10019c9c t _freertos_spinlock -10019cd4 t _freertos_enter_critical_mutex -10019d0c t _freertos_mutex_get -10019d44 t _freertos_spinlock_init -10019d52 t _freertos_mutex_init -10019d58 t _freertos_exit_critical_from_isr -10019d64 t _freertos_up_sema_from_isr -10019d8c t _freertos_init_sema -10019d9c t _freertos_create_task -10019e14 t _freertos_memcmp -10019e22 t _freertos_memcpy -10019e28 t _freertos_delete_task -10019e74 t _freertos_mutex_get_timeout -10019eb0 t _freertos_systime_to_ms -10019eb2 t _freertos_msleep_os -10019eb6 T save_and_cli -10019eba T restore_flags -10019ebe T cli -10019ec4 T _freertos_arc4random -10019ef4 t _freertos_get_random_bytes -10019f32 T RtlInitSema -10019f40 T RtlUpSemaFromISR -10019f60 T RtlDownSema -10019f74 T RtlUdelayOS -10019f78 T _htons -10019f7e T _ntohs -10019f84 T _rtw_zvmalloc -10019fa4 T _rtw_vmfree -10019fc8 T _rtw_malloc -10019fd8 T _rtw_zmalloc -10019fe8 T _rtw_mfree -10019ff8 T deinit_mem_monitor -10019ffa T rtw_vmfree -10019ffe T rtw_mfree -1001a004 T rtw_memcpy -1001a014 T rtw_memcmp -1001a024 T rtw_memset -1001a034 T rtw_init_listhead -1001a03a T rtw_is_list_empty -1001a044 T rtw_list_insert_head -1001a050 T rtw_list_insert_tail -1001a05c T rtw_list_delete -1001a06c T rtw_init_sema -1001a07c T rtw_free_sema -1001a08c T rtw_up_sema -1001a09c T rtw_up_sema_from_isr -1001a0ac T rtw_down_timeout_sema -1001a0bc T rtw_down_sema -1001a0d0 T rtw_mutex_init -1001a0e0 T rtw_mutex_free -1001a0f0 T rtw_mutex_put -1001a100 T rtw_mutex_get_timeout -1001a114 T rtw_enter_critical_from_isr -1001a124 T rtw_enter_critical -1001a128 T rtw_exit_critical_from_isr -1001a138 T rtw_exit_critical -1001a13c T rtw_enter_critical_mutex -1001a14c T rtw_exit_critical_mutex -1001a15c T rtw_queue_empty -1001a166 T rtw_end_of_queue_search -1001a170 T rtw_spinlock_init -1001a180 T rtw_init_queue -1001a18c T rtw_spinlock_free -1001a19c T rtw_spin_lock -1001a1ac T rtw_enter_critical_bh -1001a1b0 T rtw_spin_unlock -1001a1c0 T rtw_exit_critical_bh -1001a1c4 T rtw_get_current_time -1001a1d4 T rtw_systime_to_ms -1001a1e8 T rtw_systime_to_sec -1001a1fc T rtw_ms_to_systime -1001a210 T rtw_sec_to_systime -1001a224 T rtw_get_passing_time_ms -1001a238 T rtw_msleep_os -1001a248 T rtw_usleep_os -1001a258 T rtw_mdelay_os -1001a268 T rtw_udelay_os -1001a278 T ATOMIC_SET -1001a288 T ATOMIC_INC -1001a298 T ATOMIC_INC_RETURN -1001a2ac T ATOMIC_DEC_RETURN -1001a2c0 T ATOMIC_DEC_AND_TEST -1001a2d0 T rtw_modular64 -1001a2ec T rtw_get_random_bytes -1001a300 T rtw_getFreeHeapSize -1001a310 T init_mem_monitor -1001a320 T add_mem_usage -1001a354 T rtw_zvmalloc -1001a374 T rtw_malloc -1001a394 T rtw_zmalloc -1001a3b4 T rtw_netif_queue_stopped -1001a3b8 T rtw_netif_wake_queue -1001a3ba T rtw_netif_start_queue -1001a3bc T rtw_netif_stop_queue -1001a3be T flush_signals_thread -1001a3c0 T rtw_acquire_wakelock -1001a3d0 T rtw_release_wakelock -1001a3e0 T rtw_create_task -1001a3fc T rtw_delete_task -1001a40c T rtw_wakeup_task -1001a41c T rtw_timerCreate -1001a438 T rtw_timerDelete -1001a44c T rtw_timerIsTimerActive -1001a460 T rtw_timerStop -1001a474 T rtw_timerChangePeriod -1001a488 T rtw_thread_enter -1001a498 T rtw_thread_exit -1001a4a8 T tcm_heap_free -1001a528 T tcm_heap_init -1001a578 T tcm_heap_freeSpace -1001a5b8 T tcm_heap_malloc -1001a658 T tcm_heap_calloc -1001a670 T flash_init -1001a70c T flash_turnon -1001a724 T flash_erase_sector -1001a750 T flash_stream_read -1001a820 T flash_stream_write -1001a978 T i2s_init -1001aa50 T i2s_set_dma_buffer -1001aaa2 T i2s_tx_irq_handler -1001aaa8 T i2s_set_param -1001aadc T i2s_deinit -1001aae0 T i2s_enable -1001aae4 T i2s_disable -1001aae8 W pinmap_merge -1001ab24 W pinmap_find_peripheral -1001ab3c W pinmap_peripheral -1001ab74 T sleep_ex_selective -1001ab88 T deepsleep_ex -1001abac T us_ticker_read -1001abd8 T En32KCalibration -1001ac6c T WDGInitial -1001acf8 T WDGStart -1001ad10 T WDGRefresh -1001ad2c T I2SISRHandle -1001ade8 T RtkI2SDeInit -1001aec8 T RtkI2SEnable -1001af04 T RtkI2SDisable -1001af40 T RtkI2SLoadDefault -1001afa4 T HalI2SOpInit -1001b020 T RtkI2SInit -1001b1e4 T HalI2SInit -1001b222 T HalI2SDisable -1001b248 T HalI2SEnable -1001b26c T HalI2SDeInit -1001b2c4 T HalTimerOpInit_Patch -1001b300 T freertos_ready_to_sleep -1001b310 T freertos_pre_sleep_processing -1001b3d4 T freertos_post_sleep_processing -1001b3f8 T acquire_wakelock -1001b438 T release_wakelock -1001b494 T get_wakelock_status -1001b4a0 T HalI2SInitRtl8195a_Patch -1001b5a2 T HalI2SSetRateRtl8195a -1001b5e8 T HalI2SSetWordLenRtl8195a -1001b610 T HalI2SSetChNumRtl8195a -1001b638 T HalI2SSetPageNumRtl8195a -1001b660 T HalI2SSetPageSizeRtl8195a -1001b68a T HalI2SSetDMABufRtl8195a -1001b6f4 T HalI2SGetTxPageRtl8195a -1001b714 T HalI2SPageSendRtl8195a -1001b760 T HalI2SClearAllOwnBitRtl8195a -1001b794 T HalI2SDMACtrlRtl8195a -1001b798 T HalTimerIrq2To7Handle_Patch -1001b7ec T HalTimerIrqRegisterRtl8195a_Patch -1001b868 T HalTimerIrqUnRegisterRtl8195a_Patch -1001b8e0 T HalTimerDeInitRtl8195a_Patch -1001b914 T HalTimerReadCountRtl8195a_Patch -1001b92c T HalTimerReLoadRtl8195a_Patch -1001b960 T HalTimerInitRtl8195a_Patch -1001ba34 T HalTimerIrqEnRtl8195a -1001ba48 T HalTimerEnRtl8195a_Patch -1001ba5c T HalTimerDisRtl8195a_Patch -1001ba70 t rtw_ht_operation_update -1001bb22 t associated_clients_update.part.11 -1001bb5e T chk_sta_is_alive -1001bb9c T add_RATid -1001bca4 T update_sta_info_apmode -1001bd5c T update_beacon -1001c01c T rtw_check_beacon_data -1001c71c T associated_clients_update -1001c726 T bss_cap_update_on_sta_join -1001c8d6 T bss_cap_update_on_sta_leave -1001c9d2 T ap_free_sta -1001ca84 T expire_timeout_chk -1001cbc0 T rtw_sta_flush -1001cc44 T free_mlme_ap_info -1001cc90 T sta_info_update -1001cccc T ap_sta_info_defer_update -1001ccfc T start_ap_mode -1001cd3c T init_mlme_ap_info -1001cd52 T stop_ap_mode -1001cda0 T rtw_generate_bcn_ie -1001d0c4 T _rtw_init_evt_priv -1001d0d6 T _rtw_free_cmd_priv -1001d0e0 T _rtw_enqueue_cmd -1001d10c T _rtw_dequeue_cmd -1001d140 T _rtw_observequeue_cmd -1001d154 T rtw_init_cmd_priv -1001d15e T rtw_init_evt_priv -1001d162 T rtw_free_evt_priv -1001d164 T rtw_free_cmd_priv -1001d168 T rtw_cmd_filter -1001d186 T rtw_free_cmd_obj -1001d1b0 T rtw_enqueue_cmd -1001d206 T rtw_set_channel_plan_cmd_callback -1001d21e T rtw_survey_cmd_callback -1001d23a T rtw_disassoc_cmd_callback -1001d26a T rtw_joinbss_cmd_callback -1001d286 T rtw_setstaKey_cmdrsp_callback -1001d2a0 T rtw_cmd_thread -1001d3fc T rtw_joinbss_cmd -1001d6a6 T rtw_disassoc_cmd -1001d6f4 T rtw_setstakey_cmd -1001d7e4 T rtw_clearstakey_cmd -1001d884 T rtw_dynamic_chk_wk_cmd -1001d8d6 T rtw_set_chplan_cmd -1001d956 T dynamic_chk_wk_hdl -1001da1e T lps_ctrl_wk_hdl -1001da82 T rtw_lps_ctrl_wk_cmd -1001daec T rtw_sitesurvey_cmd -1001dbb4 T rpt_timer_setting_wk_hdl -1001dbc8 T rtw_ps_cmd -1001dc24 T rtw_chk_hi_queue_cmd -1001dc78 T rtw_drvextra_cmd_hdl -1001dd54 t rtw_free_mlme_ie_data -1001dd6c T rtw_init_mlme_timer -1001ddc8 T rtw_del_mlme_timer -1001dde8 T reconnect_timer_hdl -1001de88 T _rtw_init_mlme_priv -1001df0a T rtw_mfree_mlme_priv_lock -1001df26 T rtw_free_mlme_priv_ie_data -1001df5e T _rtw_free_mlme_priv -1001df86 T _rtw_alloc_network -1001dfd6 T _rtw_free_network -1001e036 T _rtw_free_network_nolock -1001e05c T _rtw_find_network -1001e098 T _rtw_free_network_queue -1001e0e0 T rtw_if_up -1001e100 T rtw_get_capability_from_ie -1001e104 T rtw_get_capability -1001e11e T rtw_get_beacon_interval_from_ie -1001e122 T rtw_init_mlme_priv -1001e13a T rtw_free_mlme_priv -1001e13e T rtw_free_network_queue -1001e142 T rtw_is_same_ibss -1001e158 T is_same_network -1001e1bc T update_network -1001e256 T rtw_update_scanned_network -1001e368 T rtw_add_network -1001e3a6 T rtw_survey_event_callback -1001e452 T rtw_dummy_event_callback -1001e454 T rtw_free_assoc_resources -1001e51e T rtw_indicate_connect -1001e52e T rtw_indicate_disconnect -1001e550 T rtw_indicate_scan_done -1001e554 T rtw_joinbss_event_callback -1001e572 T search_max_mac_id -1001e5ba T rtw_stassoc_hw_rpt -1001e5f2 T rtw_stassoc_event_callback -1001e620 T rtw_stadel_event_callback -1001e6c6 T _rtw_join_timeout_handler -1001e750 T rtw_join_timeout_handler -1001e7a8 T rtw_scan_timeout_handler -1001e7d8 T _rtw_scan_timeout_handler -1001e7dc T rtw_dynamic_check_timer_handlder -1001e834 T _dynamic_check_timer_handlder -1001e878 T rtw_select_and_join_from_scanned_queue -1001e94c T rtw_surveydone_event_callback -1001ea64 T rtw_set_auth -1001eab4 T rtw_set_key -1001eb76 T rtw_restruct_wmm_ie -1001ebdc T rtw_restruct_sec_ie -1001ec48 T rtw_joinbss_reset -1001ec58 T rtw_restructure_ht_ie -1001ed38 T rtw_update_ht_cap -1001edc2 T rtw_joinbss_event_prehandle -1001efee T rtw_linked_check -1001f00a T rtw_buddy_adapter_up -1001f042 T check_buddy_fwstate -1001f060 t get_da -1001f080 t get_sa -1001f0aa T OnAction -1001f0bc T DoReserved -1001f0c0 t _mgt_dispatcher.isra.2 -1001f10c T rtw_is_channel_set_contains_channel -1001f12e T init_hw_mlme_ext -1001f144 T init_channel_set -1001f1dc T free_mlme_ext_priv -1001f204 T mgt_dispatcher -1001f28c T alloc_mgtxmitframe -1001f2c4 T update_mgnt_tx_rate -1001f2ca T update_mgntframe_attrib -1001f326 T rtw_build_mgnt_frame -1001f37c T dump_mgntframe -1001f396 T rtw_send_mgnt -1001f3b4 t issue_action_BSSCoexistPacket -1001f5c0 T update_hidden_ssid -1001f614 T issue_beacon -1001f82c T issue_probersp -1001fabc T OnProbeReq -1001fb84 T issue_probereq -1001fd3c T issue_auth -1001ffa4 T OnAuth -10020248 T issue_asocrsp -100204bc T issue_assocreq -100207f8 T issue_nulldata -100208e2 T issue_qos_nulldata -10020a14 T issue_deauth -10020afc T issue_action_BA -10020d78 T OnAction_back -10020e46 T collect_bss_info -10021078 T start_clnt_auth -10021108 T start_clnt_assoc -1002113c T OnAuthClient -1002121c T report_scan_result_one -100213dc T add_site_survey -10021562 T report_survey_event -100217a0 T OnProbeRsp -100217d4 T report_surveydone_event -10021838 T report_join_res -100218a8 T OnAssocRsp -100219f4 T report_del_sta_event -10021a86 T receive_disconnect -10021adc T OnBeacon -10021c64 T OnDeAuth -10021dbc T OnDisassoc -10021f2c T report_add_sta_event -10021fa0 T OnAssocReq -10022590 T rtw_port_switch_chk -10022614 T update_sta_info -10022694 T mlmeext_sta_del_event_callback -10022714 T _linked_info_dump -10022776 T _linked_rx_signal_strehgth_display -100227b0 T linked_status_chk -10022a24 T survey_timer_hdl -10022b04 T _survey_timer_hdl -10022b08 T link_timer_hdl -10022b86 T _link_timer_hdl -10022b8a T addba_timer_hdl -10022baa T NULL_hdl -10022bae T setopmode_hdl -10022bf4 T disconnect_hdl -10022ca0 T setauth_hdl -10022cb0 T setkey_hdl -10022d08 T set_stakey_hdl -10022e0c T set_tx_beacon_cmd -10022e80 T mlme_evt_hdl -10022ecc T tx_beacon_hdl -10022f86 T check_buddy_mlmeinfo_state -10022fa0 T site_survey -10023170 T sitesurvey_cmd_hdl -1002327e T concurrent_chk_start_clnt_join -10023314 T start_clnt_join -100233e8 T join_cmd_hdl -1002350c T concurrent_chk_joinbss_done -100236d4 T mlmeext_joinbss_event_callback -10023810 T set_chplan_hdl -1002382c T init_mlme_ext_timer -10023888 T init_mlme_ext_priv -100239c4 t get_hdr_bssid -100239ec t filter_packet -10023a74 t promisc_get_encrypt -10023ac6 t promisc_info_get -10023b6a t promisc_set_enable -10023c06 T _promisc_deinit -10023c58 T _promisc_recv_func -100241a4 T _promisc_set -10024234 T _is_promisc_enabled -1002424c t SetEAPOL_KEYIV -100242ea t ToDrv_SetPTK -10024392 t Message_ReplayCounter_OC2LI.isra.2 -100243c0 t Message_SmallerEqualReplayCounter.isra.4 -100243f2 t Message_setReplayCounter.isra.5 -10024410 t INCLargeInteger -10024430 t INCOctet16_INTEGER -10024478 t INCOctet32_INTEGER -100244d8 t ToDrv_DisconnectSTA -1002459c t CheckMIC.constprop.14 -1002461c t CalcMIC.constprop.15 -1002467c T DecWPA2KeyData -10024730 T DecGTK -100247ec T ToDrv_SetGTK -1002487c T init_wpa_sta_info -10024968 T SendEAPOL -10025020 T ClientSendEAPOL -10025508 t ResendTimeout -10025590 T EAPOLKeyRecvd -10025708 T ClientEAPOLKeyRecvd -10025ac8 T psk_derive -10025b7c T psk_init -10025c6c T psk_strip_rsn_pairwise -10025cec T psk_strip_wpa_pairwise -10025d6c T tkip_send_mic_failure_report -10025ee0 T pwr_state_check_handler -10025ee4 T ips_enter -10025f8c T ips_leave -100260a4 T rtw_pwr_unassociated_idle -100260ee T rtw_ps_processor -10026146 T PS_RDY_CHECK -100261ae T rtw_set_ps_mode -1002621c T LPS_RF_ON_check -10026272 T LPS_Enter -100262e0 T LPS_Leave -1002631c T LeaveAllPowerSaveMode -1002632c T rtw_init_pwrctrl_priv -10026400 T rtw_free_pwrctrl_priv -10026414 T _rtw_pwr_wakeup -100264f0 T rtw_pm_set_lps -10026538 T rtw_pm_set_ips -1002657c T rtw_pm_set_tdma_param -10026598 T rtw_pm_set_lps_dtim -100265a4 T rtw_pm_get_lps_dtim -100265b0 t recvframe_pull -100265d2 t recvframe_pull_tail -100265f4 T rtw_signal_stat_timer_hdl -10026692 T _rtw_init_sta_recv_priv -100266b0 T _rtw_init_recv_priv -10026758 T rtw_mfree_recv_priv_lock -1002678c T _rtw_alloc_recvframe -100267be T rtw_alloc_recvframe -100267e4 T rtw_free_recvframe -10026880 T _rtw_enqueue_recvframe -100268ac T rtw_enqueue_recvframe -100268d6 T rtw_free_recvframe_queue -1002690e T rtw_free_uc_swdec_pending_queue -10026936 T _rtw_free_recv_priv -10026966 T rtw_free_buf_pending_queue -1002696a T recvframe_chkmic -10026a68 T decryptor -10026b04 T portctrl -10026b7a T recv_decache -10026ba8 T process_pwrbit_data -10026be8 T process_wmmps_data -10026c70 T count_rx_stats -10026ce4 T sta2sta_data_frame -10026e20 T ap2sta_data_frame -10026f4c T sta2ap_data_frame -10026fd4 T validate_recv_ctrl_frame -1002716e T validate_recv_data_frame -100273c8 T wlanhdr_to_ethhdr -10027504 T recvframe_defrag -100275ae T recvframe_chk_defrag -10027664 T validate_recv_mgnt_frame -100276a0 T validate_recv_frame -10027768 T recv_indicatepkt_reorder -1002778a T process_recv_indicatepkts -100277e2 T recv_func_prehandle -1002780a T recv_func_posthandle -1002786e T recv_func -100278f8 T rtw_recv_entry -10027928 T rtw_recv_tasklet -10027980 T rtw_wep_encrypt -100279c6 T rtw_wep_decrypt -10027a0c T rtw_tkip_encrypt -10027a78 T rtw_tkip_decrypt -10027ae4 T rtw_aes_encrypt -10027b50 T rtw_aes_decrypt -10027bb4 T rtw_init_sec_priv -10027c26 T rtw_free_sec_priv -10027c46 t wifi_mac_hash -10027c70 T _addba_timer_hdl -10027c74 T _rtw_init_stainfo -10027cee T _rtw_init_sta_priv -10027dd6 T _rtw_free_sta_xmit_priv_lock -10027e02 T rtw_mfree_stainfo -10027e2e T rtw_mfree_sta_priv_lock -10027e64 T _rtw_free_sta_priv -10027e84 T init_addba_retry_timer -10027eac T rtw_alloc_stainfo -10027f76 T rtw_free_stainfo -10028118 T rtw_get_stainfo -10028194 T rtw_init_bcmc_stainfo -100281c4 T rtw_get_bcmc_stainfo -100281e8 T rtw_free_all_stainfo -10028242 T cckrates_included -1002826a T cckratesonly_included -10028292 T networktype_to_raid_ex -100282f0 T judge_network_type -10028340 T ratetbl_val_2wifirate -10028354 T is_basicrate -10028380 T ratetbl2rateset -100283c4 T get_rate_set -100283ee T UpdateBrateTbl -10028420 T UpdateBrateTblForSoftAP -10028454 T Save_DM_Func_Flag -1002846a T Restore_DM_Func_Flag -10028480 T Switch_DM_Func -1002849c T Set_MSR -100284c0 T set_opmode -10028504 T SelectChannel -10028538 T SetBWMode -10028574 T set_channel_bwmode -100285ca T get_my_bssid -100285ce T get_beacon_interval -100285ec T is_client_associated_to_ap -10028604 T is_client_associated_to_ibss -10028620 T is_IBSS_empty -10028642 T decide_wait_for_beacon_timeout -1002865e T invalidate_cam_all -10028666 T write_cam -100286dc T clear_cam_entry -1002870a T flush_all_cam_entry -10028768 T WMM_param_handler -1002878e T WMMOnAssocRsp -1002885c T HT_caps_handler -100288fc T HT_info_handler -10028920 T HTOnAssocRsp -10028958 T ERP_IE_handler -10028974 T VCS_update -100289c6 T rtw_check_bcn_info -10028bd6 T update_beacon_info -10028c2c T is_ap_in_tkip -10028ca4 T wifirate2_ratetbl_inx -10028d10 T update_basic_rate -10028d3e T update_supported_rate -10028d68 T update_MCS_rate -10028d74 T support_short_GI -10028da2 T get_highest_rate_idx -10028dbc T Update_RA_Entry -10028dc4 T set_sta_rate -10028dcc T update_tx_basic_rate -10028e24 T check_assoc_AP -10028f18 T update_IOT_info -10028f76 T update_capinfo -10028ff4 T update_wireless_mode -10029094 T update_bmc_sta_support_rate -100290bc T update_TSF -100290ce T correct_TSF -100290d6 t _init_txservq -100290ec t set_qos -1002913c T _rtw_init_sta_xmit_priv -10029182 T rtw_mfree_xmit_priv_lock -100291ce T qos_acm -10029208 T xmitframe_addmic -10029366 T xmitframe_swencrypt -10029392 T rtw_make_wlanhdr -10029572 T rtw_txframes_pending -100295ae T rtw_txframes_sta_ac_pending -100295e4 T rtw_txframes_update_attrib_vcs_info -10029684 T rtw_put_snap -100296c8 T rtw_update_protection -1002970e T rtw_count_tx_stats -1002975e T rtw_free_xmitbuf_ext -100297a0 T rtw_alloc_xmitframe -100297f8 T rtw_free_xmitframe -1002984a T rtw_free_xmitframe_queue -10029888 T rtw_get_sta_pending -100298c8 T rtw_xmit_classifier -1002992e T rtw_xmitframe_enqueue -1002993c T rtw_alloc_hwxmits -10029996 T rtw_free_hwxmits -100299ac T _rtw_free_xmit_priv -10029a78 T rtw_init_hwxmits -10029a90 T _rtw_init_xmit_priv -10029c48 T rtw_get_ff_hwaddr -10029c5c T xmitframe_enqueue_for_sleeping_sta -10029e1c t dequeue_xmitframes_to_sleeping_queue -10029e72 T stop_sta_xmit -10029f5a T wakeup_sta_to_xmit -1002a170 T xmit_delivery_enabled_frames -1002a28c T rtw_xmit_tasklet -1002a2e4 T rtw_xmit_mgnt -1002a2e8 T rtw_xmit -1002a612 T rtw_sctx_done_err -1002a61e T rtw_alloc_xmitbuf -1002a678 T rtw_free_xmitbuf -1002a6ea T rtw_alloc_xmitbuf_ext -1002a770 T rtw_sctx_done -1002a776 t rtl8195a_free_rx_ring -1002a784 t bus_write32 -1002a7e0 t bus_write16 -1002a83c t bus_write8 -1002a898 t bus_read32 -1002a8f2 t bus_read16 -1002a94e t bus_read8 -1002a9aa t rtl8195a_free_tx_ring -1002aa38 T rtl8195a_init_desc_ring -1002ab78 T rtl8195a_free_desc_ring -1002ab94 T rtl8195a_reset_desc_ring -1002ac2a T InitLxDmaRtl8195a -1002ad8c T rtl8195a_check_txdesc_closed -1002ae04 t rtl8195a_tx_isr -1002aee8 T InterruptRecognized8195a -1002af78 T InitInterrupt8195a -1002af98 T EnableDMA8195a -1002afc0 T EnableInterrupt8195a -1002b000 T DisableDMA8195a -1002b00c T DisableInterrupt8195a -1002b024 T UpdateInterruptMask8195a -1002b086 T CheckRxTgRtl8195a -1002b0c0 T rtl8192ee_check_rxdesc_remain -1002b0f0 T rtl8195a_recv_tasklet -1002b404 T rtl8195a_tx_int_handler -1002b430 T InterruptHandle8195a -1002b6a4 T rtl8195a_xmit_tasklet -1002b6cc T lxbus_set_intf_ops -1002b70c t GetTxBufDesc -1002b756 t UpdateFirstTxbdtoXmitBuf.isra.3 -1002b788 t check_nic_enough_desc.isra.4 -1002b7d8 T rtl8195ab_init_xmit_priv -1002b7e6 T rtl8195ab_free_xmit_priv -1002b7ee T GetDmaTxbdIdx -1002b80a T rtl8195a_enqueue_xmitbuf -1002b82e T rtl8195a_dequeue_xmitbuf -1002b852 T SetTxbdForLxDMARtl8195ab -1002b8d2 T UpdateTxbdHostIndex -1002b910 T rtw_dump_xframe -1002bae2 T check_tx_desc_resource -1002bb1c T rtw_dequeue_xframe -1002bbb0 T rtw_xmitframe_coalesce -1002be64 T rtl8195ab_xmitframe_resume -1002bf5a T rtl8195ab_mgnt_xmit -1002bf96 T rtl8195ab_hal_xmit -1002c0a4 t Hal_GetEfuseDefinition -1002c0d4 t ResumeTxBeacon -1002c118 T UpdateHalRAMask8195A -1002c2b0 T HalLittleWifiMCUThreadRtl8195a -1002c304 T HalCheckInReqStateThreadRtl8195a -1002c350 T HalTDMAChangeStateThreadRtl8195a -1002c39c t rtl8195a_read_chip_version -1002c410 t Hal_EfuseWordEnableDataWrite -1002c654 t Hal_EfusePowerSwitch -1002c668 t rtl8195a_free_hal_data -1002c682 t StopTxBeacon -1002c6cc T SetHalODMVar8195A -1002c784 T rtl8195a_start_thread -1002c7ec T rtl8195a_stop_thread -1002c810 t Hal_ReadEFuse -1002c980 T GetHalODMVar8195A -1002c994 t rtw_flash_map_update.part.12 -1002ca34 t rtw_flash_map_erase -1002ca78 t Hal_EfusePgPacketWrite -1002ccf4 t Hal_EfuseGetCurrentSize -1002cdd4 t rtw_flash_map_write -1002cfa2 T rtl8195a_InitBeaconParameters -1002d012 T _InitBurstPktLen_8195AB -1002d01c T rtl8195a_set_hal_ops -1002d0fc T rtl8195a_init_default_value -1002d0fe T rtl8195a_InitLLTTable -1002d148 T Hal_GetChnlGroup8195A -1002d184 T rtw_config_map_read -1002d270 T rtw_config_map_write -1002d31c T Hal_InitPGData -1002d37a T Hal_EfuseParseIDCode -1002d392 T Hal_ReadPowerValueFromPROM_8195A -1002d430 T Hal_EfuseParseTxPowerInfo_8195A -1002d4c8 T Hal_EfuseParseEEPROMVer_8195A -1002d4de T Hal_EfuseParsePackageType_8195A -1002d548 T Hal_EfuseParseChnlPlan_8195A -1002d578 T Hal_EfuseParseCustomerID_8195A -1002d58e T Hal_EfuseParseXtal_8195A -1002d5a6 T Hal_EfuseParseThermalMeter_8195A -1002d5ce T Hal_ReadRFGainOffset -1002d61e T BWMapping_8195A -1002d63e T SCMapping_8195A -1002d666 T rtl8195a_update_txdesc -1002d936 T rtl8195a_fill_fake_txdesc -1002d9f4 T SetHwReg8195A -1002e6b4 T GetHwReg8195A -1002e748 T SetHalDefVar8195A -1002e828 T GetHalDefVar8195A -1002e84c T PHY_QueryBBReg_8195A_Safe -1002e878 T PHY_SetBBReg_8195A_Safe -1002e8a4 t phy_RFSerialRead_8195A -1002e958 T PHY_QueryRFReg_8195A -1002e970 T PHY_SetRFReg_8195A -1002e9c8 T PHY_MACConfig8195A -1002e9e2 T PHY_BBConfig8195A -1002eaf2 T PHY_RFConfig8195A -1002eaf6 T PHY_SetTxPowerIndex_8195A -1002ec00 T phy_TxPwrAdjInPercentage -1002ec40 T PHY_GetTxPowerIndex_8195A -1002ed30 T PHY_SetTxPowerLevel8195A -1002ed36 T phy_SpurCalibration_8195A -1002efee T phy_SetRegBW_8195A -1002f02c T phy_PostSetBwMode8195A -1002f188 T phy_SwChnl8195A -1002f230 T phy_SwChnlAndSetBwMode8195A -1002f280 T PHY_HandleSwChnlAndSetBW8195A -1002f330 T PHY_SetBWMode8195A -1002f352 T PHY_SwChnl8195A -1002f36c T PHY_SetSwChnlBWMode8195A -1002f38a t HalTimerEnable -1002f39c T InitTDMATimer -1002f3c4 T ChangeStateByTDMA -1002f3d4 T GetMinRateInRRSR -1002f408 T CheckInReqState -1002f418 T InitCheckStateTimer -1002f448 T InitGTimer1ms -1002f494 T DeInitGTimer1ms -1002f4dc T ChangeTransmiteRate -1002f518 T PowerBitSetting -1002f594 T ChkandChangePS -1002f5f8 T IssueRsvdPagePacketSetting -1002f66c T IssuePSPoll -1002f698 T WaitTxStateMachineOk -1002f6ec T IssueNullData -1002f77c T PsCloseRF -1002f7b0 T PsOpenRF -1002f7e0 T ChkTxQueueIsEmpty -1002f7f8 T InitPS -1002f868 T ConfigListenBeaconPeriod -1002f88c T PS_S2_Condition_Match -1002f8c0 T PS_S4_Condition_Match -1002f93c T PS_32K_Condition_Match -1002f978 T PS_S2ToS3ToS0State -1002f9e0 T PS_S2ToS0State -1002f9fc T PS_S3ToS2orS0State -1002fa2c T PS_S0ToS1ToS2State -1002fa88 T PS_S1ToS0orS2State -1002fab8 T PS_S2ToS4State -1002fb04 T PS_S0ToS6State -1002fb24 T PS_S6ToS0State -1002fb3c T CheckTSFIsStable -1002fb8c T WaitHWStateReady -1002fb9c T SysClkDown -1002fc0c T SysClkUp -1002fc58 T ResetPSParm -1002fccc T PS_S4ToS2State -1002fcf0 T SleepTo32K -1002fd50 T Change_PS_State -1002fefc T Legacy_PS_Setting -1002ff70 T PSModeSetting -10030014 T ChangePSStateByRPWM -10030058 T ChangeTDMAState -10030178 T TDMAChangeStateTask -100301a2 T EnterPS -100301c4 T SetSmartPSTimer -10030200 T GTimer7Handle -1003025c T SmartPS2InitTimerAndToGetRxPkt -10030298 T PS_OnBeacon -10030348 T PSBcnEarlyProcess -10030404 T PSMtiBcnEarlyProcess -100304b0 T PSRxBcnProcess -10030600 T TxPktInPSOn -1003063e T PsBcnToProcess -100306f8 T GTimer6Handle -10030744 T RPWMProcess -10030780 T PSSetMode -100307f8 T SpeRPT -10030918 T ISR_BcnEarly -10030984 T ISR_MtiBcnEarly -100309b8 T ISR_RxBcn -100309d4 T ISR_RxBCMD1 -10030a04 T ISR_RxBCMD0 -10030a58 T ISR_RxUCMD1 -10030a96 T ISR_RxUCMD0 -10030ad2 T ISR_TxPktIn -10030ae4 T ISR_TXCCX -10030ae8 T H2CHDL_SetPwrMode -10030c10 T CheckInReqStateTask -10030c56 T HalGetNullTxRpt -10030c74 T ISR_TBTT -10030cec T H2CHDL_BcnIgnoreEDCCA -10030cfc T PMUInitial -10030d4c T PMUTask -10030e58 T PHY_RF6052SetBandwidth8195A -10030e9c T PHY_RF6052_Config8195A -10030f54 t process_rssi -10030f8a T rtl8195a_query_rx_desc_status -1003103a T rtl8195a_query_rx_phy_status -10031192 T hal_com_get_channel_plan -100311c6 T HAL_IsLegalChannel -100311e4 T MRateToHwRate -100311f8 T HwRateToMRate -1003120c T HalSetBrateCfg -100312b8 T Hal_MappingOutPipe -100312d4 T hal_init_macaddr -10031300 T hw_var_port_switch -10031588 T SetHwReg -10031592 T GetHwReg -10031594 T switch_power_saving_mode -100315d8 T rtw_bb_rf_gain_offset -10031620 T PHY_GetRateValuesOfTxPowerByRate -100317b8 T PHY_StoreTxPowerByRateNew -10031854 T PHY_InitTxPowerByRate -1003186c T PHY_StoreTxPowerByRate -10031884 T PHY_GetTxPowerIndexBase -10031924 T PHY_GetTxPowerTrackingOffset -10031950 T PHY_GetRateIndexOfTxPowerByRate -10031964 T PHY_GetTxPowerByRate -100319c4 T phy_StoreTxPowerByRateBase -10031a10 T PHY_SetTxPowerByRate -10031a4c T phy_ConvertTxPowerByRateInDbmToRelativeValues -10031b4c T PHY_TxPowerByRateConfiguration -10031b5e T PHY_SetTxPowerIndexByRateArray -10031b9c T PHY_SetTxPowerIndexByRateSection -10031c00 T PHY_SetTxPowerLevelByPath -10031c36 T phy_GetWorldWideLimit -10031c62 T PHY_GetTxPowerLimit -10031d8c T PHY_ConvertTxPowerLimitToPowerIndex -10031edc T PHY_InitTxPowerLimit -10031f24 T PHY_SetTxPowerLimit -10031fa0 T PHY_GetTxPowerIndex -10031fb0 T rtw_hal_chip_configure -10031fc6 T rtw_hal_read_chip_info -10031fdc T rtw_hal_read_chip_version -10031ff2 T rtw_hal_def_value_init -10032008 T rtw_hal_free_data -1003201e T rtw_hal_dm_init -10032034 T rtw_hal_dm_deinit -1003204a T rtw_hal_init -10032074 T rtw_hal_deinit -1003208e T rtw_hal_set_hwreg -1003209c T rtw_hal_get_hwreg -100320aa T rtw_hal_set_def_var -100320bc T rtw_hal_get_def_var -100320ce T rtw_hal_set_odm_var -100320dc T rtw_hal_get_odm_var -100320ea T rtw_hal_enable_interrupt -1003210c T rtw_hal_disable_interrupt -1003212e T rtw_hal_inirp_init -10032140 T rtw_hal_inirp_deinit -10032152 T rtw_hal_irp_reset -10032160 T rtw_hal_xmit -10032172 T rtw_hal_mgnt_xmit -10032184 T rtw_hal_init_xmit_priv -10032196 T rtw_hal_free_xmit_priv -100321a4 T rtw_hal_update_ra_mask -100321d2 T rtw_hal_add_ra_tid -100321e0 T rtw_hal_clone_data -100321ee T rtw_hal_start_thread -100321fc T rtw_hal_stop_thread -1003220a T rtw_hal_read_bbreg -1003223e T rtw_hal_write_bbreg -1003226a T rtw_hal_read_rfreg -1003227c T rtw_hal_write_rfreg -10032290 T rtw_hal_interrupt_handler -100322a2 T rtw_hal_set_bwmode -100322b0 T rtw_hal_set_chan -100322be T rtw_hal_set_chnl_bw -100322d4 T rtw_hal_dm_watchdog -100322ea T rtw_hal_macid_sleep -1003230a T rtw_hal_macid_wakeup -1003232a T decide_chip_type_by_device_id -10032330 t rtw_net_get_stats -10032380 t netdev_if2_close -100323a0 t netdev_close -100323fc t rtw_if1_deinit -10032496 T rtw_os_indicate_connect -1003249a T rtw_os_indicate_scan_done -1003249e T rtw_reset_securitypriv -10032592 T rtw_os_indicate_disconnect -100325dc T rtw_init_netdev -1003272c T rtw_drv_if2_init -10032934 T rtw_drv_if2_stop -1003298a T rtw_drv_if2_free -100329d8 T _netdev_open -10032af4 T _netdev_if2_open -10032bb0 T netdev_if2_open -10032bd8 T netdev_open -10032c00 T rtw_drv_probe -10032d80 T rtw_dev_remove -10032dc4 T rtw_drv_entry -10032df0 T rtw_drv_halt -10032e20 t rtw_wx_set_autoreconnect -10032e4e t rtw_wx_get_autoreconnect -10032e5c t rtw_forwarding_set -10032e7e t rtw_set_ch_deauth -10032ea0 t get_priv_size -10032eb4 t rtw_wx_del_custome_ie -10032f00 t rtw_wx_set_pscan_freq -10032f82 t rtw_wx_update_custome_ie -10032ff4 t rtw_set_tos_value -10033014 t rtw_get_tx_power -10033158 t rtw_wx_set_custome_ie -10033204 t rtw_pm_get -10033248 t rtw_pm_set -100332fc t rtw_wx_read32 -100333a8 t rtw_wx_write32 -1003340c t rtw_wx_set_freq.isra.10 -100334b4 T rtw_ex_set -10033574 T wireless_send_event -1003357e T indicate_wx_custom_event -100335da T indicate_wx_scan_result_present -10033602 T indicate_wx_scan_complete_event -1003362c T rtw_indicate_sta_assoc -1003367c T rtw_indicate_sta_disassoc -100336d4 T rtw_indicate_wx_assoc_event -10033706 T rtw_indicate_wx_disassoc_event -10033736 T rtw_set_wpa_ie -1003384c T strtopsk -100338b8 T rtw_wx_get_passphrase -10033904 T rtw_wx_set_ap_essid -100339f4 T mac_reg_dump -10033aa0 T bb_reg_dump -10033afc T rf_reg_dump -10033b74 t rtw_dbg_port -100341dc T rtw_set_sta_num -100341f8 T rtw_ex_get_drv_ability -100342b8 T rtw_ex_get -10034550 T rtw_ioctl -100354dc T rtw_os_recv_resource_init -100354e0 T rtw_os_recv_resource_alloc -100354ea T rtw_os_recv_resource_free -100354ec T rtw_tkip_countermeasure -1003558c T rtw_handle_tkip_mic_err -10035634 T rtw_recv_indicatepkt -10035884 T skb_fail_inc -100358a0 T skb_fail_get_and_rst -100358bc T init_skb_pool -10035914 T init_skb_data_pool -1003596c T alloc_skb -10035a6c T kfree_skb -10035ad4 T kfree_skb_chk_key -10035ad8 T skb_put -10035b0c T skb_reserve -10035b1a T dev_alloc_skb -10035b36 T skb_end_pointer -10035b3a T skb_set_tail_pointer -10035b42 T skb_pull -10035b5a T skb_copy -10035b82 T rtw_remainder_len -10035b8e T _rtw_open_pktfile -10035ba0 T _rtw_pktfile_read -10035bce T rtw_set_tx_chksum_offload -10035bd0 T rtw_os_xmit_resource_alloc -10035bda T rtw_os_xmit_resource_free -10035bdc T rtw_os_pkt_complete -10035be4 T rtw_os_xmit_complete -10035bf6 T rtw_os_xmit_schedule -10035c32 T rtw_xmit_entry -10035c7e T rtw_alloc_etherdev_with_old_priv -10035c94 T rtw_alloc_etherdev -10035cc0 T rtw_free_netdev -10035ce0 T timer_wrapper -10035d34 T alloc_etherdev -10035d90 T free_netdev -10035daa T dev_alloc_name -10035db4 T init_timer_wrapper -10035dd4 T deinit_timer_wrapper -10035e20 T init_timer -10035ed8 T mod_timer -10035fb8 T cancel_timer_ex -10036000 T del_timer_sync -10036064 T rtw_init_timer -1003606c T rtw_set_timer -10036070 T rtw_cancel_timer -1003607a T rtw_del_timer -10036080 T rltk_get_idx_bydev -10036090 T rltk_wlan_init -10036118 T rltk_wlan_deinit -100361dc T rltk_wlan_start -10036210 T rltk_wlan_check_isup -10036220 T rltk_wlan_tx_inc -10036234 T rltk_wlan_tx_dec -10036248 T rltk_wlan_get_recv_skb -10036258 T rltk_wlan_alloc_skb -10036298 T rltk_wlan_send_skb -100362cc T rltk_netif_rx -10036378 T rltk_set_sta_num -1003637c T rltk_set_tx_power_percentage -100363b0 T rltk_wlan_control -10036444 T rltk_wlan_running -1003645c T rltk_wlan_handshake_done -10036490 T rltk_wlan_is_connected_to_ap -100364d4 T Efuse_PowerSwitch -100364e0 T Efuse_GetCurrentSize -100364ec T Efuse_CalculateWordCnts -10036510 T EFUSE_GetEfuseDefinition -10036524 T efuse_OneByteRead -10036558 T efuse_OneByteWrite -1003658c T Efuse_PgPacketWrite -100365a0 T efuse_WordEnableDataRead -100365d2 T Efuse_WordEnableDataWrite -100365e6 T efuse_GetCurrentSize -1003660e T rtw_efuse_map_read -10036670 T rtw_efuse_map_write -100367f0 T rtw_macaddr_cfg -100368b4 T rtw_get_cipher_info -1003692e T rtw_get_bcn_info -100369fe T rtw_init_default_value -10036a6c T rtw_cancel_all_timer -10036ad6 T rtw_free_drv_sw -10036b4c T rtw_reset_drv_sw -10036ba8 T rtw_init_drv_sw -10036c30 T rtw_start_drv_threads -10036cec T rtw_stop_drv_threads -10036d20 T rtw_read8 -10036d2e T rtw_read16 -10036d3c T rtw_read32 -10036d4a T rtw_write8 -10036d58 T rtw_write16 -10036d66 T rtw_write32 -10036d74 T rtw_do_join -10036e18 T rtw_set_802_11_bssid -10036f9c T rtw_set_802_11_ssid -100370a4 T rtw_set_802_11_infrastructure_mode -10037146 T rtw_set_802_11_bssid_list_scan -10037196 T rtw_set_802_11_authentication_mode -100371b8 T rtw_set_802_11_add_wep -10037218 T ODM_InitRAInfo -100372b8 T InitialRateUpdate -100373b8 T RateUp_search_RateMask -100373ea T RateDown_search_RateMask -1003743c T StartRateByRSSI -10037466 T RateUpRAM8195A -100374fa T RateDownTrying -10037538 T TryDone -100375d0 T RateDownStepRAM8195A -10037670 T RateDecisionRAM8195A -10037754 T ArfrRefresh -1003795c T H2CHDL_Set_MACID_Config -10037a20 T PHY_DM_RA_SetRSSI_8195A -10037a4e t CheckPositive.isra.0 -10037b30 T ODM_ReadAndConfig_MP_8195A_AGC_TAB -10037ba8 T ODM_ReadAndConfig_MP_8195A_PHY_REG -10037c20 T ODM_GetVersion_MP_8195A_PHY_REG -10037c24 T ODM_ReadAndConfig_MP_8195A_PHY_REG_PG -10037c58 T odm_ConfigRFReg_8195A -10037c90 T odm_ConfigRF_RadioA_8195A -10037ca0 T odm_ConfigMAC_8195A -10037ca4 T odm_ConfigBB_AGC_8195A -10037cb4 T odm_ConfigBB_PHY_REG_PG_8195A -10037ce2 T odm_ConfigBB_PHY_8195A -10037d2a T odm_ConfigBB_TXPWR_LMT_8195A -10037d50 T ODM_CmnInfoInit -10037e44 T ODM_CmnInfoHook -10037ee8 T ODM_CmnInfoPtrArrayHook -10037ef8 T ODM_CmnInfoUpdate -10037fc8 T odm_CommonInfoSelfInit -1003803c T ODM_DMInit -1003808a T odm_CommonInfoSelfUpdate -100380dc T ODM_DMWatchdog -10038148 T PhyDM_Get_Structure -1003816c T Phydm_CheckAdaptivity -1003819a T Phydm_NHMCounterStatisticsInit -10038210 T Phydm_SetEDCCAThreshold -10038248 T Phydm_MACEDCCAState -10038286 T Phydm_AdaptivityInit -10038364 T Phydm_Adaptivity -10038484 T ODM_CfoTrackingInit -100384ae T ODM_CfoTracking -100384ce T ODM_ParsingCFO -10038500 T ODM_InitDebugSetting -10038514 T ODM_Write_DIG -100385b4 T odm_ForbiddenIGICheck -10038646 T ODM_Write_CCK_CCA_Thres -10038680 T odm_DIGInit -1003871a T odm_DigAbort -1003873c T odm_DIGbyRSSI_LPS -100387e8 T odm_FAThresholdCheck -10038814 T odm_DIG -10038a74 T odm_FalseAlarmCounterStatistics -10038aa0 T odm_CCKPacketDetectionThresh -10038af8 T odm_RxPhyStatus8195A_Parsing -10038bfc T odm_Process_RSSIForDM_8195A -10038d3e T ODM_PhyStatusQuery_8195A -10038d6a T ODM_PhyStatusQuery -10038d6e T ODM_ConfigRFWithHeaderFile -10038d8c T ODM_ConfigRFWithTxPwrTrackHeaderFile -10038dbe T ODM_ConfigBBWithHeaderFile -10038de6 T ODM_ConfigMACWithHeaderFile -10038df8 T ODM_Read1Byte -10038dfe T ODM_Read4Byte -10038e04 T ODM_Write1Byte -10038e0a T ODM_Write2Byte -10038e10 T ODM_Write4Byte -10038e16 T ODM_SetMACReg -10038e1c T ODM_SetBBReg -10038e22 T ODM_GetBBReg -10038e28 T ODM_SetRFReg -10038e2e T ODM_GetRFReg -10038e34 T ODM_MoveMemory -10038e3e T ODM_delay_ms -10038e42 T ODM_delay_us -10038e48 T getSwingIndex -10038ea0 T odm_TXPowerTrackingThermalMeterInit -10038f52 T odm_TXPowerTrackingInit -10038f56 T odm_TXPowerTrackingCheckIOT -10038f8a T ODM_TXPowerTrackingCheck -10038f98 T odm_RSSIMonitorInit -10038fa0 T ODM_RAPostActionOnAssoc -10038fa8 T odm_RSSIMonitorCheckIOT -1003907c T odm_RSSIMonitorCheck -10039090 T odm_RateAdaptiveMaskInit -100390b8 T ODM_RAStateCheck -100390fa T odm_RefreshRateAdaptiveMaskIOT -1003914a T odm_RefreshRateAdaptiveMask -10039160 T ODM_Get_Rate_Bitmap -10039250 t _ReadEfuseInfo8195a -10039318 t rtl8195a_interface_configure -1003934c t rtl8195a_hal_deinit -10039388 T _InitPowerOn -10039408 t ReadAdapterInfo8195a -10039438 T _InitDriverInfoSize -10039442 T _InitNetworkType -10039464 T _InitWMACSetting -100394d4 T _InitAdaptiveCtrl -10039518 T _InitEDCA -10039594 T _InitRateFallback -100395d8 T _InitRetryFunction -10039604 T _InitOperationMode -1003964c T _InitInterrupt -1003968c t rtl8195a_hal_init -10039964 T rtl8195ab_set_hal_ops -10039a3c T FillH2CCmd8195A -10039a5c T CheckFwRsvdPageContent -10039a5e T rtl8195a_set_FwRsvdPage_cmd -10039a68 T rtl8195a_set_FwMediaStatusRpt_cmd -10039a94 T rtl8195a_set_FwMacIdConfig_cmd -10039b54 T rtl8195a_set_FwPwrMode_cmd -10039be4 T rtl8195a_download_rsvd_page -10039eec T rtl8195a_set_FwJoinBssRpt_cmd -10039ef6 T rtl8195a_Add_RateATid -10039f48 T rtw_rpt_h_addr -10039f94 T rtw_txrpt_read8 -10039fb2 T rtw_txrpt_write8 -10039fd6 T rtw_ratemask_read8 -10039ff4 T rtw_ratemask_write8 -1003a018 T ReadRateMask8 -1003a022 T WriteRateMask8 -1003a026 T ReadTxrpt8 -1003a030 T WriteTxrpt8 -1003a034 T ResetTxrpt -1003a06c T PsuseTxrpt -1003a08c T CheckMaxMacidNum -1003a0c4 T GetMediaStatusCommon -1003a0de T GetTxrptStatistic -1003a194 T rtl8195a_InitHalDm -1003a2b8 T rtl8195a_HalDmWatchDog -1003a39c T rtl8195a_init_dm_priv -1003a474 T rtl8195a_deinit_dm_priv -1003a476 T MediaConnection -1003a494 T MediaDisconnection -1003a4b4 T RATaskEnable -1003a4de T SetMediaStatus -1003a51c T H2CHDL_JoinInfo -1003a554 T H2CHDL_SetRsvdPage -1003a5ec T H2CCmdCommon -1003a630 T HalPwrSeqCmdParsing -1003a6f0 T hci_dvobj_init -1003a700 T hci_dvobj_deinit -1003a710 T hci_dvobj_request_irq -1003a720 T hci_dvobj_free_irq -1003a730 T hci_lxbus_dvobj_init -1003a76c T hci_lxbus_dvobj_deinit -1003a7ac T hci_lxbus_dvobj_request_irq -1003a800 T hci_lxbus_free_irq -1003a858 T hci_lxbus_intf_stop -1003a890 T rtw_interrupt_thread -1003a904 T lextra_bus_dma_Interrupt -1003a94c T init_rom_wlan_ram_map -1003a964 T ODM_ReadAndConfig_MP_8195A_MAC_REG -1003aac0 t CheckPositive.isra.0 -1003aba4 T ODM_ReadAndConfig_MP_8195A_RadioA -1003ac1c T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_QFN48 -1003ac6c T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_QFN56 -1003acbc T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_TFBGA96 -1003ad0c T ODM_ReadAndConfig_MP_8195A_TXPWR_LMT -1003ad44 T ODM_ReadAndConfig_MP_8195A_TxXtalTrack -1003ad70 T GetDeltaSwingTable_8195A -1003ada0 T GetDeltaSwingXtalTable_8195A -1003adb0 T ODM_TxXtalTrackSetXtal_8195A -1003add0 T Hal_MPT_CCKTxPowerAdjust -1003aea0 T ODM_TxPwrTrackSetPwr_8195A -1003afb0 T ConfigureTxpowerTrack_8195A -1003affc T phy_PathA_IQK_8195A -1003b1b0 T phy_PathA_RxIQK8195A -1003b544 T _PHY_PathAFillIQKMatrix8195A -1003b6da T _PHY_PathBFillIQKMatrix8195A -1003b856 T _PHY_SaveADDARegisters8195A -1003b88a T _PHY_SaveMACRegisters8195A -1003b8b8 T _PHY_ReloadADDARegisters8195A -1003b8ec T _PHY_ReloadMACRegisters8195A -1003b91c T _PHY_PathADDAOn8195A -1003b958 T _PHY_MACSettingCalibration8195A -1003b9a0 T _PHY_PIModeSwitch8195A -1003b9dc T phy_SimularityCompare_8195A -1003bb10 T phy_IQCalibrate_8195A -1003be88 T phy_LCCalibrate_8195A -1003bef8 T PHY_LCCalibrate_8195A -1003bf58 T PHY_IQCalibrate_8195A -1003c20c T DoIQK_8195A -1003c22a T ConfigureTxpowerTrack -1003c23c T ODM_TXPowerTrackingCallback_ThermalMeter -1003c648 T ODM_ResetIQKResult -1003c690 T ODM_GetRightChnlPlaceforIQK -1003c6e8 t __rom_psk_CalcPTK_veneer -1003c6f8 t __ROM_odm_QueryRxPwrPercentage_veneer -1003c708 t __PHY_SetBBReg_8195A_veneer -1003c718 t __rtw_get_ie_veneer -1003c728 t __rtw_secmicsetkey_veneer -1003c738 t __rtw_parse_wpa_ie_veneer -1003c748 t __CmdWriteWord_veneer -1003c758 t __rtw_ieee802_11_parse_elems_veneer -1003c768 t __tkip_80211_encrypt_veneer -1003c778 t __rtw_check_network_type_veneer -1003c788 t __PHY_QueryBBReg_8195A_veneer -1003c798 t __rtw_set_ie_veneer -1003c7a8 t __HalI2SIntrCtrlRtl8195a_veneer -1003c7b8 t __rt_hmac_sha1_veneer -1003c7c8 t __aes_80211_encrypt_veneer -1003c7d8 t __phy_CalculateBitShift_veneer -1003c7e8 t __rt_arc4_crypt_veneer -1003c7f8 t __ROM_odm_CfoTrackingFlow_veneer -1003c808 t __rom_psk_CalcGTK_veneer -1003c818 t __prvStrCmp_veneer -1003c828 t __wep_80211_decrypt_veneer -1003c838 t __Rand_veneer -1003c848 t __rt_arc4_init_veneer -1003c858 t __rtw_get_wpa2_ie_veneer -1003c868 t __rtw_secgetmic_veneer -1003c878 t __rtw_get_wps_attr_content_veneer -1003c888 t __rtw_get_sec_ie_veneer -1003c898 t __key_2char2num_veneer -1003c8a8 t __wep_80211_encrypt_veneer -1003c8b8 t __HalDelayUs_veneer -1003c8c8 t __HalCpuClkConfig_veneer -1003c8d8 t __rtw_get_wps_ie_veneer -1003c8e8 t __CmdDumpWord_veneer -1003c8f8 t __rom_psk_PasswordHash_veneer -1003c908 t __StrUpr_veneer -1003c918 t __rtw_secmicappend_veneer -1003c928 t __ROM_odm_SetCrystalCap_veneer -1003c938 t __rtw_get_bit_value_from_ieee_value_veneer -1003c948 t __rtw_get_rateset_len_veneer -1003c958 t __ROM_odm_GetDefaultCrytaltalCap_veneer -1003c968 t __rtw_get_wpa_ie_veneer -1003c978 t __Strtoul_veneer -1003c988 t __HalI2SClrAllIntrRtl8195a_veneer -1003c998 t __rt_md5_hmac_veneer -1003c9a8 t ___vsscanf_veneer -1003c9b8 t __tkip_80211_decrypt_veneer -1003c9c8 t __HalI2SWrite32_veneer -1003c9d8 t __rtw_set_fixed_ie_veneer -1003c9e8 t __ROM_odm_EVMdbToPercentage_veneer -1003c9f8 t __aes_80211_decrypt_veneer -1003ca08 t __HalI2SRead32_veneer -1003ca18 t __AES_UnWRAP_veneer -1003ca28 t __rtw_parse_wpa2_ie_veneer -1003ca38 t __AES_WRAP_veneer -1003ca48 t __ROM_ODM_CfoTrackingReset_veneer -1003ca58 t __rtw_set_supported_rate_veneer -1003ca68 t __SpicWaitBusyDoneRtl8195A_veneer -1003ca78 t __ROM_odm_FalseAlarmCounterStatistics_veneer -1003ca88 t __rtw_seccalctkipmic_veneer -1003cdcc d __func__.21287 -1003d108 d __FUNCTION__.14672 -1003d5ec d bitrate_table -1003d718 d samplerate_table -1003d724 d decoder_table -1003d730 d imdct_s -1003d7c0 d sfb_8000_short -1003d7e7 d sfb_32000_short -1003d810 d is_table -1003d82c d sfb_24000_long -1003d844 d rq_table -10045880 d root_table -1004589c d sfb_44100_mixed -100458c4 d is_lsf_table -1004593c d sflen_table -1004595c d sfb_16000_mixed -10045980 d ca -100459a0 d sfb_44100_short -100459c7 d sfb_44100_long -100459dd d sfb_48000_mixed -10045a04 d scale.7383 -10045a4c d sfb_32000_mixed -10045a72 d sfb_16000_short -10045a99 d sfb_8000_long -10045aaf d sfb_22050_mixed -10045ad4 d window_l -10045b64 d sfb_48000_long -10045b7c d cs -10045b9c d sfb_24000_mixed -10045bc0 d pretab -10045bd6 d sfb_48000_short -10045bfd d sfb_22050_short -10045c24 d sfb_8000_mixed -10045c4c d sfbwidth_table -10045cb8 d sfb_24000_short -10045cdf d sfb_32000_long -10045cf5 d sfb_22050_long -10045d0c d window_s -10045d3c d nsfb_table -10045d84 d hufftab24 -1004638c d hufftab10 -10046524 d hufftab11 -100466c4 d hufftab12 -10046844 d hufftab13 -10046e7c d hufftab3 -10046ebc d hufftab15 -100474ac d hufftab16 -10047af4 d hufftab6 -10047b64 d hufftab7 -10047c64 D mad_huff_pair_table -10047de4 d hufftab9 -10047ebc d hufftab1 -10047edc d hufftabA -10047f4c d hufftab2 -10047f8c d hufftabB -10047fcc D mad_huff_quad_table -10047fd4 d hufftab0 -10047fd8 d hufftab5 -10048040 d hufftab8 -10048148 d crc_table -10048348 d D -10048bc8 D mad_timer_zero -10048eea d __func__.20809 -100494e0 d err_to_errno_table -10049528 D ip_addr_broadcast -1004952c D ip_addr_any -10049540 D memp_sizes -10049560 D tcp_pcb_lists -10049570 D tcp_state_str -1004959c D tcp_backoff -10049611 D tcp_persist_backoff -10049618 D ethbroadcast -1004961e D ethzero -1004964d d __FUNCTION__.9188 -1004970f d __FUNCTION__.9200 -1004971e d dhcp_option_interface_mtu_576 -10049745 d dhcp_magic_cookie -10049749 d dhcp_option_lease_time_one_day -100497a6 d __FUNCTION__.4594 -100497e9 d ucExpectedStackBytes.7043 -100497fd d CSWTCH.270 -1004988a d __FUNCTION__.12092 -100498a9 d __FUNCTION__.12258 -100498c0 D osdep_service -10049a5e d __FUNCTION__.12058 -10049a72 d __FUNCTION__.12109 -10049a85 d __FUNCTION__.12120 -10049aa0 d __FUNCTION__.12066 -10049abc d __FUNCTION__.12254 -10049ad2 d __FUNCTION__.7294 -10049bf0 d PinMap_I2S_RX -10049cd0 d PinMap_I2S_TX -10049d30 d I2SDefaultSetting -10049d44 d PinMap_I2S_CLK -10049da4 d PinMap_I2S_WS -10049e04 d __FUNCTION__.8783 -10049e5c d __FUNCTION__.8599 -10049e69 d __FUNCTION__.8612 -1004a10e d __FUNCTION__.8454 -1004a130 d __FUNCTION__.8461 -1004a14b d __FUNCTION__.8468 -1004a246 d __func__.8808 -1004a265 d __func__.8818 -1004a283 d __func__.8830 -1004a29d d __func__.8840 -1004a2bf d __func__.8835 -1004a688 d __func__.8603 -1004a6a2 d __func__.8686 -1004a6b5 d __func__.8825 -1004a6ce d __func__.8631 -1004a710 D wlancmds -1004a908 D rtw_cmd_callback -1004ab94 d RTW_ChannelPlan2G -1004ac0c D WPS_OUI -1004ac10 D RSN_TKIP_CIPHER -1004ac14 D MCS_rate_1R -1004ac24 D P2P_OUI -1004ac50 D WMM_INFO_OUI -1004ac56 D RTW_WPA_OUI -1004ac5a D WMM_PARA_OUI -1004ac60 d RTW_ChannelPlanMap -1004ac78 D null_addr -1004ac7e D WMM_OUI -1004ac84 d wlanevents -1004ad44 D zero_bssid -1004ad81 d __FUNCTION__.17681 -1004ad97 D SNAP_ETH_TYPE_APPLETALK_AARP -1004ad99 d __FUNCTION__.17495 -1004adac D SNAP_ETH_TYPE_IPX -1004adae D rtw_bridge_tunnel_header -1004add5 D rtw_rfc1042_header -1004adf3 d CSWTCH.36 -1004adff D ARTHEROS_OUI1 -1004ae02 D ARTHEROS_OUI2 -1004ae05 D REALTEK_OUI -1004ae08 D RALINK_OUI -1004ae0b D MARVELL_OUI -1004ae0e D CISCO_OUI -1004ae11 d rtw_basic_rate_cck -1004ae15 D BROADCOM_OUI1 -1004ae18 D BROADCOM_OUI2 -1004ae1b D REALTEK_96B_IE -1004ae21 d rtw_basic_rate_mix -1004ae28 d rtw_basic_rate_ofdm -1004ae2b D AIRGOCAP_OUI -1004ae3f d CSWTCH.66 -1004ae58 d CSWTCH.48 -1004ae9a d CSWTCH.28 -1004aeac D efuse_map_mask -1004aebc D flash_map_mask -1004af58 d __func__.21107 -1004b29e d CSWTCH.15 -1004b322 d CSWTCH.17 -1004b391 d CSWTCH.14 -1004b426 d __FUNCTION__.21257 -1004b438 d rtw_private_args -1004b853 d __FUNCTION__.21057 -1004b866 d __FUNCTION__.21294 -1004b877 d __FUNCTION__.21241 -1004b886 d __FUNCTION__.21126 -1004b896 d iw_priv_type_size -1004b974 d __FUNCTION__.17334 -1004b97e d __FUNCTION__.17736 -1004b98e d __FUNCTION__.17760 -1004b9a1 d __FUNCTION__.17712 -1004b9b0 d __FUNCTION__.17649 -1004b9be d __FUNCTION__.17661 -1004bd95 d __FUNCTION__.17827 -1004bdae d __FUNCTION__.17654 -1004bdb9 d __FUNCTION__.17615 -1004bdc8 d __FUNCTION__.17811 -1004bdda d __FUNCTION__.17765 -1004bde8 d __FUNCTION__.17724 -1004bdf9 d __FUNCTION__.17637 -1004d19a D CCKFCCTable_Ch14_8195A -1004d1aa D CCKFCCTable_8195A -1004d1bc D OFDMSwingTable_New -1004d268 D CCKCETable_8195A -1004d27e d CSWTCH.39 -1004d293 d __func__.20571 -1004d2b4 D hci_ops -1004d2d9 V Array_MP_8195A_TXPWR_LMT -1004d84c D xHeapRegions -1004d86c D UartLogRamCmdTable -1004d86c D console_commands_main -1004d87c D console_cmd_wifi_api -1004d8cc D console_commands_at -1004d93c D console_commands -1004d94c d UartLogRamCmdTable_end -1004d950 D __data_start__ -1004d950 D wlan_st_name -1004d958 D wifi_st_dhcp -1004d968 D wlan_ap_name -1004d970 D wifi_ap_dhcp -1004d980 D feep_tab -1004d9b0 D wifi_cfg -1004d9b8 D wifi_st_cfg -1004da24 D wlan_ap_netifn -1004da28 D wifi_ap_cfg -1004da94 D oversampling -1004da98 D tab_txt_rtw_secyrity -1004dabc D tab_code_rtw_secyrity -1004dae0 D SystemCoreClock -1004dae4 D error_flag -1004dae8 d tcp_port -1004daec d iss.7832 -1004daf0 d udp_port -1004daf2 D lwip_host_name -1004db12 d dhcp_server_state_machine -1004db13 d dhcp_recorded_xid -1004db18 d uxCriticalNesting -1004db1c d xNextTaskUnblockTime -1004db20 d seed.12225 -1004db24 d wakeup_event -1004db28 d wakelock -1004db2c d last_wakelock_state -1004db4c D mlme_sta_tbl -1004dbbc d PMKID_KDE_TYPE.17744 -1004dbc4 V nr_xmitbuff -1004dbc8 V nr_xmitframe -1004dbcc d P802_1H_OUI -1004dbcf D rtw_adaptivity_mode -1004dbd0 D g_user_ap_sta_num -1004dbd4 d rtw_private_handler -1004dc18 V max_local_skb_num -1004dc1c V max_skb_buf_num -1004dc20 D rom_e_rtw_msgp_str_ -1004ddfc D ARFB_table -1004de3b D TRYING_NECESSARY_idx -1004de4f D DROPING_NECESSARY -1004de63 D PER_RATE_UP -1004de77 D PER_RATE_DOWN -1004de8c V Array_MP_8195A_PHY_REG_PG -1004df1c D Array_MP_8195A_AGC_TAB -1004e12c D Array_MP_8195A_PHY_REG -1004e7a4 D rtl8195A_card_disable_flow -1004e844 D rtl8195A_card_enable_flow -1004e8e4 D Array_MP_8195A_MAC_REG -1004ebec D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_TFBGA96_8195A -1004ec0c D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_TFBGA96_8195A -1004ec2c D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_QFN48_8195A -1004ec4a D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_QFN56_8195A -1004ec68 D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_QFN48_8195A -1004ec86 D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_QFN56_8195A -1004eca4 D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_TFBGA96_8195A -1004ecc4 D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_QFN56_8195A -1004ece2 D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_QFN48_8195A -1004ed00 D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_QFN56_8195A -1004ed20 D Array_MP_8195A_RadioA -1004f2e8 D gDeltaSwingTableXtal_MP_P_TxXtalTrack_8195A -1004f306 D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_TFBGA96_8195A -1004f326 D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_QFN48_8195A -1004f344 D .ram.bss$$Base -1004f344 D __bss_start__ -1004f344 D __data_end__ -1004f344 D __ram_image2_text_end__ -1004f344 d skbdata_list -1004f34c V skb_data_pool -1005274c d ucIdleTaskHeap -10052864 D HalI2SOpSAL -100528a0 D SYSAdapte -100528a4 D PwrAdapter -10052b30 D libc_has_init -10052b34 d rheap_end -10052b38 D wifi_run_mode -10052b3c D wlan_st_netifn -10052b40 d event_init.21294 -10052b44 d sampCntAdd -10052b48 d sampCnt -10052b4c D mp3_serv -10052bce D tskreader_enable -10052bd0 D readBuf -10052bd4 D tskmad_enable -10052bd8 d bufUnderrunCt -10052bdc d oldRate -10052be0 d sampDelCnt -10052be1 D scan_end -10052be4 D pbuf_fifo -10052be8 D pi2s -10052bf0 D I2sTxSema -10052bf4 D eap_method -10052bf5 D eap_phase -10052bf8 D rtw_join_status -10052bfc D wifi_mode -10052c00 d param.21258 -10052c18 d scan_result_handler_ptr -10052c3c d join_user_data -10052c40 d event_callback_list -10052dc0 D paff_array -10052e38 D lwip_init_done -10052e3c D xnetif -10052ebc d s_aliases.7444 -10052ec0 d s_hostent.7443 -10052ed4 d s_hostent_addr.7445 -10052ed8 D h_errno -10052edc d s_phostent_addr.7446 -10052ee4 d select_cb_list -10052ee8 d sockets -10052fa8 d select_cb_ctr -10052fac d mbox -10052fb0 d tcpip_init_done_arg -10052fb4 d tcpip_init_done -10052fb8 d allsystems -10052fbc d allrouters -10052fc0 d igmp_group_list -10052fc4 D current_header -10052fc8 d ip_id -10052fcc D current_iphdr_src -10052fd0 D current_iphdr_dest -10052fd4 D current_netif -10052fd8 d str.6809 -10052fe8 d reassdatagrams -10052fec d ip_reass_pbufcount -10052fee D dhcp_rx_options_given -10052ff8 d xid.7759 -10052ffc D dhcp_rx_options_val -10053024 d dns_seqno -10053028 d dns_table -10053488 d dns_servers -10053490 d dns_payload_buffer -10053694 d dns_pcb -10053698 d dns_payload -1005369c d tcpip_tcp_timer_active -100536a0 d next_timeout -100536a4 D netif_list -100536a8 D netif_default -100536ac d netif_num -100536ad D pbuf_free_ooseq_pending -100536b0 d raw_pcbs -100536b4 D tcp_active_pcbs_changed -100536b8 D tcp_ticks -100536bc d tcp_timer -100536c0 D tcp_listen_pcbs -100536c4 D tcp_active_pcbs -100536c8 d tcp_timer_ctr -100536cc D tcp_tw_pcbs -100536d0 D tcp_tmp_pcb -100536d4 D tcp_bound_pcbs -100536d8 d seqno -100536dc d tcplen -100536e0 d ackno -100536e4 d flags -100536e5 d recv_flags -100536e8 d tcphdr -100536ec d recv_data -100536f0 d inseg -10053704 D tcp_input_pcb -10053708 D udp_pcbs -1005370c d etharp_cached_entry -10053710 d arp_table -100537d8 D lwip_tickless_used -100537dc d s_timeoutlist -1005380c d s_nextthread -10053810 d dhcps_ip_table_semaphore -10053814 d dhcps_send_broadcast_address -10053818 D dhcps_ip4addr_pool_end -10053819 d dhcp_client_ethernet_address -1005382c d dhcps_subnet_broadcast -10053830 d bound_client_ethernet_address -10053840 d ip_table -10053860 d dhcps_pcb -10053864 d dhcp_message_total_options_lenth -10053868 d dhcps_local_address -1005386c d dhcps_netif -10053870 d client_request_ip -10053874 d dhcps_allocated_client_address -10053878 d dhcps_local_mask -1005387c d dhcps_local_gateway -10053880 d dhcps_network_id -10053884 D dhcps_ip4addr_pool_start -10053888 d dhcp_message_repository -1005388c D ext_upper -10053890 d xFreeBytesRemaining -10053894 d ext_free -10053898 D ext_lower -1005389c d pxEnd -100538a0 d xStart -100538a8 d xMinimumEverFreeBytesRemaining -100538ac d ulTimerCountsForOneTick -100538b0 d ulStoppedTimerCompensation -100538b4 d xMaximumPossibleSuppressedTicks -100538b8 d xPendingReadyList -100538cc d uxTopReadyPriority -100538d0 d uxTasksDeleted -100538d4 d xTickCount -100538d8 d pxReadyTasksLists -100539b4 d pxOverflowDelayedTaskList -100539b8 d xTasksWaitingTermination -100539cc d pxDelayedTaskList -100539d0 d xSchedulerRunning -100539d4 d ulTaskSwitchedInTime -100539d8 D pxCurrentTCB -100539dc d uxPendedTicks -100539e0 d xSuspendedTaskList -100539f4 d uxCurrentNumberOfTasks -100539f8 d ulDeltaTotalRunTime -100539fc d xDelayedTaskList2 -10053a10 d xDelayedTaskList1 -10053a24 d uxTaskNumber -10053a28 d xYieldPending -10053a2c d uxSchedulerSuspended -10053a30 d xNumOfOverflows -10053a34 d pxCurrentTimerList -10053a38 d xActiveTimerList1 -10053a4c d xActiveTimerList2 -10053a60 d xLastTime.5284 -10053a64 d xTimerQueue -10053a68 d pxOverflowTimerList -10053a6c d xTimerTaskHandle -10053a70 d device_mutex -10053a7c d mutex_init -10053a80 d uxSavedInterruptStatus -10053a84 D min_free_heap_size -10053a88 d g_heap_inited -10053a8c d tcm_lock -10053a90 D g_tcm_heap -10053a94 D flashobj -10053aa0 D fspic_isinit -10053aa4 D WDGAdapter -10053ae0 d last_acquire_wakelock_time -10053b60 D post_sleep_callback -10053be0 D pre_sleep_callback -10053c60 D reserve_pll -10053c64 d sys_sleep_time -10053c68 d hold_wakelock_time -10053ce8 D missing_tick -10053cec D Timer2To7HandlerData -10053d04 D auto_reconnect_running -10053d08 D p_wlan_autoreconnect_hdl -10053d0c D mac_monitor_callback -10053d10 D mf_list_head -10053d14 d pscan_retry_cnt.21430 -10053d18 D promisc_callback_all -10053d1c D promisc_sema -10053d20 D promisc_callback -10053d24 D psk_essid -10053d6c D psk_passphrase -10053dee D psk_passphrase64 -10053e2f D wpa_global_PSK -10053e7f d RFC1042_OUI -10053e84 d rx_ring_pool -10055f64 d stop_report_count.20629 -10055f65 D bCheckStateTIMER -10055f68 d WifiMcuCmdBitMap.20974 -10055f6c D p_wlan_init_done_callback -10055f70 D rtw_power_percentage_idx -10055f74 D p_wlan_uart_adapter_callback -10055f78 D rtw_adaptivity_en -10055f7c D p_wlan_mgmt_filter -10055f80 D rtw_initmac -10055f84 D rtw_adaptivity_th_l2h_ini -10055f88 d drvpriv -10055f9c D skbbuf_used_num -10055fa0 V skb_pool -10056158 D skbdata_used_num -1005615c d wrapper_skbbuf_list -10056164 D max_skbdata_used_num -10056168 D max_skbbuf_used_num -1005616c d skb_fail_count -10056170 D timer_table -10056178 D rltk_wlan_info -100561a8 d timer_used_num -100561ac D max_timer_used_num -100561b0 D Noisy_State -100561b4 D pExportWlanIrqSemaphore -100561b8 D gDeltaSwingTableXtal_MP_N_TxXtalTrack_8195A -100561d6 D .ram.bss$$Limit -100561d6 D __bss_end__ -100561d8 B __ram_heap2_start__ +10007794 T PSHalInitPlatformLogUart +10007858 T InitSYSIRQ +10007894 T DurationScaleAndPeriodOP +100078cc T CLKCal +10007928 T BackupCPUClk +10007948 T ReFillCpuClk +10007968 T SYSIrqHandle +100079a8 T WakeFromSLPPG +10007ae0 T InitSoCPM +10007b18 T RegPowerState +10007b84 T ReadHWPwrState +10007e00 T QueryRegPwrState +10007e38 T SetSYSTimer +10007e70 T SleepCG +10007f60 T DeepSleep +100080a4 T HALEFUSEOneByteReadRAM +100080c4 T HALEFUSEOneByteWriteRAM +100080c8 T HalLogUartWaitTxFifoEmpty +100080e0 T FunctionChk +100080e4 T HalReInitPlatformTimer +10008154 T HalGetChipId +1000817c t get_addr_fobj +100081c6 t get_addr_fobj_save +10008210 t _fwrite_word +1000823c t get_addr_bscfg +100082b8 T copy_align4_to_align1 +10008342 T cmp_align1_align4 +100083ec T flash_write_cfg +1000862c T flash_read_cfg +100086c0 T rtl_libc_init +100086dc T rtl_snprintf +1000873c T rtl_sprintf +10008788 T rtl_printf +100087d0 T rtl_memcmp +100087d8 T rtl_memcpy +100087e0 T rtl_memmove +100087e8 T rtl_memset +100087f0 T rtl_strcmp +100087f8 T rtl_strcpy +10008800 T rtl_strlen +10008808 T rtl_strncmp +10008810 T rtl_strncpy +10008818 T rtl_strsep +10008820 T ram_libgloss_close +10008830 T ram_libgloss_fstat +10008850 T ram_libgloss_isatty +1000885c T ram_libgloss_lseek +1000886c T ram_libgloss_read +1000887c T ram_libgloss_sbrk +10008898 T ram_libgloss_write +100088b8 T ram_libgloss_open +100088f4 T init_rom_libgloss_ram_map +1000893c T memcpy +10008944 T memset +1000894c T sscanf +10008966 T __aeabi_llsr +1000897c T wlan_init_done_callback +10008980 T read_wifi_cfg +100089c8 T write_wifi_cfg +10008a08 T chk_ap_netif_num +10008a54 T StartStDHCPClient +10008abc T _wifi_on +10008b68 T _LwIP_Init +10008c14 T translate_rtw_security +10008c38 T show_wifi_ap_ip +10008c6c T wifi_run_ap +10008d88 T show_wifi_st_ip +10008dbc T wifi_run_st +10008e68 T wifi_run +10008f68 T wifi_init +10008f9c T show_wifi_st_cfg +10008fec T show_wifi_ap_cfg +10009058 T show_wifi_cfg +100090b8 T user_init_thrd +100090cc t mp3_cfg_read +1000912c T tskmad +10009348 T render_sample_block +100093bc T set_dac_sample_rate +10009400 T getIpForHost +10009424 T openConn +10009548 T http_head_read +10009680 T tskreader +10009848 T connect_close +10009870 T connect_start +10009910 T fATWS +100099f0 T ShowMemInfo +10009a1c T main +10009a74 t _scan_result_handler +10009b7c t fATSN +10009c04 t fATWI +10009d3c t fATOF +10009d40 t fATON +10009d44 t fATWR +10009d60 t fATPA +10009e3c t fATPN +10009f0c t fATSP +10009f50 t fATDS +10009f78 t fATSW +10009f82 t fATSD +10009f8c t fATST +10009ffc T print_hex_dump +1000a02c T dump_bytes +1000a0c0 t fATSB +1000a0f8 T print_udp_pcb +1000a164 T print_tcp_pcb +1000a23c t fATLW +1000a24c T RamFifoClose +1000a2a8 T RamFifoInit +1000a3fc T RamFifoRead +1000a4b8 T RamFifoWrite +1000a56c T RamFifoFill +1000a598 T RamFifoFree +1000a5ac T RamFifoLen +1000a5b8 t decode_header +1000a728 T mad_header_init +1000a754 T mad_frame_finish +1000a76c T mad_header_decode +1000aa08 T mad_frame_decode +1000aa8c T mad_frame_mute +1000aad6 T mad_frame_init +1000aaf4 t III_requantize +1000ab70 t III_aliasreduce +1000abd8 t fastsdct +1000ad10 t III_imdct_l +1000b128 t III_imdct_s +1000b27c t III_overlap +1000b2a6 t III_freqinver +1000b2f0 t III_decode +1000c30c T mad_layer_III +1000c770 T mad_bit_init +1000c77c T mad_bit_length +1000c794 T mad_bit_nextbyte +1000c7a0 T mad_bit_skip +1000c7d0 T mad_bit_read +1000c83c T mad_bit_crc +1000c930 t scale +1000c93c t dct32 +1000d1d0 t synth_half +1000d614 t synth_full +1000da68 T mad_synth_mute +1000daa0 T mad_synth_init +1000dac4 T mad_synth_frame +1000db58 t scale_rational +1000dbcc T mad_timer_set +1000dcb4 T mad_stream_init +1000dce6 T mad_stream_finish +1000dcf8 T mad_stream_buffer +1000dd0c T mad_stream_sync +1000dd54 T mad_stream_errorstr +1000deb0 t i2s_test_tx_complete +1000dec8 T i2sClose +1000df54 T i2sInit +1000e0c8 T i2sSetRate +1000e150 T i2sPushPWMSamples +1000e2b8 W __low_level_init +1000e2bc T SystemCoreClockUpdate +1000e2d0 t print_on +1000e2e8 W console_help +1000e328 T GetArgvRam +1000e3d8 T get_eap_phase +1000e3e4 T get_eap_method +1000e3f0 T eap_autoreconnect_hdl +1000e3f4 t wifi_no_network_hdl +1000e40c t wifi_ap_sta_disassoc_hdl +1000e410 T wifi_scan_done_hdl +1000e480 t wifi_handshake_done_hdl +1000e49c t wifi_disconn_hdl +1000e504 t wifi_connected_hdl +1000e538 T wifi_scan_each_report_hdl +1000e6ac T wifi_autoreconnect_hdl +1000e6e8 t wifi_ap_sta_assoc_hdl +1000e6ea T wifi_rx_beacon_hdl +1000e6ec T wifi_connect +1000eb20 t wifi_autoreconnect_thread +1000eb8c T wifi_set_country +1000eb98 T wifi_off +1000ec04 T wifi_start_ap +1000ed1c T wifi_scan +1000ed74 T wifi_scan_networks +1000ee24 T wifi_set_pscan_chan +1000ee3c T wifi_get_setting +1000ef1c T wifi_show_setting +1000efe4 T wifi_config_autoreconnect +1000f008 T wifi_indication +1000f044 T wifi_reg_event_handler +1000f098 T wifi_unreg_event_handler +1000f0dc T init_event_callback_list +1000f0ec T promisc_deinit +1000f0f0 T promisc_recv_func +1000f0f4 T promisc_set +1000f0f8 T is_promisc_enabled +1000f102 T iw_ioctl +1000f11e T wext_get_ssid +1000f168 T wext_set_ssid +1000f19c T wext_set_bssid +1000f1e6 T is_broadcast_ether_addr +1000f208 T wext_set_auth_param +1000f236 T wext_set_key_ext +1000f336 T wext_get_enc_ext +1000f398 T wext_set_passphrase +1000f3cc T wext_get_passphrase +1000f3fc T wext_set_mode +1000f420 T wext_get_mode +1000f44a T wext_set_ap_ssid +1000f47e T wext_set_country +1000f4a4 T wext_set_pscan_channel +1000f524 T wext_set_channel +1000f552 T wext_get_channel +1000f57e T wext_set_scan +1000f5ae T wext_get_scan +1000f5e0 T wext_wlan_indicate +1000f728 T wext_set_autoreconnect +1000f778 T wext_set_adaptivity +1000f7a0 T wext_set_sta_num +1000f7a4 T LwIP_DHCP +1000f898 T LwIP_GetIP +1000f89c T LwIP_AUTOIP +1000f918 t netconn_recv_data +1000f9e8 T netconn_new_with_proto_and_callback +1000fa48 T netconn_delete +1000fa6c T netconn_getaddr +1000fab0 T netconn_connect +1000faf0 T netconn_recv_tcp_pbuf +1000fb04 T netconn_recv +1000fb8c T netconn_recved +1000fbb8 T netconn_send +1000fbf4 T netconn_write_partly +1000fc84 T netconn_gethostbyname +1000fcdc t recv_udp +1000fd4c t recv_raw +1000fdd0 t setup_tcp +1000fe14 t err_tcp +1000feac t do_connected +1000ff18 t do_writemore +10010018 t do_close_internal +10010104 t poll_tcp +10010154 t do_dns_found +10010180 t sent_tcp +100101ce t recv_tcp +10010248 T do_newconn +100102d8 T netconn_alloc +10010344 T netconn_free +10010370 t netconn_drain +10010400 T do_delconn +1001048c T do_connect +10010520 T do_send +10010590 T do_recv +100105d0 T do_write +1001060a T do_getaddr +10010680 T do_gethostbyname +100106ac T netbuf_delete +100106cc T netbuf_free +100106e2 T netbuf_ref +1001071c T lwip_gethostbyname +10010768 t get_socket +10010788 t alloc_socket +100107f8 t event_callback +10010928 T lwip_socket_init +1001092a T lwip_close +1001097c T lwip_connect +100109d8 T lwip_recvfrom +10010b90 T lwip_read +10010ba4 T lwip_sendto +10010c50 T lwip_send +10010cc8 T lwip_socket +10010d3c T lwip_write +10010d44 t tcpip_thread +10010dc8 T tcpip_input +10010e10 T tcpip_callback_with_block +10010e64 T tcpip_timeout +10010ea8 T tcpip_apimsg +10010f00 T tcpip_init +10010f44 t autoip_start_probing +10010f90 t autoip_arp_announce +10010fbc T autoip_start +10011050 T autoip_tmr +10011160 T autoip_arp_reply +10011208 t icmp_send_response.isra.0 +10011278 T icmp_input +1001139c T icmp_dest_unreach +100113a6 T icmp_time_exceeded +100113b0 t igmp_send +10011454 t igmp_delaying_member +10011490 t igmp_lookup_group.part.1 +100114c8 T igmp_init +100114e4 T igmp_report_groups +10011508 T igmp_lookfor_group +10011528 T igmp_start +10011564 T igmp_input +10011628 T igmp_tmr +10011654 t lwip_standard_chksum +100116ac T inet_chksum_pseudo +10011732 T inet_chksum +1001173e T inet_chksum_pbuf +10011784 T ip_route +100117c0 T ip_input +10011998 T ip_output_if_opt +10011aec T ip_output_if +10011b0e T ip_output +10011b46 T ip4_addr_isbroadcast +10011b7e T ipaddr_aton +10011c94 T ipaddr_addr +10011cac T ipaddr_ntoa_r +10011d44 T ipaddr_ntoa +10011d50 t ipfrag_free_pbuf_custom +10011d68 t ip_reass_free_complete_datagram +10011de8 t ip_reass_remove_oldest_datagram +10011e5c T ip_reass_tmr +10011e84 T ip_reass +10012134 T ip_frag +100122a0 T lwip_htons +100122a6 T lwip_ntohs +100122ac T lwip_htonl +100122b0 T lwip_ntohl +100122b4 t dhcp_set_state +100122c4 t dhcp_option +100122e4 t dhcp_option_byte +100122f6 t dhcp_option_short +10012318 t dhcp_option_long +1001235c t dhcp_create_msg +100124b0 t dhcp_delete_msg +100124c6 t dhcp_check +100124ec t dhcp_bind +100125c0 t dhcp_option_trailer +100125ec t dhcp_discover +100126a0 t dhcp_reboot +10012744 t dhcp_option_hostname.isra.1 +10012784 t dhcp_rebind +10012818 t dhcp_select +10012904 t dhcp_recv +10012d08 T dhcp_arp_reply +10012d88 T dhcp_renew +10012e1c T dhcp_release +10012ec4 T dhcp_coarse_tmr +10012f50 T dhcp_fine_tmr +10012fec T dhcp_release_unicast +100130b0 T dhcp_stop +100130e0 T dhcp_start +10013180 t dns_parse_name +1001319c t dns_recv +10013330 t dns_send +10013400 t dns_check_entry +100134b0 T dns_setserver +100134d0 T dns_init +10013528 T dns_tmr +10013554 T dns_gethostbyname +10013694 T lwip_init +100136bc T sys_timeout +1001371c T tcp_timer_needed +10013750 t tcpip_tcp_timer +10013788 T sys_timeouts_init +100137fc t dns_timer +10013818 t igmp_timer +10013830 t autoip_timer +10013848 t dhcp_timer_fine +10013864 t dhcp_timer_coarse +10013880 t arp_timer +1001389c t ip_reass_timer +100138b8 T sys_untimeout +10013900 T sys_timeouts_mbox_fetch +10013964 T netif_init +10013968 T netif_set_ipaddr +100139c0 T netif_set_addr +100139dc T netif_add +10013a40 T netif_set_gw +10013a48 T netif_set_netmask +10013a50 T netif_set_default +10013a5c T netif_set_up +10013a92 T netif_set_down +10013aac t pbuf_free_ooseq_callback +10013ae0 t pbuf_pool_is_empty +10013b1c T pbuf_alloced_custom +10013b70 T pbuf_header +10013bc8 T pbuf_free +10013c08 T pbuf_alloc +10013d2c T pbuf_realloc +10013d60 T pbuf_clen +10013d70 T pbuf_ref +10013d8a T pbuf_cat +10013da6 T pbuf_chain +10013db6 T pbuf_copy +10013e52 T pbuf_copy_partial +10013eba T pbuf_coalesce +10013ee8 T raw_input +10013f60 T raw_connect +10013f6a T raw_recv +10013f70 T raw_sendto +10014000 T raw_send +10014008 T raw_remove +10014030 T raw_new +10014064 t tcp_new_port +100140b4 T tcp_init +100140d0 T tcp_update_rcv_ann_wnd +10014106 T tcp_recved +10014140 T tcp_seg_free +1001415a T tcp_segs_free +1001416c T tcp_seg_copy +10014194 T tcp_arg +10014198 T tcp_recv +1001419e T tcp_sent +100141a4 T tcp_err +100141aa T tcp_accept +100141ae T tcp_poll +100141b8 T tcp_pcb_purge +100141f8 T tcp_slowtmr +100144b4 T tcp_pcb_remove +1001451c t tcp_close_shutdown +1001464c T tcp_close +10014664 T tcp_recv_null +10014688 T tcp_process_refused_data +100146e8 T tcp_fasttmr +10014760 T tcp_tmr +10014784 T tcp_shutdown +100147d4 T tcp_abandon +1001486c T tcp_abort +10014874 T tcp_next_iss +1001488c T tcp_alloc +100149ac T tcp_new +100149b2 T tcp_eff_send_mss +100149d0 T tcp_connect +10014b2c t tcp_oos_insert_segment +10014bac t tcp_receive +10015384 t tcp_parseopt.isra.0 +10015408 T tcp_input +10015c60 t tcp_pbuf_prealloc +10015cb4 t tcp_create_segment +10015d7c t tcp_output_alloc_header.constprop.0 +10015de6 T tcp_write +10016136 T tcp_enqueue_flags +100161de T tcp_send_fin +10016226 T tcp_send_empty_ack +10016284 T tcp_output +100164fc T tcp_rst +10016594 T tcp_rexmit_rto +100165c2 T tcp_rexmit +10016612 T tcp_rexmit_fast +10016668 T tcp_keepalive +100166ba T tcp_zero_window_probe +10016764 T udp_init +10016780 T udp_input +10016908 T udp_bind +100169b0 T udp_sendto_if +10016aae T udp_sendto +10016ae4 T udp_send +10016af0 T udp_connect +10016b38 T udp_disconnect +10016b48 T udp_recv +10016b50 T udp_remove +10016b78 T udp_new +10016b9c t etharp_free_entry +10016bcc t etharp_find_entry +10016ca8 t etharp_send_ip +10016cdc T etharp_tmr +10016d1c T etharp_cleanup_netif +10016d44 T etharp_raw +10016e00 T etharp_request +10016e2c t etharp_output_to_arp_index +10016e74 T etharp_query +10016f78 T etharp_output +10017070 T ethernet_input +10017260 t low_level_output +100172bc t arp_timer +100172d8 T ethernetif_recv +10017350 T ethernetif_init +10017394 T lwip_POST_SLEEP_PROCESSING +100173b0 T rltk_wlan_set_netif_info +100173d0 T rltk_wlan_send +10017464 T rltk_wlan_recv +100174d0 T netif_is_valid_IP +10017504 T netif_get_idx +1001751c T netif_rx +1001752c T netif_post_sleep_processing +10017530 T sys_mbox_new +1001754a T sys_mbox_free +1001755e T sys_mbox_post +1001757e T sys_mbox_trypost +100175a0 T sys_arch_mbox_fetch +100175ea T sys_arch_mbox_tryfetch +1001760a T sys_mbox_valid +10017614 T sys_mbox_set_invalid +1001761a T sys_sem_new +10017656 T sys_arch_sem_wait +10017696 T sys_sem_signal +100176a2 T sys_sem_free +100176a8 T sys_sem_valid +100176b2 T sys_sem_set_invalid +100176b8 T sys_init +100176dc T sys_thread_new_tcm +10017744 T sys_arch_protect +1001774e T sys_arch_unprotect +10017754 t add_offer_options +10017810 t mark_ip_in_table +10017854 t dhcps_initialize_message +10017904 T dhcps_handle_state_machine_change +100179d4 t dhcps_receive_udp_packet_handler +10017ca0 T dhcps_deinit +10017cc8 T dhcps_init +10017dd0 t prvInsertBlockIntoFreeList +10017e18 t vPortDefineHeapRegions.constprop.1 +10017eb8 T pvPortMalloc +10017f98 T __vPortFree +10017fdc T vPortSetExtFree +10017ff8 T vPortFree +10018028 T xPortGetFreeHeapSize +10018034 t prvPortStartFirstTask +10018054 T pxPortInitialiseStack +10018070 T vPortSVCHandler +10018090 t pxCurrentTCBConst2 +10018094 T vPortYield +100180ac T ulPortSetInterruptMask +100180bc t prvTaskExitError +100180c4 T vPortEnterCritical +100180e0 T vPortClearInterruptMask +100180e8 T vPortExitCritical +100180fc T xPortPendSVHandler +1001813c t pxCurrentTCBConst +10018140 T xPortSysTickHandler +10018164 W vPortSuppressTicksAndSleep +1001827c W vPortSetupTimerInterrupt +100182cc T xPortStartScheduler +100182fc T vApplicationIdleHook +10018300 T vApplicationStackOverflowHook +1001831c T osKernelSysTick +10018320 T vListInitialise +10018336 T vListInitialiseItem +1001833c T vListInsertEnd +10018354 T vListInsert +10018384 T uxListRemove +100183a4 t prvCopyDataToQueue +1001840e t prvCopyDataFromQueue +10018436 t prvUnlockQueue +1001849e T xQueueGenericReset +100184f8 T xQueueGenericCreate +10018544 T xQueueCreateCountingSemaphore +10018556 T xQueueGenericSend +10018634 T xQueueCreateMutex +1001867e T xQueueGenericSendFromISR +100186e2 T xQueueGenericReceive +100187e6 T uxQueueMessagesWaiting +100187f8 T vQueueDelete +1001880e T vQueueWaitForMessageRestricted +10018848 t prvGenerateRunTimeOfPeroid +10018888 t prvGetExpectedIdleTime +100188b8 t prvListTaskWithinSingleList +100189a0 t prvResetNextTaskUnblockTime +100189c4 t prvAddCurrentTaskToDelayedList +10018a14 T xTaskGenericCreate +10018bc8 T vTaskDelete +10018c68 T uxTaskPriorityGet +10018c84 T vTaskPrioritySet +10018d3c T vTaskStartScheduler +10018d94 T vTaskSuspendAll +10018da4 T xTaskGetTickCount +10018dbc T pcTaskGetTaskName +10018dcc T vTaskStepTick +10018ddc T xTaskIncrementTick +10018f5c T xTaskResumeAll +10019024 T vTaskDelay +10019074 t prvIdleTask +100190fc T uxTaskGetSystemState +100191ac T vTaskSwitchContext +10019264 T vTaskPlaceOnEventList +100192c0 T vTaskPlaceOnEventListRestricted +10019304 T xTaskRemoveFromEventList +10019374 T vTaskSetTimeOutState +1001938c T xTaskCheckForTimeOut +100193d8 T vTaskMissedYield +100193e4 T eTaskConfirmSleepModeStatus +10019404 T xTaskGetSchedulerState +10019424 T vTaskPriorityInherit +100194b8 T xTaskPriorityDisinherit +10019528 T sprintf_pcTaskName +10019548 T vTaskList +100195f8 T vTaskGetRunTimeStats +100196b8 T pvTaskIncrementMutexHeldCount +100196d0 T vTaskGetCurrentTCB +100196dc t prvCheckForValidListAndQueue +10019728 t prvInsertTimerInActiveList +10019764 T xTimerCreateTimerTask +100197a0 T xTimerCreate +100197dc T xTimerGenericCommand +10019870 t prvSwitchTimerLists +100198e0 t prvTimerTask +10019a44 T xTimerIsTimerActive +10019a5c t device_mutex_init +10019aa0 T device_mutex_lock +10019ad0 T device_mutex_unlock +10019aec t _freertos_systime_to_sec +10019af6 t _freertos_ms_to_systime +10019af8 t _freertos_sec_to_systime +10019b00 t _freertos_usleep_os +10019b02 t _freertos_ATOMIC_SET +10019b06 t _freertos_ATOMIC_READ +10019b0a t _freertos_modular64 +10019b7e t _freertos_thread_enter +10019b80 t _freertos_enter_critical +10019b84 t _freertos_exit_critical +10019b88 t _freertos_ATOMIC_SUB_RETURN +10019ba0 t _freertos_ATOMIC_DEC_RETURN +10019bb6 t _freertos_ATOMIC_ADD_RETURN +10019bce t _freertos_ATOMIC_INC_RETURN +10019be4 t _freertos_ATOMIC_SUB +10019bfc t _freertos_ATOMIC_DEC +10019c02 t _freertos_ATOMIC_ADD +10019c1a t _freertos_ATOMIC_INC +10019c20 t _freertos_enter_critical_from_isr +10019c30 T _freertos_malloc +10019c34 T _freertos_zmalloc +10019c4c t _freertos_memset +10019c50 T _freertos_mfree +10019c54 t _freertos_get_current_time +10019c58 t _freertos_spinunlock_irqsave +10019c6e t _freertos_spinunlock +10019c7a t _freertos_mutex_put +10019c7e T _freertos_wakeup_task +10019c84 t _freertos_up_sema +10019c88 t _freertos_exit_critical_mutex +10019c94 T _freertos_timerCreate +10019c98 T _freertos_timerDelete +10019cac T _freertos_timerStop +10019cc0 T _freertos_timerChangePeriod +10019cda T _freertos_timerIsTimerActive +10019cde T _freertos_acquire_wakelock +10019ce4 T _freertos_release_wakelock +10019cea T _freertos_get_scheduler_state +10019d0a t _freertos_thread_exit +10019d10 t _freertos_GetFreeHeapSize +10019d14 t _freertos_yield_os +10019d18 t _freertos_udelay_os +10019d1c t _freertos_mdelay_os +10019d20 t _freertos_deinit_xqueue +10019d3a t _freertos_spinlock_free +10019d4c t _freertos_mutex_free +10019d50 t _freertos_free_sema +10019d54 t _freertos_push_to_xqueue +10019d7c t _freertos_pop_from_xqueue +10019da4 t _freertos_down_sema +10019dc6 t _freertos_init_xqueue +10019de0 t _freertos_spinlock_irqsave +10019e1c t _freertos_spinlock +10019e54 t _freertos_enter_critical_mutex +10019e8c t _freertos_mutex_get +10019ec4 t _freertos_spinlock_init +10019ed2 t _freertos_mutex_init +10019ed8 t _freertos_exit_critical_from_isr +10019ee4 t _freertos_up_sema_from_isr +10019f0c t _freertos_init_sema +10019f1c t _freertos_create_task +10019f94 t _freertos_memcmp +10019fa2 t _freertos_memcpy +10019fa8 t _freertos_delete_task +10019ff4 t _freertos_mutex_get_timeout +1001a030 t _freertos_systime_to_ms +1001a032 t _freertos_msleep_os +1001a036 T save_and_cli +1001a03a T restore_flags +1001a03e T cli +1001a044 T _freertos_arc4random +1001a074 t _freertos_get_random_bytes +1001a0b2 T RtlInitSema +1001a0c0 T RtlUpSemaFromISR +1001a0e0 T RtlDownSema +1001a0f4 T RtlUdelayOS +1001a0f8 T _htons +1001a0fe T _ntohs +1001a104 T _rtw_zvmalloc +1001a124 T _rtw_vmfree +1001a148 T _rtw_malloc +1001a158 T _rtw_zmalloc +1001a168 T _rtw_mfree +1001a178 T deinit_mem_monitor +1001a17a T rtw_vmfree +1001a17e T rtw_mfree +1001a184 T rtw_memcpy +1001a194 T rtw_memcmp +1001a1a4 T rtw_memset +1001a1b4 T rtw_init_listhead +1001a1ba T rtw_is_list_empty +1001a1c4 T rtw_list_insert_head +1001a1d0 T rtw_list_insert_tail +1001a1dc T rtw_list_delete +1001a1ec T rtw_init_sema +1001a1fc T rtw_free_sema +1001a20c T rtw_up_sema +1001a21c T rtw_up_sema_from_isr +1001a22c T rtw_down_timeout_sema +1001a23c T rtw_down_sema +1001a250 T rtw_mutex_init +1001a260 T rtw_mutex_free +1001a270 T rtw_mutex_put +1001a280 T rtw_mutex_get_timeout +1001a294 T rtw_enter_critical_from_isr +1001a2a4 T rtw_enter_critical +1001a2a8 T rtw_exit_critical_from_isr +1001a2b8 T rtw_exit_critical +1001a2bc T rtw_enter_critical_mutex +1001a2cc T rtw_exit_critical_mutex +1001a2dc T rtw_queue_empty +1001a2e6 T rtw_end_of_queue_search +1001a2f0 T rtw_spinlock_init +1001a300 T rtw_init_queue +1001a30c T rtw_spinlock_free +1001a31c T rtw_spin_lock +1001a32c T rtw_enter_critical_bh +1001a330 T rtw_spin_unlock +1001a340 T rtw_exit_critical_bh +1001a344 T rtw_get_current_time +1001a354 T rtw_systime_to_ms +1001a368 T rtw_systime_to_sec +1001a37c T rtw_ms_to_systime +1001a390 T rtw_sec_to_systime +1001a3a4 T rtw_get_passing_time_ms +1001a3b8 T rtw_msleep_os +1001a3c8 T rtw_usleep_os +1001a3d8 T rtw_mdelay_os +1001a3e8 T rtw_udelay_os +1001a3f8 T ATOMIC_SET +1001a408 T ATOMIC_INC +1001a418 T ATOMIC_INC_RETURN +1001a42c T ATOMIC_DEC_RETURN +1001a440 T ATOMIC_DEC_AND_TEST +1001a450 T rtw_modular64 +1001a46c T rtw_get_random_bytes +1001a480 T rtw_getFreeHeapSize +1001a490 T init_mem_monitor +1001a4a0 T add_mem_usage +1001a4d4 T rtw_zvmalloc +1001a4f4 T rtw_malloc +1001a514 T rtw_zmalloc +1001a534 T rtw_netif_queue_stopped +1001a538 T rtw_netif_wake_queue +1001a53a T rtw_netif_start_queue +1001a53c T rtw_netif_stop_queue +1001a53e T flush_signals_thread +1001a540 T rtw_acquire_wakelock +1001a550 T rtw_release_wakelock +1001a560 T rtw_create_task +1001a57c T rtw_delete_task +1001a58c T rtw_wakeup_task +1001a59c T rtw_timerCreate +1001a5b8 T rtw_timerDelete +1001a5cc T rtw_timerIsTimerActive +1001a5e0 T rtw_timerStop +1001a5f4 T rtw_timerChangePeriod +1001a608 T rtw_thread_enter +1001a618 T rtw_thread_exit +1001a628 T tcm_heap_free +1001a6a8 T tcm_heap_init +1001a6f8 T tcm_heap_freeSpace +1001a738 T tcm_heap_malloc +1001a7d8 T tcm_heap_calloc +1001a7f0 T flash_init +1001a88c T flash_turnon +1001a8a4 T flash_erase_sector +1001a8d0 T flash_stream_read +1001a9a0 T flash_stream_write +1001aaf8 T i2s_init +1001abd0 T i2s_set_dma_buffer +1001ac22 T i2s_tx_irq_handler +1001ac28 T i2s_set_param +1001ac5c T i2s_deinit +1001ac60 T i2s_enable +1001ac64 T i2s_disable +1001ac68 W pinmap_merge +1001aca4 W pinmap_find_peripheral +1001acbc W pinmap_peripheral +1001acf4 T sleep_ex_selective +1001ad08 T deepsleep_ex +1001ad2c T us_ticker_read +1001ad58 T En32KCalibration +1001adec T WDGInitial +1001ae78 T WDGStart +1001ae90 T WDGRefresh +1001aeac T I2SISRHandle +1001af68 T RtkI2SDeInit +1001b048 T RtkI2SEnable +1001b084 T RtkI2SDisable +1001b0c0 T RtkI2SLoadDefault +1001b124 T HalI2SOpInit +1001b1a0 T RtkI2SInit +1001b364 T HalI2SInit +1001b3a2 T HalI2SDisable +1001b3c8 T HalI2SEnable +1001b3ec T HalI2SDeInit +1001b444 T HalTimerOpInit_Patch +1001b480 T freertos_ready_to_sleep +1001b490 T freertos_pre_sleep_processing +1001b554 T freertos_post_sleep_processing +1001b578 T acquire_wakelock +1001b5b8 T release_wakelock +1001b614 T get_wakelock_status +1001b620 T HalI2SInitRtl8195a_Patch +1001b722 T HalI2SSetRateRtl8195a +1001b768 T HalI2SSetWordLenRtl8195a +1001b790 T HalI2SSetChNumRtl8195a +1001b7b8 T HalI2SSetPageNumRtl8195a +1001b7e0 T HalI2SSetPageSizeRtl8195a +1001b80a T HalI2SSetDMABufRtl8195a +1001b874 T HalI2SGetTxPageRtl8195a +1001b894 T HalI2SPageSendRtl8195a +1001b8e0 T HalI2SClearAllOwnBitRtl8195a +1001b914 T HalI2SDMACtrlRtl8195a +1001b918 T HalTimerIrq2To7Handle_Patch +1001b96c T HalTimerIrqRegisterRtl8195a_Patch +1001b9e8 T HalTimerIrqUnRegisterRtl8195a_Patch +1001ba60 T HalTimerDeInitRtl8195a_Patch +1001ba94 T HalTimerReadCountRtl8195a_Patch +1001baac T HalTimerReLoadRtl8195a_Patch +1001bae0 T HalTimerInitRtl8195a_Patch +1001bbb4 T HalTimerIrqEnRtl8195a +1001bbc8 T HalTimerEnRtl8195a_Patch +1001bbdc T HalTimerDisRtl8195a_Patch +1001bbf0 t rtw_ht_operation_update +1001bca2 t associated_clients_update.part.11 +1001bcde T chk_sta_is_alive +1001bd1c T add_RATid +1001be24 T update_sta_info_apmode +1001bedc T update_beacon +1001c19c T rtw_check_beacon_data +1001c89c T associated_clients_update +1001c8a6 T bss_cap_update_on_sta_join +1001ca56 T bss_cap_update_on_sta_leave +1001cb52 T ap_free_sta +1001cc04 T expire_timeout_chk +1001cd40 T rtw_sta_flush +1001cdc4 T free_mlme_ap_info +1001ce10 T sta_info_update +1001ce4c T ap_sta_info_defer_update +1001ce7c T start_ap_mode +1001cebc T init_mlme_ap_info +1001ced2 T stop_ap_mode +1001cf20 T rtw_generate_bcn_ie +1001d244 T set_hidden_ssid +1001d29c T _rtw_init_evt_priv +1001d2ae T _rtw_free_cmd_priv +1001d2b8 T _rtw_enqueue_cmd +1001d2e4 T _rtw_dequeue_cmd +1001d318 T _rtw_observequeue_cmd +1001d32c T rtw_init_cmd_priv +1001d336 T rtw_init_evt_priv +1001d33a T rtw_free_evt_priv +1001d33c T rtw_free_cmd_priv +1001d340 T rtw_cmd_filter +1001d35e T rtw_free_cmd_obj +1001d388 T rtw_enqueue_cmd +1001d3de T rtw_set_channel_plan_cmd_callback +1001d3f6 T rtw_survey_cmd_callback +1001d412 T rtw_disassoc_cmd_callback +1001d442 T rtw_joinbss_cmd_callback +1001d45e T rtw_setstaKey_cmdrsp_callback +1001d478 T rtw_cmd_thread +1001d5d4 T rtw_joinbss_cmd +1001d87e T rtw_disassoc_cmd +1001d8cc T rtw_setstakey_cmd +1001d9bc T rtw_clearstakey_cmd +1001da5c T rtw_dynamic_chk_wk_cmd +1001daae T rtw_set_chplan_cmd +1001db2e T dynamic_chk_wk_hdl +1001dbf6 T lps_ctrl_wk_hdl +1001dc5a T rtw_lps_ctrl_wk_cmd +1001dcc4 T rtw_sitesurvey_cmd +1001dd8c T rpt_timer_setting_wk_hdl +1001dda0 T rtw_ps_cmd +1001ddfc T rtw_chk_hi_queue_cmd +1001de50 T rtw_drvextra_cmd_hdl +1001df2c t rtw_free_mlme_ie_data +1001df44 T rtw_init_mlme_timer +1001dfa0 T rtw_del_mlme_timer +1001dfc0 T reconnect_timer_hdl +1001e060 T _rtw_init_mlme_priv +1001e0e2 T rtw_mfree_mlme_priv_lock +1001e0fe T rtw_free_mlme_priv_ie_data +1001e136 T _rtw_free_mlme_priv +1001e15e T _rtw_alloc_network +1001e1ae T _rtw_free_network +1001e20e T _rtw_free_network_nolock +1001e234 T _rtw_find_network +1001e270 T _rtw_free_network_queue +1001e2b8 T rtw_if_up +1001e2d8 T rtw_get_capability_from_ie +1001e2dc T rtw_get_capability +1001e2f6 T rtw_get_beacon_interval_from_ie +1001e2fa T rtw_init_mlme_priv +1001e312 T rtw_free_mlme_priv +1001e316 T rtw_free_network_queue +1001e31a T rtw_is_same_ibss +1001e330 T is_same_network +1001e394 T update_network +1001e42e T rtw_update_scanned_network +1001e540 T rtw_add_network +1001e57e T rtw_survey_event_callback +1001e62a T rtw_dummy_event_callback +1001e62c T rtw_free_assoc_resources +1001e6f6 T rtw_indicate_connect +1001e706 T rtw_indicate_disconnect +1001e728 T rtw_indicate_scan_done +1001e72c T rtw_joinbss_event_callback +1001e74a T search_max_mac_id +1001e792 T rtw_stassoc_hw_rpt +1001e7ca T rtw_stassoc_event_callback +1001e7f8 T rtw_stadel_event_callback +1001e89e T _rtw_join_timeout_handler +1001e928 T rtw_join_timeout_handler +1001e980 T rtw_scan_timeout_handler +1001e9b0 T _rtw_scan_timeout_handler +1001e9b4 T rtw_dynamic_check_timer_handlder +1001ea0c T _dynamic_check_timer_handlder +1001ea50 T rtw_select_and_join_from_scanned_queue +1001eb24 T rtw_surveydone_event_callback +1001ec3c T rtw_set_auth +1001ec8c T rtw_set_key +1001ed4e T rtw_restruct_wmm_ie +1001edb4 T rtw_restruct_sec_ie +1001ee20 T rtw_joinbss_reset +1001ee30 T rtw_restructure_ht_ie +1001ef10 T rtw_update_ht_cap +1001ef9a T rtw_joinbss_event_prehandle +1001f1c6 T rtw_linked_check +1001f1e2 T rtw_buddy_adapter_up +1001f21a T check_buddy_fwstate +1001f238 t get_da +1001f258 t get_sa +1001f282 T OnAction +1001f294 T DoReserved +1001f298 t _mgt_dispatcher.isra.2 +1001f2e4 T rtw_is_channel_set_contains_channel +1001f306 T init_hw_mlme_ext +1001f31c T init_channel_set +1001f3b4 T free_mlme_ext_priv +1001f3dc T mgt_dispatcher +1001f464 T alloc_mgtxmitframe +1001f49c T update_mgnt_tx_rate +1001f4a2 T update_mgntframe_attrib +1001f4fe T rtw_build_mgnt_frame +1001f554 T dump_mgntframe +1001f56e T rtw_send_mgnt +1001f58c t issue_action_BSSCoexistPacket +1001f798 T update_hidden_ssid +1001f7ec T issue_beacon +1001fa04 T issue_probersp +1001fc94 T OnProbeReq +1001fd5c T issue_probereq +1001ff14 T issue_auth +1002017c T OnAuth +10020420 T issue_asocrsp +10020694 T issue_assocreq +100209d0 T issue_nulldata +10020aba T issue_qos_nulldata +10020bec T issue_deauth +10020cd4 T issue_action_BA +10020f50 T OnAction_back +1002101e T collect_bss_info +10021250 T start_clnt_auth +100212e0 T start_clnt_assoc +10021314 T OnAuthClient +100213f4 T report_scan_result_one +100215b4 T add_site_survey +1002173a T report_survey_event +10021978 T OnProbeRsp +100219ac T report_surveydone_event +10021a10 T report_join_res +10021a80 T OnAssocRsp +10021bcc T report_del_sta_event +10021c5e T receive_disconnect +10021cb4 T OnBeacon +10021e3c T OnDeAuth +10021f94 T OnDisassoc +10022104 T report_add_sta_event +10022178 T OnAssocReq +10022768 T rtw_port_switch_chk +100227ec T update_sta_info +1002286c T mlmeext_sta_del_event_callback +100228ec T _linked_info_dump +1002294e T _linked_rx_signal_strehgth_display +10022988 T linked_status_chk +10022bfc T survey_timer_hdl +10022cdc T _survey_timer_hdl +10022ce0 T link_timer_hdl +10022d5e T _link_timer_hdl +10022d62 T addba_timer_hdl +10022d82 T NULL_hdl +10022d86 T setopmode_hdl +10022dcc T disconnect_hdl +10022e78 T setauth_hdl +10022e88 T setkey_hdl +10022ee0 T set_stakey_hdl +10022fe4 T set_tx_beacon_cmd +10023058 T mlme_evt_hdl +100230a4 T tx_beacon_hdl +1002315e T check_buddy_mlmeinfo_state +10023178 T site_survey +10023348 T sitesurvey_cmd_hdl +10023456 T concurrent_chk_start_clnt_join +100234ec T start_clnt_join +100235c0 T join_cmd_hdl +100236e4 T concurrent_chk_joinbss_done +100238ac T mlmeext_joinbss_event_callback +100239e8 T set_chplan_hdl +10023a04 T init_mlme_ext_timer +10023a60 T init_mlme_ext_priv +10023b9c t get_hdr_bssid +10023bc4 t filter_packet +10023c4c t promisc_get_encrypt +10023c9e t promisc_info_get +10023d42 t promisc_set_enable +10023dde T _promisc_deinit +10023e30 T _promisc_recv_func +1002437c T _promisc_set +1002440c T _is_promisc_enabled +10024424 t SetEAPOL_KEYIV +100244c2 t ToDrv_SetPTK +1002456a t Message_ReplayCounter_OC2LI.isra.2 +10024598 t Message_SmallerEqualReplayCounter.isra.4 +100245ca t Message_setReplayCounter.isra.5 +100245e8 t INCLargeInteger +10024608 t INCOctet16_INTEGER +10024650 t INCOctet32_INTEGER +100246b0 t ToDrv_DisconnectSTA +10024774 t CheckMIC.constprop.14 +100247f4 t CalcMIC.constprop.15 +10024854 T DecWPA2KeyData +10024908 T DecGTK +100249c4 T ToDrv_SetGTK +10024a54 T init_wpa_sta_info +10024b40 T SendEAPOL +100251f8 T ClientSendEAPOL +100256e0 t ResendTimeout +10025768 T EAPOLKeyRecvd +100258e0 T ClientEAPOLKeyRecvd +10025ca0 T psk_derive +10025d54 T psk_init +10025e44 T psk_strip_rsn_pairwise +10025ec4 T psk_strip_wpa_pairwise +10025f44 T tkip_send_mic_failure_report +100260b8 T pwr_state_check_handler +100260bc T ips_enter +10026164 T ips_leave +1002627c T rtw_pwr_unassociated_idle +100262c6 T rtw_ps_processor +1002631e T PS_RDY_CHECK +10026386 T rtw_set_ps_mode +100263f4 T LPS_RF_ON_check +1002644a T LPS_Enter +100264b8 T LPS_Leave +100264f4 T LeaveAllPowerSaveMode +10026504 T rtw_init_pwrctrl_priv +100265d8 T rtw_free_pwrctrl_priv +100265ec T _rtw_pwr_wakeup +100266c8 T rtw_pm_set_lps +10026710 T rtw_pm_set_ips +10026754 T rtw_pm_set_tdma_param +10026770 T rtw_pm_set_lps_dtim +1002677c T rtw_pm_get_lps_dtim +10026788 t recvframe_pull +100267aa t recvframe_pull_tail +100267cc T rtw_signal_stat_timer_hdl +1002686a T _rtw_init_sta_recv_priv +10026888 T _rtw_init_recv_priv +10026930 T rtw_mfree_recv_priv_lock +10026964 T _rtw_alloc_recvframe +10026996 T rtw_alloc_recvframe +100269bc T rtw_free_recvframe +10026a58 T _rtw_enqueue_recvframe +10026a84 T rtw_enqueue_recvframe +10026aae T rtw_free_recvframe_queue +10026ae6 T rtw_free_uc_swdec_pending_queue +10026b0e T _rtw_free_recv_priv +10026b3e T rtw_free_buf_pending_queue +10026b42 T recvframe_chkmic +10026c40 T decryptor +10026cdc T portctrl +10026d52 T recv_decache +10026d80 T process_pwrbit_data +10026dc0 T process_wmmps_data +10026e48 T count_rx_stats +10026ebc T sta2sta_data_frame +10026ff8 T ap2sta_data_frame +10027124 T sta2ap_data_frame +100271ac T validate_recv_ctrl_frame +10027346 T validate_recv_data_frame +100275a0 T wlanhdr_to_ethhdr +100276dc T recvframe_defrag +10027786 T recvframe_chk_defrag +1002783c T validate_recv_mgnt_frame +10027878 T validate_recv_frame +10027940 T recv_indicatepkt_reorder +10027962 T process_recv_indicatepkts +100279ba T recv_func_prehandle +100279e2 T recv_func_posthandle +10027a46 T recv_func +10027ad0 T rtw_recv_entry +10027b00 T rtw_recv_tasklet +10027b58 T rtw_wep_encrypt +10027b9e T rtw_wep_decrypt +10027be4 T rtw_tkip_encrypt +10027c50 T rtw_tkip_decrypt +10027cbc T rtw_aes_encrypt +10027d28 T rtw_aes_decrypt +10027d8c T rtw_init_sec_priv +10027dfe T rtw_free_sec_priv +10027e1e t wifi_mac_hash +10027e48 T _addba_timer_hdl +10027e4c T _rtw_init_stainfo +10027ec6 T _rtw_init_sta_priv +10027fae T _rtw_free_sta_xmit_priv_lock +10027fda T rtw_mfree_stainfo +10028006 T rtw_mfree_sta_priv_lock +1002803c T _rtw_free_sta_priv +1002805c T init_addba_retry_timer +10028084 T rtw_alloc_stainfo +1002814e T rtw_free_stainfo +100282f0 T rtw_get_stainfo +1002836c T rtw_init_bcmc_stainfo +1002839c T rtw_get_bcmc_stainfo +100283c0 T rtw_free_all_stainfo +1002841a T cckrates_included +10028442 T cckratesonly_included +1002846a T networktype_to_raid_ex +100284c8 T judge_network_type +10028518 T ratetbl_val_2wifirate +1002852c T is_basicrate +10028558 T ratetbl2rateset +1002859c T get_rate_set +100285c6 T UpdateBrateTbl +100285f8 T UpdateBrateTblForSoftAP +1002862c T Save_DM_Func_Flag +10028642 T Restore_DM_Func_Flag +10028658 T Switch_DM_Func +10028674 T Set_MSR +10028698 T set_opmode +100286dc T SelectChannel +10028710 T SetBWMode +1002874c T set_channel_bwmode +100287a2 T get_my_bssid +100287a6 T get_beacon_interval +100287c4 T is_client_associated_to_ap +100287dc T is_client_associated_to_ibss +100287f8 T is_IBSS_empty +1002881a T decide_wait_for_beacon_timeout +10028836 T invalidate_cam_all +1002883e T write_cam +100288b4 T clear_cam_entry +100288e2 T flush_all_cam_entry +10028940 T WMM_param_handler +10028966 T WMMOnAssocRsp +10028a34 T HT_caps_handler +10028ad4 T HT_info_handler +10028af8 T HTOnAssocRsp +10028b30 T ERP_IE_handler +10028b4c T VCS_update +10028b9e T rtw_check_bcn_info +10028dae T update_beacon_info +10028e04 T is_ap_in_tkip +10028e7c T wifirate2_ratetbl_inx +10028ee8 T update_basic_rate +10028f16 T update_supported_rate +10028f40 T update_MCS_rate +10028f4c T support_short_GI +10028f7a T get_highest_rate_idx +10028f94 T Update_RA_Entry +10028f9c T set_sta_rate +10028fa4 T update_tx_basic_rate +10028ffc T check_assoc_AP +100290f0 T update_IOT_info +1002914e T update_capinfo +100291cc T update_wireless_mode +1002926c T update_bmc_sta_support_rate +10029294 T update_TSF +100292a6 T correct_TSF +100292ae t _init_txservq +100292c4 t set_qos +10029314 T _rtw_init_sta_xmit_priv +1002935a T rtw_mfree_xmit_priv_lock +100293a6 T qos_acm +100293e0 T xmitframe_addmic +1002953e T xmitframe_swencrypt +1002956a T rtw_make_wlanhdr +1002974a T rtw_txframes_pending +10029786 T rtw_txframes_sta_ac_pending +100297bc T rtw_txframes_update_attrib_vcs_info +1002985c T rtw_put_snap +100298a0 T rtw_update_protection +100298e6 T rtw_count_tx_stats +10029936 T rtw_free_xmitbuf_ext +10029978 T rtw_alloc_xmitframe +100299d0 T rtw_free_xmitframe +10029a22 T rtw_free_xmitframe_queue +10029a60 T rtw_get_sta_pending +10029aa0 T rtw_xmit_classifier +10029b06 T rtw_xmitframe_enqueue +10029b14 T rtw_alloc_hwxmits +10029b6e T rtw_free_hwxmits +10029b84 T _rtw_free_xmit_priv +10029c50 T rtw_init_hwxmits +10029c68 T _rtw_init_xmit_priv +10029e20 T rtw_get_ff_hwaddr +10029e34 T xmitframe_enqueue_for_sleeping_sta +10029ff4 t dequeue_xmitframes_to_sleeping_queue +1002a04a T stop_sta_xmit +1002a132 T wakeup_sta_to_xmit +1002a348 T xmit_delivery_enabled_frames +1002a464 T rtw_xmit_tasklet +1002a4bc T rtw_xmit_mgnt +1002a4c0 T rtw_xmit +1002a7ea T rtw_sctx_done_err +1002a7f6 T rtw_alloc_xmitbuf +1002a850 T rtw_free_xmitbuf +1002a8c2 T rtw_alloc_xmitbuf_ext +1002a948 T rtw_sctx_done +1002a94e t rtl8195a_free_rx_ring +1002a95c t bus_write32 +1002a9b8 t bus_write16 +1002aa14 t bus_write8 +1002aa70 t bus_read32 +1002aaca t bus_read16 +1002ab26 t bus_read8 +1002ab82 t rtl8195a_free_tx_ring +1002ac10 T rtl8195a_init_desc_ring +1002ad50 T rtl8195a_free_desc_ring +1002ad6c T rtl8195a_reset_desc_ring +1002ae02 T InitLxDmaRtl8195a +1002af64 T rtl8195a_check_txdesc_closed +1002afdc t rtl8195a_tx_isr +1002b0c0 T InterruptRecognized8195a +1002b150 T InitInterrupt8195a +1002b170 T EnableDMA8195a +1002b198 T EnableInterrupt8195a +1002b1d8 T DisableDMA8195a +1002b1e4 T DisableInterrupt8195a +1002b1fc T UpdateInterruptMask8195a +1002b25e T CheckRxTgRtl8195a +1002b298 T rtl8192ee_check_rxdesc_remain +1002b2c8 T rtl8195a_recv_tasklet +1002b5dc T rtl8195a_tx_int_handler +1002b608 T InterruptHandle8195a +1002b87c T rtl8195a_xmit_tasklet +1002b8a4 T lxbus_set_intf_ops +1002b8e4 t GetTxBufDesc +1002b92e t UpdateFirstTxbdtoXmitBuf.isra.3 +1002b960 t check_nic_enough_desc.isra.4 +1002b9b0 T rtl8195ab_init_xmit_priv +1002b9be T rtl8195ab_free_xmit_priv +1002b9c6 T GetDmaTxbdIdx +1002b9e2 T rtl8195a_enqueue_xmitbuf +1002ba06 T rtl8195a_dequeue_xmitbuf +1002ba2a T SetTxbdForLxDMARtl8195ab +1002baaa T UpdateTxbdHostIndex +1002bae8 T rtw_dump_xframe +1002bcba T check_tx_desc_resource +1002bcf4 T rtw_dequeue_xframe +1002bd88 T rtw_xmitframe_coalesce +1002c03c T rtl8195ab_xmitframe_resume +1002c132 T rtl8195ab_mgnt_xmit +1002c16e T rtl8195ab_hal_xmit +1002c27c t Hal_GetEfuseDefinition +1002c2ac t ResumeTxBeacon +1002c2f0 T UpdateHalRAMask8195A +1002c488 T HalLittleWifiMCUThreadRtl8195a +1002c4dc T HalCheckInReqStateThreadRtl8195a +1002c528 T HalTDMAChangeStateThreadRtl8195a +1002c574 t rtl8195a_read_chip_version +1002c5e8 t Hal_EfuseWordEnableDataWrite +1002c82c t Hal_EfusePowerSwitch +1002c840 t rtl8195a_free_hal_data +1002c85a t StopTxBeacon +1002c8a4 T SetHalODMVar8195A +1002c95c T rtl8195a_start_thread +1002c9c4 T rtl8195a_stop_thread +1002c9e8 t Hal_ReadEFuse +1002cb58 T GetHalODMVar8195A +1002cb6c t rtw_flash_map_update.part.12 +1002cc0c t rtw_flash_map_erase +1002cc50 t Hal_EfusePgPacketWrite +1002cecc t Hal_EfuseGetCurrentSize +1002cfac t rtw_flash_map_write +1002d17a T rtl8195a_InitBeaconParameters +1002d1ea T _InitBurstPktLen_8195AB +1002d1f4 T rtl8195a_set_hal_ops +1002d2d4 T rtl8195a_init_default_value +1002d2d6 T rtl8195a_InitLLTTable +1002d320 T Hal_GetChnlGroup8195A +1002d35c T rtw_config_map_read +1002d448 T rtw_config_map_write +1002d4f4 T Hal_InitPGData +1002d552 T Hal_EfuseParseIDCode +1002d56a T Hal_ReadPowerValueFromPROM_8195A +1002d608 T Hal_EfuseParseTxPowerInfo_8195A +1002d6a0 T Hal_EfuseParseEEPROMVer_8195A +1002d6b6 T Hal_EfuseParsePackageType_8195A +1002d720 T Hal_EfuseParseChnlPlan_8195A +1002d750 T Hal_EfuseParseCustomerID_8195A +1002d766 T Hal_EfuseParseXtal_8195A +1002d77e T Hal_EfuseParseThermalMeter_8195A +1002d7a6 T Hal_ReadRFGainOffset +1002d7f6 T BWMapping_8195A +1002d816 T SCMapping_8195A +1002d83e T rtl8195a_update_txdesc +1002db0e T rtl8195a_fill_fake_txdesc +1002dbcc T SetHwReg8195A +1002e88c T GetHwReg8195A +1002e920 T SetHalDefVar8195A +1002ea00 T GetHalDefVar8195A +1002ea24 T PHY_QueryBBReg_8195A_Safe +1002ea50 T PHY_SetBBReg_8195A_Safe +1002ea7c t phy_RFSerialRead_8195A +1002eb30 T PHY_QueryRFReg_8195A +1002eb48 T PHY_SetRFReg_8195A +1002eba0 T PHY_MACConfig8195A +1002ebba T PHY_BBConfig8195A +1002ecca T PHY_RFConfig8195A +1002ecce T PHY_SetTxPowerIndex_8195A +1002edd8 T phy_TxPwrAdjInPercentage +1002ee18 T PHY_GetTxPowerIndex_8195A +1002ef08 T PHY_SetTxPowerLevel8195A +1002ef0e T phy_SpurCalibration_8195A +1002f1c6 T phy_SetRegBW_8195A +1002f204 T phy_PostSetBwMode8195A +1002f360 T phy_SwChnl8195A +1002f408 T phy_SwChnlAndSetBwMode8195A +1002f458 T PHY_HandleSwChnlAndSetBW8195A +1002f508 T PHY_SetBWMode8195A +1002f52a T PHY_SwChnl8195A +1002f544 T PHY_SetSwChnlBWMode8195A +1002f562 t HalTimerEnable +1002f574 T InitTDMATimer +1002f59c T ChangeStateByTDMA +1002f5ac T GetMinRateInRRSR +1002f5e0 T CheckInReqState +1002f5f0 T InitCheckStateTimer +1002f620 T InitGTimer1ms +1002f66c T DeInitGTimer1ms +1002f6b4 T ChangeTransmiteRate +1002f6f0 T PowerBitSetting +1002f76c T ChkandChangePS +1002f7d0 T IssueRsvdPagePacketSetting +1002f844 T IssuePSPoll +1002f870 T WaitTxStateMachineOk +1002f8c4 T IssueNullData +1002f954 T PsCloseRF +1002f988 T PsOpenRF +1002f9b8 T ChkTxQueueIsEmpty +1002f9d0 T InitPS +1002fa40 T ConfigListenBeaconPeriod +1002fa64 T PS_S2_Condition_Match +1002fa98 T PS_S4_Condition_Match +1002fb14 T PS_32K_Condition_Match +1002fb50 T PS_S2ToS3ToS0State +1002fbb8 T PS_S2ToS0State +1002fbd4 T PS_S3ToS2orS0State +1002fc04 T PS_S0ToS1ToS2State +1002fc60 T PS_S1ToS0orS2State +1002fc90 T PS_S2ToS4State +1002fcdc T PS_S0ToS6State +1002fcfc T PS_S6ToS0State +1002fd14 T CheckTSFIsStable +1002fd64 T WaitHWStateReady +1002fd74 T SysClkDown +1002fde4 T SysClkUp +1002fe30 T ResetPSParm +1002fea4 T PS_S4ToS2State +1002fec8 T SleepTo32K +1002ff28 T Change_PS_State +100300d4 T Legacy_PS_Setting +10030148 T PSModeSetting +100301ec T ChangePSStateByRPWM +10030230 T ChangeTDMAState +10030350 T TDMAChangeStateTask +1003037a T EnterPS +1003039c T SetSmartPSTimer +100303d8 T GTimer7Handle +10030434 T SmartPS2InitTimerAndToGetRxPkt +10030470 T PS_OnBeacon +10030520 T PSBcnEarlyProcess +100305dc T PSMtiBcnEarlyProcess +10030688 T PSRxBcnProcess +100307d8 T TxPktInPSOn +10030816 T PsBcnToProcess +100308d0 T GTimer6Handle +1003091c T RPWMProcess +10030958 T PSSetMode +100309d0 T SpeRPT +10030af0 T ISR_BcnEarly +10030b5c T ISR_MtiBcnEarly +10030b90 T ISR_RxBcn +10030bac T ISR_RxBCMD1 +10030bdc T ISR_RxBCMD0 +10030c30 T ISR_RxUCMD1 +10030c6e T ISR_RxUCMD0 +10030caa T ISR_TxPktIn +10030cbc T ISR_TXCCX +10030cc0 T H2CHDL_SetPwrMode +10030de8 T CheckInReqStateTask +10030e2e T HalGetNullTxRpt +10030e4c T ISR_TBTT +10030ec4 T H2CHDL_BcnIgnoreEDCCA +10030ed4 T PMUInitial +10030f24 T PMUTask +10031030 T PHY_RF6052SetBandwidth8195A +10031074 T PHY_RF6052_Config8195A +1003112c t process_rssi +10031162 T rtl8195a_query_rx_desc_status +10031212 T rtl8195a_query_rx_phy_status +1003136a T hal_com_get_channel_plan +1003139e T HAL_IsLegalChannel +100313bc T MRateToHwRate +100313d0 T HwRateToMRate +100313e4 T HalSetBrateCfg +10031490 T Hal_MappingOutPipe +100314ac T hal_init_macaddr +100314d8 T hw_var_port_switch +10031760 T SetHwReg +1003176a T GetHwReg +1003176c T switch_power_saving_mode +100317b0 T rtw_bb_rf_gain_offset +100317f8 T PHY_GetRateValuesOfTxPowerByRate +10031990 T PHY_StoreTxPowerByRateNew +10031a2c T PHY_InitTxPowerByRate +10031a44 T PHY_StoreTxPowerByRate +10031a5c T PHY_GetTxPowerIndexBase +10031afc T PHY_GetTxPowerTrackingOffset +10031b28 T PHY_GetRateIndexOfTxPowerByRate +10031b3c T PHY_GetTxPowerByRate +10031b9c T phy_StoreTxPowerByRateBase +10031be8 T PHY_SetTxPowerByRate +10031c24 T phy_ConvertTxPowerByRateInDbmToRelativeValues +10031d24 T PHY_TxPowerByRateConfiguration +10031d36 T PHY_SetTxPowerIndexByRateArray +10031d74 T PHY_SetTxPowerIndexByRateSection +10031dd8 T PHY_SetTxPowerLevelByPath +10031e0e T phy_GetWorldWideLimit +10031e3a T PHY_GetTxPowerLimit +10031f64 T PHY_ConvertTxPowerLimitToPowerIndex +100320b4 T PHY_InitTxPowerLimit +100320fc T PHY_SetTxPowerLimit +10032178 T PHY_GetTxPowerIndex +10032188 T rtw_hal_chip_configure +1003219e T rtw_hal_read_chip_info +100321b4 T rtw_hal_read_chip_version +100321ca T rtw_hal_def_value_init +100321e0 T rtw_hal_free_data +100321f6 T rtw_hal_dm_init +1003220c T rtw_hal_dm_deinit +10032222 T rtw_hal_init +1003224c T rtw_hal_deinit +10032266 T rtw_hal_set_hwreg +10032274 T rtw_hal_get_hwreg +10032282 T rtw_hal_set_def_var +10032294 T rtw_hal_get_def_var +100322a6 T rtw_hal_set_odm_var +100322b4 T rtw_hal_get_odm_var +100322c2 T rtw_hal_enable_interrupt +100322e4 T rtw_hal_disable_interrupt +10032306 T rtw_hal_inirp_init +10032318 T rtw_hal_inirp_deinit +1003232a T rtw_hal_irp_reset +10032338 T rtw_hal_xmit +1003234a T rtw_hal_mgnt_xmit +1003235c T rtw_hal_init_xmit_priv +1003236e T rtw_hal_free_xmit_priv +1003237c T rtw_hal_update_ra_mask +100323aa T rtw_hal_add_ra_tid +100323b8 T rtw_hal_clone_data +100323c6 T rtw_hal_start_thread +100323d4 T rtw_hal_stop_thread +100323e2 T rtw_hal_read_bbreg +10032416 T rtw_hal_write_bbreg +10032442 T rtw_hal_read_rfreg +10032454 T rtw_hal_write_rfreg +10032468 T rtw_hal_interrupt_handler +1003247a T rtw_hal_set_bwmode +10032488 T rtw_hal_set_chan +10032496 T rtw_hal_set_chnl_bw +100324ac T rtw_hal_dm_watchdog +100324c2 T rtw_hal_macid_sleep +100324e2 T rtw_hal_macid_wakeup +10032502 T decide_chip_type_by_device_id +10032508 t rtw_net_get_stats +10032558 t netdev_if2_close +10032578 t netdev_close +100325d4 t rtw_if1_deinit +1003266e T rtw_os_indicate_connect +10032672 T rtw_os_indicate_scan_done +10032676 T rtw_reset_securitypriv +1003276a T rtw_os_indicate_disconnect +100327b4 T rtw_init_netdev +10032904 T rtw_drv_if2_init +10032b0c T rtw_drv_if2_stop +10032b62 T rtw_drv_if2_free +10032bb0 T _netdev_open +10032ccc T _netdev_if2_open +10032d88 T netdev_if2_open +10032db0 T netdev_open +10032dd8 T rtw_drv_probe +10032f58 T rtw_dev_remove +10032f9c T rtw_drv_entry +10032fc8 T rtw_drv_halt +10032ff8 t rtw_wx_set_autoreconnect +10033026 t rtw_wx_get_autoreconnect +10033034 t rtw_forwarding_set +10033056 t rtw_set_ch_deauth +10033078 t get_priv_size +1003308c t rtw_wx_del_custome_ie +100330d8 t rtw_wx_set_pscan_freq +1003315a t rtw_wx_update_custome_ie +100331cc t rtw_set_tos_value +100331ec t rtw_get_tx_power +10033330 t rtw_wx_set_custome_ie +100333dc t rtw_pm_get +10033420 t rtw_pm_set +100334d4 t rtw_wx_read32 +10033580 t rtw_wx_write32 +100335e4 t rtw_wx_set_freq.isra.10 +1003368c T rtw_ex_set +1003374c T wireless_send_event +10033756 T indicate_wx_custom_event +100337b2 T indicate_wx_scan_result_present +100337da T indicate_wx_scan_complete_event +10033804 T rtw_indicate_sta_assoc +10033854 T rtw_indicate_sta_disassoc +100338ac T rtw_indicate_wx_assoc_event +100338de T rtw_indicate_wx_disassoc_event +1003390e T rtw_set_wpa_ie +10033a24 T strtopsk +10033a90 T rtw_wx_get_passphrase +10033adc T rtw_wx_set_ap_essid +10033bcc T mac_reg_dump +10033c78 T bb_reg_dump +10033cd4 T rf_reg_dump +10033d4c t rtw_dbg_port +100343b4 T rtw_set_sta_num +100343d0 T rtw_ex_get_drv_ability +10034490 T rtw_ex_get +10034728 T rtw_ioctl +100356b4 T rtw_os_recv_resource_init +100356b8 T rtw_os_recv_resource_alloc +100356c2 T rtw_os_recv_resource_free +100356c4 T rtw_tkip_countermeasure +10035764 T rtw_handle_tkip_mic_err +1003580c T rtw_recv_indicatepkt +10035a5c T skb_fail_inc +10035a78 T skb_fail_get_and_rst +10035a94 T init_skb_pool +10035aec T init_skb_data_pool +10035b44 T alloc_skb +10035c44 T kfree_skb +10035cac T kfree_skb_chk_key +10035cb0 T skb_put +10035ce4 T skb_reserve +10035cf2 T dev_alloc_skb +10035d0e T skb_end_pointer +10035d12 T skb_set_tail_pointer +10035d1a T skb_pull +10035d32 T skb_copy +10035d5a T rtw_remainder_len +10035d66 T _rtw_open_pktfile +10035d78 T _rtw_pktfile_read +10035da6 T rtw_set_tx_chksum_offload +10035da8 T rtw_os_xmit_resource_alloc +10035db2 T rtw_os_xmit_resource_free +10035db4 T rtw_os_pkt_complete +10035dbc T rtw_os_xmit_complete +10035dce T rtw_os_xmit_schedule +10035e0a T rtw_xmit_entry +10035e56 T rtw_alloc_etherdev_with_old_priv +10035e6c T rtw_alloc_etherdev +10035e98 T rtw_free_netdev +10035eb8 T timer_wrapper +10035f0c T alloc_etherdev +10035f68 T free_netdev +10035f82 T dev_alloc_name +10035f8c T init_timer_wrapper +10035fac T deinit_timer_wrapper +10035ff8 T init_timer +100360b0 T mod_timer +10036190 T cancel_timer_ex +100361d8 T del_timer_sync +1003623c T rtw_init_timer +10036244 T rtw_set_timer +10036248 T rtw_cancel_timer +10036252 T rtw_del_timer +10036258 T rltk_get_idx_bydev +10036268 T rltk_wlan_init +100362f0 T rltk_wlan_deinit +100363b4 T rltk_wlan_start +100363e8 T rltk_wlan_check_isup +100363f8 T rltk_wlan_tx_inc +1003640c T rltk_wlan_tx_dec +10036420 T rltk_wlan_get_recv_skb +10036430 T rltk_wlan_alloc_skb +10036470 T rltk_wlan_send_skb +100364a4 T rltk_netif_rx +10036550 T rltk_set_sta_num +10036554 T rltk_set_tx_power_percentage +10036588 T rltk_wlan_control +1003661c T rltk_wlan_running +10036634 T rltk_wlan_handshake_done +10036668 T rltk_wlan_is_connected_to_ap +100366ac T Efuse_PowerSwitch +100366b8 T Efuse_GetCurrentSize +100366c4 T Efuse_CalculateWordCnts +100366e8 T EFUSE_GetEfuseDefinition +100366fc T efuse_OneByteRead +10036730 T efuse_OneByteWrite +10036764 T Efuse_PgPacketWrite +10036778 T efuse_WordEnableDataRead +100367aa T Efuse_WordEnableDataWrite +100367be T efuse_GetCurrentSize +100367e6 T rtw_efuse_map_read +10036848 T rtw_efuse_map_write +100369c8 T rtw_macaddr_cfg +10036a8c T rtw_get_cipher_info +10036b06 T rtw_get_bcn_info +10036bd6 T rtw_init_default_value +10036c44 T rtw_cancel_all_timer +10036cae T rtw_free_drv_sw +10036d24 T rtw_reset_drv_sw +10036d80 T rtw_init_drv_sw +10036e08 T rtw_start_drv_threads +10036ec4 T rtw_stop_drv_threads +10036ef8 T rtw_read8 +10036f06 T rtw_read16 +10036f14 T rtw_read32 +10036f22 T rtw_write8 +10036f30 T rtw_write16 +10036f3e T rtw_write32 +10036f4c T rtw_do_join +10036ff0 T rtw_set_802_11_bssid +10037174 T rtw_set_802_11_ssid +1003727c T rtw_set_802_11_infrastructure_mode +1003731e T rtw_set_802_11_bssid_list_scan +1003736e T rtw_set_802_11_authentication_mode +10037390 T rtw_set_802_11_add_wep +100373f0 T ODM_InitRAInfo +10037490 T InitialRateUpdate +10037590 T RateUp_search_RateMask +100375c2 T RateDown_search_RateMask +10037614 T StartRateByRSSI +1003763e T RateUpRAM8195A +100376d2 T RateDownTrying +10037710 T TryDone +100377a8 T RateDownStepRAM8195A +10037848 T RateDecisionRAM8195A +1003792c T ArfrRefresh +10037b34 T H2CHDL_Set_MACID_Config +10037bf8 T PHY_DM_RA_SetRSSI_8195A +10037c26 t CheckPositive.isra.0 +10037d08 T ODM_ReadAndConfig_MP_8195A_AGC_TAB +10037d80 T ODM_ReadAndConfig_MP_8195A_PHY_REG +10037df8 T ODM_GetVersion_MP_8195A_PHY_REG +10037dfc T ODM_ReadAndConfig_MP_8195A_PHY_REG_PG +10037e30 T odm_ConfigRFReg_8195A +10037e68 T odm_ConfigRF_RadioA_8195A +10037e78 T odm_ConfigMAC_8195A +10037e7c T odm_ConfigBB_AGC_8195A +10037e8c T odm_ConfigBB_PHY_REG_PG_8195A +10037eba T odm_ConfigBB_PHY_8195A +10037f02 T odm_ConfigBB_TXPWR_LMT_8195A +10037f28 T ODM_CmnInfoInit +1003801c T ODM_CmnInfoHook +100380c0 T ODM_CmnInfoPtrArrayHook +100380d0 T ODM_CmnInfoUpdate +100381a0 T odm_CommonInfoSelfInit +10038214 T ODM_DMInit +10038262 T odm_CommonInfoSelfUpdate +100382b4 T ODM_DMWatchdog +10038320 T PhyDM_Get_Structure +10038344 T Phydm_CheckAdaptivity +10038372 T Phydm_NHMCounterStatisticsInit +100383e8 T Phydm_SetEDCCAThreshold +10038420 T Phydm_MACEDCCAState +1003845e T Phydm_AdaptivityInit +1003853c T Phydm_Adaptivity +1003865c T ODM_CfoTrackingInit +10038686 T ODM_CfoTracking +100386a6 T ODM_ParsingCFO +100386d8 T ODM_InitDebugSetting +100386ec T ODM_Write_DIG +1003878c T odm_ForbiddenIGICheck +1003881e T ODM_Write_CCK_CCA_Thres +10038858 T odm_DIGInit +100388f2 T odm_DigAbort +10038914 T odm_DIGbyRSSI_LPS +100389c0 T odm_FAThresholdCheck +100389ec T odm_DIG +10038c4c T odm_FalseAlarmCounterStatistics +10038c78 T odm_CCKPacketDetectionThresh +10038cd0 T odm_RxPhyStatus8195A_Parsing +10038dd4 T odm_Process_RSSIForDM_8195A +10038f16 T ODM_PhyStatusQuery_8195A +10038f42 T ODM_PhyStatusQuery +10038f46 T ODM_ConfigRFWithHeaderFile +10038f64 T ODM_ConfigRFWithTxPwrTrackHeaderFile +10038f96 T ODM_ConfigBBWithHeaderFile +10038fbe T ODM_ConfigMACWithHeaderFile +10038fd0 T ODM_Read1Byte +10038fd6 T ODM_Read4Byte +10038fdc T ODM_Write1Byte +10038fe2 T ODM_Write2Byte +10038fe8 T ODM_Write4Byte +10038fee T ODM_SetMACReg +10038ff4 T ODM_SetBBReg +10038ffa T ODM_GetBBReg +10039000 T ODM_SetRFReg +10039006 T ODM_GetRFReg +1003900c T ODM_MoveMemory +10039016 T ODM_delay_ms +1003901a T ODM_delay_us +10039020 T getSwingIndex +10039078 T odm_TXPowerTrackingThermalMeterInit +1003912a T odm_TXPowerTrackingInit +1003912e T odm_TXPowerTrackingCheckIOT +10039162 T ODM_TXPowerTrackingCheck +10039170 T odm_RSSIMonitorInit +10039178 T ODM_RAPostActionOnAssoc +10039180 T odm_RSSIMonitorCheckIOT +10039254 T odm_RSSIMonitorCheck +10039268 T odm_RateAdaptiveMaskInit +10039290 T ODM_RAStateCheck +100392d2 T odm_RefreshRateAdaptiveMaskIOT +10039322 T odm_RefreshRateAdaptiveMask +10039338 T ODM_Get_Rate_Bitmap +10039428 t _ReadEfuseInfo8195a +100394f0 t rtl8195a_interface_configure +10039524 t rtl8195a_hal_deinit +10039560 T _InitPowerOn +100395e0 t ReadAdapterInfo8195a +10039610 T _InitDriverInfoSize +1003961a T _InitNetworkType +1003963c T _InitWMACSetting +100396ac T _InitAdaptiveCtrl +100396f0 T _InitEDCA +1003976c T _InitRateFallback +100397b0 T _InitRetryFunction +100397dc T _InitOperationMode +10039824 T _InitInterrupt +10039864 t rtl8195a_hal_init +10039b3c T rtl8195ab_set_hal_ops +10039c14 T FillH2CCmd8195A +10039c34 T CheckFwRsvdPageContent +10039c36 T rtl8195a_set_FwRsvdPage_cmd +10039c40 T rtl8195a_set_FwMediaStatusRpt_cmd +10039c6c T rtl8195a_set_FwMacIdConfig_cmd +10039d2c T rtl8195a_set_FwPwrMode_cmd +10039dbc T rtl8195a_download_rsvd_page +1003a0c4 T rtl8195a_set_FwJoinBssRpt_cmd +1003a0ce T rtl8195a_Add_RateATid +1003a120 T rtw_rpt_h_addr +1003a16c T rtw_txrpt_read8 +1003a18a T rtw_txrpt_write8 +1003a1ae T rtw_ratemask_read8 +1003a1cc T rtw_ratemask_write8 +1003a1f0 T ReadRateMask8 +1003a1fa T WriteRateMask8 +1003a1fe T ReadTxrpt8 +1003a208 T WriteTxrpt8 +1003a20c T ResetTxrpt +1003a244 T PsuseTxrpt +1003a264 T CheckMaxMacidNum +1003a29c T GetMediaStatusCommon +1003a2b6 T GetTxrptStatistic +1003a36c T rtl8195a_InitHalDm +1003a490 T rtl8195a_HalDmWatchDog +1003a574 T rtl8195a_init_dm_priv +1003a64c T rtl8195a_deinit_dm_priv +1003a64e T MediaConnection +1003a66c T MediaDisconnection +1003a68c T RATaskEnable +1003a6b6 T SetMediaStatus +1003a6f4 T H2CHDL_JoinInfo +1003a72c T H2CHDL_SetRsvdPage +1003a7c4 T H2CCmdCommon +1003a808 T HalPwrSeqCmdParsing +1003a8c8 T hci_dvobj_init +1003a8d8 T hci_dvobj_deinit +1003a8e8 T hci_dvobj_request_irq +1003a8f8 T hci_dvobj_free_irq +1003a908 T hci_lxbus_dvobj_init +1003a944 T hci_lxbus_dvobj_deinit +1003a984 T hci_lxbus_dvobj_request_irq +1003a9d8 T hci_lxbus_free_irq +1003aa30 T hci_lxbus_intf_stop +1003aa68 T rtw_interrupt_thread +1003aadc T lextra_bus_dma_Interrupt +1003ab24 T init_rom_wlan_ram_map +1003ab3c T ODM_ReadAndConfig_MP_8195A_MAC_REG +1003ac98 t CheckPositive.isra.0 +1003ad7c T ODM_ReadAndConfig_MP_8195A_RadioA +1003adf4 T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_QFN48 +1003ae44 T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_QFN56 +1003ae94 T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_TFBGA96 +1003aee4 T ODM_ReadAndConfig_MP_8195A_TXPWR_LMT +1003af1c T ODM_ReadAndConfig_MP_8195A_TxXtalTrack +1003af48 T GetDeltaSwingTable_8195A +1003af78 T GetDeltaSwingXtalTable_8195A +1003af88 T ODM_TxXtalTrackSetXtal_8195A +1003afa8 T Hal_MPT_CCKTxPowerAdjust +1003b078 T ODM_TxPwrTrackSetPwr_8195A +1003b188 T ConfigureTxpowerTrack_8195A +1003b1d4 T phy_PathA_IQK_8195A +1003b388 T phy_PathA_RxIQK8195A +1003b71c T _PHY_PathAFillIQKMatrix8195A +1003b8b2 T _PHY_PathBFillIQKMatrix8195A +1003ba2e T _PHY_SaveADDARegisters8195A +1003ba62 T _PHY_SaveMACRegisters8195A +1003ba90 T _PHY_ReloadADDARegisters8195A +1003bac4 T _PHY_ReloadMACRegisters8195A +1003baf4 T _PHY_PathADDAOn8195A +1003bb30 T _PHY_MACSettingCalibration8195A +1003bb78 T _PHY_PIModeSwitch8195A +1003bbb4 T phy_SimularityCompare_8195A +1003bce8 T phy_IQCalibrate_8195A +1003c060 T phy_LCCalibrate_8195A +1003c0d0 T PHY_LCCalibrate_8195A +1003c130 T PHY_IQCalibrate_8195A +1003c3e4 T DoIQK_8195A +1003c402 T ConfigureTxpowerTrack +1003c414 T ODM_TXPowerTrackingCallback_ThermalMeter +1003c820 T ODM_ResetIQKResult +1003c868 T ODM_GetRightChnlPlaceforIQK +1003c8c0 t __rtw_set_supported_rate_veneer +1003c8d0 t __ROM_odm_EVMdbToPercentage_veneer +1003c8e0 t __CmdDumpWord_veneer +1003c8f0 t __rt_arc4_crypt_veneer +1003c900 t __rtw_parse_wpa2_ie_veneer +1003c910 t __rtw_set_ie_veneer +1003c920 t __rom_psk_CalcPTK_veneer +1003c930 t __tkip_80211_encrypt_veneer +1003c940 t __aes_80211_decrypt_veneer +1003c950 t __rtw_get_wpa2_ie_veneer +1003c960 t __HalCpuClkConfig_veneer +1003c970 t __rtw_check_network_type_veneer +1003c980 t __rtw_get_sec_ie_veneer +1003c990 t __aes_80211_encrypt_veneer +1003c9a0 t __rtw_get_bit_value_from_ieee_value_veneer +1003c9b0 t __rtw_get_ie_veneer +1003c9c0 t __ROM_odm_GetDefaultCrytaltalCap_veneer +1003c9d0 t __rtw_get_wps_ie_veneer +1003c9e0 t __HalI2SIntrCtrlRtl8195a_veneer +1003c9f0 t __rtw_get_rateset_len_veneer +1003ca00 t __rom_psk_PasswordHash_veneer +1003ca10 t __rt_arc4_init_veneer +1003ca20 t __rtw_get_wpa_ie_veneer +1003ca30 t __rtw_parse_wpa_ie_veneer +1003ca40 t __ROM_odm_QueryRxPwrPercentage_veneer +1003ca50 t __rtw_ieee802_11_parse_elems_veneer +1003ca60 t __ROM_ODM_CfoTrackingReset_veneer +1003ca70 t __HalDelayUs_veneer +1003ca80 t __phy_CalculateBitShift_veneer +1003ca90 t __wep_80211_decrypt_veneer +1003caa0 t __key_2char2num_veneer +1003cab0 t __CmdWriteWord_veneer +1003cac0 t __rtw_secmicsetkey_veneer +1003cad0 t __rt_hmac_sha1_veneer +1003cae0 t __tkip_80211_decrypt_veneer +1003caf0 t __StrUpr_veneer +1003cb00 t __ROM_odm_SetCrystalCap_veneer +1003cb10 t __HalI2SRead32_veneer +1003cb20 t __prvStrCmp_veneer +1003cb30 t __HalI2SWrite32_veneer +1003cb40 t ___vsscanf_veneer +1003cb50 t __SpicWaitBusyDoneRtl8195A_veneer +1003cb60 t __PHY_QueryBBReg_8195A_veneer +1003cb70 t __rom_psk_CalcGTK_veneer +1003cb80 t __rtw_secgetmic_veneer +1003cb90 t __AES_UnWRAP_veneer +1003cba0 t __rtw_set_fixed_ie_veneer +1003cbb0 t __rt_md5_hmac_veneer +1003cbc0 t __rtw_secmicappend_veneer +1003cbd0 t __ROM_odm_FalseAlarmCounterStatistics_veneer +1003cbe0 t __PHY_SetBBReg_8195A_veneer +1003cbf0 t __HalI2SClrAllIntrRtl8195a_veneer +1003cc00 t __ROM_odm_CfoTrackingFlow_veneer +1003cc10 t __rtw_get_wps_attr_content_veneer +1003cc20 t __rtw_seccalctkipmic_veneer +1003cc30 t __AES_WRAP_veneer +1003cc40 t __wep_80211_encrypt_veneer +1003cc50 t __Strtoul_veneer +1003cf50 d __func__.21278 +1003cf5c d __FUNCTION__.14659 +1003d7a0 d bitrate_table +1003d8cc d samplerate_table +1003d8d8 d decoder_table +1003d8e4 d imdct_s +1003d974 d sfb_8000_short +1003d99b d sfb_32000_short +1003d9c4 d is_table +1003d9e0 d rq_table +10045a1c d root_table +10045a38 d sfb_44100_mixed +10045a60 d is_lsf_table +10045ad8 d sflen_table +10045af8 d sfb_16000_mixed +10045b1c d ca +10045b3c d sfb_44100_short +10045b63 d sfb_44100_long +10045b79 d sfb_48000_mixed +10045b9f d sfb_24000_long +10045bb8 d scale.7384 +10045c00 d sfb_32000_mixed +10045c26 d sfb_16000_short +10045c4d d sfb_8000_long +10045c63 d sfb_22050_mixed +10045c88 d window_l +10045d18 d sfb_48000_long +10045d30 d cs +10045d50 d sfb_24000_mixed +10045d74 d pretab +10045d8a d sfb_48000_short +10045db1 d sfb_22050_short +10045dd8 d sfb_8000_mixed +10045e00 d sfbwidth_table +10045e6c d sfb_24000_short +10045e93 d sfb_32000_long +10045ea9 d sfb_22050_long +10045ec0 d window_s +10045ef0 d nsfb_table +10045f38 d hufftab24 +10046540 d hufftab10 +100466d8 d hufftab11 +10046878 d hufftab12 +100469f8 d hufftab13 +10047030 d hufftab3 +10047070 d hufftab15 +10047660 d hufftab16 +10047ca8 d hufftab6 +10047d18 d hufftab7 +10047e18 D mad_huff_pair_table +10047f98 d hufftab9 +10048070 d hufftab1 +10048090 d hufftabA +10048100 d hufftab2 +10048140 d hufftabB +10048180 D mad_huff_quad_table +10048188 d hufftab0 +1004818c d hufftab5 +100481f4 d hufftab8 +100482fc d crc_table +100484fc d D +10048d7c D mad_timer_zero +1004910f d __func__.20869 +10049704 d err_to_errno_table +1004974c D ip_addr_broadcast +10049750 D ip_addr_any +10049764 D memp_sizes +10049784 D tcp_pcb_lists +10049794 D tcp_state_str +100497c0 D tcp_backoff +10049835 D tcp_persist_backoff +1004983c D ethbroadcast +10049842 D ethzero +10049871 d __FUNCTION__.9191 +10049933 d __FUNCTION__.9203 +10049942 d dhcp_option_interface_mtu_576 +10049969 d dhcp_magic_cookie +1004996d d dhcp_option_lease_time_one_day +100499ef d __FUNCTION__.4595 +10049a0d d ucExpectedStackBytes.7044 +10049a21 d CSWTCH.270 +10049aae d __FUNCTION__.12255 +10049ac4 d __FUNCTION__.12259 +10049adc D osdep_service +10049c00 d __FUNCTION__.12110 +10049c8d d __FUNCTION__.12059 +10049ca1 d __FUNCTION__.12121 +10049cbc d __FUNCTION__.12067 +10049cd8 d __FUNCTION__.12093 +10049cf7 d __FUNCTION__.7295 +10049e00 d PinMap_I2S_RX +10049ee0 d PinMap_I2S_TX +10049f40 d I2SDefaultSetting +10049f54 d PinMap_I2S_CLK +10049fb4 d PinMap_I2S_WS +1004a014 d __FUNCTION__.8784 +1004a06c d __FUNCTION__.8600 +1004a079 d __FUNCTION__.8613 +1004a31e d __FUNCTION__.8455 +1004a340 d __FUNCTION__.8462 +1004a35b d __FUNCTION__.8469 +1004a456 d __func__.8808 +1004a475 d __func__.8818 +1004a493 d __func__.8830 +1004a4ad d __func__.8840 +1004a4cf d __func__.8835 +1004a898 d __func__.8603 +1004a8b2 d __func__.8686 +1004a8c5 d __func__.8825 +1004a8de d __func__.8631 +1004a911 d __FUNCTION__.17777 +1004a930 D wlancmds +1004ab28 D rtw_cmd_callback +1004adb4 d RTW_ChannelPlan2G +1004ae2c D WPS_OUI +1004ae30 D RSN_TKIP_CIPHER +1004ae34 D MCS_rate_1R +1004ae44 D P2P_OUI +1004ae70 D WMM_INFO_OUI +1004ae76 D RTW_WPA_OUI +1004ae7a D WMM_PARA_OUI +1004ae80 d RTW_ChannelPlanMap +1004ae98 D null_addr +1004ae9e D WMM_OUI +1004aea4 d wlanevents +1004af64 D zero_bssid +1004afa1 d __FUNCTION__.17681 +1004afb7 D SNAP_ETH_TYPE_APPLETALK_AARP +1004afb9 d __FUNCTION__.17495 +1004afcc D SNAP_ETH_TYPE_IPX +1004afce D rtw_bridge_tunnel_header +1004aff5 D rtw_rfc1042_header +1004b013 d CSWTCH.36 +1004b01f D ARTHEROS_OUI1 +1004b022 D ARTHEROS_OUI2 +1004b025 D REALTEK_OUI +1004b028 D RALINK_OUI +1004b02b D MARVELL_OUI +1004b02e D CISCO_OUI +1004b031 d rtw_basic_rate_cck +1004b035 D BROADCOM_OUI1 +1004b038 D BROADCOM_OUI2 +1004b03b D REALTEK_96B_IE +1004b041 d rtw_basic_rate_mix +1004b048 d rtw_basic_rate_ofdm +1004b04b D AIRGOCAP_OUI +1004b05f d CSWTCH.66 +1004b078 d CSWTCH.48 +1004b0ba d CSWTCH.28 +1004b0cc D efuse_map_mask +1004b0dc D flash_map_mask +1004b178 d __func__.21107 +1004b4be d CSWTCH.15 +1004b542 d CSWTCH.17 +1004b5b1 d CSWTCH.14 +1004b646 d __FUNCTION__.21257 +1004b658 d rtw_private_args +1004ba73 d __FUNCTION__.21057 +1004ba86 d __FUNCTION__.21294 +1004ba97 d __FUNCTION__.21241 +1004baa6 d __FUNCTION__.21126 +1004bab6 d iw_priv_type_size +1004bb94 d __FUNCTION__.17334 +1004bb9e d __FUNCTION__.17736 +1004bbae d __FUNCTION__.17760 +1004bbc1 d __FUNCTION__.17712 +1004bbd0 d __FUNCTION__.17649 +1004bbde d __FUNCTION__.17661 +1004bfb5 d __FUNCTION__.17827 +1004bfce d __FUNCTION__.17654 +1004bfd9 d __FUNCTION__.17615 +1004bfe8 d __FUNCTION__.17811 +1004bffa d __FUNCTION__.17765 +1004c008 d __FUNCTION__.17724 +1004c019 d __FUNCTION__.17637 +1004d3ba D CCKFCCTable_Ch14_8195A +1004d3ca D CCKFCCTable_8195A +1004d3dc D OFDMSwingTable_New +1004d488 D CCKCETable_8195A +1004d49e d CSWTCH.39 +1004d4b3 d __func__.20571 +1004d4d4 D hci_ops +1004d4f9 V Array_MP_8195A_TXPWR_LMT +1004da6c D xHeapRegions +1004da8c D UartLogRamCmdTable +1004da8c D console_commands_main +1004da9c D console_cmd_wifi_api +1004db0c D console_commands_at +1004db7c D console_commands +1004db9c d UartLogRamCmdTable_end +1004dba0 D __data_start__ +1004dba0 D wlan_st_name +1004dba8 D wifi_st_dhcp +1004dbb8 D wlan_ap_name +1004dbc0 D wifi_ap_dhcp +1004dbd0 D feep_tab +1004dc00 D wifi_st_cfg +1004dc70 D wifi_cfg +1004dc77 D wlan_ap_netifn +1004dc78 D wifi_ap_cfg +1004dce4 D oversampling +1004dce8 D tab_txt_rtw_secyrity +1004dd0c D tab_code_rtw_secyrity +1004dd30 D SystemCoreClock +1004dd34 D error_flag +1004dd38 d tcp_port +1004dd3c d iss.7833 +1004dd40 d udp_port +1004dd42 D lwip_host_name +1004dd62 d dhcp_server_state_machine +1004dd63 d dhcp_recorded_xid +1004dd68 d uxCriticalNesting +1004dd6c d xNextTaskUnblockTime +1004dd70 d seed.12226 +1004dd74 d wakeup_event +1004dd78 d wakelock +1004dd7c d last_wakelock_state +1004dd9c D mlme_sta_tbl +1004de0c d PMKID_KDE_TYPE.17744 +1004de14 V nr_xmitbuff +1004de18 V nr_xmitframe +1004de1c d P802_1H_OUI +1004de1f D rtw_adaptivity_mode +1004de20 D g_user_ap_sta_num +1004de24 d rtw_private_handler +1004de68 V max_local_skb_num +1004de6c V max_skb_buf_num +1004de70 D rom_e_rtw_msgp_str_ +1004e04c D ARFB_table +1004e08b D TRYING_NECESSARY_idx +1004e09f D DROPING_NECESSARY +1004e0b3 D PER_RATE_UP +1004e0c7 D PER_RATE_DOWN +1004e0dc V Array_MP_8195A_PHY_REG_PG +1004e16c D Array_MP_8195A_AGC_TAB +1004e37c D Array_MP_8195A_PHY_REG +1004e9f4 D rtl8195A_card_disable_flow +1004ea94 D rtl8195A_card_enable_flow +1004eb34 D Array_MP_8195A_MAC_REG +1004ee3c D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_TFBGA96_8195A +1004ee5c D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_TFBGA96_8195A +1004ee7c D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_QFN48_8195A +1004ee9a D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_QFN56_8195A +1004eeb8 D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_QFN48_8195A +1004eed6 D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_QFN56_8195A +1004eef4 D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_TFBGA96_8195A +1004ef14 D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_QFN56_8195A +1004ef32 D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_QFN48_8195A +1004ef50 D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_QFN56_8195A +1004ef70 D Array_MP_8195A_RadioA +1004f538 D gDeltaSwingTableXtal_MP_P_TxXtalTrack_8195A +1004f556 D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_TFBGA96_8195A +1004f576 D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_QFN48_8195A +1004f594 D .ram.bss$$Base +1004f594 D __bss_start__ +1004f594 D __data_end__ +1004f594 D __ram_image2_text_end__ +1004f594 d skbdata_list +1004f59c V skb_data_pool +1005299c d ucIdleTaskHeap +10052ab4 D HalI2SOpSAL +10052af0 D SYSAdapte +10052af4 D PwrAdapter +10052d80 D libc_has_init +10052d81 D print_off +10052d84 d rheap_end +10052d88 d event_init.21285 +10052d8c D wifi_run_mode +10052d90 D wlan_st_netifn +10052d91 d sampCntAdd +10052d94 d sampCnt +10052d98 D mp3_serv +10052e1a D tskreader_enable +10052e1c D readBuf +10052e20 D tskmad_enable +10052e24 d bufUnderrunCt +10052e28 d oldRate +10052e2c d sampDelCnt +10052e2d D scan_end +10052e30 D pbuf_fifo +10052e34 D pi2s +10052e3c D I2sTxSema +10052e40 D eap_method +10052e41 D eap_phase +10052e44 d param.21295 +10052e5c D rtw_join_status +10052e60 D wifi_mode +10052e64 d scan_result_handler_ptr +10052e88 d join_user_data +10052e8c d event_callback_list +1005300c D paff_array +10053084 D lwip_init_done +10053088 D xnetif +10053108 d s_aliases.7449 +1005310c d s_hostent.7448 +10053120 d s_hostent_addr.7450 +10053124 D h_errno +10053128 d s_phostent_addr.7451 +10053130 d select_cb_list +10053134 d sockets +100531f4 d select_cb_ctr +100531f8 d mbox +100531fc d tcpip_init_done_arg +10053200 d tcpip_init_done +10053204 d allsystems +10053208 d allrouters +1005320c d igmp_group_list +10053210 D current_header +10053214 d ip_id +10053218 D current_iphdr_src +1005321c D current_iphdr_dest +10053220 D current_netif +10053224 d str.6812 +10053234 d reassdatagrams +10053238 d ip_reass_pbufcount +1005323a D dhcp_rx_options_given +10053244 d xid.7762 +10053248 D dhcp_rx_options_val +10053270 d dns_seqno +10053274 d dns_table +100536d4 d dns_servers +100536dc d dns_payload_buffer +100538e0 d dns_pcb +100538e4 d dns_payload +100538e8 d tcpip_tcp_timer_active +100538ec d next_timeout +100538f0 D netif_list +100538f4 D netif_default +100538f8 d netif_num +100538f9 D pbuf_free_ooseq_pending +100538fc d raw_pcbs +10053900 D tcp_active_pcbs_changed +10053904 D tcp_ticks +10053908 d tcp_timer +1005390c D tcp_listen_pcbs +10053910 D tcp_active_pcbs +10053914 d tcp_timer_ctr +10053918 D tcp_tw_pcbs +1005391c D tcp_tmp_pcb +10053920 D tcp_bound_pcbs +10053924 d seqno +10053928 d tcplen +1005392c d ackno +10053930 d flags +10053931 d recv_flags +10053934 d tcphdr +10053938 d recv_data +1005393c d inseg +10053950 D tcp_input_pcb +10053954 D udp_pcbs +10053958 d etharp_cached_entry +1005395c d arp_table +10053a24 D lwip_tickless_used +10053a28 d s_timeoutlist +10053a58 d s_nextthread +10053a5c d dhcps_ip_table_semaphore +10053a60 d dhcps_send_broadcast_address +10053a64 D dhcps_ip4addr_pool_end +10053a65 d dhcp_client_ethernet_address +10053a78 d dhcps_subnet_broadcast +10053a7c d bound_client_ethernet_address +10053a8c d ip_table +10053aac d dhcps_pcb +10053ab0 d dhcp_message_total_options_lenth +10053ab4 d dhcps_local_address +10053ab8 d dhcps_netif +10053abc d client_request_ip +10053ac0 d dhcps_allocated_client_address +10053ac4 d dhcps_local_mask +10053ac8 d dhcps_local_gateway +10053acc d dhcps_network_id +10053ad0 D dhcps_ip4addr_pool_start +10053ad4 d dhcp_message_repository +10053ad8 D ext_upper +10053adc d xFreeBytesRemaining +10053ae0 d ext_free +10053ae4 D ext_lower +10053ae8 d pxEnd +10053aec d xStart +10053af4 d xMinimumEverFreeBytesRemaining +10053af8 d ulTimerCountsForOneTick +10053afc d ulStoppedTimerCompensation +10053b00 d xMaximumPossibleSuppressedTicks +10053b04 d xPendingReadyList +10053b18 d uxTopReadyPriority +10053b1c d uxTasksDeleted +10053b20 d xTickCount +10053b24 d pxReadyTasksLists +10053c00 d pxOverflowDelayedTaskList +10053c04 d xTasksWaitingTermination +10053c18 d pxDelayedTaskList +10053c1c d xSchedulerRunning +10053c20 d ulTaskSwitchedInTime +10053c24 D pxCurrentTCB +10053c28 d uxPendedTicks +10053c2c d xSuspendedTaskList +10053c40 d uxCurrentNumberOfTasks +10053c44 d ulDeltaTotalRunTime +10053c48 d xDelayedTaskList2 +10053c5c d xDelayedTaskList1 +10053c70 d uxTaskNumber +10053c74 d xYieldPending +10053c78 d uxSchedulerSuspended +10053c7c d xNumOfOverflows +10053c80 d pxCurrentTimerList +10053c84 d xActiveTimerList1 +10053c98 d xActiveTimerList2 +10053cac d xLastTime.5284 +10053cb0 d xTimerQueue +10053cb4 d pxOverflowTimerList +10053cb8 d xTimerTaskHandle +10053cbc d device_mutex +10053cc8 d mutex_init +10053ccc d uxSavedInterruptStatus +10053cd0 D min_free_heap_size +10053cd4 d g_heap_inited +10053cd8 d tcm_lock +10053cdc D g_tcm_heap +10053ce0 D flashobj +10053cec D fspic_isinit +10053cf0 D WDGAdapter +10053d2c d last_acquire_wakelock_time +10053dac D post_sleep_callback +10053e2c D pre_sleep_callback +10053eac D reserve_pll +10053eb0 d sys_sleep_time +10053eb4 d hold_wakelock_time +10053f34 D missing_tick +10053f38 D Timer2To7HandlerData +10053f50 D auto_reconnect_running +10053f54 D p_wlan_autoreconnect_hdl +10053f58 D mac_monitor_callback +10053f5c D mf_list_head +10053f60 d pscan_retry_cnt.21430 +10053f64 D promisc_callback_all +10053f68 D promisc_sema +10053f6c D promisc_callback +10053f70 D psk_essid +10053fb8 D psk_passphrase +1005403a D psk_passphrase64 +1005407b D wpa_global_PSK +100540cb d RFC1042_OUI +100540d0 d rx_ring_pool +100561b0 d stop_report_count.20629 +100561b1 D bCheckStateTIMER +100561b4 d WifiMcuCmdBitMap.20974 +100561b8 D p_wlan_init_done_callback +100561bc D rtw_power_percentage_idx +100561c0 D p_wlan_uart_adapter_callback +100561c4 D rtw_adaptivity_en +100561c8 D p_wlan_mgmt_filter +100561cc D rtw_initmac +100561d0 D rtw_adaptivity_th_l2h_ini +100561d4 d drvpriv +100561e8 D skbbuf_used_num +100561ec V skb_pool +100563a4 D skbdata_used_num +100563a8 d wrapper_skbbuf_list +100563b0 D max_skbdata_used_num +100563b4 D max_skbbuf_used_num +100563b8 d skb_fail_count +100563bc D timer_table +100563c4 D rltk_wlan_info +100563f4 d timer_used_num +100563f8 D max_timer_used_num +100563fc D Noisy_State +10056400 D pExportWlanIrqSemaphore +10056404 D gDeltaSwingTableXtal_MP_N_TxXtalTrack_8195A +10056422 D .ram.bss$$Limit +10056422 D __bss_end__ +10056428 B __ram_heap2_start__ 10070000 A __ram_heap2_end__ 1fff0000 D __ram_tcm_start__ 1fff0000 D __tcm_heap_start__ diff --git a/project/src/user/wifi_console.c b/project/src/user/wifi_console.c index 0d79117..8b70f5e 100644 --- a/project/src/user/wifi_console.c +++ b/project/src/user/wifi_console.c @@ -9,6 +9,7 @@ #include "FreeRTOS.h" #include "diag.h" #include "wifi_api.h" +#include "wifi_conf.h" #include "rtl8195a/rtl_libc.h" #include "hal_platform.h" @@ -290,8 +291,8 @@ MON_RAM_TAB_SECTION COMMAND_TABLE console_cmd_wifi_api[] = { {"ATPN", 1, fATPN, "=[,password[,encryption[,auto-reconnect[,reconnect pause]]]: WIFI Connect to AP"}, {"ATPA", 1, fATPA, "=[,password[,encryption[,channel[,hidden[,max connections]]]]]: Start WIFI AP"}, {"ATWR", 0, fATWR, ": WIFI Connect, Disconnect"}, -// {"ATON", 0, fATON, ": Open connections"}, -// {"ATOF", 0, fATOF, ": Close connections"}, + {"ATON", 0, fATON, ": Open connections"}, + {"ATOF", 0, fATOF, ": Close connections"}, {"ATWI", 0, fATWI, ": WiFi Info"}, #if CONFIG_DEBUG_LOG > 3 {"ATWT", 1, fATWT, "=: WiFi tx power: 0 - 100%, 1 - 75%, 2 - 50%, 3 - 25%, 4 - 12.5%"},