Some esp8266 SDK Library symbols

This is a continuation of my notes on the esp8266 microcontroller, you can find a complete list of my esp8266 posts here

The community supported esp8266 toolchain available here works pretty well. It’s based on the vendor provided SDK, with an open source lx106 compiler (based on crosstool-ng). In order to create a workable image, there are a bunch of binary only libraries that are supplied by the vendor. Your code sits in a function called “user_main”, which is called by the vendor libs, I guess they handle startup and everything else. TCP, and pretty much everything hardware level is handled by the closed source libs. The device memory map, and internal architecture is also somewhat unclear. The vendor libs are as follows:

-rw-r--r-- 1 new new  13K Nov 21 13:47 libjson.a
-rw-r--r-- 1 new new 232K Nov 21 13:47 liblwip.a
-rw-r--r-- 1 new new  80K Nov 21 13:47 libmain.a
-rw-r--r-- 1 new new 177K Nov 21 13:47 libnet80211.a
-rw-r--r-- 1 new new 134K Nov 21 13:47 libphy.a
-rw-r--r-- 1 new new 155K Nov 22 11:22 libpp.a
-rw-r--r-- 1 new new 156K Nov 21 13:47 libssl.a
-rw-r--r-- 1 new new  12K Nov 21 13:47 libupgrade.a
-rw-r--r-- 1 new new 122K Nov 21 13:47 libwpa.a

Some (but not all) of the functionality that exists in these libs is exposed in their associated header files. It’s also notable that they don’t supply a standard C library. This is somewhat annoying (I need sscanf for example, and ended up writing my own standalone version). What making things more difficult perhaps is that some parts of the standard library are present, but not others. It would be interesting to built out a complete libc in any case.

Here’s the nm dump of libmain.a, below that there are dumps of the other libs. I’m particularly interested in digged around for more info on the SD card interface. But I could only find a single reference to the SDIO (SDIO_slp_reject).

Googling a few of the symbol names appears to bring up some interesting info. In particular the TCP/IP stack appears to be based on LwIP. The SSL support on axTLS.


app_main.o:
         U _bss_end
         U _bss_start
         U Cache_Read_Enable
00000004 T call_user_start
         U cnx_attach
         U done_cb
         U ets_bzero
         U ets_install_putc1
         U ets_isr_attach
         U ets_isr_unmask
         U ets_memcpy
         U ets_post
         U ets_printf
         U ets_run
         U ets_task
         U ets_timer_arm_new
         U ets_timer_disarm
         U ets_timer_init
         U ets_timer_setfn
         U flashchip
         U g_ic
         U ieee80211_ifattach
         U ieee80211_phy_init
00000008 B info
         U lmacInit
         U lwip_init
         U os_printf
         U phy_disable_agc
         U phy_enable_agc
         U pm_attach
         U pp_attach
         U pvPortMalloc
00000014 T read_macaddr_from_otp
         U register_chipv6_phy
         U rtc_get_reset_reason
         U sleep_reset_analog_rtcreg_8266
         U spi_flash_read
         U SPIRead
         U SPIReadModeCnfig
         U sys_check_timeouts
         U system_restart
         U system_rtc_mem_read
         U system_rtc_mem_write
         U uart_div_modify
         U __udivsi3
         U user_init
0000002c B user_init_flag
         U vPortFree
         U wDevEnableRx
         U wDev_Initialize
         U wDev_ProcessFiq
00000000 B wdt_eventq
000000b4 T wdt_feed
000002e0 T wdt_init
         U wifi_mode_set
         U wifi_softap_cacl_mac
         U wifi_softap_set_default_ssid
         U wifi_softap_start
         U wifi_station_connect
         U wifi_station_get_auto_connect
         U wifi_station_start
         U _xtos_set_exception_handler

eagle_lib.o:
00000008 T divide
00000554 T ets_sprintf
         U ets_strlen
000001d0 T ets_vsnprintf
00000530 T ets_vsprintf
00000044 T skip_atoi
         U __udivsi3
         U __umodsi3

eagle_lwip_if.o:
         U dhcps_flag
         U dhcps_start
0000024c T eagle_lwip_getif
000000d8 T eagle_lwip_if_alloc
         U etharp_output
         U ethernet_input
         U ets_memcpy
         U ets_task
         U g_ic
         U ieee80211_output_pbuf
         U memcpy
         U netif_add
         U netif_set_addr
         U os_printf
         U pvPortMalloc

ets_timer.o:
         U ets_printf
0000002c T ets_timer_arm_new
         U timer2_ms_flag
         U timer_insert
         U __udivsi3

mem_manager.o:
         U ets_intr_lock
         U ets_intr_unlock
         U ets_memcpy
         U ets_memset
         U _heap_start
         U os_printf
00000128 T pvPortCalloc
0000001c T pvPortMalloc
00000168 T pvPortRealloc
00000150 T pvPortZalloc
00000008 T vApplicationMallocFailedHook
000000e8 T vPortFree
000001a0 T vPortInitialiseBlocks
00000020 T xPortGetFreeHeapSize

spi_flash.o:
         U Cache_Read_Disable
         U Cache_Read_Enable
         U flashchip
         U SPIEraseSector
00000088 T spi_flash_erase_sector
0000001c T spi_flash_get_id
00000120 T spi_flash_read
000000c4 T spi_flash_write
         U SPIRead
         U SPIWrite
         U Wait_SPI_Idle

user_interface.o:
         U _bss_end
         U _bss_start
         U chm_get_current_channel
         U chm_set_current_channel
         U cnx_node_leave
         U cnx_sta_connect_cmd
         U cnx_sta_scan_cmd
         U _data_end
         U _data_start
00000003 D dhcpc_flag
00000002 D dhcps_flag
         U dhcps_start
         U dhcps_stop
         U dhcp_start
         U dhcp_stop
000000e8 B done_cb
         U eagle_lwip_getif
         U ets_bzero
         U ets_delay_us
         U ets_isr_mask
         U ets_memcmp
         U ets_memcpy
         U ets_memset
         U ets_post
         U ets_sprintf
         U ets_strlen
         U ets_strncmp
         U ets_task
         U ets_timer_arm_new
         U ets_timer_disarm
         U ets_timer_setfn
         U ets_update_cpu_frequency
         U ets_vprintf
         U ets_write_char
         U flashchip
         U g_ic
         U gpio_output_set
         U _heap_start
         U hexstr2bin
         U ieee80211_ht_attach
         U ieee80211_phy_init
         U ieee80211_send_mgmt
         U ieee80211_sta_new_state
         U info
         U memcpy
         U __muldi3
         U netif_set_addr
0000000c T os_printf
         U pbkdf2_sha1
         U pm_is_open
         U pm_is_waked
         U pm_post
         U pm_rtc_clock_cali_proc
         U pm_set_sleep_time
         U pm_set_sleep_type_from_upper
         U ppRecycleRxPkt
000000ec B promiscuous_cb
         U pvPortMalloc
         U pvPortZalloc
         U _rodata_end
         U _rodata_start
         U scan_cancel
         U scannum
         U spi_flash_erase_sector
         U spi_flash_read
         U spi_flash_write
         U sta_con_timer
00000258 T system_adc_read
00000404 T system_deep_sleep
0000072c T system_get_chip_id
0000070c T system_get_free_heap_size
0000076c T system_get_rtc_time
000005a8 T system_get_time
00000868 T system_init_done_cb
00000794 T system_mktime
0000006c T system_os_post
00001c44 T system_os_task
00000240 T system_pp_recycle_rx_pkt
000006a8 T system_print_meminfo
0000027c T system_restart
00000018 T system_restore
00000754 T system_rtc_clock_cali_proc
000000f4 T system_rtc_mem_read
0000009c T system_rtc_mem_write
00000234 T system_set_os_print
000005d4 T system_station_got_ip_set
0000058c T system_timer_reinit
00001c84 T system_uart_swap
00000344 T system_upgrade_flag_check
00000320 T system_upgrade_flag_set
00000364 T system_upgrade_reboot
00000300 T system_upgrade_userbin_check
000002e4 T system_upgrade_userbin_set
         U test_tout
00000001 D timer2_ms_flag
         U __udivsi3
         U user_init_flag
         U vPortFree
0000184c T wifi_get_channel
00001934 T wifi_get_ip_info
00001aa8 T wifi_get_macaddr
000009d8 T wifi_get_opmode
00001758 T wifi_get_phy_mode
         U wifi_mode_set
00000adc T wifi_param_save_protect
000018a0 T wifi_promiscuous_enable
0000186c T wifi_set_channel
000019d4 T wifi_set_ip_info
00001b3c T wifi_set_macaddr
00000a5c T wifi_set_opmode
000009fc T wifi_set_opmode_local
0000178c T wifi_set_phy_mode
0000191c T wifi_set_promiscuous_rx_cb
00001824 T wifi_set_sleep_type
00001184 T wifi_softap_cacl_mac
000016a8 T wifi_softap_deauth
00000884 T wifi_softap_dhcps_start
000008d8 T wifi_softap_dhcps_stop
00001650 T wifi_softap_free_station_info
0000126c T wifi_softap_get_config
000015c8 T wifi_softap_get_station_info
00001360 T wifi_softap_set_config
00001204 T wifi_softap_set_default_ssid
0000155c T wifi_softap_set_station_info
         U wifi_softap_start
         U wifi_softap_stop
00000ee4 T wifi_station_ap_change
00000bfc T wifi_station_ap_number_set
0000107c T wifi_station_connect
0000092c T wifi_station_dhcpc_start
00000998 T wifi_station_dhcpc_stop
000010e0 T wifi_station_disconnect
0000101c T wifi_station_get_auto_connect
00000ba8 T wifi_station_get_config
00001150 T wifi_station_get_connect_status
00000e94 T wifi_station_get_current_ap_id
00000fd8 T wifi_station_scan
00001038 T wifi_station_set_auto_connect
00000d7c T wifi_station_set_config
         U wifi_station_start
         U wifi_station_stop
00001bf8 T wifi_status_led_install
         U xPortGetFreeHeapSize

And here’s the –defined-only info from the other libs:

libjson.a:

jsonparse.o:
00000204 T jsonparse_copy_value
00000314 T jsonparse_get_len
00000318 T jsonparse_get_type
00000264 T jsonparse_get_value_as_int
00000290 T jsonparse_get_value_as_long
000002bc T jsonparse_get_value_as_ulong
00000328 T jsonparse_has_next
000000d8 T jsonparse_next
000000c0 T jsonparse_setup
000002ec T jsonparse_strcmp_value

jsontree.o:
00000354 T jsontree_find_next
00000178 T jsontree_path_name
000001a4 T jsontree_print_next
00000168 T jsontree_reset
00000150 T jsontree_setup
00000000 T jsontree_write_atom
00000090 T jsontree_write_int
00000100 T jsontree_write_int_array
00000038 T jsontree_write_string

liblwip.a:

api_lib.o:

api_msg.o:

autoip.o:

def.o:

dhcp.o:
00000768 T dhcp_arp_reply
00000518 T dhcp_cleanup
0000026c T dhcp_coarse_tmr
000002b8 T dhcp_fine_tmr
00000650 T dhcp_inform
0000071c T dhcp_network_changed
00000cf8 T dhcp_release
00000a70 T dhcp_renew
00000000 B dhcp_rx_options_given
00000010 B dhcp_rx_options_val
000004f0 T dhcp_set_struct
00000560 T dhcp_start
00000dd4 T dhcp_stop

dhcpserver.o:
00000a24 T dhcps_coarse_tmr
00000880 T dhcps_start
00000900 T dhcps_stop
00000000 T node_insert_to_list
0000001c T node_remove_from_list
00000010 B s
00000940 T wifi_softap_set_dhcps_lease

dns.o:
000005f8 T dns_gethostbyname
000000c8 T dns_getserver
0000002c T dns_init
00000094 T dns_setserver
00000008 T dns_tmr

err.o:

espconn.o:
000004dc T espconn_accept
00000174 T espconn_connect
00000010 T espconn_copy_partial
00000218 T espconn_create
000005b0 T espconn_delete
00000578 T espconn_disconnect
000000ec T espconn_find_connection
000003c4 T espconn_get_connection_info
000005f4 T espconn_gethostbyname
000000a0 T espconn_list_creat
000000c0 T espconn_list_delete
00000010 T espconn_port
00000360 T espconn_regist_connectcb
0000038c T espconn_regist_disconcb
0000037c T espconn_regist_reconcb
00000370 T espconn_regist_recvcb
00000354 T espconn_regist_sentcb
00000530 T espconn_regist_time
00000268 T espconn_sent
000002c4 T espconn_tcp_get_max_con
000002f0 T espconn_tcp_get_max_con_allow
000002d8 T espconn_tcp_set_max_con
00000320 T espconn_tcp_set_max_con_allow
00000008 B link_timer
00000000 B plink_active
00000010 B premot
00000004 B pserver_list

espconn_tcp.o:
00000560 T espconn_tcp_client
00000b80 T espconn_tcp_delete
000001a0 T espconn_tcp_disconnect
00000118 T espconn_tcp_sent
00000ac0 T espconn_tcp_server

espconn_udp.o:
0000038c T espconn_igmp_join
00000368 T espconn_igmp_leave
00000294 T espconn_udp_disconnect
00000060 T espconn_udp_sent
000002f4 T espconn_udp_server

etharp.o:
00000270 T etharp_cleanup_netif
000002b0 T etharp_find_addr
0000050c T etharp_output
00000620 T etharp_query
0000084c T etharp_request
00000038 T etharp_tmr
00000000 R ethbroadcast
0000087c T ethernet_input
00000006 R ethzero

icmp.o:
00000240 T icmp_dest_unreach
00000060 T icmp_input

igmp.o:
0000000c T igmp_init
000001fc T igmp_input
0000036c T igmp_joingroup
00000428 T igmp_leavegroup
00000104 T igmp_lookfor_group
000000d0 T igmp_report_groups
00000024 T igmp_start
0000006c T igmp_stop
000004d4 T igmp_tmr

inet_chksum.o:
0000022c T inet_chksum
00000244 T inet_chksum_pbuf
0000007c T inet_chksum_pseudo
00000148 T inet_chksum_pseudo_partial

inet.o:

init.o:
00000014 T lwip_init

ip_addr.o:
00000000 T ip4_addr_isbroadcast
00000034 T ip4_addr_netmask_valid
00000078 T ipaddr_addr
00000000 R ip_addr_any
0000009c T ipaddr_aton
00000004 R ip_addr_broadcast
00000200 T ipaddr_ntoa
0000021c T ipaddr_ntoa_r

ip_frag.o:

ip.o:
0000000c B current_header
00000000 B current_iphdr_dest
00000004 B current_iphdr_src
00000008 B current_netif
00000154 T ip_input
000005dc T ip_output
000003c0 T ip_output_if
000003f8 T ip_output_if_opt
00000010 T ip_route
00000088 T ip_router

mem.o:

memp.o:
00000000 R memp_sizes
00000000 D memp_sizes_test

netbuf.o:

netdb.o:

netifapi.o:

netif.o:
00000010 T netif_add
00000004 B netif_default
00000110 T netif_find
00000000 T netif_init
00000000 B netif_list
000000ac T netif_remove
00000074 T netif_set_addr
000001e0 T netif_set_default
00000234 T netif_set_down
000001bc T netif_set_gw
00000154 T netif_set_ipaddr
000002b4 T netif_set_link_down
00000264 T netif_set_link_up
000001cc T netif_set_netmask
000001f0 T netif_set_up

netio.o:
00000434 T netio_init

pbuf.o:
00000018 T pbuf_alloc
000002c8 T pbuf_cat
000002f4 T pbuf_chain
000002a4 T pbuf_clen
000004e8 T pbuf_coalesce
00000350 T pbuf_copy
000003f8 T pbuf_copy_partial
00000310 T pbuf_dechain
0000022c T pbuf_free
0000051c T pbuf_get_at
000001b0 T pbuf_header
00000548 T pbuf_memcmp
000005c0 T pbuf_memfind
00000168 T pbuf_realloc
000002bc T pbuf_ref
00000620 T pbuf_strstr
00000484 T pbuf_take

ping.o:

raw.o:

sockets.o:

stats.o:

sys_arch.o:

sys.o:

tcp_in.o:
00000098 T tcp_input
00000030 B tcp_input_pcb

tcpip.o:

tcp.o:
000000d0 T tcp_abandon
0000016c T tcp_abort
00000a34 T tcp_accept
00000004 B tcp_active_pcbs
00000934 T tcp_alloc
00000a18 T tcp_arg
00000020 R tcp_backoff
00000194 T tcp_bind
00000010 B tcp_bound_pcbs
00000028 T tcp_close
000003a4 T tcp_connect
00000b4c T tcp_debug_state_str
00000b14 T tcp_eff_send_mss
00000a2c T tcp_err
00000778 T tcp_fasttmr
00000014 B tcp_listen_pcbs
0000023c T tcp_listen_with_backlog
00000a04 T tcp_new
00000b00 T tcp_next_iss
00000000 R tcp_pcb_lists
00000a44 T tcp_pcb_purge
00000a94 T tcp_pcb_remove
00000010 R tcp_persist_backoff
00000a38 T tcp_poll
00000a1c T tcp_recv
00000338 T tcp_recved
0000084c T tcp_recv_null
00000818 T tcp_seg_free
000007f4 T tcp_segs_free
00000a24 T tcp_sent
00000840 T tcp_setprio
00000054 T tcp_shutdown
000004f4 T tcp_slowtmr
00000030 R tcp_state_str
00000018 B tcp_ticks
00000008 B tcp_tmp_pcb
00000004 T tcp_tmr
0000000c B tcp_tw_pcbs
000002f4 T tcp_update_rcv_ann_wnd

tcp_out.o:
000006b8 T tcp_enqueue_flags
00000df4 T tcp_keepalive
00000854 T tcp_output
00000ce0 T tcp_rexmit
00000d8c T tcp_rexmit_fast
00000ca0 T tcp_rexmit_rto
00000b70 T tcp_rst
000007ac T tcp_send_empty_ack
0000010c T tcp_send_fin
0000035c T tcp_write
00000e8c T tcp_zero_window_probe

timers.o:
00000270 T sys_check_timeouts
0000032c T sys_restart_timeouts
0000017c T sys_timeout
00000114 T sys_timeouts_init
000001fc T sys_untimeout
00000060 T tcp_timer_needed

udp.o:
00000484 T udp_bind
00000504 T udp_connect
00000560 T udp_disconnect
00000054 T udp_input
000005c8 T udp_new
00000000 B udp_pcbs
00000578 T udp_recv
00000588 T udp_remove
00000294 T udp_send
000002b0 T udp_sendto
00000320 T udp_sendto_if

libnet80211.a:


ieee80211_action.o:
00000124 T ieee80211_recv_action
000000cc T ieee80211_recv_action_register
00000100 T ieee80211_recv_action_unregister
00000068 T ieee80211_send_action
00000010 T ieee80211_send_action_register
00000044 T ieee80211_send_action_unregister

ieee80211.o:
00000000 B g_ic
00000180 T ieee80211_chan2ieee
000001e0 T ieee80211_find_channel
00000208 T ieee80211_find_channel_byieee
000001a8 T ieee80211_ieee2mhz
000000b8 T ieee80211_ifattach
00000124 T ieee80211_mhz2ieee
00000000 R ieee80211_opcap
000002a8 T wifi_mode_set

ieee80211_crypto.o:
00000000 T ieee80211_crypto_attach
00000004 T ieee80211_crypto_available
00000064 T ieee80211_crypto_decap
00000010 T ieee80211_crypto_encap
00000008 T ieee80211_crypto_setkey

ieee80211_crypto_ccmp.o:
00000000 D ccmp

ieee80211_crypto_tkip.o:
00000000 D tkip

ieee80211_crypto_wep.o:
00000000 D wep

ieee80211_ets.o:
00000008 T ieee80211_getmgtframe

ieee80211_hostap.o:
000004ec T hostap_handle_timer
000005d0 T hostap_input
000003fc T ieee80211_hostap_attach
00000019 B PendFreeBcnEb
00000018 B TmpSTAAPCloseAP
00000fa8 T wifi_softap_start
000010cc T wifi_softap_stop

ieee80211_ht.o:
00000790 T ieee80211_add_htcap
000007ac T ieee80211_add_htcap_vendor
000008dc T ieee80211_add_htinfo
000008f8 T ieee80211_add_htinfo_vendor
00000018 T ieee80211_ht_attach
000000ac T ieee80211_ht_node_cleanup
0000006c T ieee80211_ht_node_init
00000200 T ieee80211_ht_updateparams
000000e8 T ieee80211_parse_htcap
000003f4 T ieee80211_setup_basic_htrates
0000031c T ieee80211_setup_htrates

ieee80211_hwmp.o:

ieee80211_input.o:
000001f4 T ieee80211_alloc_challenge
00000070 T ieee80211_decap
00000008 T ieee80211_deliver_data
00000000 T ieee80211_parse_action
00000238 T ieee80211_parse_beacon
000007e4 T ieee80211_parse_rsn
000006c8 T ieee80211_parse_wpa
00000184 T ieee80211_setup_rates
000008e0 T ieee80211_setup_rateset

ieee80211_mesh.o:

ieee80211_node.o:

ieee80211_output.o:
000009f0 T ieee80211_add_rates
00000a2c T ieee80211_add_xrates
00001318 T ieee80211_alloc_proberesp
0000192c T ieee80211_beacon_alloc
00000ca0 T ieee80211_getcapinfo
00000448 T ieee80211_mgmt_output
00000048 T ieee80211_output_pbuf
00000d6c T ieee80211_send_mgmt
00000560 T ieee80211_send_nulldata
00000af0 T ieee80211_send_probereq
00001534 T ieee80211_send_proberesp
00000308 T ieee80211_send_setup
00000540 T ieee80211_tx_mgt_cb

ieee80211_phy.o:
000000c4 T ieee80211_compute_duration
00000148 T ieee80211_dot11Rate_rix
00000004 T ieee80211_get_11g_ratetable
00000014 T ieee80211_get_ratetable
00000030 T ieee80211_phy_init
00000068 T ieee80211_phy_type_get
00000084 T ieee80211_setup_ratetable

ieee80211_power.o:
00000154 T ieee80211_node_pwrsave
00000024 T ieee80211_psq_cleanup
00000004 T ieee80211_psq_init
00000074 T ieee80211_pwrsave
0000002c T ieee80211_set_tim

ieee80211_proto.o:
000000f8 T ieee80211_addbasicrates
00000020 D ieee80211_addr_bcast
00000050 T ieee80211_iserp_rateset
00000128 T ieee80211_mlme_connect_bss
0000000c T ieee80211_proto_attach
000000e4 T ieee80211_setbasicrates
00000034 T ieee80211_set_shortslottime
00000000 D ieee80211_state_name
0000010c T ieee80211_wme_initparams
00000110 T ieee80211_wme_updateparams

ieee80211_scan.o:
000007d8 T cannel_scan_connect_state
00000000 B gScanStruct
00000018 T ieee80211_scan_attach
00000544 T scan_add_bssid
00000590 T scan_add_probe_ssid
000003c8 T scan_cancel
00000a64 T scan_check_hidden
00000734 T scan_clear_channles
00000804 T scan_connect_state
000007c8 T scan_get_type
0000057c T scan_hidden_ssid
000000b4 B scannum
00000c24 T scan_parse_beacon
0000000c T scan_pm_channel_op_cb
000008a0 T scan_profile_check
0000056c T scan_remove_bssid
000005d4 T scan_remove_probe_ssid
000007b8 T scan_set_desChan
000000e8 T scan_start

ieee80211_sta.o:
000006b0 T ieee80211_parse_wmeparams
000000c4 T ieee80211_sta_new_state
000002e8 T sta_input
00000030 T sta_status_set
00000c44 T wifi_station_start
00000008 T wifi_station_stop

if_eagle.o:

wl_chm.o:
00000008 T chm_acquire_lock
00000074 T chm_cancel_op
00000224 T chm_check_same_channel
00000160 T chm_end_op
000001ec T chm_freq2index
000000e0 T chm_get_current_channel
00000020 T chm_init
00000050 T chm_release_lock
000000b0 T chm_return_home_channel
000001b8 T chm_set_current_channel
00000090 T chm_start_op

wl_cnx.o:
00000b8c T cnx_add_rc
00000018 T cnx_attach
000009f0 T cnx_bss_alloc
000004e8 T cnx_connect_timeout
000011d8 T cnx_node_alloc
00001448 T cnx_node_join
00001334 T cnx_node_leave
00001248 T cnx_node_remove
000012ac T cnx_node_search
00000ab0 T cnx_rc_search
00000e58 T cnx_rc_update_age
00000d60 T cnx_rc_update_rssi
00000dec T cnx_rc_update_state_metric
00000c8c T cnx_remove_rc
0000115c T cnx_sta_associated
000000fc T cnx_sta_connect_cmd
00000064 T cnx_sta_connect_led_timer_cb
0000105c T cnx_sta_leave
00000520 T cnx_start_handoff_cb
00000220 T cnx_sta_scan_cmd
00000e84 T cnx_update_bss
00000ee4 T cnx_update_bss_more
0000070c B g_cnx_probe_rc_list_cb
00000708 B sta_con_timer

libphy.a:


ate_test.o:

phy.o:
00000024 T bb_init
0000002c T phy_change_channel
00000098 T phy_delete_channel
000000d0 T phy_disable_agc
000000b4 T phy_enable_agc
00000048 T phy_get_mactime
00000044 T phy_init
000000ec T phy_initialize_bb
00000108 T phy_set_sense
00000008 T register_phy_ops
00000078 T RFChannelSel
00000004 T rf_init

phy_chip_v6_ana.o:
00001508 T check_data_flag
00000d34 T chip_60_set_channel
00001004 T chip_v6_rf_init
0000029c T chip_v6_rxmax_ext_ana
00000ecc T chip_v6_set_chan
00000e38 T chip_v6_set_chan_offset
00000f64 T chip_v6_set_chan_wakeup
0000153c T get_check_flag
0000121c T low_power_set
000003f0 T ram_chip_v6_rx_init
000000e8 T ram_pbus_debugmode
00000004 T ram_pbus_set_rxgain
000001a0 T ram_pbus_xpd_tx_on
000007d0 T ram_restart_cal
000008f8 T ram_rfpll_set_freq
00000a1c T ram_set_channel_freq
000004f8 T readvdd33
00000220 T set_rf_freq_offset
0000074c T set_txcap_reg
000012d8 T test_tout
00000438 T tsen_meas
00000698 T txpwr_offset
00000848 T wait_rfpll_cal_end

phy_chip_v6.o:
00003690 T ant_switch_init
00003114 T bbpll_cal
00000275 B bbpll_cal_flag
000035c8 T change_bbpll160
000034d0 T change_bbpll160_sleep
00000ad0 T check_data_func
0000000c B check_result
000001e8 B chip6_phy_init_ctrl
00000010 B chip6_sleep_params
00002e18 T chip_v6_initialize_bb
00002344 T chip_v6_rxmax_ext
000022f4 T chip_v6_rxmax_ext_dig
00000c30 T chip_v6_set_chanfreq
00001bdc T chip_v6_set_chan_misc
00001a34 T chip_v6_set_chan_rx_cmp
00000276 B deep_sleep_en
00000b38 T do_noisefloor
00000af4 T do_noisefloor_lsleep_v50
00000258 B do_pwctrl_flag
000004c8 T gen_rx_gain_table
00001460 T get_noisefloor_sat
00000000 B g_phyFuns
00000278 B noise_array
00001580 T noise_check_loop
0000171c T noise_init
00000614 T pbus_set_rxbbgain
00002fec T periodic_cal
00000270 B periodic_cal_dc_num
00000274 B periodic_cal_flag
000031bc T periodic_cal_top
00002434 T phy_bb_rx_cfg
000020b4 T phy_dig_spur_prot
00001d34 T phy_dig_spur_set
00000256 B phy_freq_offset
00002938 T phy_gpio_cfg
00002830 T phy_pbus_soc_cfg
00000259 B pwctrl_debug
000009dc T ram_get_corr_power
00001440 T ram_get_noisefloor
00001498 T ram_set_noise_floor
000014f8 T ram_start_noisefloor
00000000 T ram_tx_mac_disable
00000000 T ram_tx_mac_enable
00001544 T read_hw_noisefloor
000037b0 T register_chipv6_phy
00003224 T register_chipv6_phy_init_param
00000008 T rtc_mem_backup
0000003c T rtc_mem_recovery
00000008 B rxdc_init_flag
00000030 D rx_gain_swp
00000004 B rxiq_compute_num
0000198c T sdt_on_noise_start
00000070 T set_cal_rxdc
00003610 T set_crystal_uart
00000164 T set_rx_gain_cal_iq
000006b4 T set_rx_gain_testchip_50
00000bb0 T start_dig_rx
00000bfc T stop_dig_rx
0000025c B sw_scan_mode
00000e60 T target_power_add_backoff
00001928 T target_power_backoff
00000050 D test_rffreq_txcap
000010ac T tx_atten_set_interp
0000025a B txbk_dpdby_flag
00000ca4 T tx_cap_init
00002da4 T tx_cont_cfg
00002d50 T tx_cont_dis
00002c98 T tx_cont_en
00000380 B tx_pwctrl_atten_init
00000024 D tx_pwctrl_atten_init_en
00001340 T tx_pwctrl_init
00000ee0 T tx_pwctrl_init_cal
00000002 D tx_rf_ana_gain
000027ec T uart_wait_idle

phy_chip_v6_cal.o:
00000418 T cal_rf_ana_gain
00000258 T correct_rf_ana_gain
00000020 T dcoindex2txbbgain
00000060 D dpd_db2linear
00000000 D dpd_index
00002430 T dpd_init
0000236c T dpd_mem_write
00002320 T dpd_scale_set
000006c0 T get_fcc_1m2m_pwr_offset
00000ff8 T get_pwctrl_correct
00000230 T get_rf_gain_qdb
00000368 T get_sar_dout
00000f04 T get_target_power_offset
00000054 T init_cal_dcoffset
00000003 B loop_pwctrl_correct_atten_high_power
00000000 B loop_pwctrl_pwdet_error_accum_high_power
000004f4 T meas_tone_pwr_db
0000171c T ram_cal_tos_v60
000018fc T ram_get_bb_atten
00001658 T ram_get_fm_sar_dout
00001b40 T ram_rfcal_pwrctrl
00002108 T ram_rfcal_rxiq
0000195c T ram_rfcal_txcap
00000aa4 T ram_rfcal_txiq
00001f60 T ram_rxiq_cover_mg_mp
00001d84 T ram_rxiq_get_mis
00000700 T ram_set_txbb_atten
00000d3c T rc_cal
000015ec T read_sar_dout
00000005 B rxiq_cover_fail_num
0000011c T set_rfanagain_dc_reg
000001c4 T set_txdc_pbus
00000000 T txbbgain2dcoindex
00000870 T txiq_cover
000007a4 T txiq_get_mis_pwr
000014b4 T tx_pwctrl_background
000013f0 T tx_pwctrl_bg_init
000010a0 T tx_pwctrl_cal
00000002 B tx_pwctrl_pk_num
00000004 B tx_pwctrl_set_chan_flag
0000056c T tx_pwr_backoff

phy_chip_v6_unused.o:
00000004 T chip_v6_get_sense
00000000 T chip_v6_set_sense
00000008 T chip_v6_unset_chanfreq
00000030 T data_collect
00000120 T operation_test
000001e0 T slop_test
0000019c T slop_wdt_feed
000002b4 T wd_reset_cnt

phy_sleep.o:
00000000 D chip_version
000000d8 T clockgate_watchdog
000001e4 T get_chip_version
00000003 B hardware_reject
00000000 B periodic_cal_sat
00000664 T pm_check_mac_idle
000003e4 T pm_goto_sleep
000004b4 T pm_open_rf
00000324 T pm_prepare_to_sleep
00000044 T pm_rtc2usec
0000001c T pm_rtc_clock_cali
00000358 T pm_sdio_nidle
000002d4 T pm_set_pll_xtal_wait_time
000006d4 T pm_set_sleep_btco
00000058 T pm_set_sleep_cycles
000008dc T pm_set_sleep_mode
0000079c T pm_set_wakeup_btco
000005bc T pm_set_wakeup_mac
000000b0 T pm_sleep_opt
00000230 T pm_sleep_opt_bb_off
00000280 T pm_sleep_opt_bb_on
00000518 T pm_sleep_set_mac
000009b4 T pm_unmask_bt
00000010 T pm_usec2rtc
00000468 T pm_wait4wakeup
00000a8c T pm_wakeup_init
000001a4 T pm_wakeup_opt
00000002 B SDIO_slp_reject
00000c8c T sleep_opt_8266
00000cb4 T sleep_opt_bb_on_8266
00000d00 T sleep_reset_analog_rtcreg_8266
00000001 B software_slp_reject

libpp.a:


esf_buf.o:
000000a4 T esf_buf_alloc
00000218 T esf_buf_recycle
0000002c T esf_buf_setup
00000014 T esf_rx_buf_alloc

if_hwctrl.o:
00000378 T ic_bss_info_update
000000b0 T ic_disable_interface
00000034 T ic_enable_interface
00000004 T ic_get_addr
00000130 T ic_get_gtk_alg
0000011c T ic_get_ptk_alg
00000088 T ic_interface_enabled
0000016c T ic_interface_is_p2p
000000fc T ic_is_pure_sta
00000440 T ic_remove_key
00000158 T ic_set_gtk_alg
000003dc T ic_set_key
00000014 T ic_set_opmode
00000144 T ic_set_ptk_alg
000002c4 T ic_set_sta
0000022c T ic_set_vif
00000010 B if_ctrl
00000000 B interface_mask

lmac.o:
00000814 T GetAccess
00000004 B lmacConfMib
00000820 T lmacDiscardAgedMSDU
00000040 T lmacInit
00000004 T lmacInitAc
00000004 T lmacIsActive
00000018 T lmacIsIdle
00000efc T lmacMSDUAged
00001378 T lmacProcessAckTimeout
00000e84 T lmacProcessCollision
00000df4 T lmacProcessCollisions
00001320 T lmacProcessCtsTimeout
000013b8 T lmacProcessRtsStart
000014b0 T lmacProcessTxError
000013f4 T lmacProcessTxRtsError
000004c4 T lmacProcessTXStartData
000006d4 T lmacProcessTxSuccess
00000834 T lmacRecycleMPDU
0000174c T lmacRxDone
00000440 T lmacSetAcParam
00001570 T lmacTxFrame

mac_frame.o:

pm.o:
00001bec T pm_allow_tx
00001c10 T pm_assoc_parse
0000174c T pm_attach
000016c8 T pm_enable_gpio_wakeup
00001aec T pm_force_scan_unlock
00001db4 T pm_get_idle_wait_time
00000b20 T pm_idle_sleep
00001a78 T pm_is_open
00001a5c T pm_is_waked
00000c7c T pm_onBcnRx
00000b60 T pm_open
00001c9c T pm_post
00000ae0 T pm_reset_idle_sleep
000003d0 T pm_rf_is_closed
00000014 T pm_rtc_clock_cali_proc
00001a9c T pm_scan_lock
00001bd4 T pm_scan_unlocked
0000188c T pm_send_nullfunc
00001c30 T pm_set_addr
00000058 T pm_set_sleep_time
000003f4 T pm_set_sleep_type_from_upper
000009e8 T pm_shutdown
00001c58 T pm_sleep_for
00000688 T pm_suspend
00001acc T pm_try_scan_unlock
00000660 T uart_tx_flush

pp.o:
0000001c B idle_timer_enabled
00000001 D idle_wait_ms
00000000 D noise_now
00000860 T pp_attach
00000eac T ppCalFrameTimes
00000e24 T ppCalTxop
000000bc T ppCheckTxIdle
000004d4 T ppDequeueTxQ
000000c4 T pp_disable_idle_timer
00000008 T pp_disable_noise_timer
00000d88 T ppDiscardMPDU
000000f8 T pp_enable_idle_timer
0000003c T pp_enable_noise_timer
000005e8 T ppEnqueueRxq
00000568 T ppEnqueueTxDone
00000490 T ppFetchTxQFirstAvail
0000043c T ppGetTxQFirstAvail_Locked
000000a4 T pp_noise_test
00000dbc T pp_post
000003b4 T ppProcessTxQ
00000028 T ppProcessWaitQ
00000528 T ppRecordBarRRC
00000048 T ppRecycleRxPkt
00000500 T ppRegisterTxCallback
00000500 T ppRollBackTxQ
0000012c T pp_try_enable_idle_timer
00000538 T pp_tx_idle_timeout
000003d8 T ppTxPkt
0000053c T ppTxqUpdateBitmap
00000018 B time_num

rate_control.o:
00000020 T RC_GetAckRate
00000044 T RC_GetAckTime
00000094 T RC_GetBlockAckTime
00000058 T RC_GetCtsTime
00000030 T RC_GetRtsRate
00000258 T RC_SetBasicRate

trc.o:
0000010c T rcAttach
000002b0 T rc_disable_trc
0000032c T rc_disable_trc_by_interface
000001c0 T rc_enable_trc
0000028c T rc_get_mask
00000338 T rcGetRate
00000290 T rcGetSched
00000354 T rc_get_sta_trc
000003a0 T rc_get_trc
00000158 T rcGetTrc
00000414 T rc_get_trc_by_index
00000440 T rc_only_sta_trc
00000750 T rcReachRetryLimit
0000026c T rcUpdateDataRxDone
0000002c T rcUpdatePhyMode
00000210 T rcUpdateRxDone
0000017c T rcUpdateTxDone
00000768 T trc_NeedRTS
00000160 T trc_onDisconnect
00000184 T trc_onScanDone
00000164 T trc_onScanStart

wdev.o:
00000658 T Tx_Copy2Queue
000007f8 T wDev_AppendRxBlocks
00000590 T wDev_ClearBssid
000006e4 T wDev_ClearTxqCollisions
00000758 T wDev_ClearWaitingQueue
000006f4 T wDev_Crypto_Conf
000007b0 T wDev_Crypto_Disable
00000000 B wDevCtrl
00000924 T wDevDisableRx
00000630 T wDev_DisableTransmit
000007f0 T wDevEnableRx
000005e8 T wDev_EnableTransmit
00000380 T wDevForceAck6M
000008ec T wDev_GetBAInfo
000006cc T wDev_GetTxqCollisions
00000314 T wDev_Initialize
000005d0 T wDev_Insert_KeyEntry
00000020 T wDev_Option_Init
000006a4 T wDev_ProcessCollision
00000380 T wDev_ProcessFiq
000006ac T wDev_remove_KeyEntry
000004b0 T wDev_SetBssid
0000077c T wDev_SetFrameAckType
000003a8 T wDev_SetMacAddress
0000044c T wDev_SetRxPolicy
00000708 T wDev_SetWaitingQueue

libssl.a:


espconn_secure.o:
00000098 T espconn_secure_accept
00000004 T espconn_secure_connect
00000028 T espconn_secure_disconnect
0000005c T espconn_secure_sent

espconn_ssl.o:
000001b0 T espconn_sent_packet
000006d0 T espconn_ssl_client
0000067c T espconn_ssl_disconnect
00000154 T espconn_ssl_sent
00000d6c T espconn_ssl_server
00000000 B psslpbuf

ssl_aes.o:
000003f8 T AES_cbc_decrypt
00000270 T AES_cbc_encrypt
000001ac T AES_convert_key
0000002c T AES_set_key

ssl_asn1.o:
000006f8 T asn1_compare_dn
00000734 T asn1_find_oid
000007cc T asn1_find_subjectaltname
000000ac T asn1_get_int
00000130 T asn1_get_private_key
000004d8 T asn1_name
0000004c T asn1_next_obj
00000584 T asn1_public_key
0000061c T asn1_signature
00000804 T asn1_signature_type
00000070 T asn1_skip_obj
00000358 T asn1_validity
00000334 T asn1_version
00000000 T get_asn1_length
000006b0 T remove_ca_certs

ssl_bigint.o:
000001cc T bi_add
00001000 T bi_barrett
00000080 T bi_clear_cache
00000190 T bi_clone
00000dd4 T bi_compare
000000c0 T bi_copy
00001350 T bi_crt
0000010c T bi_depermanent
000003a4 T bi_divide
00000970 T bi_export
00000134 T bi_free
00000a6c T bi_free_mod
000007e4 T bi_import
0000000c T bi_initialize
00001168 T bi_mod_power
000012c4 T bi_mod_power2
00000be8 T bi_multiply
000000e8 T bi_permanent
000008f4 T bi_print
000009f4 T bi_set_mod
00000db4 T bi_square
00000864 T bi_str_import
00000250 T bi_subtract
00000048 T bi_terminate
00000170 T int_to_bi

ssl_crypto_misc.o:
0000017c T base64_decode
00000000 T get_file
00000060 T get_random
00000128 T get_random_NZ
00000000 B hex_finish
00000004 B hex_index
00000170 T print_blob
00000030 T RNG_custom_init
0000000c T RNG_initialize
00000034 T RNG_terminate
00000000 R unsupported_str

ssl_gen_cert.o:

ssl_hmac.o:
00000030 T ssl_hmac_md5
0000015c T ssl_hmac_sha1

ssl_loader.o:
000005bc T load_key_certs
00000158 T ssl_obj_free
00000018 T ssl_obj_load
000000ac T ssl_obj_memory_load

ssl_md2.o:
000000f8 T MD2_Final
00000004 T MD2_Init
00000088 T MD2_Update

ssl_md5.o:
000000d8 T MD5_Final
00000010 T MD5_Init
0000003c T MD5_Update

ssl_openssl.o:

ssl_os_port.o:

ssl_p12.o:

ssl_rc4.o:
00000058 T RC4_crypt
00000000 T RC4_setup

ssl_rsa.o:
00000268 T RSA_decrypt
000003e4 T RSA_encrypt
000001a4 T RSA_free
00000370 T RSA_print
00000334 T RSA_private
00000030 T RSA_priv_key_new
000000f4 T RSA_pub_key_new
000003ac T RSA_public

ssl_sha1.o:
00000090 T SHA1_Final
00000014 T SHA1_Init
00000038 T SHA1_Update

ssl_tls1_clnt.o:
000001bc T do_client_connect
000000cc T do_clnt_handshake
00000014 T SSLClient_new

ssl_tls1.o:
0000025c T add_cert
00000310 T add_cert_auth
000006b8 T add_packet
000004e0 T add_private_key
00000f88 T basic_read
000015c8 T disposable_free
00001588 T disposable_new
00000a1c T finished_digest
00000930 T generate_master_secret
0000173c T kill_ssl_session
000017dc T process_certificate
00001440 T process_finished
00001384 T send_alert
000014c0 T send_certificate
000012c0 T send_change_cipher_spec
0000131c T send_finished
00000c5c T send_packet
0000008c T ssl_ctx_free
00000014 T ssl_ctx_new
0000013c T ssl_free
0000038c T ssl_get_cert_dn
000003c4 T ssl_get_cert_subject_alt_dnsname
00001778 T ssl_get_cipher_id
00001788 T ssl_get_config
00001768 T ssl_get_session_id
00001770 T ssl_get_session_id_size
00001780 T ssl_handshake_status
00000468 T ssl_new_context
00000064 R ssl_prot_prefs
000001b4 T ssl_read
000003fc T ssl_renegotiate
00001618 T ssl_session_update
000017b0 T ssl_verify_cert
000018a4 T ssl_version
000001f4 T ssl_write

ssl_tls1_svr.o:
00000044 T do_svr_handshake
00000004 T sslserver_new

ssl_x509.o:
00000720 T x509_display_error
00000438 T x509_free
000000f4 T x509_new
000006dc T x509_print
000005a0 T x509_verify

libupdate.a:

upgrade.o:
00000670 T system_upgrade_start

upgrade_lib.o:

libwpa.a:


aes-internal-enc.o:
00000460 T aes_encrypt
00000478 T aes_encrypt_deinit
00000430 T aes_encrypt_init
00000010 T rijndaelEncrypt

aes-wrap.o:
00000024 T aes_wrap

ap_config.o:
00000060 T hostapd_config_defaults
00000008 T hostapd_config_defaults_bss
00000278 T hostapd_get_psk
000000d0 T hostapd_mac_comp
000000f0 T hostapd_mac_comp_empty
000001ec T hostapd_maclist_found
00000258 T hostapd_rate_found
00000164 T hostapd_setup_wpa_psk
00000198 T hostapd_wep_key_cmp

common.o:
00000054 T hex2byte
00000088 T hexstr2bin
00000000 T inc_byte_array
000001a4 T wpa_config_parse_string
000000e8 T wpa_get_ntp_timestamp

ieee802_1x.o:
00000008 T ieee802_1x_receive

os_xtensa.o:
0000000c T ets_strdup
000000b0 T ets_strrchr
00000070 T os_get_random
0000004c T os_get_time
00000054 T os_random

sta_info.o:

wpa_auth.o:
00000170 T wpa_auth_for_each_sta
00001080 T wpa_auth_sm_event
000003f0 T wpa_auth_sta_associated
000004c4 T wpa_auth_sta_deinit
000003a4 T wpa_auth_sta_init
0000046c T wpa_auth_sta_no_wpa
00000328 T wpa_init
000005f4 T wpa_receive
0000102c T wpa_remove_ptk
00000b08 T __wpa_send_eapol

wpa_auth_ie.o:
00000280 T wpa_add_kde
000001f4 T wpa_auth_gen_wpa_ie
000005c4 T wpa_auth_uses_mfp
00000528 T wpa_parse_kde_ies
00000310 T wpa_validate_wpa_ie
000000dc T wpa_write_rsn_ie

wpabuf.o:
000000c4 T wpabuf_alloc
0000011c T wpabuf_alloc_copy
000000ec T wpabuf_alloc_ext_data
000001f4 T wpabuf_concat
00000150 T wpabuf_dup
00000188 T wpabuf_free
000002b8 T wpabuf_printf
000001b0 T wpabuf_put
00000030 T wpabuf_resize
00000254 T wpabuf_zeropad

wpa.o:
00001620 T eapol_txcb
00001568 T pp_michael_mic_failure
00001200 T wpa_register
000012a0 T wpa_set_bss
0000124c T wpa_set_pmk
00001230 T wpa_set_profile
0000109c T wpa_sm_rx_eapol
00001680 T wpa_sm_set_state

wpa_common.o:
0000077c T rsn_cipher_put_suites
00000680 T rsn_pmkid
000006b4 T wpa_cipher_key_len
000007dc T wpa_cipher_put_suites
000006d8 T wpa_cipher_to_alg
00000728 T wpa_cipher_to_suite
00000520 T wpa_cipher_txt
000004dc T wpa_compare_rsn_ie
00000498 T wpa_eapol_key_mic
0000016c T wpa_parse_wpa_ie_rsn
00000308 T wpa_parse_wpa_ie_wpa
0000058c T wpa_pmk_to_ptk

wpa_debug.o:
00000000 T eloop_cancel_timeout
00000004 T eloop_register_timeout

wpa_ie.o:
00000310 T wpa_gen_wpa_ie
00000008 T wpa_parse_wpa_ie
00000110 T wpa_supplicant_parse_ies

wpa_main.o:
00000008 T dhcp_bind_check
0000023c T eagle_auth_done
00000034 T ppInstallKey
00000324 T wpa_attach
000001e8 T wpa_config_assoc_ie
000001a4 T wpa_config_bss
00000168 T wpa_config_profile
000002f4 T wpa_neg_complete

wpas_glue.o:
00000080 T wpa_sm_alloc_eapol
000000bc T wpa_sm_deauthenticate
000000e0 T wpa_sm_disassociate
000000dc T wpa_sm_get_beacon_ie
000000d8 T wpa_sm_mlme_setprotection