From 4b5455f7d1babb393aa574a5073cdd57769a9265 Mon Sep 17 00:00:00 2001 From: pvvx Date: Wed, 28 Jun 2017 07:13:10 +0300 Subject: [PATCH] update --- ...ilg.gnuarmeclipse.managedbuild.cross.prefs | 4 +- .../component/common/api/at_cmd/atcmd_sys.c | 6 +- .../component/common/mbed/hal_ext/sys_api.h | 7 +- .../mbed/targets/hal/rtl8195a/sys_api.c | 16 +- .../component/os/freertos/freertos_pmu.c | 34 + .../component/os/freertos/freertos_pmu.h | 6 +- build/bin/ota.bin | Bin 300160 -> 299920 bytes build/bin/ram_2.bin | Bin 300124 -> 299884 bytes build/bin/ram_2.ns.bin | Bin 300140 -> 299900 bytes build/bin/ram_2.p.bin | Bin 300140 -> 299900 bytes build/bin/ram_all.bin | Bin 345212 -> 344972 bytes build/obj/build.nmap | 4631 ++++++++--------- project/src/user/atcmd_user.c | 4 +- project/src/user/wifi_console.c | 25 +- 14 files changed, 2379 insertions(+), 2354 deletions(-) diff --git a/.settings/ilg.gnuarmeclipse.managedbuild.cross.prefs b/.settings/ilg.gnuarmeclipse.managedbuild.cross.prefs index ba91ca5..1dd2f5f 100644 --- a/.settings/ilg.gnuarmeclipse.managedbuild.cross.prefs +++ b/.settings/ilg.gnuarmeclipse.managedbuild.cross.prefs @@ -1,3 +1,3 @@ -buildTools.path=D\:\\MCU\\GNU_Tools_ARM_Embedded\\5.4_2016q2\\bin +buildTools.path=D\:\\MCU\\GNU_Tools_ARM_Embedded\\6.2017-q1-update\\bin eclipse.preferences.version=1 -toolchain.path.1287942917=D\:\\MCU\\GNU_Tools_ARM_Embedded\\5.4_2016q2\\ +toolchain.path.1287942917=D\:\\MCU\\GNU_Tools_ARM_Embedded\\6.2017-q1-update\\ diff --git a/RTL00_SDKV35a/component/common/api/at_cmd/atcmd_sys.c b/RTL00_SDKV35a/component/common/api/at_cmd/atcmd_sys.c index 8c5959f..e1552bc 100644 --- a/RTL00_SDKV35a/component/common/api/at_cmd/atcmd_sys.c +++ b/RTL00_SDKV35a/component/common/api/at_cmd/atcmd_sys.c @@ -657,7 +657,6 @@ void fATSR(void *arg) { void fATSV(void *arg) { char at_buf[32]; - char fw_buf[32]; char cspimode[4] = { 'S', 'D', 'Q', '?' }; if (fspic_isinit == 0) { @@ -675,9 +674,8 @@ void fATSV(void *arg) { strcpy(at_buf, ATCMD_VERSION"."ATCMD_SUBVERSION"."ATCMD_REVISION); // get fw version - strcpy(fw_buf, SDK_VERSION); - printf("%s,%s(%s)\n", at_buf, fw_buf, RTL8195AFW_COMPILE_TIME); - at_printf("\r\n[ATSV] OK:%s,%s(%s)", at_buf, fw_buf, + printf("%s,%s(%s)\n", at_buf, SDK_VERSION, RTL8195AFW_COMPILE_TIME); + at_printf("\r\n[ATSV] OK:%s,%s(%s)", at_buf, SDK_VERSION, RTL8195AFW_COMPILE_TIME); } diff --git a/RTL00_SDKV35a/component/common/mbed/hal_ext/sys_api.h b/RTL00_SDKV35a/component/common/mbed/hal_ext/sys_api.h index 46fbabb..9ae2785 100644 --- a/RTL00_SDKV35a/component/common/mbed/hal_ext/sys_api.h +++ b/RTL00_SDKV35a/component/common/mbed/hal_ext/sys_api.h @@ -34,8 +34,13 @@ void sys_recover_ota_signature(void); void sys_log_uart_on(void); void sys_log_uart_off(void); void sys_adc_calibration(u8 write, u16 *offset, u16 *gain); -u8 sys_is_sdram_power_on(void); +#ifdef CONFIG_SDR_EN void sys_sdram_off(void); +u8 sys_is_sdram_power_on(void); +#else +#define sys_sdram_off() +#define sys_is_sdram_power_on() (0) +#endif /** * @brief system software reset 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 85b152a..a9416b3 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 @@ -203,28 +203,16 @@ void sys_reset(void) (1 << 2)); // SYSRESETREQ } +#ifdef CONFIG_SDR_EN u8 sys_is_sdram_power_on(void) { -#ifdef CONFIG_SDR_EN -// u8 ison = 0; - -//#if defined ( __ICCARM__ ) return IsSdrPowerOn(); -//#endif - -// return ison; -#else - return 0; -#endif } void sys_sdram_off(void) { -#ifdef CONFIG_SDR_EN -//#if defined ( __ICCARM__ ) if (IsSdrPowerOn()) { SdrPowerOff(); } -//#endif -#endif } +#endif diff --git a/RTL00_SDKV35a/component/os/freertos/freertos_pmu.c b/RTL00_SDKV35a/component/os/freertos/freertos_pmu.c index a9efd4b..d662075 100644 --- a/RTL00_SDKV35a/component/os/freertos/freertos_pmu.c +++ b/RTL00_SDKV35a/component/os/freertos/freertos_pmu.c @@ -201,6 +201,39 @@ void acquire_wakelock(uint32_t lock_id) { #endif } +#if 0 +void pmu_acquire_wakelock(uint32_t lock_id) { + + wakelock |= BIT(lock_id); +#if (configGENERATE_RUN_TIME_STATS == 1) + uint32_t i; + uint32_t current_timestamp = osKernelSysTick(); + for (i=0; i<32; i++) { + if ( (1<@TJEC4e+%tC#*Ty9!HB(b@&ur7KdUMIt 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%0AmM|-RbThrOZ=P|6;?8iH7r7n$LF#ZbfEua=~ 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 delta 25636 zcma%j34Bb~7yrBWy_rl#5-*8F_RLIztQtu~tc~EwVk@euN}{D>Z7fwvB@{(l#ly3g zQacr)BZz3Lx@%%9il%C-rF|5cEi?b`oh04dQn0Fm!$&~09dukH<#(XBwovS(l^U{^&R9T`VddFh(-H*&_0`G zZIf&bW2%*VH?jDi1lArRnJ6EKxi1I#6dPFjsQ*zA9Qw(Z;R@DL{R}!N+MY z8l-+P1}p8z=QdL>TMY}uitTY4G4oqq)E#u!{^HiEN9tU)iLQ#aAm3<+Cu78NlqD6c3{ThF%iHEihm@@Qp)(bOQ1g zm{Jg~LbxB00GzcYv*h>tnyO7~8y|E1_B}4?E1Yhs3Z59L>HDZ8i&H1MnO(Qe-jW|S zZH+_{veebHKg9QvP^pO1VoWV`dxEzFi|}%$ z!)}-D7R~2OVaQc)vXq07z2@z6*WPl+EC}!2t!!gNpxU)g?jMy(a~<;hsMal+L7DU? zkjzS8$~OI;7kf`@8wHTslMBsLQS_sZFQ`tr-eqhC|>N0TM(#z=@g{x z5d685%_63dILTja>Z&P?mzw3YvC_nf+nHH`>a?SQSDN(BH8akgPQUz(=2bltq__5) zth9;I+ypXTaWYPK?SRV6id?iIQ>`zG9}1WNm;sm%VC^d-Eb4VohY=}Ae(L!;4GJA^ zOOSZUC{^4p%AyeX^ihmQp5s0MbM!&~yzGZ!QK0$rKb!G^1^((Jx4-&{TQK;kZl|BR zUiLPGM^3kE_PuBo?lx729u+BcPz{N3!(suyj+ zz&1Dn@pmoavW;OY9Zm69M!dI81h&`_y)UJL)p`^fWGtHhdZI?0gz&;of;bNN8=#Lw z{08uMfk)lvxwQ!Q0PZanM0ah@F?a0{`E6q~?NBLiH%7J4mM8TxnAosg=%B4lRl)-! z7pTr~Xe5KF+*}`K#n7P)`DViD<8dDe^T*J3+Ruu&0f*f+HDYb{i>aIOk z=anBa4ShK)OC_8}tv+V0xB#t~=9SQdY0YLgtu${R7xzLHKa)!wR@DYVF56S^_oBSR z6yyJ;{g*MVa!9;SWmhQ|>Q%~DOfkiK><4UdVg$Ih+c%A6_S<4F9Lp5gXg7@2sCCY_ zBq9YMzRErrxvK46arA;e;!EsdR<9J!6w`f3QDKBHC~wxr~5=tbMBA@`Tdyi7Fsp=Q0s=)m}IA| zL#hm>9SvgGjp!(X_l1(HwI!epAO4c;fs#tBrgTj>@52qlJ8jO@FfohGF zjU_RQ82r_*${8=o6xx*RPggINH)2x`i`Wu$tYb~Fz}EK>SLCM-whK~RX;U?BfXgVc z9y}9Esh@h^j#Z$*Pt8Sg36ejp(<5zy%^QEm+KiG8;Va-|MPf)FW|J7}z5Cx4#CM^j z4|?_LDtS~31CivnTSUiZ*u>brYHM$$>}YmeWhaU3?J9*rNP^8Ib(K;uBZS)JZ(3yb z(b-5_D^?gUBvRYP?oWq*drQkE@wd-s3*7gReFpF&pa_ksl|&O~EHI~IJ3w1&Byw3a zde?A9y=fz8qFwISGJ>3u$G2>kX0cv3b1}c(N-Xut(L?;N>ltC*mozfzb*M_XA}A0_u}71L>8 zLkcU4M_DN-EAJ4GsUZr|eNfV>6@r)woR#(rKnL1Lgw4|Bt*s0#&eg@32b*=Jergr4 zRUYhHMjOLu@7N4xKWwk=whGl}H7q%AotFLLGK!B_wUVKLi+i(5Q_!PeUctP=Of=^{ zYte|7=E-BY#EDgwLf#ZF5zM7OIAY921%u6o(nKjiiU;2vM+@^b05@l&<7OsO?^MnJhZbGI=w%HJwv1+aWuJI#x%#yb%nIW3QfPY=&?BJ=3Y+08HUV@Mi5qFzfTWPn^6AMXE@^UST! z&0WWsq|ok}*fu|wuf)ek#5u5~;Ocoxz-w^qWlQ^8TxC|gY)VLZ`kte$dDrMMqt}LQ z&i21_cXXVYq}?rSG{K+tl)vi9vY&JOcq?(V8HIF}Lb?a2YvrX0@x`a??95c3CktFB z?fX%P`Zg;>gN=cAFD}Ml4waa_n8F(!%zE8NH(FsYwzy&iVV1XcJ9?X82 z(p@8Q&xe%ys=@BEs-#$+if82~PhHi9oa4oT&&rolMra2P5=8Uhvg|fjd7_pX+rC1) zk3T1fK0^f2TDCN!FVXZm%LBd9?pt1;`Me;;Aw?WicDUntLEmq>ARd}2h`R@ut;u?% zA$R2WrRTj@Ju8T5efu?WmOYTxlD3M~@RC^GCg#_dGHbG)c%f5@>ThmnCsjQEBKE^e z`uSkE9eRd~yH|x+f0ll+?9-glJdJS4Nxk}$hjMYRWb(7Tr&lOBRrY1CYC_Xzm96P> zK}Sl;COD1_uFF3ArlOxdNmg#8GFf52D4u6hCM(`L635u{1C)m zm*0B1ML>7RVLL}AuYDrNRWFhczic-4!rA`bMnM`}x&Xtysk+gYBI(txcDlq|ZUA;! z?l$td-XpBfNCtym?N?{a4=K>pm|_ejBfJ&9>a*76*7+&Rt#b{_t@A`ixo#C=I1^oM zkiNHa`+PC+n53XwmU0&74qsK3Z;fml_6w@)1TeLjI!vu+PjF(?J95UT{^Ub>;iyFY za}EB3?(y=mQ3*8MCf^wqMV89muUJT({OK!+#XGFR107k&^;NlSqB_a#{VD2j_#jBS zkn~&iN$Y|V(v~LwSglvDVJ)@3&x&J3y;$dV>kd+^v=kN6Rj_?$0X9GRW+6|uaVc#& zhEx)q6^nXumA`aigG-;I@3pa~J_pcSZ2PR$5MeBRRvv2(3YglUCELd3z^n1@JMuE~ zDbqL<(+?oze_#qL5YQB2X=aL#T324wlhMb;%X3B#%KjeFzgW2}?qz7<4d$ZKx5kh} z%>}RgXj5iNSb>jvs9ckWb8{sRN>~BYtUjL{Hf9dFE3Y5ZhWgp$sxcZ#_itfT8 zE7rBa@$!hVam`KcM04Pytl}*7#_aM3TvM;A98BY{$=IEd(Q^6NNYY>aacnF9saD^$ ziKSXosHAyd;(XKza?^1ykp1%5aqSYofAd|l&;%wMjE*}3Jk>wx9M;EVg zbgLmItuZi%Q{Qy(5*IhFT3Es_p-adTZV8pBF}{YYWL9V9rJRAYqR~RIQ(5>mC${*8 z6DtsI0tiSG&h%HyTX9Dgf8wXfJcM$`o@`N}GAUs-jW)&ye{X1LRG<%F2x zAMJ7Zkp(S}bbGSO$V}Em?d#4dkA<{%oLo}7sy5Q?F-_FpU8yyRW5Y}9W4B!KYF-_e zf_`i0o=t0BRl|gq<>K}xYN(s5;bNQRb1mCoQHUyNqE@>Ca#LW!FuT9U@WFO!5MlNJ zEH?U@zH;HK;l-@-XWqv=g^=~LVF;O_n8BE#0uPcHE_O7wfn+(i{5`8Cg;R^{8?!Z+ zG|)52$viJyjX`3&XC`YpfJg)uiaW~U;z7N-9!F7c^{PWK!s_b4Isy9)4wDRLh%Z*h zJH^s?^{ic2Lk#iiC?^+JTP;@TF$*nY4C;%{987yNom}|7$M#nrUeu!42M)o*-51j>R>87bA+q(w5}&M{K((<%N{)WH@SaNvmlql5VyV3VDOT- z8ZW7HX&hSUkvyX)Ehx*u#kK!wa+F_UTqSAwU_Wz)?2|t)>YK9!P7<%5y22T9c)u6h zwD#rHK1Vzl4lPUxR@gB>t!MLEgrQ`R$kIJlD*B=Gk{zsN!X5IEiE-o=`K^hQz3lcV z)U8&oo7gD#XW&frx)=7it1>IDnt}1&$+0#2?sk zI|n-~UMzS{o0}2t1AGQJ3-|@_0Ki5D>-`nPVUcwL6fsv6rrl{FT$%$P=5czEFP>D9t&0%9BZy7mFo^R zS0~C9lfw-|3*mS>*i7=3G$sPW`KfVsBf2W{FT|?>hh^*JSl2TkibYfaqs!LXFnsHnIkP&K9(`V`;n6 z4%n9p58^mKRgyn`EhZ@4Hb%;MlHO*px4yuOd@g&GLnAm5sr7CiG{%z{1gy6w5nV3A+YpQ)=&KI(q%{ThwEX;ZW7la; zy055WH=GqG02cvvfPjOuKY;D@G*XnbKx!^6-bZ#b!)mwts?lzrJYUa-Yq@-6dbH1J zryrYJW^k-n)_lsZEA=CJxrebMi1ha%ioAj@COgCs&3xkRinvmYH-);Jh^hMfO=UVGJAln<%%R1cT+FF;;U{^}j1IvsIz8?=$8C`QzMB-55Iwxn0o93>y!WG)pLy_g= zS)H5DadV#YE?2pr!I&(!D$kzPm5h=`R99KYNH9{xsxu}mI zrA_Nt>Z*0R7hoNYf-~J)-CD=V=tRIb=;Eh(cUT{QRd*X6e&dYajNAkwA;V_Gm9|nXSwU_ zKoTiGJ3D%quj7wfY=&lsd)9H7S(!Om1LniDwE*T+9gc7yhU+|pTL7$!ECCDhEx9zHLf7VBsEb(Aaub>>PrfL`F$|Qlv(H?t?(J29W z-q`GT$Mmaa02nBq@t%dH~~V!pm~^=Pgp)Xe78d!UW-6n)Ef zz&b+o0qq)Sul!Z?Pw<8g;x9lr1Gone4>s-9G{=Yz@|kVZG*+);Hsf?w ztHZWmrZK^v*b1kyy6v|WPS+#cYuhy4yP<~L%bE2kMo}Q3C7?YZ2k<;#3?T4eSg$bT zl5M}ve5W)tmp8bgYP;b^qj|2Y_Gxzkj)!nss`nl2aMd(NuR7$Vb3@bUUn%Du-Z?%< zqiB9HORxTNgzc@_2~Q)QX9Zz*zWxR$K9aA@O&)mKMdBi>nbde3(wESc*7oR1gD4R z-%HXi;o^E!`Iu63^=fDN{=8O^2eE(RjG0i>=-`rD{$z;h`$$)?wcw>Gdi7Vi&HR`q z@va0Z)T45&JbZrpgr@cL`KO3YUi$WMTB^zq z-!{?F59Qzm*>v(FdB}n;qUdGUz@k+ zRmSjS(JZYQ^2KENjdwEq+NrqV|AQ091Kzw>cI=&-RR4Ee-n)1hd9BR%{a1_(1b_p?0(1bcINgPim~P#KysD5h zgSkXqC1=2?pFw3(lAO9?0!>OP`*1}9(cS}lT#|fx>Hk#DY<<86h2M*vlxxVD>C1%~<_UfZV;^;_2^ zxt=P(7h;c@zfX|(NddTLbJ%K1IfIuvs?Ix3EAbcfILmpdpOAZ*Pg%N;(L;4!<9 zEbsjwSnEVKP`~-WL_zuegD4jGZR`NANAAW-PckEHN&vmA!=_P0b1w}QEBolfG7``X z(pd?Nq(c~zERWgJCs4NS&gR!@P8XRI!b2rP_a^Ex`P(fIs84d)v5!Vj8j&oUwr7yf z<>$A*piM%)lw|qv_DM7;S#G_fB?|`axI}&|YqK+mkX~}nU2hXn{$W?LJ_WptAJ)|F zUQ9lcSM2^#!}`!KWfS)_p)@_YY}UsQ3GIj0DE-jCA5w}AY9*c7M>>wv?E|^R{?A$B zo&9%MaK3CPxmuQXU=Q`ngw*bU0>D66@ROU`dXjv}G7G$ALk@Ky6e%mq7twoZvgz;| z792bL86(a)G7ZNk$B}0|MqbgZtpCwYgv813S9HVDaHgV#z6f$lI(Tz6X)-+)N3O|< z$6h46&>0>)vGAQks`-HQ-=)8FsE}BY#+# z9sCp6Y7iZaIx;eA-Q-BwUYS54tmW|}a!DR=+(#LdQow4!n=$gS&%!d^1gbk&SKHj}c{O7qxi4d1)vuDV zuwJ94!UX|*#BmH1B{_y)WpgoK9?v| z-TCBl6JZ3)#ff6=V^3}5Szly$Q16yyhrjTnY)<;- z%Tr{ty!xw6@ZWX(x?FDsrwEH+2)VvKMXd7o--L$Gb-80UPZIK5ObIhb6kIDXNSRnS zSU0rF?Q87k7>7+CS?W zvzMiQr{zOA=q&=6{_R)dSOY=K>Q4EYA6}s$>1Bt12qVEPHH1;2A4`n@=+evXROyMH zYBSpZ>eiaVbA<;6T!mi&9*PSBjd}qX%cD`xxN{}J zBs_>f`uFax9=s*+FXd;f9kmj=S=LH(Q#hgQq~N zL%^QFwnn3td9Z!ZZ*SeM(ac%0s;5D6*4~A0s?o!j1>Kl7MF)@X)519d@1O1XeuMf$ zofUViT25y)!?k;ziPs!v{G6JUMV6tcxZ_xp!SR+6%R< z%P982D2M>8A40@JWT~HWITN4T_2GgPTWw%vQBOl#jaVL2a`(|O0=lpIx7$tR!&`3UTH3-$wx$NCbnKPt@s;{`>@PzcSqW}(1gKBe7wZN4E zOe}V4;n))He(9yF3Cs;dhP6(r_IEMwlC|P!w*K_;+gh$@G*un0LNm+K&Z?WrT=FHMIqeqyjdbFYVWEB74RuMYxTnOI|I0Dcp zg4kS<1Kb&OT%w%k4$Ebyr$2uG{dbz*$wVDoio5poF-CLOCRK_DIg=paxrmWd-EKp{ zK6{Cp<(-u+!qEmVqM4}ca23b4 zywDw2U}(6C$Gbvz9O~VxJVqk$g5t>~T#cC?haV<+xJ-+1^78}zkwcIqh3VCQo;eQ>&fC02hyX@8;FbxW4LwiNG23ud#qM8y12V~_XDB|gBfHQ>#FUv9ud zfSJ<4ke1q_9z_XKYA#K|(6RF|3DV|?Hzq!X!gLV2%&r9`X7b3%3846a zve2H!c&6N#(h3x&Xo)?8@k|{#)d)%$D6iWi7|-iBUXKQaO{f#>ox@_NX|6REufJLt z!a!zo=S%izyaJWCf0lovEnfePPJMtr23Lcw`S$HqyXX~^%pNE|Zdp}n&eFf)>MwOLPfwU)YD0dO~ zK5wf+QR8!qP}BgWjfRAiWTm%;yc*i1u2ZQVy_j8^d)`{8w5}Jpt|;d;B!>K{*fiwV z?5YM0SZgqCm{v@i6M!Xv0szx2&r?f{xDWVH0ILCO#ldZrC@&J`cd3qDt&0^b9W=>{ z7y_FeO3cR?%3#jggq)}XjoML}?nPqqjh@?S!NeXHh6DE@f{CptLDo&?5oTf_cPJl` z7g!LH_tG7LSB{)I%Ndq0nDAEL7>YdJR`#?h1el=Q@**v=7ob#D^7GJ=Y1gPZs|9PT zcLA*3SWQ@)4F)vUl1@oVr2D_a>pFqcYN)yl-TA*h_czFy{j(#qxcOaQsHWlV4SW^u(AI=l04Q zXcZy?&0EmZn{*E>aMx1oti>!&JyFRv7Azx=t9U*?6i|P?eHpZ~fSR_-R6S`KT+yC=0D|JI-W3o8G7_5I2}`@T=}0`Yz) z&~tH~j#lMayklTNlXAvY)HD6EGO7v5qp|HQ`C5}_~lnlkeWvDWv87}T_D%+Zo7s(%rCWxHL$U-(IVlaS1 zb`BvE#l$di5eUbzIB)?~V`_G9r}zbvab8Zm{BzgZl-a?gRa9dg7$eKT1UZ4T0wUTe zCxgk5)*f9EXM$NFjE60t?pmkKr<~7^Fkc_zuGM;;JH@tB`ZOnp^?%D%0z$};{zb_1 zJ9^hgGl<7lOhIOce>Uwj&>A}jOVgF(9Ai$$S(K|}@)&POchS=gLNb(NA>{W2mWS~+ zR(vMnQvj^OEKeLu2QP3jI*Yh#(0p91%f=wPyURK&BKcgz>Y2 zc^tcWjG1tAH&3OQ@~GJF5qMzBWV1M7HwH)zX{Sh$q@^Fr&+@WLB(+oCh$OREIrd2M zu!E;!pj%lvp7eShS-BdNl2*$8a)~~bc$Hx&>PY~sA*QucT1Jya|7^6w(PWI4<%8i8 z3?za~ReBo8?0|E)7-FtFR@9$p&q1q{O9m1~qLs%6@)X&ov@nvF5?Cr-g$*yD3m^|5 zPY-JLQfEy4Q=b42dDJgxHnhSdtsC8`+r{CYCjL zNjv3IEE%Nz3h|?8vlb+w|54y0P(*zP|IE$jaChf&_4D0tczeLo|M=5?&VT19(lGOV zhja=n*UwB`<#(8qT9E$4yLovgwsWr9K*hHeY0fOwid2%}%8gdUt+}!q2YThVIFhFM z#Df~+flgY37v;+H4E@?eT^di`*X{u|Y>m<~feg`Z1UY++GCzT2XqJL*RX$B1uhY!S zN{2+Uj&RD4i6oxRT&2(?Vk(}AdeQu!%zSA`&k(7oXMH?;^uOaTc;al(vGgL`R-CDX z@1T<7X#U!Nr9swz@`jILvKsSp1zG61yg58)e+yarKWJyH%Q>!;gPoW$`1~{0RVj@{)mxp>*8LCK z#{WUvlEOD>(353W=CuCHI%llAJsBFC`iynof8q!J6F>T&_;>$^Go>zj;>;$0D_Zj( z8k}rO%u}RAMq}-6|A&D>(7k_HfO+K}yD|0SIbT&fW!6(9LH{{=b2R|*{ZElM0_wZX z8EZtFdK;snT~bJxsgeHZABr;h*1zJ)8{qS_5UYUBlmFip@cAD!@qf^o{fEZNasE{f z8(U|roQJ30;FEDA=Hk+;`dI}funifny@1K#ayw;y8tJBB_evUd~ zU`N`9q*>`?j1KReYVOzWwkv8nk%9&}ydMbOU*Fa79lP_1_b!AXZI+VXmV^g&acqAe z@Za3!JxO;jP$Z2~X0#<8BZ56Ldf4yR4)Byvf7{Ve%IUV`6O&;*US$GyuM@=YpgOBU z3F6HV_d%GuPT843PI-6SP+zTk%ItOoZ#^5LJ{v5j;cz3S81=YSn}2D#e4FQl1RlN# z9V$DsyguA{sHUCeNhTRe!&TR8yhj<18GHzxd~R6&aD1!wDjvh#uT53PcO;Qyit`Vf+4K;tGGg(B}Y*4ga$b4gILse8X3wDKBeEvtKHAP`& z+OXiL%APJbQmM+;sj*3@l_&AKcLB^vF;Ad?0;rq&J ziFBoVZOUZ{ev%EgBY1f$R1JYIiLtG;9rncgOFB<{v5jldV(!SfAI-fn*MRh`)>fmp zj&4!-Q6Ycr`Y@OcEJSa?Kccv^Q)t304K`qJtNt;udjS!C!jV64XiEry0~Nx|Z;27SH&YnC|})7drM_K*DQB>A|#-bt`_?X7^d}kE@91;{{QoTG$%srx+=HoHK zF{NV;iGIeU-nYIq{X_Gxh}6=0Yu&IC)BY^d!Blw7oLyRPv7f9YrYwte++4`jeCV+f zwPH^S&m6vS&ElqQ;tXxrvv89-U)hyII)<3kZPu3}j$|*W+ht3`fNnkYfBdxUqAz;tP%AkH^0%JbekL;%m zc>|w+;2N-lWzIlsut`^C{j;PUi=Tg%CDe3Mt_~tM=`Wp>lh2V;^m->{Z7F!3Od%xKa&8E@OK7-D z`D`djr<_Z%4kc&liaO=giD0rswt#8;K>^lKfyWuQQ;)j#XbcItnHJs$oBBv5k zKycCERB{S1J|(9zu7E_C-ggKOoVwxm59AR}l`hh@wN@*SZCb|v#=5=W!Gfy>TQ=x1>(9JzD*!PVpO0n#Z_! zBQa?nKIz6O(Q1NA+{?vitr4BmBu+^{O0;TlDLLcGJOb;D$4RbE37bHSq|VZ50(q4X zr?UH15}}WRAwR@#7gX(5PQOa>{MZ8s_L68nX!1%+LJ?`r>pw%}Ea1Bx%81FNJH2gJ zwofKq$XCj($)p|WqeM?3$z+AndkT4)yk>cC3YsKf^N&Pipt(>VZvN4d{W@9WrLC`~ z<=QN)jg65z#pE;z{uZx_BJUCLM}!|Cyn&G1S5D6+BS=rB?HtnAn>|{(4XCxeH-|)f zYZ-oGiL(D4@{LE9?{3SScgZ!PXHO*S6D<=KlO#%8JC$`yNHi*bbP4Gj=p->GtOL`t z@c5*&k>44K7c@%LQqtVldDc2mXzDp=p4g>iFC{|*c01DWReNV+0=`WVN+R(r#S2yWBYs$t*{2+pIY84qpe{m}rtI1^IR(7r?VG)geBl)*K zyZYhk1<#{*rb#7Ig!-=AQnQ*2AmB`2OM3gd(be^D;inKH)R8V_@mkWnr>Cn353cjv z$_Vw2OSh|=)#pvEk(#)b?^&A`MW{6{ZYAq9z7Lx65$Z+Pp$EFAUKhEQsmARObX0ge zXL5vk3cYYG$)oY_Qo+XBzga=iL{BFH}!U0u%@I^;~r~RN-FwAgxcNF5g&o1N}w!>P&+%6E+3M3 z;!w;Vl3DFmf_}b*GRhLmOqMjOoZxNUf7ONNYof5qnjsb_# zeKUEvaRBVyOnxVHk4@R|5!veZ2)(+o#cy9$`fnwteZRIcA$}+*Lj7E6vyC)QicmkX zUa*>t_$)brQ*@7aPxij3GexL@_&E!+F%<^ab>$OR-HmOc+eKj~TqQMh0`14-u-^k$R*xZ0Mc9W4xQA0|y^lmSYwOhR#C2zy$*S*6jf^wNsTAxZ**!T7(5rT( zQyIyipV^fuWmtuF+AUkkh`Di+Qvwc>eRPdYIdPB-ZB)PICu9~Gt$g$eiI*;0vr0qO zrj;JDa-w!8x6%uy4YO(2>fki%nBOr!q~>Jl&R27!kR3i9!qs`U9B_9mt*{1&_+)M) zTc^U+HCCmWg|wu@Y)U5!xlMkvv^Ye(2x(zSE+>By`n^jr9U&#2Eavofz0NKlV_S^^f`nu(&En zFeULy&~ef;fQ`bxI&S^cJmEO`imX!FeM)BgvDJ+wH_X~6KP4xHJGJ-R%978>f~ak7 zF6O0YiNSLxjt6@G=C)*fPCAjOWj2COh8E88Tg$!$n>XiB_k66SoY8A%n3`@^mYg8j zrT{xshZB479Q}6M#%s-!+Db<%dZpLSe93D=m`d%+qZ4F4!AbB7@+{qKQ%-+DK51-{ z#V5%?s<&CLpCkt;ZMMg<=4)&|Xs11vsBa10cl@V*txu7w#A@;Vfvjar%FZe>qES>p zHE}iK!KcYFnzP4p{xs>LrP+Iw;EQB1J>j+#UBqG6km`;rC8*Ph$`#fp>2DRW5tV{9 zhhT#eqQ@!U*9MlBOcR!HHG<5+EK$qro2_!$QR*M zs(vBONE^$IUr0Fbt;1Zxb%uLi@xDPm&@xo$tn9r(=J+z4?KlKaa_5_*IUQPP8FZ86 z@r|qd*5628XownM^{$~$1ypPHa4UQtWN@jH7}H#RMe)9aM!f7+3ht0#lA^qRhrE*B z-93N1QR=Z1KSnUQIexU}N9%P1qYO_?l$xtS?krra`_=eMMc9gQ%hNzhb14CLQGLI? zN{73oPt+f-1>3bddNxS-$`cbFOvL=#T>aFgY`sh3$XVrwyBPR>do54yl1W7064gBS zJQV}GSSH=amin(P-Py~QJAaTTgf?*~*B+2#vUS3#p=LLSQ`cY-Afd_(%sl>NL}M-><8270D)bU`ED|kj9I}`g`Rh; zSVw13m%|c4XaG;PSe_E-IbNFz8GBx`=ymiBLVN7B%=f0}iFO*OpN_GNXhNgNUuwU& zS6SpkKcjBD(#Mw`A|VzpKWY@{z`d4)0Gfak!d}auK)O@ow;I_e0g3=G?6vrXQoTUJ zmC#7~DqR36ku;lVl0%fl9Q45602mSL^vRt>$d+oDZI8T7e2C9gG& zpgDDlxi!sbmQ<%JeQTO;O&rEj2PqA|8WK~d>~9Sr{&mXv)^rq!R60LJ+hp{r%PI9< z-M&C8fUn}4Mrc5d796eW7LUWE+gxwE@1dsFCC;(ZR< z-vHcGl2hp!|=9tihtsoN|IMKRD(Ml{$tCiEV`2fH!`GPjxWJ7kdClZp`~RuJt>ff zmirQwb=2I&GN&({Pqh&r;Ic@mShF=*=&wSO$%%5uQRA`4vSAJRVEE zG}L>a#Z^Ri^26GGi^8|ySD!xO#qpbYan}dr>Se_Bn&9zP(C{Jl?6arL(r?Q1lE`fWN*#jnTmVhOY;`qHeF6?x*LfQQ;JxM=vDpTI0E$LpTW!-yp9jlL}!%`aTMRSKM z{a4X!?H5gW@q4YZW)+nhaLdhAR8Q&a`z#OF(1(<6+Na!HPq(6l-rGRE2<=vCS@{7y zTrXl9JN4V%kHyXlSqDmJ$2u20my+ z84hom$M*-sp|j+N45jESH!VS*(ARlw{mO1xR*rV0z6UJBj#58DpFLoiP(g1JVpE>2 zq`UMsNT>s74p{WZ>3K?{4_K~!MvrRfb*E+HSC}+fUp#=5VhY+Lju+hpyja(Y7bElV zQxxcc>|@z0NN@bc%{<(a@hzoP`zA8@>Y8_>Hq*x&urHlvtGgKhhEOZHp3ofnF7Ks@1Jn zFVHEGOOU!7@FifR4L_`N2tFOjUkZ~h))p!YFVfzmgYx4=bXue0eTl{sA0_P)?dpFQ zkK3{y68{^ue^>=P46-ZpF3}#%j{ikIVbyrP`xKTcS1-}l?*Io#_uQ z<&B>(J3nLj=qLILp{F}5ephH8`hA^c*cF;bShwGKl@4K{_Gdbkb(>i~qp7uvpeQ0; zu2BY}OI6X01}ZV7hND5@U_=H(DF^RUu|@cq5#p$Wc3 z{Eo7k@EtwL?}BAXp>mb*UHlmCcLcv&0=9vLN&@BAMC~cWkM&{oN(223(0e0fVjJ>Z zqx|8P%pQ$=iy)ry{+mxDPB@}`#`6+|T)n^#)7HySCJ1~2Hiya@(8vtMCh*~YOx$9K z*Z~-SSTSk%Pkb5e0E+(xv^&ZT4WHPbk@8R)Im)ieLOjnkxtT>h866LZJn^^i(B~~& z8vlpZv60r8FAGnIpv4F+pX>)lT_P%O~jBi_{?~3q0qwd_Q7PT6w`)_p6fY#V7i) z=cHSq94kd$sm$@>Q?+cm0{3Are*Rw`I3{KJF+9BDgIS$N=^&ZqDMVi6TchLWYgxR@ zVWp)vpUpPSW4!q;Jf1`B@Zmq8FArDpe0f9g;<|!Ty84+?jb~rO?-X`v)bHw)5?{Vq zXnXu-*`q4Dnu~u>_0RO)${t^Sbnw2qv)1J)!hW}sVg|zZf3`@?c^A<)`-@BI6Uu+arl)`~em>@{8f8s5Kb7WOQvxFR47&Yi zOI`$@pbKVGRpvor)Zksvi}(UQ4xcJl+LT4Hd^t{jc!Z!;-dTR?G5r_+M?*mAKI zUrhZ>42P2a5c-`~MkSzwwdSV^wEG!FpT3MEjhzJ`oO~oyyjTdQ&-U#U;Cdpd+kx5u9$lAr)c>O7R?CPPsdl{dxQl9DjdT{Ce@(e%MLZTD+*e$^&}+7yQ8Ie-Ewvod)?pa;MjJn_ zP>%KHztN{dqfzJ!Q_-k>czv%ZtwfM((xz-j@$( zLbEPd=nMP=UeEd=_bx}eUr^o{h6(O316efP%=;@hM)6IRbWfBe z2#nf3FyvfbJ?He zEc!A_h-FcMVS-20C}3L{t-B}6uz`&Ex`miZiZ8=!4Ld;$1=LHHZOwV*S67{U~! z|G)5gNZ$=PB6yX>PxvUyLo2^Hy7>4^w0*-9VW=>4YsjVHbNH(vF|-}tlw4<3zQVBt7%#NP?~UiuqP8L32t3csKXBg$yl4o<+&^#)$93}vVhN3c7!C)>U-U+yjPCsp zdXv9!%ac&yA<=#X6Hl9I`8{0tCZq%V&WU}!#lC-H-#%62(eeer&w$&22Y@<&ZYB1B zfG9vqz*8$N57ULiwD@y;dHE&aSHM5<+C})(5AZYSudr|d5t{?%y+g#bg+zP_w4V@< zM3@VjFYp-fwgU8+PsEV`XzuxU1N`Age-^x7Biw^HK{#-1s&=Xj~7Z6(A8X9`H0^0AM2Eb-Enw9Uc7kJkNX1**V*eXFJ355IY0c>@wCgwsKlztxJt~`jzp*`tx?lc>k9i z>6>+&ZyK>IlTRFY)#Ir3Z6xfB$M;u4=ym8@0>2^>T3gyTjjAK zo@PGlY}NX2Pw?E61{Z!qBVs+;S}asI`7Bz|>blA+)I9PNM*V1yP^ZXyp%->D{X6-H zP^5NI$CIZS^%m;Mpu%;4n#o#gpOJ%#BT$#>INRIebTR46a`VWaNa zOXF+u8t4t&P$txQ@=l|k$oygQ;dGGHhn4ZvirfkzvV`dK2{o6(*+0O)<590Ae|#`< zOmaOGs+GLfm|jlZ?RUAQJyUmOaI7j4x;4bY`AY22(V>KHd}3b^C3HiD9LDtpZ#j&| zyz=+D<<7KS6_Im5AMr3wq6Q7PhtyYLhL~$E~5d@@fT?i`2_>(Z~&g0+`YhW*dMXwxP%Xge#|q% zb~NHMqMxu)D92mOe9AtC2E0RDE7P$7M{yfH81syM7jE3bA2`}%x;od!4-6rxvfzXZ aXAwjf;y7nnZ8+E-$Sjs?5@d;dY5ET@KYiT* diff --git a/build/bin/ram_2.bin b/build/bin/ram_2.bin index e270a429d87d932b5f0160255d9b774d06a151f9..30b8451861710a60adb003e591e31488761d9d45 100644 GIT binary patch delta 25070 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 delta 25627 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 diff --git a/build/bin/ram_2.ns.bin b/build/bin/ram_2.ns.bin index 6318ae3b6b065410325c4530d3452555e61d3eba..5c11028ca05a2db8f5fcf5bca4a028da2b87dde8 100644 GIT binary patch delta 25075 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 WIE@fGk;pmAYD4w&U{<+YlKdZXRee7I diff --git a/build/bin/ram_2.p.bin b/build/bin/ram_2.p.bin index 8f06d17a289f9f100dda28eb56771d6c77cd02ef..921a848190ca9a8a6198457fa023b5be449d8a1c 100644 GIT binary patch delta 25075 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 WIE@fGk;pmAYD4w&U{<+YlKdZXRee7I diff --git a/build/bin/ram_all.bin b/build/bin/ram_all.bin index 613fc487da4dcedf06e44a18d8d8604d179ec4de..248afd0da0b362e824031f21ed3dc199a1b88e1e 100644 GIT binary patch delta 25342 zcma&O30zdw`#*lqxpxK_SuP;RCd>?o2uKKsxQ3`#5ckYI!zCM+l+;Yk+%>b!9QEXq zsinCmE?rTPK4oQQ2JU-gZspR&jbUb(`Mu8o)u-?0|9buP^>Ci^oaa2}InUXjbM817 zhrIh%$ok!Mywyr~?+#q+2+{P8UXNE!5==%VL|bnCW_Nnv0Y^jaK@DPdy|&B|thKRv z6}1TY!d{c$eKEdUeD1uQ;Ig0y!4#tPvi2xyp3%=8-Yp_8A~!PsqplXksCfwsA&c3G z*32!JG!z9ntU!=&Y>?!S9|^+vN0NNJz`Cm_(`VB-A`b@;>-{1|7FrkXc`kFZGikbz zR8_Xc5}QX-_1ancFSZ49ycEmcOEy8s)c&+5k0J4LMn9Vz^+VAG5A6kq)qih0pWJF% zAsHKLan|SdnhZOZ)RwnriFMZAQS@hr^~T;f5@Yq*mlQGZf+WjC5EekUX4!)99e8(+ z5ag3ftUdSL(r?`;$)9ZA+h+eB5`7f-wx9_{NvCv3Fp59R1MQzL7SLu%kHV1po%i}HmSKWoV0*+!ne=zkQ%Ir2W0 zWNX+Vv-R9ze~-+}jn+R7&!BTZ-8;JEI;F21+1u@_r^L?+K5k>4$7gSkuSb&5=RT_? zEk?+7b|ZXt)86mC=|H15Z>m+IAry%kE@TU$ke!z*2nRqvy~%3+Zk?e)okq2W3HpmhrFX2+M%#*c4YesY<6^nwKvSJ;IWEfH``uN)y7k)g zHLj{8SIHgkY{3|yjW2EfyVi@C7w+!$_^VfYY3@`>JLvkwCd?BO1ntysAqszo)L>pxdI2J>4t`nn5&FP%F`fSce}= z3cTw~_Q>5_Zc=z@)bB?FgM#K&~4Mth} z!)8$Bfj;TWgdNwrIfU!_pxwSRH`KWleutIliaG`E@$sMg%fHwPxP`VIC`Ut>V ztX+am&IOFWD9QU^z|O#T4+YX4$X+mIBRq!iI-m`3-j>{wKkW|CHrduc5qj@_GN+ex zDnMK3iIIw4kLP3yS`Rn3>*l$ixVz22L`*1ikCL4#!}qt z@r*)Qn`k}zL-PjrT&)$soUM3k=~lnvjhlZ~eGwJgX)_Ch1pQf`E#BIF*Ytd%Oov%y zv-j34$QbV$Sj59;tpkpmy0)?1do`Rd_{InaBO3Awzq4%X7+D(P>1{l^x;Ke&X1>_>;@q=bEbyM(hZwsZ|ItO7n-Vft`tTk_2ghK(Z0;U2M19JQI>piAQ5XP0&TK7HB zxK#zMzk5F9zu=~^OC682`Ca~ViPwLipgSvQY3}Bzd2`g9#4fQ3*10Dd(en=L>Jvr` zze6V?;|gmc^4(^^7*QCYt#tO_?froe8(SDVO-TB)oMH%Eby@8vGMjBcc_n~muM6@~ zguI38TlOL1ybc;#TW=lo(+gn>oR4plmgjGm+_8Nil=3dZd&c;S){{Ra4vul^^1}+{ z65fM&6?l(oa6b5&} zab%B9d)G$=YZsl?z9-Y@uXgLAlPU4spj>)9B=Zuuvd;qVGF^}t|0K$Jz+X9Gy>v3o z?^&l*(J4t^9_Q(4;XgN-9q&w79IUMw3eJ zWMv0y^5NjC4SM8RIA@O2KYzXDqppd{{5@tHZD6uAfK0c8bGoaZE6pm&LmP6{W~2Cb z0qX$U0bc@m`+kG4u={>*j7UlG*9vQNC{$OSsECS5DY;XaO(F37A))knQ4oFxbIkt0 zZaEL-!eGlcj~a@>1%aBu9jNtmOGbZfmD68qW%VhGY#eCU?S8=~-3`zlACjq%Ex`hT zXiAc+*FLazENf<1>R4~t(p9G&sj*HeOKZ^0_E9n2+ALS6eQYf%iwS?h5j*X&SJ+v) z)eKsSCp8AxT(FbHt3!chI)d>x9r5PX97}No;BOM*w{0@8 zct_0c)Dm9nl~CsmOeT*Lb@DufcP>ftOyJumB-LCN32`QqnoThklfv9=EK(Hpeg1usnR3_YrzhkVl)?9YGVzpcgvd^58H*< z1-3D%x(XheQaK)4A*M7e3xRSw?bftYXJ*8so205?Z1v~noFAbmUdL~pxyxM z)l;#vyV&J9$L-h7K71TkAj@tXr_-2ozCx5B#8d49k!y_ID}i1JL_EPB zVe?8A%(0yZ7Y>i|10}{@blW$#cG3>k!VY>cj6eUAqHF~82IK>FeIUub5O#b|dRgWZ zNz#BjkP?e5)#ZMV|HP7;4wUGL3l30#;p`%W_Tbfd5+Y~!Z2`e+2x7JxS-d=0j z2&hM{l31?_xp;x?CBe7C48=}YTT{+h;#RxeRTWN;DA+Swqp;=F62#}uL3`I)(t7ZW zdG@C^sbaB3k1-IWy=e==TE!P+qVT@|O0iJt=`ufaUFH4K)m#s!q>u`XgDJt#9Wzgc5IT4J>i{x+>PDc%TU!O4sC*OnjTQxxx;r{0m|ZBWt| zeOCS1y6dcwQ0vcUW9UPhRXZE%d&_24Ix49c-e;?=LFcl19<`B{HY^uj5O~D4zVow@ zKi<~!8TqYqIg)S}qACGT0EPQ~6}=*x1yg|~Lvz_^icTR{WRp*YU^1B3gZ9{F{peg2 z`M|pWT&wiSwi^~9_P5(fMP9iE2$V5vjX7Z0%{6sETtT`{)}tF_0$S})M)8BKG3R4L zay|JT+zu{^1+Alv|LtHMfRyCFQn&$|*m%D+TR%7-+fJ@a;bn;^D-~tw4~Q7&?I1l0 zB^_8U$-V1Jn}{$BwD}0*(yb598*@LbiM0&0co+F=?*jYCgT2LRV>vCa+Gz3DlxnOF z1-kr5%Md|2%PS=2O8H@3<&xfYYs!XlYyS(Gv!~niim^aQc(Y7b(4}Bu!NTELXweC_ z!V&S7$zz42SIgAlqPdwuFj>Cih_w_J473=Fl9WWH8Td9knpnnJ_*fQUYR)s=k($4y zAQEaBi-gz+B^+Er_QCpUh0@aNuJHgUv z>>I`Nhx7abXd|r8U2J7k9K^`Sg1f4v`|54JWbH1;m_>z-A-q^_-F7j9=&iq83?~8B z>Wh(qcO9p1e`D!5)~tkg&cYVA$lBymv#1+(EdN5Sa&sX3ihUPfhUW{Vy%VfsFQt+# z)-{(Jo4&B8qEBGcmlm#YwhtZWZzqkhKv+j5taA`%r;C@GS(e!OIi^-vHn`^5_duBT z78jun9;hDE2IctB;!_>|?MHm!T8wUnV{k{UtehkR*rgy?Cn^(TzWiZnn4i zogYQRz=4vSibo}KON+Apr0hC_v+msYH#bR zHKgV9HseUSxJB%5BeN>9pL(Ig$l4}1v{On3y@1W=(%!yWC)7n&v~sQ=c4{Y%*?fR=L>c4afizp}HH8>3{Le@*`8JPa~(% zWZvSaI?ZYV$nWGMc3UQmbXm&xqd#gaT4@FleoyYErS7TiXQ;T6sxf*P-Yv zwW~^G_sCwq*k;ZV*gFkLNYZN<&VJg2>R3zI1Y?mw^THU!HgB}iV$g_#5ArU>zWHH@ zrL!L!k|sg@>c%&h*g8oND&J-_gjh@l9K7$Xmz04;i!oFKw4v3hia~Q%)1{VTBe2!% zoe(mhN3^YvVl)~w-x^bXSb?s>9BVY2;7st-0&UA}i&B@{78sY?7RsEm-X_HgX1dC# z{A3e$`)T7bUx(!Jl%+To_-Q-XGohqq1i@)M3cxkv8gb41jtX*zC2UqG=}U&O@=)w& zU#~mh_e)^So2#-lA<-DZxRnu&Yp7*_N#iBPl^E>onziEel)^JC?9Z zVdSKFCgc?Wr2J3J5e1lTEpky-s;^dDT-cSB-U=Tn;nuG?@19~8xi^zkB4r~KNw8(V`2`$SL-~WB=vmicn zcqyqx%`4h>3s>6b`fG1Gn^pv@NiS}uWaS3h2x|8OyBkd+$@|PJhQ!YP#-5PhxFG&e zr>7s8YOT<~om(7-oL!wla;vfy%AK(dv~8}millLoMYXX{UClIojgX2yY3!UsD<*0Y zQhc$zrGa+VB~%D;4fBQg7D|E=UC=;#&lQxH3ajYtfgW2@J2lF%qzgMSLq#vPHHJhs z=CykCKISQeylc%u$SuGvF^K&dLmJHVZzQJ?E?)OI=~4|@Z!YvrQnluL|q$?SI}c~pXql^RK-kduzu z9_@ub=B2bRN95~4|m$A?6383kgeRp_wDSsi6oHL?2(B~ z_Bw8lhOxe9ub4@r;6rv(;|N4m`*K?oIULv?#>{B`^&q?=2ZON2E>#5O3IKm?1x^Xc zBoNqAyMQ|GdQb8k>Apc&2DlD*3?OK;KmhN(yoU|}9tX$-HXcK;x6!oscrtaU7DMdu{2NwK6a55J2gIZfuE#=RbY1@|$53g&}69;&rC5~>Y6 z(nxb2@ZR4@>&TkNkx1kC0v+}r4RH$6nF$Q&ui3EGPrxQWE4!I?y_i|zNSt4+Q!r+g zBq(MK`^Ib)9JaK)njMTIsm%^llUTjkr1(_^3GdkgQ~kBit3RC{o8(pg+w|-tsa$W~ z5T@VaudQXlO-L6qmknw{T1Ogi#t;%-EbFTXCV%aPYSPk(HnE`i0c>Xz@?1=lYN5f zv|3WMqAUpY*KXL@@_3T$^(~e&A5CW8#}gA4oZsU~$L5kFp}52*rQYcW*BorhH}FDf ztyO#>c8aTEw_cC!!*xnHs<5{yNsqCh1K%j)MvBx<*|JI|Y9T^ai5_Q7?py7`bO~fo z+7bJ|<)!YIVCA=W*H<*s#+9#W0e|HRca^V;ElnT|V|{EwET>DHZry2XnEIYAw70wJ zNsSLQ;|1Jc-zSh($spJz+6jJ=geVtj=fe?Io- z3Z*$q*`7pVZZLkBPOiEv$qCv4_DdpZp5En>AP)dE1$+ZI3kWba%X3%Fa&o`%RvR(h zzCF>>3yV>JF&6Y(_G}WmZ4FzPL}C)31(&F4Zqevfq00*}x~noh`SNU%QMX$w;jWzL ze-yAHv6D$8Cx}ly+^xf1J>0c(=Mpm~lQyA4oE|Tg!v_f%hn{5 z#&q{Zb`a69T(?l1(#bpHa89p3y6EneV=In2BGsNuqC@Y&pTIlCeK*a2&Sn(6(Rl}6 zVkymuIcR>3$X#KMdLPrKrECP~WDHx_oHQd}vM-vW9}Q)Hcg(3TfN;L#Jq(qX;NywNo%9OmkP+;0DD00+bI~bqZy&5;Cup~DfennB`}ZIp)>pW8PYhPd#~~?3$n8dX>_)(OL|I5`n0x1?y3&9#aO1I;WYNqK4Yy?Neo%c z2Beb4v!~mIgp|wPmF)yc`_wL0)MCYUAI;*N3;h!`e}|Y%%Lye|X0!kBD4THXsw20k zVTHTu^BPH!Dq2iy40R%zDUHMoYvB0vHunSZ^D*xV+=|?KylKY4l8u(tdN^kTAB8cv z3E@!yZ~pb*<6UJbLQl6rcpGU1c@h9om)W{BvbM`g+iIK-BtD|Mx~sV~x&rW)~as*GymIMb8>Br!R22tEOV3!rg|c z**@C4#o^m)y8`bnycl_ZNcWIjENXC4!rw=NA*>Zv`Z1|N-F&eB@QLkfiJl3xdE`oz+Rax8*;hp#!m}9$O{;ZTD}Yz2rEoO_%2`rKm{BF{9U-K zdbw>BHWz+cbv0Lm*Xc26FB#>0L(!@+LPfZR&!c~UHriA4&FX!&5wb666`;NBDS0+8 z`XaoEe8lp?PXqp`z)i#-0emqK$Q9$5vK`y_6T|e8}k~HsE<{}A=%emZUI390wOt$#vjVwr?DH>xZxvCnu zee)z}5bWmV=~3Qi4jTL0B&mXnFT`EOl2X1nap4krd984km`PG!oZ(RN7up&uZKDX* z?59Tq+bW%MeY7#IIZ6UNal^}ev{$RKrAQa7RA~!Ocs4d4Q(U=Sbjow(t>L7nTMXJj zM>FG2TNKX04yTu*Un(SYDf2a_Z2ZTuUyHG(M%s>e8l=JA(}vArI97i=yV zImMv;%4#x6Y=Z%=L?zr)i@q$W6=|L5XMcLT0UtQBU!{uKdxlgvq%p8{1J<9O*)Wf?4{OZ4PCsP(KZCDC~Mw^w525v z+1NJZefr8HW^Y6Klg6x1TQZSzechJK(l16?#$=|nBbol={uJcKfDI1>x#+ICq#e0M z4Sy5ZjAzL(GFiR&ESX63zyBe~)Bj*SJCd;wrXK7_E)kk{PhHuGEFrY=0W)_Y+k#Tj z7Rdk^kO2rwV%NHmXxc7`xw?=E2-OL=Rwa5T60?%nx~^mwO<1n>%q0^Dd6Sjok+%K= z+#lce<95O!Az?YwcOyr@!@lbV2NS{$`D7AZ@r3QkC-Z!~lhFYH0&Cx$bkYkzQPoA= zNzZ!xQg_m!9*^!p!U9Is_$25R@qz&-C@*as>(Yb71P-ZLUhOS-)>1)_jwP_ydXV&> zzr;iCuXaJUEN2IMkalFCTGfN}A$lX|amlP_FS18J1*VmgnZ7rfVCH6Sh%~XAl+S$? zv~tcQ?qR6FU4Sp>;9J=nZQ3xI9qbMJAiUI@v?0DMqz@_8a~4kOLlTjs>id$>MCVLH zHPu(2BYR0u92j`noEC;KA(>@9PkIJ_SiK`hT%$WxXi1C=SB#w-V5MizlS&$utS;$K zMo^lZ%pMFRndCpL$sjUB-wv6xli8v{uxYzwW*Lh=VY~80eMJhAzEt$*%(-e#KQf0 z#oOYme1#+EpR95O`GzNdIg<7t^6g4O6(&~hZ64VgeX z5s7^=fiyA9K@oG>_~53Rot%JOUInX~KwcnQ+4B?8ohnjw^1U>+ZX(&H=bRO(tY;yK z(BFgEflnwTIiYvKqai*Gb>wv34TeXt?+Vd&$osI6B$Ep)=2e_+N?FHO$)?6r9IgcE z0zdOibm(!QcE_jTZq-ofEBI)AnK+4<{JEfaxoUu!$t-OWndce0wlsEd5{dVFjC6jN z5eEoi_a~7g|G%PUB0o-J@smlL#sC7i3HncfA~RbunM6bs0r%ctgQ?c@*u+fo zMq%IFyYweBJA!n2)66a*Y|Qg|?-#Wu_F6ug*YV-vRCiU=QlYdl3!FkCY3o>)G6lC| z&~EA!bTWjOreFkemBP|l%4=k*UILEh+4dTVAOidLH8NYT11TzY}N{ zpYq9SB)ew zboI-*#6S#O08c<|kI&=7KAk<7N3JDuMxK$U5tF;Bs8kU6lp*8#CakmUaY;6Wu5vni zI-e}UWd7y?@JWI~V^XRrOy;rjj6DFju5rF6y~*5e7|ax*GZxSww@{Au$z@ z1;_?uq^rB$#;`YVkr{y8boJUhgo^&1JrSMU9$_j}exJ;v+3D(}4=|Ib@vQaJ5EsS8 z@-lM)JR_IHi{VnafT8JX&@!@)Msw!+jGTdI`rC5q$>o^tO`NG-8m}go5(cR40I-<4 zli`%am!exA@wKBFdww->knOC`8g!Y#>Z3K}6-htTlT{tP9-7mL%jzE+$t*MndQkyV z(32*8MmFj>j>L#fFflDiXB#(@4)L7mg-fG>i;4CQycP*XaeOPH{bJ*ti(f18F2(ep zlN4%6XPKXqb4_O;j|ITb#*Gx6;;(eKa0jnZ(QD7z^yb#e`Y^rLhNW*IeR!rtTVQvD zyS9+b)_DD8j?9xPjkuM*3_KjZew}s>7|*8D%H4U2WR@zUkp82)qX&-%{w-^~m9*85 zM&~S8!G>+cK!nK6TZv20bs3e;wrwNV4WsIG1JBCsm^@!*<=e^Zz$BNxGF}W<+99qgU=*=A!y+^x49y}G=eF>}&c2GL4$b;>M zo;z5tog_TG0Q&Iq3-^Duo8RUOTF>gQ_87IF*xa3DWJu*uQkUe5q##cc&XzlImWyHG zyGSQG9+lZeG83aP0FnXagNVEWxg^}$CBYFOdM2Xks^HSXuBjP1xpF8wvWtXyC%bPA zFT|0bUE4)MXBRocDya67D*;a}A2|x(xio534yp}vr2_MJ>fw%(?tbs(T@joYjQ1p~ zoK)-W;w~p!$>AKsspWU{Lg5&yRl9~;c#f7f?~I4IBbf3{MGXAQ|3& z#a6Nc)!(~98s}N}e3cNe?{mm|Cr9bBtCj597bJ5wKZfb@ zzlzZ1&yfdqlFCSeFWlL+eo3D8=Yt0iXns30bqJWnPaWYjcU5w!yk9U&injvCvR30Z z7VNgq(XxHAbL0}dalkb((N^QKjPLD0=)O*F2zZV@cd|(598L0 zyBT{3v9)*A2`JOXX73?Qz3oRVU|*lXcI_c?v;VL+nTyvT+4ia;yrwLe%LlxSL4M8N z%roG9fmhVw4S`>(!^41|vCC!|69}Imz5_iQd6R)313m}%c;H{#z4Py7L|FI}K%I8T zE}3F&n`(}(QM{iHRS##97;1FFj)^_9Fr zNbSRFI71Q(|B_4$_o-=DWI!L}7tx+q44P2W9bA{$hA*+Hs$}1ONq)d#?@+e=srix;R^YC> z1>aPGyLk_ctYZF#EEzfk9Z1T@*vRBg+r-@H0-e^HbvZy{!(%)by^@(fvI__9OC&R& z=!4nZ1DMojIwSHWGajg$!olEW<4=IXfKj&h0BMr*5enuCOoy^u$@&WL%J3#z3*gPi zE5w_QD_UP+zHja_ibWKYoB$i>j{$rgl{6|l zQ2MCX2eezTg`@|2wt$_{)*_F$4K8R<%()7?cD~Fq50h>*BU7Dsn52+EUzkO%5Go{u zVF^E*P4%wM?NRiCoJ^%dhEOw}sLNE7ieA zh%Y5&>dRk|=SA`@EBS_4GvgqFtD1~30k8nL9%_Z-{aau$pK8U5Aj>KI?`z@ah(r2< zOt$DKnHs_Qd0sA~9YSx8*QSSlOX34wvcsQ}AZR=148)+xqR>{tO zOHOC@20IsF0mu*|BjlpE7%nauFq6lTCZTFv&3>8e+IM8U7r&KtS2`Z{n% zo`DPU1@HorGug`T$>0=^u84ENyb#XA*Fkrcv)Z><%#X6%80)Umd!83%WU}aEce0B!$*orI2?eNd0T?|@%$KYw+#ds)T$-o_=P|D?T-ujb3LQD4k z59C22&%=4^EB-Fx3jn;rJWm!+2gJ2xn~#%&X3o#+R^NU+jq`9LaYH7zWb=L`lf1U# zdAqA>Gjse%S{S%Nc%^%1vdj}?WrU|t#CgG~2t5X>&3x+wJQy&7{wExH5vKh_hNW_8@l*_SZvfYqHx`$}%jFOB(u??CA<4HCZyJn+T?rr=Jc~2g)1S$b ze>U2ZGBQ@r^TBZTGCb9o#u}BAxk2Y~E5yBayr^Kb=TyeFmE+83V&9gNXW%P%QcgxD z@>DZY+X03F#sc8{u|yPwTaJ$>X~##^4u2>~lc#VJKI(}x z!)cOY;ylLyGa#$SeBznz<|xU=03}pujJ6uU2Azh7@T*LA@HBL<6{9AeA#sE_S+BDs zFX%9`b1_^jZ}6p=Y};AVUw;Ad6KJz@B(d)a;PX&KZ3q9_E#?Y$7YMa;-S2qn&C~yU z6gcnSa}=qY^{ybD!pgNXlTdmEbJ96HJ@N@J&cYVWRTaXnp2yP_Sn50}CBxbN3&gFf z`3UdhSn)-Yt~=*JD>=Gsl_bZoW|x5e?x7C9L_W~}1ZtaA?CB*kSpOBsBUZ8gmr16s z2=p-a;brnV&ArSFSIAlt#y-D7n$fk4ow`EIv)7_tH2<&@qPb_AO2VT#6RL( zsVkm1x5?j%R{V>G%U<^A7t$oNzIJ#1#XuqG-ajnBZ-<|_G4m<{_>70f4tawnhiv8y|G9PN#o{R77QD_Yq4u7mu9S_p$d~5q zwRrRhII#vEWvI@pupaRY#FG(@S;J=BCMSJ{d|dbaBI|R9bTwG&qRAht8}ATG%w{dy ztUY1Bp)~TLYc3w8yoecmFr9pMSpJLnUTY%W zq1~@q&D!6?i^ZvI$UR&&jdn5HJ+dshgPj=f2e_*GI`Jy5NrK|zsYGoRYAw#KJp=lD z^fCMLJ{cVnUQ<#nWlI%bb&~dwild$4_S~BL<$Sl_ZUa+bVH|HDw(OeMm+`G}}t#mYa#(>T@E$3D^Yq3Gn1|b=gBa z0?pY3VaEYnunpmV))CJ~u$2(r3`d43=ucVrpb2lqvib8{ezbT2^mh>t11$SQ?f;nQ zN&J&-MBWN0(eP?`JCUyf%7OF!UahaCuxszjY~B;HEuvjk?H>Lx!tU7ocW#YE9Qff@ zOnD0bap6Ta_9@0nZ=|(@jrv_?+n$o15j@@xa1^|pUca-1+@LCw6|>pKA9Lcpn6|;j zpYq~y2kN1vJXxt1QCn82ZQOL@0JKe;*C!4e}55I27 zDdHA0X`i}D?A~nB_S4})#YT^nWJlus}Dr)MA|t!8EvqD#>eTt^{V2)Gt-D3AY21@8-;8`T}Ix`TW(;Ron$Z_ z)mo)BWElx6KzICj*Wcq{RBN``g*)ek8(5|ro^~)Ebdz`zRR77kZU>RWA!$_W6%T2O zeiZUw-NoVwoxpil61sm((4^>)14M2DfIma-1K0@|4tNjn>H+3&pwW^Euj$oP1D%3W z)J+ZOT|$#;*fKwwLFF2D%#WU-o1AQ&Kb=QJW(uG``nB1CT_-@plN4`O9Y8;&n;dMN zjAQd02fHIv+yXdQSRggi{tnhIkVctRhg9kGe$hV1&Ryh2?HA`6o7^H1T|u|ax2;iY z7|AEbHT_8RlGD!^%rE_(L@kj8c^$IG62R@N>9zDESHAm4^1aIpOH>MHZTU@#=FDmk_JBMYT^?1eS=D7|mG2!lLOy0_#Q7d<1_)QxkEjzAZ)>#m6ZT&K`@$jU* zN!-?0tFf~O9cd#!#~E8cDZq2gys?c1<B+pwQQArL z!tONN!0T754b%6aU(wwdr9J3R=wB;)(mpMmDBfqDl8fRG*5I8%N=9j#;%&}H&oFX!MUkpQEPBU%(ONBR_Y(y{2T6M** z>_rQx&B1I4b%l6EC#Wy}?flN>e~t8l}ByXa3L8X2j02o};r`C%|Pt zUm5#4MXN^8w)l~SC@tE4#^#+_E25Sfr8V>j;jvmVzU_HV&i;uvu<)Zy@ae zY=xVp45EYm`Ly8P`By`)97OM`VbB;Drw6DxlE~UvucU;k`t<*=A@@O`LPQgQX6qIlkQ-NoZvPmAg3Dtl@N4L!D!v z?Qo`ko7v`F$Lq8+c?4}&-&}o1(4K_G+S$gDG=~s&b0lp-A5=5nQ8bgDs%D)>VHG-9 ztxg$5E%lQeyZ#d0O}F8x{b)M0Uj3(|=`6B}z4kI~rnIZhE(%+dUUa}F$og%pZDOtxw$-;yBz_4X7u;=&N^C(gK1*BA*QrP?t(x6qp2i^#g3;{2gAnU$yjwMgu?f@^IuU0L{^pOrY32Q+wu7oCC(uwz2Cci_R2~0JLzs!l#LZkri-J`yYW5b^Tg=+ECny~{+nCX zPoeEd^x$feDrj%d^IyZiqgpucK<9j{rGm+8TLeDeW(BX&9J9F^s>6jnaGqfcZQ-^0 zX;rBs4ZYH9TfXA8E&_Ml?C5KB5jtM}RQfy(Ml(*OU)DFtu-9on8evoSy-xR0nz2J2 zI|G{!I&_En;0=nm82_rDYZkpmyw$6-vHt}Vn=zM;s26p8E_K!8x8~6!)Urd}JfC*Z z(-Aw^t+(kwdd8(@FQH~)%yA_Y5!C5u=?dG^jQNFpM5SWQA=sdVY3VL?-aB-(r+`1+ zr6WRp(E#KbDu*MSk1!75&0p0K@8Ja^9k-pWd!KI8HN=Iop!WEH4kzT6`o&V3PNJwo zE;6hME}AnuXYx{jJE4wc9z)U*7K8wT$Zf_Y;6Oc zGKX<*z?$H_Na3AssoysL?O|GDXLv=4Ek1RAQ9a*U2V1|4HY7i&`>^m!W(H1T|O1`nV@pr zPGN;#Wu}m($gz#IXW7NoXvD)Vmb!+95^vUZ4ShLdpKH+;lhS1yKG>h!NUNziZ@XdS zlo!*Ilt$WpOt| z#0PBS7j%8Y>-Z?7b~F~ibYXzl_N@PIIunEY^lr-N1ScC`L}wvX?-kJ?k!)7o`{-Fw z-xpG@j!-Whpfd=4X{Xx%AU#L)AAwpqMol|Rqsd>2zqykQE}>u3XB;g02t7bF^*r7L zNp#9i)&4b2#KXUxYWz|3HUDB{Uj|qTcw?t}?FVX*NIv`hCpwXCfs~V&D4Vd4Ptq=A z68r5W`s4=Iq6 z-8t;kOLwYYpQB?5J-<^;xj;ATsBOD??kdWlFFRSpFEok{bh4~pXlBE9PVb`m)BGwD zFq+yZ>G8l$d`bl+2EJm2^%I51+tpdW(y7Gf3AESk!jo}UbDf?x{f6i*KsCS# z_!Dps@DT7jAb?f=hO^JN?CK4=SI0B^sw-~N(=TAF9De%)?S6iNODWT~_=4Nsp6=+6e!w+mafX zw7QgZD;uiA9Zu{nHM5d#Bcb&S*_h>*Vj<{^uzP{}^dV+>5~P+?QL8td)_#9qaS_$G zgKY*5Q?F6crK7o5*fno4k+$5W8hpe_ly=|6W;GD|hUV|2@}E1XyaLb~aCJMC=VH^{ zKs-)o?NaynitBu613T**D)uG6vQ4343#>KgL&cr?c3<$*6kF0r>`S-oV%Hjp-Dt@! zmKf#<)v00PEs+;IEK2MfvhzDCpN2-{dn!Lb*aM-j`fZfxrK8QhP*387AP#%!I12w% zlm~r=-x1m<%9q!P@+vTfd`so#RaEW;7z3C-j|i;+&)=u=D}cE_Qu%j4ALREtLFElc zsa#n`<=0LkevHa*{zT;;j;rUIh(Xl9yqwC_V?}vAv{<@JecDtsgwXNB7;P_hr%^{( z@Ak0Mq9bf(d+|FOfvr;qF`nvO>i7=gT3#R3kRyhA(LuwQIZw>dKQV}MjgF1Y6O}q# z{W4E9P|Chgzs?sQQu?1S*q1%U&1j$(dWl|yj@+$|?kygy6){je$VFWnC~ick&Ko4I zrW}bLDt<@&m+!9iTSQ3S*`MuJAHE=V(9xm8)U=V}Ix%G49@sPMt35#p=qveQLn-=- zUcEV5d|lMnF74`wv1muye6O1Fis(=1YkSoW6U1ADgtI1v;&wy$UP*2YXtGzmR4AUK z^x3`Yp2^~29c@^n7ETu}G^HBJXP-fPG!^A%3Pia%!X9~|=c5|_Icp8l>pyavHcZve z6e-p3M20t;s{XUYgG66|o@yDUo}4YtqlP(%+>R6F_FLHCdEx{*a~Ph9iYYv_&l8u? zsRz{e=Zm)_|98K{YzJ5cSpOxPw^$rOKmU^5S}b0Ze6&;>JNC9XrSWd0o&ekiyi_d+ zCKWCVB~Xb_E>?|XgO-SR!OlKkf=(ODE-n$9;bph@j@U8qJ|3=RKO})StNye}cnuW6 zo_|N|((voQ$VY8D&u5r%OWCe>#1u@WSKkqvlO?RdyJCC#tebUvS4A4h5t=|Sk5%IT*X3@+WsXa9A3@~~L zo}F8F;Qavj!613C%KEMpM?}v+yi+tyk}lwReQH=Czuc|A^TO%n)Jkz%=m!wI1bnLi zI{+ns^fycKN%mJX=9Hi+Yi z*GxxP(fO)3RMV%Tn-~oHB)Kh=h})+oZW5o;=xjvt0sR35fU$rmFeO2j^Rn7ui#URW z{F@;KiBW9-R`GKK-`v!BB1Uf$I}`GhZQm{qC*P`mJH&B#=32mJ>=Yw-xN@hc1T9A& zNwi9fl3YdM5xH|eOhG2IrUeAHP8uV8Xa5twXLVs=gY?H zA!w1NifR7;z1Xoys+efNYg2g!$^y@3Rm9gNtV)Hq?j{RAASU_qr=s6MIbQPK6|C<8 zv;+SJ5Zp@+h>QMm!Eq`3N?3HU7|QFMSq#ZM&s^k1zOlvPB0Y}}D`roN#T>qCZgWuV zAd&%WdWrZ6oidC?91)G74{8dE=&C+NI?uL7+$L?;Y3*FB_YtvScyW!8@VJbw5}H+( z{WJY0d-I4mCbXjFjBR$Gu` zH?fA6N%Gs9seA+BYg;fT5muKI*`W6MT8yEFk=JUc63j6(j*9P#{;z}Z87lD(!cVTL zp~plQF~t4F#iEakU-Rh+KOeaW^VTnH>

m1Ak@LPl%cHz%@1ECo$1GluuPz`-w@1 zXF)Hx@I)M+D)+Lp!Dq!(`sG3P?pg5;mooJn6xR(c=O4&yy&%q}{y7{66arGpS>|PQ zuy0D)h|A((I@HCCS1?PaxY*1qVuWmTEwG78jfE?#{RC0#<5D+Y!JJ9Al&d3t5vNLY z)G2o9H!K<_ZnJJT#94Iw9rgGPGz=YkO7*`jZWg<}x>A%|SVg(zF0B4vQ29f^*+W$R z4N!ds4)0~6d>`p0d#UWR54(y3*eP74a?u}DZgP*xUG7rZ`VEx_e51Pl5QB(k9i4qj z4ZSCROj_6IDxD%#!W3y49?EKcUDE3LN+0}Uh`8nu9C{h0gW-sSOIvGS(-*%-!rg(Q ziE5cO?B0E`ab%6Ca5j(I4W7U4aJ%W?`J?#SS&e%jE+%yPDRtMMVvu**`cqiP@MAJV z@R;MHuHGf}@iqU7^T!^w>Fi;Zc#{6Ug?()k`|~iOTHLJP4LMs1*mu>U61oMwfPZmO zZs|KFykIbfA;05S&2|iR?4Q(m4skG{-S4w&PBF*7-#v`%`;y!fli|{PETsmt1jO%w zz6&tv9-GB!DM&wocm|;1J$AANz2>`9Oz#ro^)k|SU>Lj5#+wea_g&&~LqBM=2z_BC z8r9ABB)L~sOp-D~7w*DuuKfo;H+V#ppWi9U3jr&3?mr?0HJ}CO)l&_m38I1bLg8J3 zj5^P{1xP1(kBg9{&D8(GdHAv10r<)dmp)h2lR?rR&t7d_sAMLR6R9jWOp0Ps1h6w< z__M%+g#(+yqsuuK$FYn^{OQM|pYcDVIA25l=SCy^*~kAhjFbY|lL#q*W$=UrJlkVW zD#tp9A@y6H+SyYE|MQvW4^Q3aDbkaTW6L=$ju+Vw82zCMI~OiRvm2b@F;Ba}|45u+ z6z4zc$;4CRJc9V24F2Z~FTXR#j`AG+I7>qwea!#t<57txjN*Udcr?Q!8L4#4v#Js) zHP)%G8Kr4dy=#`*6Ea3^7AM6l9A7v9D>|V3d8}lB<$$IAB>C<@e6oul`x@9EdkfHx zBEAKDWDve>2Yv{2j?Y5a8|nXF_$H*EfSgq1VG}-=qSaGdrT1fISG<9?uKRavMlFt? zR1yZ((K)_&?BDcyULM}~2aoW2Esq3x;Xm;1GykS*)BnaldeMW&;MY(DA$9oQ31uVx z#(R%qt{;JgP4QAvdLIQ<9Cm93}qupZa{1NZ(1Zukf8SBEc!G3)bkTqg*f zJc4+nUJ%FO@A!*eFO<`L{y}f>7p|T=ET3vNXNt4@XwF<$5s5ZB>qWK z<#MZzO3K|1@7g5M(YKk=qZa61YJ0G+*! za50g)0^bkXNZ?k`8X)X}a5`x1k@g(q3;?{g5Ff<=pt+Cv<3Wvcq70~2;BrBUjT{#w-GN!co}Ku0VTlC0xt3pg{px2fS&xO_vttx%#lWOW4IXHgtpRsb0Q7y|ehFcB~xumSKnVCP%vuHU6L{>h)i zxybAD|0n#gV|M$Q=u0L|z`}|9IEfj(94X13 zLT$dDYP3t5)WkpJb5ZUC_z-aOb9G&;ZkcX&8P>GaPxz=4P;Vm-J^%diQ?Z=-(=0&_ z20oVm+A887&lTi}z`w1F&z&#G$AL%xEPCoV{r|OacOgxMVF1V9ot;$_(Id2r(1oQm z(oD2ZZ)#tC^{(NjYj4D(tQx z5bR>xnpFpc)oIV)SC9caG?sw(Zc41;4-XVcBMvy|LE7V%*nztSl8H-m- zPk|wY9Ivi9GfLM!Vr;=72laSLnMHp5p{cWi1D@qUzbfB6T}Wy?4`tn&`m4N~d^m0Ef0Y#oFSOD7hbb zTlw!neT6)_(3#rIfIAzhP?Nt>_r1^BZe$CB`of_C0K1Ch+!0e zFvW)eTF{ASNMI5f%)hG}DoCWJ7J6(fwnj|hw}{Cem^8m>_e27X*e6jN9^#v_0@fo}Xn!8l)R+$@&? flG3lHG@=D}kwgYODkT+q;beO;@pgT=>xlb5wGjLk delta 25892 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 Q*-DOW{~a@Bwrg$Fzi*JwH~;_u diff --git a/build/obj/build.nmap b/build/obj/build.nmap index bacaca7..4cfb593 100644 --- a/build/obj/build.nmap +++ b/build/obj/build.nmap @@ -15,7 +15,7 @@ 00000101 A Reset_Handler 00000109 A NMI_Handler 0000010d A HardFault_Handler -00000120 A UartLogRamCmdTableSize +00000110 A UartLogRamCmdTableSize 00000121 A MemManage_Handler 00000125 A BusFault_Handler 00000129 A UsageFault_Handler @@ -874,2324 +874,2317 @@ 10008178 t fATWR 1000819c t fATPN 1000827c t scan_result_handler -10008380 t fATWP -100083c8 t fATPA -100084b0 t fATSP -100084f4 t fATDS -1000851c t fATSW -10008526 t fATSD -10008530 t fATST -100085a0 T print_hex_dump -100085d0 T dump_bytes -10008664 t fATSB -1000869c T print_udp_pcb -10008708 T print_tcp_pcb -100087e0 t fATLW -100087f0 T RamFifoClose -1000884c T RamFifoInit -100089a0 T RamFifoRead -10008a5c T RamFifoWrite -10008b10 T RamFifoFill -10008b3c T RamFifoFree -10008b50 T RamFifoLen -10008b5c t decode_header -10008ccc T mad_header_init -10008cf8 T mad_frame_finish -10008d10 T mad_header_decode -10008fac T mad_frame_decode -10009030 T mad_frame_mute -1000907a T mad_frame_init -10009098 t III_requantize -10009114 t III_aliasreduce -1000917c t fastsdct -100092b4 t III_imdct_l -100096cc t III_imdct_s -10009820 t III_overlap -1000984a t III_freqinver -10009894 t III_decode -1000a8b0 T mad_layer_III -1000ad14 T mad_bit_init -1000ad20 T mad_bit_length -1000ad38 T mad_bit_nextbyte -1000ad44 T mad_bit_skip -1000ad74 T mad_bit_read -1000ade0 T mad_bit_crc -1000aed4 t scale -1000aee0 t dct32 -1000b774 t synth_half -1000bbb8 t synth_full -1000c00c T mad_synth_mute -1000c044 T mad_synth_init -1000c068 T mad_synth_frame -1000c0fc t scale_rational -1000c170 T mad_timer_set -1000c258 T mad_stream_init -1000c28a T mad_stream_finish -1000c29c T mad_stream_buffer -1000c2b0 T mad_stream_sync -1000c2f8 T mad_stream_errorstr -1000c454 t i2s_test_tx_complete -1000c46c T i2sClose -1000c4f8 T i2sInit -1000c670 T i2sSetRate -1000c6f8 T i2sPushPWMSamples -1000c860 T SystemCoreClockUpdate -1000c874 t print_on -1000c88c W console_help -1000c8cc T GetArgvRam -1000c97c T get_eap_phase -1000c980 T get_eap_method -1000c984 T eap_autoreconnect_hdl -1000c988 t wifi_no_network_hdl -1000c9a0 t wifi_handshake_done_hdl -1000c9bc t wifi_disconn_hdl -1000ca24 t wifi_connected_hdl -1000ca58 T wifi_scan_each_report_hdl -1000cb9c T wifi_rx_beacon_hdl -1000cba0 T wifi_connect -1000cfd4 T wifi_disconnect -1000d008 T wifi_set_country -1000d014 T wifi_off -1000d088 T wifi_set_power_mode -1000d098 T wifi_set_lps_dtim -1000d0a4 T wifi_get_lps_dtim -1000d0b0 T wifi_start_ap -1000d19c T wifi_get_setting -1000d24c T wifi_show_setting -1000d310 T wifi_set_network_mode -1000d328 T wifi_indication -1000d364 T wifi_reg_event_handler -1000d3b8 T wifi_unreg_event_handler -1000d3fc T init_event_callback_list -1000d40c T promisc_deinit -1000d410 T promisc_recv_func -1000d414 T promisc_set -1000d418 T is_promisc_enabled -1000d424 t get_padapter -1000d43c T iw_ioctl -1000d458 T wext_get_ssid -1000d496 T wext_set_ssid -1000d4ca T wext_set_bssid -1000d514 T is_broadcast_ether_addr -1000d536 T wext_set_auth_param -1000d564 T wext_set_key_ext -1000d664 T wext_get_enc_ext -1000d6c6 T wext_set_passphrase -1000d6fc T wext_get_passphrase -1000d734 T wext_enable_powersave -1000d75e T wext_set_lps_dtim -1000d774 T wext_get_lps_dtim -1000d790 T wext_set_mode -1000d7f0 T wext_get_mode -1000d824 T wext_set_ap_ssid -1000d860 T wext_set_country -1000d884 T wext_set_channel -1000d8b2 T wext_get_channel -1000d8da T wext_set_scan -1000d90c T wext_wlan_indicate -1000da54 T wext_set_autoreconnect -1000daa4 T wext_set_adaptivity -1000dacc T wext_set_sta_num -1000dad0 T LwIP_DHCP -1000dbc8 t chk_ap_netif_num -1000dc14 t wifi_autoreconnect_hdl_ -1000dc64 T read_wifi_cfg -1000dcac T write_wifi_cfg -1000dcec T rtw_security_to_idx -1000dd0c T rtw_security_to_str -1000dd20 T show_wifi_ap_ip -1000dd54 t wifi_run_ap -1000de60 T show_wifi_st_ip -1000de94 t StartStDHCPClient -1000df40 t wifi_run_st.part.1 -1000e00c T wifi_run -1000e290 T wifi_init -1000e364 t wifi_autoreconnect_thread_ -1000e3c4 T show_wifi_st_cfg -1000e440 T show_wifi_ap_cfg -1000e4bc T show_wifi_cfg -1000e51c T wifi_close_scan -1000e59c t _wifi_scan_done_hdl -1000e61c T api_wifi_scan -1000e780 t netconn_recv_data -1000e850 T netconn_new_with_proto_and_callback -1000e8b0 T netconn_delete -1000e8d4 T netconn_getaddr -1000e918 T netconn_connect -1000e958 T netconn_recv_tcp_pbuf -1000e96c T netconn_recv -1000e9f4 T netconn_recved -1000ea20 T netconn_send -1000ea5c T netconn_write_partly -1000eaec T netconn_gethostbyname -1000eb44 t recv_udp -1000ebb4 t recv_raw -1000ec38 t setup_tcp -1000ec7c t err_tcp -1000ed14 t do_connected -1000ed80 t do_writemore -1000ee80 t do_close_internal -1000ef6c t poll_tcp -1000efbc t do_dns_found -1000efe8 t sent_tcp -1000f036 t recv_tcp -1000f0b0 T do_newconn -1000f140 T netconn_alloc -1000f1ac T netconn_free -1000f1d8 t netconn_drain -1000f268 T do_delconn -1000f2f4 T do_connect -1000f388 T do_send -1000f3f8 T do_recv -1000f438 T do_write -1000f472 T do_getaddr -1000f4e8 T do_gethostbyname -1000f514 T netbuf_delete -1000f534 T netbuf_free -1000f54a T netbuf_ref -1000f584 T lwip_gethostbyname -1000f5d0 t get_socket -1000f5f0 t alloc_socket -1000f660 t event_callback -1000f790 T lwip_socket_init -1000f792 T lwip_close -1000f7e4 T lwip_connect -1000f840 T lwip_recvfrom -1000f9f8 T lwip_read -1000fa0c T lwip_sendto -1000fab8 T lwip_send -1000fb30 T lwip_socket -1000fba4 T lwip_write -1000fbac t tcpip_thread -1000fc30 T tcpip_input -1000fc78 T tcpip_callback_with_block -1000fccc T tcpip_timeout -1000fd10 T tcpip_apimsg -1000fd68 T tcpip_init -1000fdac t icmp_send_response.isra.0 -1000fe1c T icmp_input -1000ff40 T icmp_dest_unreach -1000ff4a T icmp_time_exceeded -1000ff54 t igmp_send -1000fff8 t igmp_delaying_member -10010034 t igmp_lookup_group.part.1 -1001006c T igmp_init -10010088 T igmp_report_groups -100100ac T igmp_lookfor_group -100100cc T igmp_start -10010108 T igmp_input -100101cc T igmp_tmr -100101f8 t lwip_standard_chksum -10010250 T inet_chksum_pseudo -100102d6 T inet_chksum -100102e2 T inet_chksum_pbuf -10010328 T ip_route -10010364 T ip_input -10010528 T ip_output_if_opt -1001067c T ip_output_if -1001069e T ip_output -100106d6 T ip4_addr_isbroadcast -1001070e T ipaddr_aton -10010824 T ipaddr_addr -1001083c T ipaddr_ntoa_r -100108d4 T ipaddr_ntoa -100108e0 t ipfrag_free_pbuf_custom -100108f8 t ip_reass_free_complete_datagram -10010978 t ip_reass_remove_oldest_datagram -100109ec T ip_reass_tmr -10010a14 T ip_reass -10010cc4 T ip_frag -10010e30 T lwip_htons -10010e36 T lwip_ntohs -10010e3c T lwip_htonl -10010e40 T lwip_ntohl -10010e44 t dhcp_set_state -10010e54 t dhcp_option -10010e74 t dhcp_option_byte -10010e86 t dhcp_option_short -10010ea8 t dhcp_option_long -10010eec t dhcp_create_msg -10011040 t dhcp_delete_msg -10011056 t dhcp_check -1001107c t dhcp_bind -10011150 t dhcp_option_trailer -1001117c t dhcp_discover -10011230 t dhcp_reboot -100112d4 t dhcp_option_hostname.isra.1 -10011314 t dhcp_rebind -100113a8 t dhcp_select -10011494 t dhcp_recv -10011898 T dhcp_arp_reply -10011918 T dhcp_renew -100119ac T dhcp_release -10011a54 T dhcp_coarse_tmr -10011ae0 T dhcp_fine_tmr -10011b7c T dhcp_release_unicast -10011c40 T dhcp_stop -10011c70 T dhcp_start -10011d10 t dns_parse_name -10011d2c t dns_recv -10011ec0 t dns_send -10011f90 t dns_check_entry -10012040 T dns_setserver -10012060 T dns_init -100120b8 T dns_tmr -100120e4 T dns_gethostbyname -10012224 T lwip_init -1001224c T sys_timeout -100122ac T tcp_timer_needed -100122e0 t tcpip_tcp_timer -10012318 T sys_timeouts_init -1001237c t dns_timer -10012398 t igmp_timer -100123b0 t dhcp_timer_fine -100123cc t dhcp_timer_coarse -100123e8 t arp_timer -10012404 t ip_reass_timer -10012420 T sys_untimeout -10012468 T sys_timeouts_mbox_fetch -100124cc T netif_init -100124d0 T netif_set_ipaddr -10012520 T netif_set_addr -1001253c T netif_add -1001259c T netif_set_gw -100125a4 T netif_set_netmask -100125ac T netif_set_default -100125b8 T netif_set_up -100125ee T netif_set_down -10012608 t pbuf_free_ooseq_callback -1001263c t pbuf_pool_is_empty -10012678 T pbuf_alloced_custom -100126cc T pbuf_header -10012724 T pbuf_free -10012764 T pbuf_alloc -10012888 T pbuf_realloc -100128bc T pbuf_clen -100128cc T pbuf_ref -100128e6 T pbuf_cat -10012902 T pbuf_chain -10012912 T pbuf_copy -100129ae T pbuf_copy_partial -10012a16 T pbuf_coalesce -10012a44 T raw_input -10012abc T raw_connect -10012ac6 T raw_recv -10012acc T raw_sendto -10012b5c T raw_send -10012b64 T raw_remove -10012b8c T raw_new -10012bc0 t tcp_new_port -10012c10 T tcp_init -10012c2c T tcp_update_rcv_ann_wnd -10012c62 T tcp_recved -10012c9c T tcp_seg_free -10012cb6 T tcp_segs_free -10012cc8 T tcp_seg_copy -10012cf0 T tcp_arg -10012cf4 T tcp_recv -10012cfa T tcp_sent -10012d00 T tcp_err -10012d06 T tcp_accept -10012d0a T tcp_poll -10012d14 T tcp_pcb_purge -10012d54 T tcp_slowtmr -10013010 T tcp_pcb_remove -10013078 t tcp_close_shutdown -100131a8 T tcp_close -100131c0 T tcp_recv_null -100131e4 T tcp_process_refused_data -10013244 T tcp_fasttmr -100132bc T tcp_tmr -100132e0 T tcp_shutdown -10013330 T tcp_abandon -100133c8 T tcp_abort -100133d0 T tcp_next_iss -100133e8 T tcp_alloc -10013508 T tcp_new -1001350e T tcp_eff_send_mss -1001352c T tcp_connect -10013688 t tcp_oos_insert_segment -10013708 t tcp_receive -10013ee0 t tcp_parseopt.isra.0 -10013f64 T tcp_input -100147bc t tcp_pbuf_prealloc -10014810 t tcp_create_segment -100148d8 t tcp_output_alloc_header.constprop.0 -10014942 T tcp_write -10014c92 T tcp_enqueue_flags -10014d3a T tcp_send_fin -10014d82 T tcp_send_empty_ack -10014de0 T tcp_output -10015058 T tcp_rst -100150f0 T tcp_rexmit_rto -1001511e T tcp_rexmit -1001516e T tcp_rexmit_fast -100151c4 T tcp_keepalive -10015216 T tcp_zero_window_probe -100152c0 T udp_init -100152dc T udp_input -10015464 T udp_bind -1001550c T udp_sendto_if -1001560a T udp_sendto -10015640 T udp_send -1001564c T udp_connect -10015694 T udp_disconnect -100156a4 T udp_recv -100156ac T udp_remove -100156d4 T udp_new -100156f8 t etharp_free_entry -10015728 t etharp_find_entry -10015804 t etharp_send_ip -10015838 T etharp_tmr -10015878 T etharp_cleanup_netif -100158a0 T etharp_request -10015950 t etharp_output_to_arp_index -10015998 T etharp_query -10015a9c T etharp_output -10015b88 T ethernet_input -10015d60 t low_level_output -10015dbc t arp_timer -10015dd8 T ethernetif_recv -10015e50 T ethernetif_init -10015e94 T lwip_POST_SLEEP_PROCESSING -10015eb0 T rltk_wlan_set_netif_info -10015ed0 T rltk_wlan_send -10015f64 T rltk_wlan_recv -10015fd0 T netif_is_valid_IP -10016008 T netif_get_idx -10016028 T netif_rx -10016038 T netif_post_sleep_processing -1001603c T sys_mbox_new -10016056 T sys_mbox_free -1001606a T sys_mbox_post -1001608a T sys_mbox_trypost -100160ac T sys_arch_mbox_fetch -100160f6 T sys_arch_mbox_tryfetch -10016116 T sys_mbox_valid -10016120 T sys_mbox_set_invalid -10016126 T sys_sem_new -10016162 T sys_arch_sem_wait -100161a2 T sys_sem_signal -100161ae T sys_sem_free -100161b4 T sys_sem_valid -100161be T sys_sem_set_invalid -100161c4 T sys_init -100161e8 T sys_thread_new -1001624c T sys_arch_protect -10016256 T sys_arch_unprotect -1001625c t mark_ip_in_table -100162a0 t dhcps_initialize_message -10016350 t add_offer_options -10016440 T dhcps_handle_state_machine_change -10016510 t dhcps_receive_udp_packet_handler -100167dc T dhcps_deinit -10016804 T dhcps_init -1001690c t prvInsertBlockIntoFreeList -10016954 t vPortDefineHeapRegions.constprop.1 -100169f4 T pvPortMalloc -10016ad4 T __vPortFree -10016b18 T vPortSetExtFree -10016b34 T vPortFree -10016b64 T xPortGetFreeHeapSize -10016b70 t prvTaskExitError -10016b84 t prvPortStartFirstTask -10016ba4 T pxPortInitialiseStack -10016bd0 T vPortSVCHandler -10016bf0 t pxCurrentTCBConst2 -10016bf4 T vPortEnterCritical -10016c14 T vPortExitCritical -10016c30 T xPortPendSVHandler -10016c70 t pxCurrentTCBConst -10016c74 T xPortSysTickHandler -10016ca0 W vPortSuppressTicksAndSleep -10016db8 W vPortSetupTimerInterrupt -10016e08 T xPortStartScheduler -10016e38 T vApplicationIdleHook -10016e3c T vApplicationStackOverflowHook -10016e50 T osKernelSysTick -10016e54 T vListInitialise -10016e6a T vListInitialiseItem -10016e70 T vListInsertEnd -10016e88 T vListInsert -10016eb8 T uxListRemove -10016ed8 t prvCopyDataToQueue -10016f48 t prvCopyDataFromQueue -10016f70 t prvUnlockQueue -10016fdc T xQueueGenericReset -10017048 T xQueueGenericCreate -1001707c T xQueueCreateCountingSemaphore -10017090 T xQueueGenericSend -10017188 T xQueueCreateMutex -100171ac T xQueueGenericSendFromISR -1001720e T xQueueGiveFromISR -10017264 T xQueueGenericReceive -10017398 T uxQueueMessagesWaiting -100173aa T vQueueDelete -100173ae T vQueueWaitForMessageRestricted -100173f4 t prvWriteNameToBuffer -10017418 t prvGetExpectedIdleTime -10017454 t prvResetNextTaskUnblockTime -10017478 t prvAddCurrentTaskToDelayedList -10017508 T xTaskGenericCreate -100176d0 T vTaskDelete -1001778c T eTaskGetState -100177f4 T uxTaskPriorityGet -10017810 T vTaskPrioritySet -100178d8 T vTaskStartScheduler -10017944 T vTaskSuspendAll -10017954 T xTaskGetTickCount -10017960 T pcTaskGetName -10017970 T vTaskStepTick -10017980 T xTaskIncrementTick -10017a98 T xTaskResumeAll -10017b74 T vTaskDelay -10017ba4 t prvIdleTask -10017c28 T vTaskSwitchContext -10017cd8 T vTaskPlaceOnEventList -10017cf8 T vTaskPlaceOnEventListRestricted -10017d24 T xTaskRemoveFromEventList -10017d98 T vTaskSetTimeOutState -10017db0 T xTaskCheckForTimeOut -10017dfc T vTaskMissedYield -10017e08 T eTaskConfirmSleepModeStatus -10017e3c T vTaskGetInfo -10017ebc t prvListTasksWithinSingleList -10017f1c T uxTaskGetSystemState -10017fc8 T xTaskGetSchedulerState -10017fe8 T vTaskPriorityInherit -1001807c T xTaskPriorityDisinherit -100180ec T vTaskList -1001819c T vTaskGetRunTimeStats -1001825c T pvTaskIncrementMutexHeldCount -10018274 t prvCheckForValidListAndQueue -100182c0 t prvInsertTimerInActiveList -100182fc T xTimerCreateTimerTask -10018338 T xTimerCreate -1001836c T xTimerGenericCommand -100183ac t prvSwitchTimerLists -1001841c t prvTimerTask -1001859c T xTimerIsTimerActive -100185b4 t device_mutex_init -100185f8 T device_mutex_lock -10018628 T device_mutex_unlock -10018644 t _freertos_enter_critical_from_isr -10018664 t _freertos_exit_critical_from_isr -10018674 t _freertos_systime_to_sec -1001867e t _freertos_ms_to_systime -10018680 t _freertos_sec_to_systime -10018688 t _freertos_usleep_os -1001868c t _freertos_yield_os -100186a4 t _freertos_ATOMIC_SET -100186a8 t _freertos_ATOMIC_READ -100186ac t _freertos_modular64 -10018720 t _freertos_thread_enter -10018722 t _freertos_enter_critical -10018726 t _freertos_exit_critical -1001872a t _freertos_ATOMIC_SUB_RETURN -10018742 t _freertos_ATOMIC_DEC_RETURN -10018758 t _freertos_ATOMIC_ADD_RETURN -10018770 t _freertos_ATOMIC_INC_RETURN -10018786 t _freertos_ATOMIC_SUB -1001879e t _freertos_ATOMIC_DEC -100187a4 t _freertos_ATOMIC_ADD -100187bc t _freertos_ATOMIC_INC -100187c2 T _freertos_malloc -100187c6 T _freertos_zmalloc -100187de t _freertos_memset -100187e2 T _freertos_mfree -100187e6 t _freertos_get_current_time -100187ea t _freertos_spinunlock_irqsave -10018800 t _freertos_spinunlock -1001880c t _freertos_mutex_put -10018810 T _freertos_wakeup_task -10018816 t _freertos_up_sema -1001881a t _freertos_exit_critical_mutex -10018826 T _freertos_timerCreate -1001882a T _freertos_timerDelete -1001883e T _freertos_timerStop -10018852 T _freertos_timerChangePeriod -1001886c T _freertos_timerIsTimerActive -10018870 T _freertos_acquire_wakelock -10018876 T _freertos_release_wakelock -1001887c T _freertos_get_scheduler_state -1001889c t _freertos_thread_exit -100188a2 t _freertos_GetFreeHeapSize -100188a6 t _freertos_udelay_os -100188aa t _freertos_mdelay_os -100188ae t _freertos_deinit_xqueue -100188c8 t _freertos_spinlock_free -100188da t _freertos_mutex_free -100188de t _freertos_free_sema -100188e2 t _freertos_push_to_xqueue -1001890a t _freertos_pop_from_xqueue -10018932 t _freertos_down_sema -10018954 t _freertos_init_xqueue -10018970 t _freertos_spinlock_irqsave -100189ac t _freertos_spinlock -100189e4 t _freertos_enter_critical_mutex -10018a1c t _freertos_mutex_get -10018a54 t _freertos_spinlock_init -10018a62 t _freertos_mutex_init -10018a66 t _freertos_init_sema -10018a78 t _freertos_create_task -10018ae8 t _freertos_memcmp -10018af6 t _freertos_memcpy -10018afc t _freertos_delete_task -10018b48 t _freertos_mutex_get_timeout -10018b84 t _freertos_up_sema_from_isr -10018bb4 t _freertos_systime_to_ms -10018bb6 t _freertos_msleep_os -10018bba T save_and_cli -10018bbe T restore_flags -10018bc2 T cli -10018bd4 T _freertos_arc4random -10018c04 t _freertos_get_random_bytes -10018c42 T RtlInitSema -10018c50 T RtlUpSemaFromISR -10018c80 T RtlDownSema -10018c94 T RtlUdelayOS -10018c98 T _htons -10018c9e T _ntohs -10018ca4 T _rtw_zvmalloc -10018cc4 T _rtw_vmfree -10018ce8 T _rtw_malloc -10018cf8 T _rtw_zmalloc -10018d08 T _rtw_mfree -10018d18 T deinit_mem_monitor -10018d1a T rtw_vmfree -10018d1e T rtw_mfree -10018d24 T rtw_memcpy -10018d34 T rtw_memcmp -10018d44 T rtw_memset -10018d54 T rtw_init_listhead -10018d5a T rtw_is_list_empty -10018d64 T rtw_list_insert_head -10018d70 T rtw_list_insert_tail -10018d7c T rtw_list_delete -10018d8c T rtw_init_sema -10018d9c T rtw_free_sema -10018dac T rtw_up_sema -10018dbc T rtw_up_sema_from_isr -10018dcc T rtw_down_timeout_sema -10018ddc T rtw_down_sema -10018df0 T rtw_mutex_init -10018e00 T rtw_mutex_free -10018e10 T rtw_mutex_put -10018e20 T rtw_mutex_get_timeout -10018e34 T rtw_enter_critical_from_isr -10018e44 T rtw_enter_critical -10018e48 T rtw_exit_critical_from_isr -10018e58 T rtw_exit_critical -10018e5c T rtw_enter_critical_mutex -10018e6c T rtw_exit_critical_mutex -10018e7c T rtw_queue_empty -10018e86 T rtw_end_of_queue_search -10018e90 T rtw_spinlock_init -10018ea0 T rtw_init_queue -10018eac T rtw_spinlock_free -10018ebc T rtw_spin_lock -10018ecc T rtw_enter_critical_bh -10018ed0 T rtw_spin_unlock -10018ee0 T rtw_exit_critical_bh -10018ee4 T rtw_get_current_time -10018ef4 T rtw_systime_to_ms -10018f08 T rtw_systime_to_sec -10018f1c T rtw_ms_to_systime -10018f30 T rtw_sec_to_systime -10018f44 T rtw_get_passing_time_ms -10018f58 T rtw_msleep_os -10018f68 T rtw_usleep_os -10018f78 T rtw_mdelay_os -10018f88 T rtw_udelay_os -10018f98 T ATOMIC_SET -10018fa8 T ATOMIC_INC -10018fb8 T ATOMIC_INC_RETURN -10018fcc T ATOMIC_DEC_RETURN -10018fe0 T ATOMIC_DEC_AND_TEST -10018ff0 T rtw_modular64 -1001900c T rtw_get_random_bytes -10019020 T rtw_getFreeHeapSize -10019030 T init_mem_monitor -10019040 T add_mem_usage -10019074 T rtw_zvmalloc -10019094 T rtw_malloc -100190b4 T rtw_zmalloc -100190d4 T rtw_netif_queue_stopped -100190d8 T rtw_netif_wake_queue -100190da T rtw_netif_start_queue -100190dc T rtw_netif_stop_queue -100190de T flush_signals_thread -100190e0 T rtw_acquire_wakelock -100190f0 T rtw_release_wakelock -10019100 T rtw_create_task -1001911c T rtw_delete_task -1001912c T rtw_wakeup_task -1001913c T rtw_timerCreate -10019158 T rtw_timerDelete -1001916c T rtw_timerIsTimerActive -10019180 T rtw_timerStop -10019194 T rtw_timerChangePeriod -100191a8 T rtw_thread_enter -100191b8 T rtw_thread_exit -100191c8 T tcm_heap_free -10019248 T tcm_heap_init -10019298 T tcm_heap_freeSpace -100192d8 T tcm_heap_malloc -10019378 T tcm_heap_calloc -10019390 T flash_init -1001942c T flash_turnon -10019444 T flash_erase_sector -10019470 T flash_stream_read -10019540 T flash_stream_write -10019698 T i2s_init -10019770 T i2s_set_dma_buffer -100197c2 T i2s_tx_irq_handler -100197c8 T i2s_set_param -100197fc T i2s_deinit -10019800 T i2s_enable -10019804 T i2s_disable -10019808 W pinmap_merge -10019844 W pinmap_find_peripheral -1001985c W pinmap_peripheral -10019894 T sleep_ex_selective -100198a8 T deepsleep_ex -100198cc T us_ticker_read -100198f8 t get_addr_fobj -10019942 t get_addr_fobj_save -1001998c t _fwrite_word -100199b8 t get_addr_bscfg -10019a34 T copy_align4_to_align1 -10019abe T cmp_align1_align4 -10019b68 T flash_write_cfg -10019da8 T flash_read_cfg -10019e3c T En32KCalibration -10019ed0 T WDGInitial -10019f5c T WDGStart -10019f74 T WDGRefresh -10019f90 T I2SISRHandle -1001a04c T RtkI2SDeInit -1001a12c T RtkI2SEnable -1001a168 T RtkI2SDisable -1001a1a4 T RtkI2SLoadDefault -1001a208 T HalI2SOpInit -1001a284 T RtkI2SInit -1001a448 T HalI2SInit -1001a486 T HalI2SDisable -1001a4ac T HalI2SEnable -1001a4d0 T HalI2SDeInit -1001a528 T HalTimerOpInit_Patch -1001a564 T freertos_ready_to_sleep -1001a574 T freertos_pre_sleep_processing -1001a638 T freertos_post_sleep_processing -1001a65c T acquire_wakelock -1001a69c T release_wakelock -1001a6f8 T get_wakelock_status -1001a704 T HalI2SInitRtl8195a_Patch -1001a806 T HalI2SSetRateRtl8195a -1001a84c T HalI2SSetWordLenRtl8195a -1001a874 T HalI2SSetChNumRtl8195a -1001a89c T HalI2SSetPageNumRtl8195a -1001a8c4 T HalI2SSetPageSizeRtl8195a -1001a8ee T HalI2SSetDMABufRtl8195a -1001a958 T HalI2SGetTxPageRtl8195a -1001a978 T HalI2SPageSendRtl8195a -1001a9c4 T HalI2SClearAllOwnBitRtl8195a -1001a9f8 T HalI2SDMACtrlRtl8195a -1001a9fc T HalTimerIrq2To7Handle_Patch -1001aa50 T HalTimerIrqRegisterRtl8195a_Patch -1001aacc T HalTimerIrqUnRegisterRtl8195a_Patch -1001ab44 T HalTimerDeInitRtl8195a_Patch -1001ab78 T HalTimerReadCountRtl8195a_Patch -1001ab90 T HalTimerReLoadRtl8195a_Patch -1001abc4 T HalTimerInitRtl8195a_Patch -1001ac98 T HalTimerIrqEnRtl8195a -1001acac T HalTimerEnRtl8195a_Patch -1001acc0 T HalTimerDisRtl8195a_Patch -1001acd4 T vWFSSVCHandler -1001acda t svcing -1001acf4 T PatchHalLogUartInit -1001ad98 T PSHalInitPlatformLogUart -1001ae5c T InitSYSIRQ -1001ae98 T DurationScaleAndPeriodOP -1001aed0 T CLKCal -1001af2c T BackupCPUClk -1001af4c T ReFillCpuClk -1001af6c T SYSIrqHandle -1001afac T WakeFromSLPPG -1001b0e4 T InitSoCPM -1001b11c T RegPowerState -1001b188 T ReadHWPwrState -1001b404 T QueryRegPwrState -1001b43c T SetSYSTimer -1001b474 T SleepCG -1001b564 T DeepSleep -1001b6a8 T HALEFUSEOneByteReadRAM -1001b6c8 T HALEFUSEOneByteWriteRAM -1001b6cc T HalLogUartWaitTxFifoEmpty -1001b6e4 T FunctionChk -1001b6e8 T HalReInitPlatformTimer -1001b758 T HalGetChipId -1001b780 W __low_level_init -1001b784 T rtl_libc_init -1001b7a0 T rtl_snprintf -1001b800 T rtl_sprintf -1001b84c T rtl_printf -1001b894 T rtl_memcmp -1001b89c T rtl_memcpy -1001b8a4 T rtl_memmove -1001b8ac T rtl_memset -1001b8b4 T rtl_strcmp -1001b8bc T rtl_strcpy -1001b8c4 T rtl_strlen -1001b8cc T rtl_strncmp -1001b8d4 T rtl_strncpy -1001b8dc T rtl_strsep -1001b8e4 T ram_libgloss_close -1001b8f4 T ram_libgloss_fstat -1001b914 T ram_libgloss_isatty -1001b920 T ram_libgloss_lseek -1001b930 T ram_libgloss_read -1001b940 T ram_libgloss_sbrk -1001b95c T ram_libgloss_write -1001b97c T ram_libgloss_open -1001b9b8 T init_rom_libgloss_ram_map -1001ba00 T memcpy -1001ba08 T memset -1001ba10 T sscanf -1001ba2a T __aeabi_llsr -1001ba40 t rtw_ht_operation_update -1001baf2 t associated_clients_update.part.11 -1001bb2e T chk_sta_is_alive -1001bb6c T add_RATid -1001bc74 T update_sta_info_apmode -1001bd2c T update_beacon -1001bfec T rtw_check_beacon_data -1001c6ec T associated_clients_update -1001c6f6 T bss_cap_update_on_sta_join -1001c8a6 T bss_cap_update_on_sta_leave -1001c9a2 T ap_free_sta -1001ca54 T expire_timeout_chk -1001cb90 T rtw_sta_flush -1001cc14 T free_mlme_ap_info -1001cc60 T sta_info_update -1001cc9c T ap_sta_info_defer_update -1001cccc T start_ap_mode -1001cd0c T init_mlme_ap_info -1001cd22 T stop_ap_mode -1001cd70 T rtw_generate_bcn_ie -1001d094 T set_hidden_ssid -1001d0ec T _rtw_init_evt_priv -1001d0fe T _rtw_free_cmd_priv -1001d108 T _rtw_enqueue_cmd -1001d134 T _rtw_dequeue_cmd -1001d168 T _rtw_observequeue_cmd -1001d17c T rtw_init_cmd_priv -1001d186 T rtw_init_evt_priv -1001d18a T rtw_free_evt_priv -1001d18c T rtw_free_cmd_priv -1001d190 T rtw_cmd_filter -1001d1ae T rtw_free_cmd_obj -1001d1d8 T rtw_enqueue_cmd -1001d22e T rtw_set_channel_plan_cmd_callback -1001d246 T rtw_survey_cmd_callback -1001d262 T rtw_disassoc_cmd_callback -1001d292 T rtw_joinbss_cmd_callback -1001d2ae T rtw_setstaKey_cmdrsp_callback -1001d2c8 T rtw_cmd_thread -1001d424 T rtw_joinbss_cmd -1001d6ce T rtw_disassoc_cmd -1001d71c T rtw_setstakey_cmd -1001d80c T rtw_clearstakey_cmd -1001d8ac T rtw_dynamic_chk_wk_cmd -1001d8fe T rtw_set_chplan_cmd -1001d97e T dynamic_chk_wk_hdl -1001da46 T lps_ctrl_wk_hdl -1001daaa T rtw_lps_ctrl_wk_cmd -1001db14 T rtw_sitesurvey_cmd -1001dbdc T rpt_timer_setting_wk_hdl -1001dbf0 T rtw_ps_cmd -1001dc4c T rtw_chk_hi_queue_cmd -1001dca0 T rtw_drvextra_cmd_hdl -1001dd7c T rtw_do_join -1001de20 T rtw_set_802_11_bssid -1001dfa4 T rtw_set_802_11_ssid -1001e0ac T rtw_set_802_11_infrastructure_mode -1001e14e T rtw_set_802_11_bssid_list_scan -1001e19e T rtw_set_802_11_authentication_mode -1001e1c0 T rtw_set_802_11_add_wep -1001e220 t rtw_free_mlme_ie_data -1001e238 T rtw_init_mlme_timer -1001e294 T rtw_del_mlme_timer -1001e2b4 T reconnect_timer_hdl -1001e354 T _rtw_init_mlme_priv -1001e3d6 T rtw_mfree_mlme_priv_lock -1001e3f2 T rtw_free_mlme_priv_ie_data -1001e42a T _rtw_free_mlme_priv -1001e452 T _rtw_alloc_network -1001e4a2 T _rtw_free_network -1001e502 T _rtw_free_network_nolock -1001e528 T _rtw_find_network -1001e564 T _rtw_free_network_queue -1001e5ac T rtw_if_up -1001e5cc T rtw_get_capability_from_ie -1001e5d0 T rtw_get_capability -1001e5ea T rtw_get_beacon_interval_from_ie -1001e5ee T rtw_init_mlme_priv -1001e606 T rtw_free_mlme_priv -1001e60a T rtw_free_network_queue -1001e60e T rtw_is_same_ibss -1001e624 T is_same_network -1001e688 T update_network -1001e722 T rtw_update_scanned_network -1001e834 T rtw_add_network -1001e872 T rtw_survey_event_callback -1001e91e T rtw_dummy_event_callback -1001e920 T rtw_free_assoc_resources -1001e9ea T rtw_indicate_connect -1001e9fa T rtw_indicate_disconnect -1001ea1c T rtw_indicate_scan_done -1001ea20 T rtw_joinbss_event_callback -1001ea3e T search_max_mac_id -1001ea86 T rtw_stassoc_hw_rpt -1001eabe T rtw_stassoc_event_callback -1001eaec T rtw_stadel_event_callback -1001eb92 T _rtw_join_timeout_handler -1001ec1c T rtw_join_timeout_handler -1001ec74 T rtw_scan_timeout_handler -1001eca4 T _rtw_scan_timeout_handler -1001eca8 T rtw_dynamic_check_timer_handlder -1001ed00 T _dynamic_check_timer_handlder -1001ed44 T rtw_select_and_join_from_scanned_queue -1001ee18 T rtw_surveydone_event_callback -1001ef30 T rtw_set_auth -1001ef80 T rtw_set_key -1001f042 T rtw_restruct_wmm_ie -1001f0a8 T rtw_restruct_sec_ie -1001f114 T rtw_joinbss_reset -1001f124 T rtw_restructure_ht_ie -1001f204 T rtw_update_ht_cap -1001f28e T rtw_joinbss_event_prehandle -1001f4ba T rtw_linked_check -1001f4d6 T rtw_buddy_adapter_up -1001f50e T check_buddy_fwstate -1001f52c t get_da -1001f54c t get_sa -1001f576 T OnAction -1001f588 T DoReserved -1001f58c t _mgt_dispatcher.isra.2 -1001f5d8 T rtw_is_channel_set_contains_channel -1001f5fa T init_hw_mlme_ext -1001f610 T init_channel_set -1001f6a8 T free_mlme_ext_priv -1001f6d0 T mgt_dispatcher -1001f758 T alloc_mgtxmitframe -1001f790 T update_mgnt_tx_rate -1001f796 T update_mgntframe_attrib -1001f7f2 T rtw_build_mgnt_frame -1001f848 T dump_mgntframe -1001f862 T rtw_send_mgnt -1001f880 t issue_action_BSSCoexistPacket -1001fa8c T update_hidden_ssid -1001fae0 T issue_beacon -1001fcf8 T issue_probersp -1001ff88 T OnProbeReq -10020050 T issue_probereq -10020208 T issue_auth -10020470 T OnAuth -10020714 T issue_asocrsp -10020988 T issue_assocreq -10020cc4 T issue_nulldata -10020dae T issue_qos_nulldata -10020ee0 T issue_deauth -10020fc8 T issue_action_BA -10021244 T OnAction_back -10021312 T collect_bss_info -10021544 T start_clnt_auth -100215d4 T start_clnt_assoc -10021608 T OnAuthClient -100216e8 T report_scan_result_one -100218a8 T add_site_survey -10021a2e T report_survey_event -10021c6c T OnProbeRsp -10021ca0 T report_surveydone_event -10021d04 T report_join_res -10021d74 T OnAssocRsp -10021ec0 T report_del_sta_event -10021f52 T receive_disconnect -10021fa8 T OnBeacon -10022130 T OnDeAuth -10022288 T OnDisassoc -100223f8 T report_add_sta_event -1002246c T OnAssocReq -10022a5c T rtw_port_switch_chk -10022ae0 T update_sta_info -10022b60 T mlmeext_sta_del_event_callback -10022be0 T _linked_info_dump -10022c42 T _linked_rx_signal_strehgth_display -10022c7c T linked_status_chk -10022ef0 T survey_timer_hdl -10022fd0 T _survey_timer_hdl -10022fd4 T link_timer_hdl -10023052 T _link_timer_hdl -10023056 T addba_timer_hdl -10023076 T NULL_hdl -1002307a T setopmode_hdl -100230c0 T disconnect_hdl -1002316c T setauth_hdl -1002317c T setkey_hdl -100231d4 T set_stakey_hdl -100232d8 T set_tx_beacon_cmd -1002334c T mlme_evt_hdl -10023398 T tx_beacon_hdl -10023452 T check_buddy_mlmeinfo_state -1002346c T site_survey -1002363c T sitesurvey_cmd_hdl -1002374a T concurrent_chk_start_clnt_join -100237e0 T start_clnt_join -100238b4 T join_cmd_hdl -100239d8 T concurrent_chk_joinbss_done -10023ba0 T mlmeext_joinbss_event_callback -10023cdc T set_chplan_hdl -10023cf8 T init_mlme_ext_timer -10023d54 T init_mlme_ext_priv -10023e90 t get_hdr_bssid -10023eb8 t filter_packet -10023f40 t promisc_get_encrypt -10023f92 t promisc_info_get -10024036 t promisc_set_enable -100240d2 T _promisc_deinit -10024124 T _promisc_recv_func -10024670 T _promisc_set -10024700 T _is_promisc_enabled -10024718 t SetEAPOL_KEYIV -100247b6 t ToDrv_SetPTK -1002485e t Message_ReplayCounter_OC2LI.isra.2 -1002488c t Message_SmallerEqualReplayCounter.isra.4 -100248be t Message_setReplayCounter.isra.5 -100248dc t INCLargeInteger -100248fc t INCOctet16_INTEGER -10024944 t INCOctet32_INTEGER -100249a4 t ToDrv_DisconnectSTA -10024a68 t CheckMIC.constprop.14 -10024ae8 t CalcMIC.constprop.15 -10024b48 T DecWPA2KeyData -10024bfc T DecGTK -10024cb8 T ToDrv_SetGTK -10024d48 T init_wpa_sta_info -10024e34 T SendEAPOL -100254ec T ClientSendEAPOL -100259d4 t ResendTimeout -10025a5c T EAPOLKeyRecvd -10025bd4 T ClientEAPOLKeyRecvd -10025f94 T psk_derive -10026048 T psk_init -10026138 T psk_strip_rsn_pairwise -100261b8 T psk_strip_wpa_pairwise -10026238 T tkip_send_mic_failure_report -100263ac T pwr_state_check_handler -100263b0 T ips_enter -10026458 T ips_leave -10026570 T rtw_pwr_unassociated_idle -100265ba T rtw_ps_processor -10026612 T PS_RDY_CHECK -1002667a T rtw_set_ps_mode -100266e8 T LPS_RF_ON_check -1002673e T LPS_Enter -100267ac T LPS_Leave -100267e8 T LeaveAllPowerSaveMode -100267f8 T rtw_init_pwrctrl_priv -100268cc T rtw_free_pwrctrl_priv -100268e0 T _rtw_pwr_wakeup -100269bc T rtw_pm_set_lps -10026a04 T rtw_pm_set_ips -10026a48 T rtw_pm_set_tdma_param -10026a64 T rtw_pm_set_lps_dtim -10026a70 T rtw_pm_get_lps_dtim -10026a7c t recvframe_pull -10026a9e t recvframe_pull_tail -10026ac0 T rtw_signal_stat_timer_hdl -10026b5e T _rtw_init_sta_recv_priv -10026b7c T _rtw_init_recv_priv -10026c24 T rtw_mfree_recv_priv_lock -10026c58 T _rtw_alloc_recvframe -10026c8a T rtw_alloc_recvframe -10026cb0 T rtw_free_recvframe -10026d4c T _rtw_enqueue_recvframe -10026d78 T rtw_enqueue_recvframe -10026da2 T rtw_free_recvframe_queue -10026dda T rtw_free_uc_swdec_pending_queue -10026e02 T _rtw_free_recv_priv -10026e32 T rtw_free_buf_pending_queue -10026e36 T recvframe_chkmic -10026f34 T decryptor -10026fd0 T portctrl -10027046 T recv_decache -10027074 T process_pwrbit_data -100270b4 T process_wmmps_data -1002713c T count_rx_stats -100271b0 T sta2sta_data_frame -100272ec T ap2sta_data_frame -10027418 T sta2ap_data_frame -100274a0 T validate_recv_ctrl_frame -1002763a T validate_recv_data_frame -10027894 T wlanhdr_to_ethhdr -100279d0 T recvframe_defrag -10027a7a T recvframe_chk_defrag -10027b30 T validate_recv_mgnt_frame -10027b6c T validate_recv_frame -10027c34 T recv_indicatepkt_reorder -10027c56 T process_recv_indicatepkts -10027cae T recv_func_prehandle -10027cd6 T recv_func_posthandle -10027d3a T recv_func -10027dc4 T rtw_recv_entry -10027df4 T rtw_recv_tasklet -10027e4c T rtw_wep_encrypt -10027e92 T rtw_wep_decrypt -10027ed8 T rtw_tkip_encrypt -10027f44 T rtw_tkip_decrypt -10027fb0 T rtw_aes_encrypt -1002801c T rtw_aes_decrypt -10028080 T rtw_init_sec_priv -100280f2 T rtw_free_sec_priv -10028112 t wifi_mac_hash -1002813c T _addba_timer_hdl -10028140 T _rtw_init_stainfo -100281ba T _rtw_init_sta_priv -100282a2 T _rtw_free_sta_xmit_priv_lock -100282ce T rtw_mfree_stainfo -100282fa T rtw_mfree_sta_priv_lock -10028330 T _rtw_free_sta_priv -10028350 T init_addba_retry_timer -10028378 T rtw_alloc_stainfo -10028442 T rtw_free_stainfo -100285e4 T rtw_get_stainfo -10028660 T rtw_init_bcmc_stainfo -10028690 T rtw_get_bcmc_stainfo -100286b4 T rtw_free_all_stainfo -1002870e T cckrates_included -10028736 T cckratesonly_included -1002875e T networktype_to_raid_ex -100287bc T judge_network_type -1002880c T ratetbl_val_2wifirate -10028820 T is_basicrate -1002884c T ratetbl2rateset -10028890 T get_rate_set -100288ba T UpdateBrateTbl -100288ec T UpdateBrateTblForSoftAP -10028920 T Save_DM_Func_Flag -10028936 T Restore_DM_Func_Flag -1002894c T Switch_DM_Func -10028968 T Set_MSR -1002898c T set_opmode -100289d0 T SelectChannel -10028a04 T SetBWMode -10028a40 T set_channel_bwmode -10028a96 T get_my_bssid -10028a9a T get_beacon_interval -10028ab8 T is_client_associated_to_ap -10028ad0 T is_client_associated_to_ibss -10028aec T is_IBSS_empty -10028b0e T decide_wait_for_beacon_timeout -10028b2a T invalidate_cam_all -10028b32 T write_cam -10028ba8 T clear_cam_entry -10028bd6 T flush_all_cam_entry -10028c34 T WMM_param_handler -10028c5a T WMMOnAssocRsp -10028d28 T HT_caps_handler -10028dc8 T HT_info_handler -10028dec T HTOnAssocRsp -10028e24 T ERP_IE_handler -10028e40 T VCS_update -10028e92 T rtw_check_bcn_info -100290a2 T update_beacon_info -100290f8 T is_ap_in_tkip -10029170 T wifirate2_ratetbl_inx -100291dc T update_basic_rate -1002920a T update_supported_rate -10029234 T update_MCS_rate -10029240 T support_short_GI -1002926e T get_highest_rate_idx -10029288 T Update_RA_Entry -10029290 T set_sta_rate -10029298 T update_tx_basic_rate -100292f0 T check_assoc_AP -100293e4 T update_IOT_info -10029442 T update_capinfo -100294c0 T update_wireless_mode -10029560 T update_bmc_sta_support_rate -10029588 T update_TSF -1002959a T correct_TSF -100295a2 t _init_txservq -100295b8 t set_qos -10029608 T _rtw_init_sta_xmit_priv -1002964e T rtw_mfree_xmit_priv_lock -1002969a T qos_acm -100296d4 T xmitframe_addmic -10029832 T xmitframe_swencrypt -1002985e T rtw_make_wlanhdr -10029a3e T rtw_txframes_pending -10029a7a T rtw_txframes_sta_ac_pending -10029ab0 T rtw_txframes_update_attrib_vcs_info -10029b50 T rtw_put_snap -10029b94 T rtw_update_protection -10029bda T rtw_count_tx_stats -10029c2a T rtw_free_xmitbuf_ext -10029c6c T rtw_alloc_xmitframe -10029cc4 T rtw_free_xmitframe -10029d16 T rtw_free_xmitframe_queue -10029d54 T rtw_get_sta_pending -10029d94 T rtw_xmit_classifier -10029dfa T rtw_xmitframe_enqueue -10029e08 T rtw_alloc_hwxmits -10029e62 T rtw_free_hwxmits -10029e78 T _rtw_free_xmit_priv -10029f44 T rtw_init_hwxmits -10029f5c T _rtw_init_xmit_priv -1002a114 T rtw_get_ff_hwaddr -1002a128 T xmitframe_enqueue_for_sleeping_sta -1002a2e8 t dequeue_xmitframes_to_sleeping_queue -1002a33e T stop_sta_xmit -1002a426 T wakeup_sta_to_xmit -1002a63c T xmit_delivery_enabled_frames -1002a758 T rtw_xmit_tasklet -1002a7b0 T rtw_xmit_mgnt -1002a7b4 T rtw_xmit -1002aade T rtw_sctx_done_err -1002aaea T rtw_alloc_xmitbuf -1002ab44 T rtw_free_xmitbuf -1002abb6 T rtw_alloc_xmitbuf_ext -1002ac3c T rtw_sctx_done -1002ac42 t rtl8195a_free_rx_ring -1002ac50 t bus_write32 -1002acac t bus_write16 -1002ad08 t bus_write8 -1002ad64 t bus_read32 -1002adbe t bus_read16 -1002ae1a t bus_read8 -1002ae76 t rtl8195a_free_tx_ring -1002af04 T rtl8195a_init_desc_ring -1002b044 T rtl8195a_free_desc_ring -1002b060 T rtl8195a_reset_desc_ring -1002b0f6 T InitLxDmaRtl8195a -1002b258 T rtl8195a_check_txdesc_closed -1002b2d0 t rtl8195a_tx_isr -1002b3b4 T InterruptRecognized8195a -1002b444 T InitInterrupt8195a -1002b464 T EnableDMA8195a -1002b48c T EnableInterrupt8195a -1002b4cc T DisableDMA8195a -1002b4d8 T DisableInterrupt8195a -1002b4f0 T UpdateInterruptMask8195a -1002b552 T CheckRxTgRtl8195a -1002b58c T rtl8192ee_check_rxdesc_remain -1002b5bc T rtl8195a_recv_tasklet -1002b8d0 T rtl8195a_tx_int_handler -1002b8fc T InterruptHandle8195a -1002bb70 T rtl8195a_xmit_tasklet -1002bb98 T lxbus_set_intf_ops -1002bbd8 t GetTxBufDesc -1002bc22 t UpdateFirstTxbdtoXmitBuf.isra.3 -1002bc54 t check_nic_enough_desc.isra.4 -1002bca4 T rtl8195ab_init_xmit_priv -1002bcb2 T rtl8195ab_free_xmit_priv -1002bcba T GetDmaTxbdIdx -1002bcd6 T rtl8195a_enqueue_xmitbuf -1002bcfa T rtl8195a_dequeue_xmitbuf -1002bd1e T SetTxbdForLxDMARtl8195ab -1002bd9e T UpdateTxbdHostIndex -1002bddc T rtw_dump_xframe -1002bfae T check_tx_desc_resource -1002bfe8 T rtw_dequeue_xframe -1002c07c T rtw_xmitframe_coalesce -1002c330 T rtl8195ab_xmitframe_resume -1002c426 T rtl8195ab_mgnt_xmit -1002c462 T rtl8195ab_hal_xmit -1002c570 t Hal_GetEfuseDefinition -1002c5a0 t ResumeTxBeacon -1002c5e4 T UpdateHalRAMask8195A -1002c77c T HalLittleWifiMCUThreadRtl8195a -1002c7d0 T HalCheckInReqStateThreadRtl8195a -1002c81c T HalTDMAChangeStateThreadRtl8195a -1002c868 t rtl8195a_read_chip_version -1002c8dc t Hal_EfuseWordEnableDataWrite -1002cb20 t Hal_EfusePowerSwitch -1002cb34 t rtl8195a_free_hal_data -1002cb4e t StopTxBeacon -1002cb98 T SetHalODMVar8195A -1002cc50 T rtl8195a_start_thread -1002ccb8 T rtl8195a_stop_thread -1002ccdc t Hal_ReadEFuse -1002ce4c T GetHalODMVar8195A -1002ce60 t rtw_flash_map_update.part.12 -1002cf00 t rtw_flash_map_erase -1002cf44 t Hal_EfusePgPacketWrite -1002d1c0 t Hal_EfuseGetCurrentSize -1002d2a0 t rtw_flash_map_write -1002d46e T rtl8195a_InitBeaconParameters -1002d4de T _InitBurstPktLen_8195AB -1002d4e8 T rtl8195a_set_hal_ops -1002d5c8 T rtl8195a_init_default_value -1002d5ca T rtl8195a_InitLLTTable -1002d614 T Hal_GetChnlGroup8195A -1002d650 T rtw_config_map_read -1002d73c T rtw_config_map_write -1002d7e8 T Hal_InitPGData -1002d846 T Hal_EfuseParseIDCode -1002d85e T Hal_ReadPowerValueFromPROM_8195A -1002d8fc T Hal_EfuseParseTxPowerInfo_8195A -1002d994 T Hal_EfuseParseEEPROMVer_8195A -1002d9aa T Hal_EfuseParsePackageType_8195A -1002da14 T Hal_EfuseParseChnlPlan_8195A -1002da44 T Hal_EfuseParseCustomerID_8195A -1002da5a T Hal_EfuseParseXtal_8195A -1002da72 T Hal_EfuseParseThermalMeter_8195A -1002da9a T Hal_ReadRFGainOffset -1002daea T BWMapping_8195A -1002db0a T SCMapping_8195A -1002db32 T rtl8195a_update_txdesc -1002de02 T rtl8195a_fill_fake_txdesc -1002dec0 T SetHwReg8195A -1002eb80 T GetHwReg8195A -1002ec14 T SetHalDefVar8195A -1002ecf4 T GetHalDefVar8195A -1002ed18 T PHY_QueryBBReg_8195A_Safe -1002ed44 T PHY_SetBBReg_8195A_Safe -1002ed70 t phy_RFSerialRead_8195A -1002ee24 T PHY_QueryRFReg_8195A -1002ee3c T PHY_SetRFReg_8195A -1002ee94 T PHY_MACConfig8195A -1002eeae T PHY_BBConfig8195A -1002efbe T PHY_RFConfig8195A -1002efc2 T PHY_SetTxPowerIndex_8195A -1002f0cc T phy_TxPwrAdjInPercentage -1002f10c T PHY_GetTxPowerIndex_8195A -1002f1fc T PHY_SetTxPowerLevel8195A -1002f202 T phy_SpurCalibration_8195A -1002f4ba T phy_SetRegBW_8195A -1002f4f8 T phy_PostSetBwMode8195A -1002f654 T phy_SwChnl8195A -1002f6fc T phy_SwChnlAndSetBwMode8195A -1002f74c T PHY_HandleSwChnlAndSetBW8195A -1002f7fc T PHY_SetBWMode8195A -1002f81e T PHY_SwChnl8195A -1002f838 T PHY_SetSwChnlBWMode8195A -1002f856 t HalTimerEnable -1002f868 T InitTDMATimer -1002f890 T ChangeStateByTDMA -1002f8a0 T GetMinRateInRRSR -1002f8d4 T CheckInReqState -1002f8e4 T InitCheckStateTimer -1002f914 T InitGTimer1ms -1002f960 T DeInitGTimer1ms -1002f9a8 T ChangeTransmiteRate -1002f9e4 T PowerBitSetting -1002fa60 T ChkandChangePS -1002fac4 T IssueRsvdPagePacketSetting -1002fb38 T IssuePSPoll -1002fb64 T WaitTxStateMachineOk -1002fbb8 T IssueNullData -1002fc48 T PsCloseRF -1002fc7c T PsOpenRF -1002fcac T ChkTxQueueIsEmpty -1002fcc4 T InitPS -1002fd34 T ConfigListenBeaconPeriod -1002fd58 T PS_S2_Condition_Match -1002fd8c T PS_S4_Condition_Match -1002fe08 T PS_32K_Condition_Match -1002fe44 T PS_S2ToS3ToS0State -1002feac T PS_S2ToS0State -1002fec8 T PS_S3ToS2orS0State -1002fef8 T PS_S0ToS1ToS2State -1002ff54 T PS_S1ToS0orS2State -1002ff84 T PS_S2ToS4State -1002ffd0 T PS_S0ToS6State -1002fff0 T PS_S6ToS0State -10030008 T CheckTSFIsStable -10030058 T WaitHWStateReady -10030068 T SysClkDown -100300d8 T SysClkUp -10030124 T ResetPSParm -10030198 T PS_S4ToS2State -100301bc T SleepTo32K -1003021c T Change_PS_State -100303c8 T Legacy_PS_Setting -1003043c T PSModeSetting -100304e0 T ChangePSStateByRPWM -10030524 T ChangeTDMAState -10030644 T TDMAChangeStateTask -1003066e T EnterPS -10030690 T SetSmartPSTimer -100306cc T GTimer7Handle -10030728 T SmartPS2InitTimerAndToGetRxPkt -10030764 T PS_OnBeacon -10030814 T PSBcnEarlyProcess -100308d0 T PSMtiBcnEarlyProcess -1003097c T PSRxBcnProcess -10030acc T TxPktInPSOn -10030b0a T PsBcnToProcess -10030bc4 T GTimer6Handle -10030c10 T RPWMProcess -10030c4c T PSSetMode -10030cc4 T SpeRPT -10030de4 T ISR_BcnEarly -10030e50 T ISR_MtiBcnEarly -10030e84 T ISR_RxBcn -10030ea0 T ISR_RxBCMD1 -10030ed0 T ISR_RxBCMD0 -10030f24 T ISR_RxUCMD1 -10030f62 T ISR_RxUCMD0 -10030f9e T ISR_TxPktIn -10030fb0 T ISR_TXCCX -10030fb4 T H2CHDL_SetPwrMode -100310dc T CheckInReqStateTask -10031122 T HalGetNullTxRpt -10031140 T ISR_TBTT -100311b8 T H2CHDL_BcnIgnoreEDCCA -100311c8 T PMUInitial -10031218 T PMUTask -10031324 T PHY_RF6052SetBandwidth8195A -10031368 T PHY_RF6052_Config8195A -10031420 t process_rssi -10031456 T rtl8195a_query_rx_desc_status -10031506 T rtl8195a_query_rx_phy_status -1003165e T hal_com_get_channel_plan -10031692 T HAL_IsLegalChannel -100316b0 T MRateToHwRate -100316c4 T HwRateToMRate -100316d8 T HalSetBrateCfg -10031784 T Hal_MappingOutPipe -100317a0 T hal_init_macaddr -100317cc T hw_var_port_switch -10031a54 T SetHwReg -10031a5e T GetHwReg -10031a60 T switch_power_saving_mode -10031aa4 T rtw_bb_rf_gain_offset -10031aec T PHY_GetRateValuesOfTxPowerByRate -10031c84 T PHY_StoreTxPowerByRateNew -10031d20 T PHY_InitTxPowerByRate -10031d38 T PHY_StoreTxPowerByRate -10031d50 T PHY_GetTxPowerIndexBase -10031df0 T PHY_GetTxPowerTrackingOffset -10031e1c T PHY_GetRateIndexOfTxPowerByRate -10031e30 T PHY_GetTxPowerByRate -10031e90 T phy_StoreTxPowerByRateBase -10031edc T PHY_SetTxPowerByRate -10031f18 T phy_ConvertTxPowerByRateInDbmToRelativeValues -10032018 T PHY_TxPowerByRateConfiguration -1003202a T PHY_SetTxPowerIndexByRateArray -10032068 T PHY_SetTxPowerIndexByRateSection -100320cc T PHY_SetTxPowerLevelByPath -10032102 T phy_GetWorldWideLimit -1003212e T PHY_GetTxPowerLimit -10032258 T PHY_ConvertTxPowerLimitToPowerIndex -100323a8 T PHY_InitTxPowerLimit -100323f0 T PHY_SetTxPowerLimit -1003246c T PHY_GetTxPowerIndex -1003247c T rtw_hal_chip_configure -10032492 T rtw_hal_read_chip_info -100324a8 T rtw_hal_read_chip_version -100324be T rtw_hal_def_value_init -100324d4 T rtw_hal_free_data -100324ea T rtw_hal_dm_init -10032500 T rtw_hal_dm_deinit -10032516 T rtw_hal_init -10032540 T rtw_hal_deinit -1003255a T rtw_hal_set_hwreg -10032568 T rtw_hal_get_hwreg -10032576 T rtw_hal_set_def_var -10032588 T rtw_hal_get_def_var -1003259a T rtw_hal_set_odm_var -100325a8 T rtw_hal_get_odm_var -100325b6 T rtw_hal_enable_interrupt -100325d8 T rtw_hal_disable_interrupt -100325fa T rtw_hal_inirp_init -1003260c T rtw_hal_inirp_deinit -1003261e T rtw_hal_irp_reset -1003262c T rtw_hal_xmit -1003263e T rtw_hal_mgnt_xmit -10032650 T rtw_hal_init_xmit_priv -10032662 T rtw_hal_free_xmit_priv -10032670 T rtw_hal_update_ra_mask -1003269e T rtw_hal_add_ra_tid -100326ac T rtw_hal_clone_data -100326ba T rtw_hal_start_thread -100326c8 T rtw_hal_stop_thread -100326d6 T rtw_hal_read_bbreg -1003270a T rtw_hal_write_bbreg -10032736 T rtw_hal_read_rfreg -10032748 T rtw_hal_write_rfreg -1003275c T rtw_hal_interrupt_handler -1003276e T rtw_hal_set_bwmode -1003277c T rtw_hal_set_chan -1003278a T rtw_hal_set_chnl_bw -100327a0 T rtw_hal_dm_watchdog -100327b6 T rtw_hal_macid_sleep -100327d6 T rtw_hal_macid_wakeup -100327f6 T decide_chip_type_by_device_id -100327fc t rtw_net_get_stats -1003284c t netdev_if2_close -1003286c t netdev_close -100328c8 t rtw_if1_deinit -10032962 T rtw_os_indicate_connect -10032966 T rtw_os_indicate_scan_done -1003296a T rtw_reset_securitypriv -10032a5e T rtw_os_indicate_disconnect -10032aa8 T rtw_init_netdev -10032bf8 T rtw_drv_if2_init -10032e00 T rtw_drv_if2_stop -10032e56 T rtw_drv_if2_free -10032ea4 T _netdev_open -10032fc0 T _netdev_if2_open -1003307c T netdev_if2_open -100330a4 T netdev_open -100330cc T rtw_drv_probe -1003324c T rtw_dev_remove -10033290 T rtw_drv_entry -100332bc T rtw_drv_halt -100332ec t rtw_wx_set_autoreconnect -1003331a t rtw_wx_get_autoreconnect -10033328 t rtw_forwarding_set -1003334a t rtw_set_ch_deauth -1003336c t get_priv_size -10033380 t rtw_wx_del_custome_ie -100333cc t rtw_wx_set_pscan_freq -1003344e t rtw_wx_update_custome_ie -100334c0 t rtw_set_tos_value -100334e0 t rtw_get_tx_power -10033624 t rtw_wx_set_custome_ie -100336d0 t rtw_pm_get -10033714 t rtw_pm_set -100337c8 t rtw_wx_read32 -10033874 t rtw_wx_write32 -100338d8 t rtw_wx_set_freq.isra.10 -10033980 T rtw_ex_set -10033a40 T wireless_send_event -10033a4a T indicate_wx_custom_event -10033aa6 T indicate_wx_scan_result_present -10033ace T indicate_wx_scan_complete_event -10033af8 T rtw_indicate_sta_assoc -10033b48 T rtw_indicate_sta_disassoc -10033ba0 T rtw_indicate_wx_assoc_event -10033bd2 T rtw_indicate_wx_disassoc_event -10033c02 T rtw_set_wpa_ie -10033d18 T strtopsk -10033d84 T rtw_wx_get_passphrase -10033dd0 T rtw_wx_set_ap_essid -10033ec0 T mac_reg_dump -10033f6c T bb_reg_dump -10033fc8 T rf_reg_dump -10034040 t rtw_dbg_port -100346a8 T rtw_set_sta_num -100346c4 T rtw_ex_get_drv_ability -10034784 T rtw_ex_get -10034a1c T rtw_ioctl -100359a8 T rtw_os_recv_resource_init -100359ac T rtw_os_recv_resource_alloc -100359b6 T rtw_os_recv_resource_free -100359b8 T rtw_tkip_countermeasure -10035a58 T rtw_handle_tkip_mic_err -10035b00 T rtw_recv_indicatepkt -10035d50 T skb_fail_inc -10035d6c T skb_fail_get_and_rst -10035d88 T init_skb_pool -10035de0 T init_skb_data_pool -10035e38 T alloc_skb -10035f38 T kfree_skb -10035fa0 T kfree_skb_chk_key -10035fa4 T skb_put -10035fd8 T skb_reserve -10035fe6 T dev_alloc_skb -10036002 T skb_end_pointer -10036006 T skb_set_tail_pointer -1003600e T skb_pull -10036026 T skb_copy -1003604e T rtw_remainder_len -1003605a T _rtw_open_pktfile -1003606c T _rtw_pktfile_read -1003609a T rtw_set_tx_chksum_offload -1003609c T rtw_os_xmit_resource_alloc -100360a6 T rtw_os_xmit_resource_free -100360a8 T rtw_os_pkt_complete -100360b0 T rtw_os_xmit_complete -100360c2 T rtw_os_xmit_schedule -100360fe T rtw_xmit_entry -1003614a T rtw_alloc_etherdev_with_old_priv -10036160 T rtw_alloc_etherdev -1003618c T rtw_free_netdev -100361ac T timer_wrapper -10036200 T alloc_etherdev -1003625c T free_netdev -10036276 T dev_alloc_name -10036280 T init_timer_wrapper -100362a0 T deinit_timer_wrapper -100362ec T init_timer -100363a4 T mod_timer -10036484 T cancel_timer_ex -100364cc T del_timer_sync -10036530 T rtw_init_timer -10036538 T rtw_set_timer -1003653c T rtw_cancel_timer -10036546 T rtw_del_timer -1003654c T rltk_get_idx_bydev -1003655c T rltk_wlan_init -100365e4 T rltk_wlan_deinit -100366a8 T rltk_wlan_start -100366dc T rltk_wlan_check_isup -100366ec T rltk_wlan_tx_inc -10036700 T rltk_wlan_tx_dec -10036714 T rltk_wlan_get_recv_skb -10036724 T rltk_wlan_alloc_skb -10036764 T rltk_wlan_send_skb -10036798 T rltk_netif_rx -10036844 T rltk_set_sta_num -10036848 T rltk_set_tx_power_percentage -1003687c T rltk_wlan_control -10036910 T rltk_wlan_running -10036928 T rltk_wlan_handshake_done -1003695c T rltk_wlan_wireless_mode -100369e8 T rltk_wlan_is_connected_to_ap -10036a2c T Efuse_PowerSwitch -10036a38 T Efuse_GetCurrentSize -10036a44 T Efuse_CalculateWordCnts -10036a68 T EFUSE_GetEfuseDefinition -10036a7c T efuse_OneByteRead -10036ab0 T efuse_OneByteWrite -10036ae4 T Efuse_PgPacketWrite -10036af8 T efuse_WordEnableDataRead -10036b2a T Efuse_WordEnableDataWrite -10036b3e T efuse_GetCurrentSize -10036b66 T rtw_efuse_map_read -10036bc8 T rtw_efuse_map_write -10036d48 T rtw_macaddr_cfg -10036e0c T rtw_get_cipher_info -10036e86 T rtw_get_bcn_info -10036f56 T rtw_init_default_value -10036fc4 T rtw_cancel_all_timer -1003702e T rtw_free_drv_sw -100370a4 T rtw_reset_drv_sw -10037100 T rtw_init_drv_sw -10037188 T rtw_start_drv_threads -10037244 T rtw_stop_drv_threads -10037278 T rtw_read8 -10037286 T rtw_read16 -10037294 T rtw_read32 -100372a2 T rtw_write8 -100372b0 T rtw_write16 -100372be T rtw_write32 -100372cc T ODM_InitRAInfo -1003736c T InitialRateUpdate -1003746c T RateUp_search_RateMask -1003749e T RateDown_search_RateMask -100374f0 T StartRateByRSSI -1003751a T RateUpRAM8195A -100375ae T RateDownTrying -100375ec T TryDone -10037684 T RateDownStepRAM8195A -10037724 T RateDecisionRAM8195A -10037808 T ArfrRefresh -10037a10 T H2CHDL_Set_MACID_Config -10037ad4 T PHY_DM_RA_SetRSSI_8195A -10037b02 t CheckPositive.isra.0 -10037be4 T ODM_ReadAndConfig_MP_8195A_AGC_TAB -10037c5c T ODM_ReadAndConfig_MP_8195A_PHY_REG -10037cd4 T ODM_GetVersion_MP_8195A_PHY_REG -10037cd8 T ODM_ReadAndConfig_MP_8195A_PHY_REG_PG -10037d0c T odm_ConfigRFReg_8195A -10037d44 T odm_ConfigRF_RadioA_8195A -10037d54 T odm_ConfigMAC_8195A -10037d58 T odm_ConfigBB_AGC_8195A -10037d68 T odm_ConfigBB_PHY_REG_PG_8195A -10037d96 T odm_ConfigBB_PHY_8195A -10037dde T odm_ConfigBB_TXPWR_LMT_8195A -10037e04 T ODM_CmnInfoInit -10037ef8 T ODM_CmnInfoHook -10037f9c T ODM_CmnInfoPtrArrayHook -10037fac T ODM_CmnInfoUpdate -1003807c T odm_CommonInfoSelfInit -100380f0 T ODM_DMInit -1003813e T odm_CommonInfoSelfUpdate -10038190 T ODM_DMWatchdog -100381fc T PhyDM_Get_Structure -10038220 T Phydm_CheckAdaptivity -1003824e T Phydm_NHMCounterStatisticsInit -100382c4 T Phydm_SetEDCCAThreshold -100382fc T Phydm_MACEDCCAState -1003833a T Phydm_AdaptivityInit -10038418 T Phydm_Adaptivity -10038538 T ODM_CfoTrackingInit -10038562 T ODM_CfoTracking -10038582 T ODM_ParsingCFO -100385b4 T ODM_InitDebugSetting -100385c8 T ODM_Write_DIG -10038668 T odm_ForbiddenIGICheck -100386fa T ODM_Write_CCK_CCA_Thres -10038734 T odm_DIGInit -100387ce T odm_DigAbort -100387f0 T odm_DIGbyRSSI_LPS -1003889c T odm_FAThresholdCheck -100388c8 T odm_DIG -10038b28 T odm_FalseAlarmCounterStatistics -10038b54 T odm_CCKPacketDetectionThresh -10038bac T odm_RxPhyStatus8195A_Parsing -10038cb0 T odm_Process_RSSIForDM_8195A -10038df2 T ODM_PhyStatusQuery_8195A -10038e1e T ODM_PhyStatusQuery -10038e22 T ODM_ConfigRFWithHeaderFile -10038e40 T ODM_ConfigRFWithTxPwrTrackHeaderFile -10038e72 T ODM_ConfigBBWithHeaderFile -10038e9a T ODM_ConfigMACWithHeaderFile -10038eac T ODM_Read1Byte -10038eb2 T ODM_Read4Byte -10038eb8 T ODM_Write1Byte -10038ebe T ODM_Write2Byte -10038ec4 T ODM_Write4Byte -10038eca T ODM_SetMACReg -10038ed0 T ODM_SetBBReg -10038ed6 T ODM_GetBBReg -10038edc T ODM_SetRFReg -10038ee2 T ODM_GetRFReg -10038ee8 T ODM_MoveMemory -10038ef2 T ODM_delay_ms -10038ef6 T ODM_delay_us -10038efc T getSwingIndex -10038f54 T odm_TXPowerTrackingThermalMeterInit -10039006 T odm_TXPowerTrackingInit -1003900a T odm_TXPowerTrackingCheckIOT -1003903e T ODM_TXPowerTrackingCheck -1003904c T odm_RSSIMonitorInit -10039054 T ODM_RAPostActionOnAssoc -1003905c T odm_RSSIMonitorCheckIOT -10039130 T odm_RSSIMonitorCheck -10039144 T odm_RateAdaptiveMaskInit -1003916c T ODM_RAStateCheck -100391ae T odm_RefreshRateAdaptiveMaskIOT -100391fe T odm_RefreshRateAdaptiveMask -10039214 T ODM_Get_Rate_Bitmap -10039304 t _ReadEfuseInfo8195a -100393cc t rtl8195a_interface_configure -10039400 t rtl8195a_hal_deinit -1003943c T _InitPowerOn -100394bc t ReadAdapterInfo8195a -100394ec T _InitDriverInfoSize -100394f6 T _InitNetworkType -10039518 T _InitWMACSetting -10039588 T _InitAdaptiveCtrl -100395cc T _InitEDCA -10039648 T _InitRateFallback -1003968c T _InitRetryFunction -100396b8 T _InitOperationMode -10039700 T _InitInterrupt -10039740 t rtl8195a_hal_init -10039a18 T rtl8195ab_set_hal_ops -10039af0 T FillH2CCmd8195A -10039b10 T CheckFwRsvdPageContent -10039b12 T rtl8195a_set_FwRsvdPage_cmd -10039b1c T rtl8195a_set_FwMediaStatusRpt_cmd -10039b48 T rtl8195a_set_FwMacIdConfig_cmd -10039c08 T rtl8195a_set_FwPwrMode_cmd -10039c98 T rtl8195a_download_rsvd_page -10039fa0 T rtl8195a_set_FwJoinBssRpt_cmd -10039faa T rtl8195a_Add_RateATid -10039ffc T rtw_rpt_h_addr -1003a048 T rtw_txrpt_read8 -1003a066 T rtw_txrpt_write8 -1003a08a T rtw_ratemask_read8 -1003a0a8 T rtw_ratemask_write8 -1003a0cc T ReadRateMask8 -1003a0d6 T WriteRateMask8 -1003a0da T ReadTxrpt8 -1003a0e4 T WriteTxrpt8 -1003a0e8 T ResetTxrpt -1003a120 T PsuseTxrpt -1003a140 T CheckMaxMacidNum -1003a178 T GetMediaStatusCommon -1003a192 T GetTxrptStatistic -1003a248 T rtl8195a_InitHalDm -1003a36c T rtl8195a_HalDmWatchDog -1003a450 T rtl8195a_init_dm_priv -1003a528 T rtl8195a_deinit_dm_priv -1003a52a T MediaConnection -1003a548 T MediaDisconnection -1003a568 T RATaskEnable -1003a592 T SetMediaStatus -1003a5d0 T H2CHDL_JoinInfo -1003a608 T H2CHDL_SetRsvdPage -1003a6a0 T H2CCmdCommon -1003a6e4 T HalPwrSeqCmdParsing -1003a7a4 T hci_dvobj_init -1003a7b4 T hci_dvobj_deinit -1003a7c4 T hci_dvobj_request_irq -1003a7d4 T hci_dvobj_free_irq -1003a7e4 T hci_lxbus_dvobj_init -1003a820 T hci_lxbus_dvobj_deinit -1003a860 T hci_lxbus_dvobj_request_irq -1003a8b4 T hci_lxbus_free_irq -1003a90c T hci_lxbus_intf_stop -1003a944 T rtw_interrupt_thread -1003a9b8 T lextra_bus_dma_Interrupt -1003aa00 T init_rom_wlan_ram_map -1003aa18 T ODM_ReadAndConfig_MP_8195A_MAC_REG -1003ab74 t CheckPositive.isra.0 -1003ac58 T ODM_ReadAndConfig_MP_8195A_RadioA -1003acd0 T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_QFN48 -1003ad20 T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_QFN56 -1003ad70 T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_TFBGA96 -1003adc0 T ODM_ReadAndConfig_MP_8195A_TXPWR_LMT -1003adf8 T ODM_ReadAndConfig_MP_8195A_TxXtalTrack -1003ae24 T GetDeltaSwingTable_8195A -1003ae54 T GetDeltaSwingXtalTable_8195A -1003ae64 T ODM_TxXtalTrackSetXtal_8195A -1003ae84 T Hal_MPT_CCKTxPowerAdjust -1003af54 T ODM_TxPwrTrackSetPwr_8195A -1003b064 T ConfigureTxpowerTrack_8195A -1003b0b0 T phy_PathA_IQK_8195A -1003b264 T phy_PathA_RxIQK8195A -1003b5f8 T _PHY_PathAFillIQKMatrix8195A -1003b78e T _PHY_PathBFillIQKMatrix8195A -1003b90a T _PHY_SaveADDARegisters8195A -1003b93e T _PHY_SaveMACRegisters8195A -1003b96c T _PHY_ReloadADDARegisters8195A -1003b9a0 T _PHY_ReloadMACRegisters8195A -1003b9d0 T _PHY_PathADDAOn8195A -1003ba0c T _PHY_MACSettingCalibration8195A -1003ba54 T _PHY_PIModeSwitch8195A -1003ba90 T phy_SimularityCompare_8195A -1003bbc4 T phy_IQCalibrate_8195A -1003bf3c T phy_LCCalibrate_8195A -1003bfac T PHY_LCCalibrate_8195A -1003c00c T PHY_IQCalibrate_8195A -1003c2c0 T DoIQK_8195A -1003c2de T ConfigureTxpowerTrack -1003c2f0 T ODM_TXPowerTrackingCallback_ThermalMeter -1003c6fc T ODM_ResetIQKResult -1003c744 T ODM_GetRightChnlPlaceforIQK -1003c798 t __tkip_80211_encrypt_veneer -1003c7a8 t __rom_psk_CalcPTK_veneer -1003c7b8 t __phy_CalculateBitShift_veneer -1003c7c8 t __aes_80211_decrypt_veneer -1003c7d8 t __ROM_odm_QueryRxPwrPercentage_veneer -1003c7e8 t __ROM_odm_FalseAlarmCounterStatistics_veneer -1003c7f8 t __StrUpr_veneer -1003c808 t __ROM_odm_CfoTrackingFlow_veneer -1003c818 t __rtw_secgetmic_veneer -1003c828 t __rtw_get_bit_value_from_ieee_value_veneer -1003c838 t __AES_UnWRAP_veneer -1003c848 t __ROM_ODM_CfoTrackingReset_veneer -1003c858 t __rtw_ieee802_11_parse_elems_veneer -1003c868 t __rtw_check_network_type_veneer -1003c878 t __PHY_QueryBBReg_8195A_veneer -1003c888 t __ROM_odm_EVMdbToPercentage_veneer -1003c898 t __wep_80211_encrypt_veneer -1003c8a8 t __prvStrCmp_veneer -1003c8b8 t __rom_psk_CalcGTK_veneer -1003c8c8 t __ROM_odm_GetDefaultCrytaltalCap_veneer -1003c8d8 t __CmdWriteWord_veneer -1003c8e8 t __rtw_set_supported_rate_veneer -1003c8f8 t __rtw_seccalctkipmic_veneer -1003c908 t __rtw_parse_wpa2_ie_veneer -1003c918 t __rtw_get_rateset_len_veneer -1003c928 t __PHY_SetBBReg_8195A_veneer -1003c938 t __HalI2SClrAllIntrRtl8195a_veneer -1003c948 t __rtw_get_wpa_ie_veneer -1003c958 t __HalI2SIntrCtrlRtl8195a_veneer -1003c968 t __rtw_get_wps_attr_content_veneer -1003c978 t __rtw_set_fixed_ie_veneer -1003c988 t __rtw_secmicsetkey_veneer -1003c998 t __rt_hmac_sha1_veneer -1003c9a8 t __key_2char2num_veneer -1003c9b8 t __rtw_get_ie_veneer -1003c9c8 t __wep_80211_decrypt_veneer -1003c9d8 t __rtw_parse_wpa_ie_veneer -1003c9e8 t __rt_arc4_crypt_veneer -1003c9f8 t __rtw_secmicappend_veneer -1003ca08 t ___vsscanf_veneer -1003ca18 t __CmdDumpWord_veneer -1003ca28 t __rt_arc4_init_veneer -1003ca38 t __rtw_get_sec_ie_veneer -1003ca48 t __rtw_set_ie_veneer -1003ca58 t __aes_80211_encrypt_veneer -1003ca68 t __ROM_odm_SetCrystalCap_veneer -1003ca78 t __HalI2SRead32_veneer -1003ca88 t __HalCpuClkConfig_veneer -1003ca98 t __HalDelayUs_veneer -1003caa8 t __Strtoul_veneer -1003cab8 t __rtw_get_wps_ie_veneer -1003cac8 t __rtw_get_wpa2_ie_veneer -1003cad8 t __rt_md5_hmac_veneer -1003cae8 t __rom_psk_PasswordHash_veneer -1003caf8 t __HalI2SWrite32_veneer -1003cb08 t __tkip_80211_decrypt_veneer -1003cb18 t __SpicWaitBusyDoneRtl8195A_veneer -1003cb28 t __AES_WRAP_veneer -1003ce58 d __FUNCTION__.15004 -1003d2d8 d bitrate_table -1003d404 d samplerate_table -1003d410 d decoder_table -1003d41c d imdct_s -1003d4ac d sfb_8000_short -1003d4d3 d sfb_32000_short -1003d4fc d is_table -1003d518 d rq_table -10045554 d root_table -10045570 d sfb_44100_mixed -10045598 d is_lsf_table -10045610 d sflen_table -10045630 d sfb_16000_mixed -10045654 d ca -10045674 d sfb_44100_short -1004569b d sfb_44100_long -100456b1 d sfb_48000_mixed -100456d7 d sfb_24000_long -100456f0 d scale.7384 -10045738 d sfb_32000_mixed -1004575e d sfb_16000_short -10045785 d sfb_8000_long -1004579b d sfb_22050_mixed -100457c0 d window_l -10045850 d sfb_48000_long -10045868 d cs -10045888 d sfb_24000_mixed -100458ac d pretab -100458c2 d sfb_48000_short -100458e9 d sfb_22050_short -10045910 d sfb_8000_mixed -10045938 d sfbwidth_table -100459a4 d sfb_24000_short -100459cb d sfb_32000_long -100459e1 d sfb_22050_long -100459f8 d window_s -10045a28 d nsfb_table -10045a70 d hufftab24 -10046078 d hufftab10 -10046210 d hufftab11 -100463b0 d hufftab12 -10046530 d hufftab13 -10046b68 d hufftab3 -10046ba8 d hufftab15 -10047198 d hufftab16 -100477e0 d hufftab6 -10047850 d hufftab7 -10047950 D mad_huff_pair_table -10047ad0 d hufftab9 -10047ba8 d hufftab1 -10047bc8 d hufftabA -10047c38 d hufftab2 -10047c78 d hufftabB -10047cb8 D mad_huff_quad_table -10047cc0 d hufftab0 -10047cc4 d hufftab5 -10047d2c d hufftab8 -10047e34 d crc_table -10048034 d D -100488b4 D mad_timer_zero -10048fd3 d __func__.19394 -10048fe6 d __FUNCTION__.18518 -100494ca d __func__.20174 -10049508 d err_to_errno_table -10049550 D ip_addr_broadcast -10049554 D ip_addr_any -10049568 D memp_sizes -10049588 D tcp_pcb_lists -10049598 D tcp_state_str -100495c4 D tcp_backoff -10049639 D tcp_persist_backoff -10049640 D ethbroadcast -10049646 D ethzero -10049675 d __FUNCTION__.9288 -10049684 d __FUNCTION__.9300 -10049746 d dhcp_option_lease_time_one_day -1004976f d dhcp_option_interface_mtu -10049771 d dhcp_magic_cookie -10049856 d CSWTCH.269 -1004987c D osdep_service -100499a0 d __FUNCTION__.12529 -100499b6 d __FUNCTION__.12381 -100499c9 d __FUNCTION__.12330 -100499dd d __FUNCTION__.12392 -10049a72 d __FUNCTION__.12364 -10049a91 d __FUNCTION__.12338 -10049aad d __FUNCTION__.12525 -10049ac3 d __FUNCTION__.7295 -10049bcc d PinMap_I2S_RX -10049cac d PinMap_I2S_TX -10049d0c d I2SDefaultSetting -10049d20 d PinMap_I2S_CLK -10049d80 d __FUNCTION__.8941 -10049d8c d PinMap_I2S_WS -10049e3b d __FUNCTION__.8757 -10049e48 d __FUNCTION__.8770 -1004a12d d __FUNCTION__.8619 -1004a148 d __FUNCTION__.8626 -1004a243 d __FUNCTION__.8612 -1004a2f7 d __func__.8808 -1004a316 d __func__.8818 -1004a334 d __func__.8830 -1004a34e d __func__.8840 -1004a370 d __func__.8835 -1004a739 d __func__.8603 -1004a753 d __func__.8686 -1004a766 d __func__.8825 -1004a77f d __func__.8631 -1004a7b2 d __FUNCTION__.17777 -1004a7d4 D wlancmds -1004a9cc D rtw_cmd_callback -1004ac58 d RTW_ChannelPlan2G -1004acd0 D WPS_OUI -1004acd4 D RSN_TKIP_CIPHER -1004acd8 D MCS_rate_1R -1004ace8 D P2P_OUI -1004ad14 D WMM_INFO_OUI -1004ad1a D RTW_WPA_OUI -1004ad1e D WMM_PARA_OUI -1004ad24 d RTW_ChannelPlanMap -1004ad3c D null_addr -1004ad42 D WMM_OUI -1004ad48 d wlanevents -1004ae08 D zero_bssid -1004ae45 d __FUNCTION__.17681 -1004ae5b D SNAP_ETH_TYPE_APPLETALK_AARP -1004ae5d d __FUNCTION__.17495 -1004ae70 D SNAP_ETH_TYPE_IPX -1004ae72 D rtw_bridge_tunnel_header -1004ae99 D rtw_rfc1042_header -1004aeb7 d CSWTCH.36 -1004aec3 D ARTHEROS_OUI1 -1004aec6 D ARTHEROS_OUI2 -1004aec9 D REALTEK_OUI -1004aecc D RALINK_OUI -1004aecf D MARVELL_OUI -1004aed2 D CISCO_OUI -1004aed5 d rtw_basic_rate_cck -1004aed9 D BROADCOM_OUI1 -1004aedc D BROADCOM_OUI2 -1004aedf D REALTEK_96B_IE -1004aee5 d rtw_basic_rate_mix -1004aeec d rtw_basic_rate_ofdm -1004aeef D AIRGOCAP_OUI -1004af03 d CSWTCH.66 -1004af1c d CSWTCH.48 -1004af5e d CSWTCH.28 -1004af70 D efuse_map_mask -1004af80 D flash_map_mask -1004b01c d __func__.21107 -1004b362 d CSWTCH.15 -1004b3e6 d CSWTCH.17 -1004b455 d CSWTCH.14 -1004b4ea d __FUNCTION__.21257 -1004b4fc d rtw_private_args -1004b913 d __FUNCTION__.21057 -1004b926 d __FUNCTION__.21294 -1004b937 d __FUNCTION__.21241 -1004b946 d __FUNCTION__.21126 -1004b956 d iw_priv_type_size -1004ba34 d __FUNCTION__.17334 -1004ba4a d __FUNCTION__.17736 -1004ba5a d __FUNCTION__.17760 -1004ba6d d __FUNCTION__.17712 -1004ba7c d __FUNCTION__.17649 -1004ba8a d __FUNCTION__.17661 -1004be61 d __FUNCTION__.17827 -1004be7a d __FUNCTION__.17654 -1004be85 d __FUNCTION__.17615 -1004be94 d __FUNCTION__.17811 -1004bea6 d __FUNCTION__.17765 -1004beb4 d __FUNCTION__.17724 -1004bec5 d __FUNCTION__.17637 -1004d266 D CCKFCCTable_Ch14_8195A -1004d276 D CCKFCCTable_8195A -1004d288 D OFDMSwingTable_New -1004d334 D CCKCETable_8195A -1004d34a d CSWTCH.39 -1004d35f d __func__.20571 -1004d380 D hci_ops -1004d3a5 V Array_MP_8195A_TXPWR_LMT -1004d918 D xHeapRegions -1004d938 D UartLogRamCmdTable -1004d938 D console_commands_main -1004d948 D console_cmd_wifi_api -1004d9c8 D console_commands_at -1004da38 D console_commands -1004da58 d UartLogRamCmdTable_end -1004da5c D __data_start__ -1004da5c D oversampling -1004da60 D SystemCoreClock -1004da64 D error_flag -1004da65 D wlan_st_name -1004da6b D wifi_cfg -1004da72 D wlan_ap_name -1004da78 D wifi_ap_dhcp -1004da88 D wifi_st_dhcp -1004da98 D feep_tab -1004dad8 D wifi_st_cfg -1004db48 D tab_txt_rtw_secyrity -1004db70 D wifi_ap_cfg -1004dbd8 D wlan_ap_netifn -1004dbdc D tab_code_rtw_secyrity -1004dc04 d iss.7932 -1004dc08 d tcp_port -1004dc0a d udp_port -1004dc0c D lwip_host_name -1004dc2c d dhcp_server_state_machine -1004dc2d d dhcp_recorded_xid -1004dc34 d uxCriticalNesting -1004dc38 d seed.12497 -1004dc3c d wakeup_event -1004dc40 d wakelock -1004dc44 d last_wakelock_state -1004dc64 D mlme_sta_tbl -1004dcd4 d PMKID_KDE_TYPE.17744 -1004dcdc V nr_xmitbuff -1004dce0 V nr_xmitframe -1004dce4 d P802_1H_OUI -1004dce7 D rtw_adaptivity_mode -1004dce8 D g_user_ap_sta_num -1004dcec d rtw_private_handler -1004dd30 V max_local_skb_num -1004dd34 V max_skb_buf_num -1004dd38 D rom_e_rtw_msgp_str_ -1004df14 D ARFB_table -1004df53 D TRYING_NECESSARY_idx -1004df67 D DROPING_NECESSARY -1004df7b D PER_RATE_UP -1004df8f D PER_RATE_DOWN -1004dfa4 V Array_MP_8195A_PHY_REG_PG -1004e034 D Array_MP_8195A_AGC_TAB -1004e244 D Array_MP_8195A_PHY_REG -1004e8bc D rtl8195A_card_disable_flow -1004e95c D rtl8195A_card_enable_flow -1004e9fc D Array_MP_8195A_MAC_REG -1004ed04 D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_TFBGA96_8195A -1004ed24 D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_TFBGA96_8195A -1004ed44 D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_QFN48_8195A -1004ed62 D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_QFN56_8195A -1004ed80 D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_QFN48_8195A -1004ed9e D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_QFN56_8195A -1004edbc D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_TFBGA96_8195A -1004eddc D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_QFN56_8195A -1004edfa D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_QFN48_8195A -1004ee18 D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_QFN56_8195A -1004ee38 D Array_MP_8195A_RadioA -1004f400 D gDeltaSwingTableXtal_MP_P_TxXtalTrack_8195A -1004f41e D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_TFBGA96_8195A -1004f43e D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_QFN48_8195A -1004f45c D .ram.bss$$Base -1004f45c D __bss_start__ -1004f45c D __data_end__ -1004f45c D __ram_image2_text_end__ -1004f45c d skbdata_list -1004f464 V skb_data_pool -10052864 D HalI2SOpSAL -100528a0 d sampCntAdd -100528a4 d sampCnt -100528a8 D mp3_serv -1005292a D tskreader_enable -1005292c D readBuf -10052930 D tskmad_enable -10052934 d bufUnderrunCt -10052938 d oldRate -1005293c d sampDelCnt -10052940 D pbuf_fifo -10052944 D pi2s -1005294c D I2sTxSema -10052950 D rtw_join_status -10052954 D wifi_mode -10052958 D scan_result_handler_ptr -1005296c d join_user_data -10052970 d event_callback_list -10052af0 D paff_array -10052b68 D lwip_init_done -10052b6c D xnetif -10052be4 D wifi_run_mode -10052be5 D wlan_st_netifn -10052be8 D wifi_autoreconnect -10052bf0 D wifi_st_status -10052bf4 D web_scan_handler_ptr -10052c00 d s_phostent_addr.7552 -10052c08 d s_hostent.7549 -10052c1c d s_hostent_addr.7551 -10052c20 D h_errno -10052c24 d s_aliases.7550 -10052c28 d select_cb_list -10052c2c d sockets -10052cec d select_cb_ctr -10052cf0 d mbox -10052cf4 d tcpip_init_done_arg -10052cf8 d tcpip_init_done -10052cfc d allsystems -10052d00 d allrouters -10052d04 d igmp_group_list -10052d08 D current_header -10052d0c d ip_id -10052d10 D current_iphdr_src -10052d14 D current_iphdr_dest -10052d18 D current_netif -10052d1c d str.6810 -10052d2c d reassdatagrams -10052d30 d ip_reass_pbufcount -10052d34 d xid.7832 -10052d38 D dhcp_rx_options_given -10052d44 D dhcp_rx_options_val -10052d6c d dns_seqno -10052d70 d dns_table -100531d0 d dns_servers -100531d8 d dns_payload_buffer -100533dc d dns_pcb -100533e0 d dns_payload -100533e4 d tcpip_tcp_timer_active -100533e8 d next_timeout -100533ec D netif_list -100533f0 D netif_default -100533f4 d netif_num -100533f5 D pbuf_free_ooseq_pending -100533f8 d raw_pcbs -100533fc D tcp_active_pcbs_changed -10053400 D tcp_ticks -10053404 d tcp_timer -10053408 D tcp_listen_pcbs -1005340c D tcp_active_pcbs -10053410 d tcp_timer_ctr -10053414 D tcp_tw_pcbs -10053418 D tcp_tmp_pcb -1005341c D tcp_bound_pcbs -10053420 d seqno -10053424 d tcplen -10053428 d ackno -1005342c d flags -1005342d d recv_flags -10053430 d tcphdr -10053434 d recv_data -10053438 d inseg -1005344c D tcp_input_pcb -10053450 D udp_pcbs -10053454 d etharp_cached_entry -10053458 d arp_table -10053520 D lwip_tickless_used -10053524 d s_timeoutlist -10053554 d s_nextthread -10053558 d dhcps_ip_table_semaphore -1005355c d dhcps_send_broadcast_address -10053560 D dhcps_ip4addr_pool_end -10053561 d dhcp_client_ethernet_address -10053574 d dhcps_subnet_broadcast -10053578 d bound_client_ethernet_address -10053588 d dhcps_netif -1005358c d dhcps_local_gateway -10053590 d ip_table -100535b0 d dhcps_pcb -100535b4 d dhcp_message_total_options_lenth -100535b8 d dhcps_local_address -100535bc d client_request_ip -100535c0 d dhcps_allocated_client_address -100535c4 D dhcps_ip4addr_pool_start -100535c8 d dhcps_local_mask -100535cc d dhcps_network_id -100535d0 d dhcp_message_repository -100535d4 D ext_upper -100535d8 d xFreeBytesRemaining -100535dc d ext_free -100535e0 D ext_lower -100535e4 d pxEnd -100535e8 d xStart -100535f0 d xMinimumEverFreeBytesRemaining -100535f4 d ulTimerCountsForOneTick -100535f8 d ulStoppedTimerCompensation -100535fc d xMaximumPossibleSuppressedTicks -10053600 d xPendingReadyList -10053614 d uxTopReadyPriority -10053618 d xTickCount -1005361c d pxReadyTasksLists -100536f8 d pxOverflowDelayedTaskList -100536fc d uxDeletedTasksWaitingCleanUp -10053700 d xTasksWaitingTermination -10053714 d pxDelayedTaskList -10053718 d xYieldPending -1005371c d xSchedulerRunning -10053720 d ulTaskSwitchedInTime -10053724 D pxCurrentTCB -10053728 d uxPendedTicks -1005372c d xSuspendedTaskList -10053740 d uxCurrentNumberOfTasks -10053744 d xDelayedTaskList1 -10053758 d xDelayedTaskList2 -1005376c d uxTaskNumber -10053770 d xIdleTaskHandle -10053774 d xNextTaskUnblockTime -10053778 d uxSchedulerSuspended -1005377c d xNumOfOverflows -10053780 d pxCurrentTimerList -10053784 d xActiveTimerList1 -10053798 d xActiveTimerList2 -100537ac d xLastTime.5416 -100537b0 d xTimerQueue -100537b4 d pxOverflowTimerList -100537b8 d xTimerTaskHandle -100537bc d device_mutex -100537c8 d mutex_init -100537cc d uxSavedInterruptStatus -100537d0 D min_free_heap_size -100537d4 d g_heap_inited -100537d8 d tcm_lock -100537dc D g_tcm_heap -100537e0 D flashobj -100537ec D fspic_isinit -100537f0 D WDGAdapter -1005382c d last_acquire_wakelock_time -100538ac D post_sleep_callback -1005392c D pre_sleep_callback -100539ac D reserve_pll -100539b0 d sys_sleep_time -100539b4 d hold_wakelock_time -10053a34 D missing_tick -10053a38 D Timer2To7HandlerData -10053a50 D SYSAdapte -10053a54 D PwrAdapter -10053ce0 D libc_has_init -10053ce1 D print_off -10053ce4 d rheap_end -10053ce8 D auto_reconnect_running -10053cec D p_wlan_autoreconnect_hdl -10053cf0 D mac_monitor_callback -10053cf4 D mf_list_head -10053cf8 d pscan_retry_cnt.21430 -10053cfc D promisc_callback_all -10053d00 D promisc_sema -10053d04 D promisc_callback -10053d08 D psk_essid -10053d50 D psk_passphrase -10053dd2 D psk_passphrase64 -10053e13 D wpa_global_PSK -10053e63 d RFC1042_OUI -10053e68 d rx_ring_pool -10055f48 d stop_report_count.20629 -10055f49 D bCheckStateTIMER -10055f4c d WifiMcuCmdBitMap.20974 -10055f50 D p_wlan_init_done_callback -10055f54 D rtw_power_percentage_idx -10055f58 D p_wlan_uart_adapter_callback -10055f5c D rtw_adaptivity_en -10055f60 D p_wlan_mgmt_filter -10055f64 D rtw_initmac -10055f68 D rtw_adaptivity_th_l2h_ini -10055f6c d drvpriv -10055f80 D skbbuf_used_num -10055f84 V skb_pool -1005613c D skbdata_used_num -10056140 d wrapper_skbbuf_list -10056148 D max_skbdata_used_num -1005614c D max_skbbuf_used_num -10056150 d skb_fail_count -10056154 D timer_table -1005615c D rltk_wlan_info -1005618c d timer_used_num -10056190 D max_timer_used_num -10056194 D Noisy_State -10056198 D pExportWlanIrqSemaphore -1005619c D gDeltaSwingTableXtal_MP_N_TxXtalTrack_8195A -100561ba D .ram.bss$$Limit -100561ba D __bss_end__ -100561c0 B __ram_heap2_start__ +10008380 t fATPA +10008468 t fATSP +100084ac t fATDS +100084d4 t fATSW +100084de t fATSD +100084e8 t fATST +10008558 T print_hex_dump +10008588 T dump_bytes +1000861c t fATSB +10008654 T print_udp_pcb +100086c0 T print_tcp_pcb +10008798 t fATLW +100087a8 T RamFifoClose +10008804 T RamFifoInit +10008958 T RamFifoRead +10008a14 T RamFifoWrite +10008ac8 T RamFifoFill +10008af4 T RamFifoFree +10008b08 T RamFifoLen +10008b14 t decode_header +10008c84 T mad_header_init +10008cb0 T mad_frame_finish +10008cc8 T mad_header_decode +10008f64 T mad_frame_decode +10008fe8 T mad_frame_mute +10009032 T mad_frame_init +10009050 t III_requantize +100090cc t III_aliasreduce +10009134 t fastsdct +1000926c t III_imdct_l +10009684 t III_imdct_s +100097d8 t III_overlap +10009802 t III_freqinver +1000984c t III_decode +1000a868 T mad_layer_III +1000accc T mad_bit_init +1000acd8 T mad_bit_length +1000acf0 T mad_bit_nextbyte +1000acfc T mad_bit_skip +1000ad2c T mad_bit_read +1000ad98 T mad_bit_crc +1000ae8c t scale +1000ae98 t dct32 +1000b72c t synth_half +1000bb70 t synth_full +1000bfc4 T mad_synth_mute +1000bffc T mad_synth_init +1000c020 T mad_synth_frame +1000c0b4 t scale_rational +1000c128 T mad_timer_set +1000c210 T mad_stream_init +1000c242 T mad_stream_finish +1000c254 T mad_stream_buffer +1000c268 T mad_stream_sync +1000c2b0 T mad_stream_errorstr +1000c40c t i2s_test_tx_complete +1000c424 T i2sClose +1000c4b0 T i2sInit +1000c628 T i2sSetRate +1000c6b0 T i2sPushPWMSamples +1000c818 T SystemCoreClockUpdate +1000c82c t print_on +1000c844 W console_help +1000c884 T GetArgvRam +1000c934 T get_eap_phase +1000c938 T get_eap_method +1000c93c T eap_autoreconnect_hdl +1000c940 t wifi_no_network_hdl +1000c958 t wifi_handshake_done_hdl +1000c974 t wifi_disconn_hdl +1000c9dc t wifi_connected_hdl +1000ca10 T wifi_scan_each_report_hdl +1000cb54 T wifi_rx_beacon_hdl +1000cb58 T wifi_connect +1000cf8c T wifi_disconnect +1000cfc0 T wifi_set_country +1000cfcc T wifi_off +1000d040 T wifi_start_ap +1000d12c T wifi_get_setting +1000d1dc T wifi_show_setting +1000d2a0 T wifi_set_network_mode +1000d2b8 T wifi_indication +1000d2f4 T wifi_reg_event_handler +1000d348 T wifi_unreg_event_handler +1000d38c T init_event_callback_list +1000d39c T promisc_deinit +1000d3a0 T promisc_recv_func +1000d3a4 T promisc_set +1000d3a8 T is_promisc_enabled +1000d3b4 t get_padapter +1000d3cc T iw_ioctl +1000d3e8 T wext_get_ssid +1000d426 T wext_set_ssid +1000d45a T wext_set_bssid +1000d4a4 T is_broadcast_ether_addr +1000d4c6 T wext_set_auth_param +1000d4f4 T wext_set_key_ext +1000d5f4 T wext_get_enc_ext +1000d656 T wext_set_passphrase +1000d68c T wext_get_passphrase +1000d6c4 T wext_set_mode +1000d724 T wext_get_mode +1000d758 T wext_set_ap_ssid +1000d794 T wext_set_country +1000d7b8 T wext_set_channel +1000d7e6 T wext_get_channel +1000d80e T wext_set_scan +1000d840 T wext_wlan_indicate +1000d988 T wext_set_autoreconnect +1000d9d8 T wext_set_adaptivity +1000da00 T wext_set_sta_num +1000da04 T LwIP_DHCP +1000dafc t chk_ap_netif_num +1000db48 t wifi_autoreconnect_hdl_ +1000db98 T read_wifi_cfg +1000dbe0 T write_wifi_cfg +1000dc20 T rtw_security_to_idx +1000dc40 T rtw_security_to_str +1000dc54 T show_wifi_ap_ip +1000dc88 t wifi_run_ap +1000dd94 T show_wifi_st_ip +1000ddc8 t StartStDHCPClient +1000de74 t wifi_run_st.part.1 +1000df40 T wifi_run +1000e1c4 T wifi_init +1000e298 t wifi_autoreconnect_thread_ +1000e2f8 T show_wifi_st_cfg +1000e374 T show_wifi_ap_cfg +1000e3f0 T show_wifi_cfg +1000e450 T wifi_close_scan +1000e4d0 t _wifi_scan_done_hdl +1000e550 T api_wifi_scan +1000e6b4 t netconn_recv_data +1000e784 T netconn_new_with_proto_and_callback +1000e7e4 T netconn_delete +1000e808 T netconn_getaddr +1000e84c T netconn_connect +1000e88c T netconn_recv_tcp_pbuf +1000e8a0 T netconn_recv +1000e928 T netconn_recved +1000e954 T netconn_send +1000e990 T netconn_write_partly +1000ea20 T netconn_gethostbyname +1000ea78 t recv_udp +1000eae8 t recv_raw +1000eb6c t setup_tcp +1000ebb0 t err_tcp +1000ec48 t do_connected +1000ecb4 t do_writemore +1000edb4 t do_close_internal +1000eea0 t poll_tcp +1000eef0 t do_dns_found +1000ef1c t sent_tcp +1000ef6a t recv_tcp +1000efe4 T do_newconn +1000f074 T netconn_alloc +1000f0e0 T netconn_free +1000f10c t netconn_drain +1000f19c T do_delconn +1000f228 T do_connect +1000f2bc T do_send +1000f32c T do_recv +1000f36c T do_write +1000f3a6 T do_getaddr +1000f41c T do_gethostbyname +1000f448 T netbuf_delete +1000f468 T netbuf_free +1000f47e T netbuf_ref +1000f4b8 T lwip_gethostbyname +1000f504 t get_socket +1000f524 t alloc_socket +1000f594 t event_callback +1000f6c4 T lwip_socket_init +1000f6c6 T lwip_close +1000f718 T lwip_connect +1000f774 T lwip_recvfrom +1000f92c T lwip_read +1000f940 T lwip_sendto +1000f9ec T lwip_send +1000fa64 T lwip_socket +1000fad8 T lwip_write +1000fae0 t tcpip_thread +1000fb64 T tcpip_input +1000fbac T tcpip_callback_with_block +1000fc00 T tcpip_timeout +1000fc44 T tcpip_apimsg +1000fc9c T tcpip_init +1000fce0 t icmp_send_response.isra.0 +1000fd50 T icmp_input +1000fe74 T icmp_dest_unreach +1000fe7e T icmp_time_exceeded +1000fe88 t igmp_send +1000ff2c t igmp_delaying_member +1000ff68 t igmp_lookup_group.part.1 +1000ffa0 T igmp_init +1000ffbc T igmp_report_groups +1000ffe0 T igmp_lookfor_group +10010000 T igmp_start +1001003c T igmp_input +10010100 T igmp_tmr +1001012c t lwip_standard_chksum +10010184 T inet_chksum_pseudo +1001020a T inet_chksum +10010216 T inet_chksum_pbuf +1001025c T ip_route +10010298 T ip_input +1001045c T ip_output_if_opt +100105b0 T ip_output_if +100105d2 T ip_output +1001060a T ip4_addr_isbroadcast +10010642 T ipaddr_aton +10010758 T ipaddr_addr +10010770 T ipaddr_ntoa_r +10010808 T ipaddr_ntoa +10010814 t ipfrag_free_pbuf_custom +1001082c t ip_reass_free_complete_datagram +100108ac t ip_reass_remove_oldest_datagram +10010920 T ip_reass_tmr +10010948 T ip_reass +10010bf8 T ip_frag +10010d64 T lwip_htons +10010d6a T lwip_ntohs +10010d70 T lwip_htonl +10010d74 T lwip_ntohl +10010d78 t dhcp_set_state +10010d88 t dhcp_option +10010da8 t dhcp_option_byte +10010dba t dhcp_option_short +10010ddc t dhcp_option_long +10010e20 t dhcp_create_msg +10010f74 t dhcp_delete_msg +10010f8a t dhcp_check +10010fb0 t dhcp_bind +10011084 t dhcp_option_trailer +100110b0 t dhcp_discover +10011164 t dhcp_reboot +10011208 t dhcp_option_hostname.isra.1 +10011248 t dhcp_rebind +100112dc t dhcp_select +100113c8 t dhcp_recv +100117cc T dhcp_arp_reply +1001184c T dhcp_renew +100118e0 T dhcp_release +10011988 T dhcp_coarse_tmr +10011a14 T dhcp_fine_tmr +10011ab0 T dhcp_release_unicast +10011b74 T dhcp_stop +10011ba4 T dhcp_start +10011c44 t dns_parse_name +10011c60 t dns_recv +10011df4 t dns_send +10011ec4 t dns_check_entry +10011f74 T dns_setserver +10011f94 T dns_init +10011fec T dns_tmr +10012018 T dns_gethostbyname +10012158 T lwip_init +10012180 T sys_timeout +100121e0 T tcp_timer_needed +10012214 t tcpip_tcp_timer +1001224c T sys_timeouts_init +100122b0 t dns_timer +100122cc t igmp_timer +100122e4 t dhcp_timer_fine +10012300 t dhcp_timer_coarse +1001231c t arp_timer +10012338 t ip_reass_timer +10012354 T sys_untimeout +1001239c T sys_timeouts_mbox_fetch +10012400 T netif_init +10012404 T netif_set_ipaddr +10012454 T netif_set_addr +10012470 T netif_add +100124d0 T netif_set_gw +100124d8 T netif_set_netmask +100124e0 T netif_set_default +100124ec T netif_set_up +10012522 T netif_set_down +1001253c t pbuf_free_ooseq_callback +10012570 t pbuf_pool_is_empty +100125ac T pbuf_alloced_custom +10012600 T pbuf_header +10012658 T pbuf_free +10012698 T pbuf_alloc +100127bc T pbuf_realloc +100127f0 T pbuf_clen +10012800 T pbuf_ref +1001281a T pbuf_cat +10012836 T pbuf_chain +10012846 T pbuf_copy +100128e2 T pbuf_copy_partial +1001294a T pbuf_coalesce +10012978 T raw_input +100129f0 T raw_connect +100129fa T raw_recv +10012a00 T raw_sendto +10012a90 T raw_send +10012a98 T raw_remove +10012ac0 T raw_new +10012af4 t tcp_new_port +10012b44 T tcp_init +10012b60 T tcp_update_rcv_ann_wnd +10012b96 T tcp_recved +10012bd0 T tcp_seg_free +10012bea T tcp_segs_free +10012bfc T tcp_seg_copy +10012c24 T tcp_arg +10012c28 T tcp_recv +10012c2e T tcp_sent +10012c34 T tcp_err +10012c3a T tcp_accept +10012c3e T tcp_poll +10012c48 T tcp_pcb_purge +10012c88 T tcp_slowtmr +10012f44 T tcp_pcb_remove +10012fac t tcp_close_shutdown +100130dc T tcp_close +100130f4 T tcp_recv_null +10013118 T tcp_process_refused_data +10013178 T tcp_fasttmr +100131f0 T tcp_tmr +10013214 T tcp_shutdown +10013264 T tcp_abandon +100132fc T tcp_abort +10013304 T tcp_next_iss +1001331c T tcp_alloc +1001343c T tcp_new +10013442 T tcp_eff_send_mss +10013460 T tcp_connect +100135bc t tcp_oos_insert_segment +1001363c t tcp_receive +10013e14 t tcp_parseopt.isra.0 +10013e98 T tcp_input +100146f0 t tcp_pbuf_prealloc +10014744 t tcp_create_segment +1001480c t tcp_output_alloc_header.constprop.0 +10014876 T tcp_write +10014bc6 T tcp_enqueue_flags +10014c6e T tcp_send_fin +10014cb6 T tcp_send_empty_ack +10014d14 T tcp_output +10014f8c T tcp_rst +10015024 T tcp_rexmit_rto +10015052 T tcp_rexmit +100150a2 T tcp_rexmit_fast +100150f8 T tcp_keepalive +1001514a T tcp_zero_window_probe +100151f4 T udp_init +10015210 T udp_input +10015398 T udp_bind +10015440 T udp_sendto_if +1001553e T udp_sendto +10015574 T udp_send +10015580 T udp_connect +100155c8 T udp_disconnect +100155d8 T udp_recv +100155e0 T udp_remove +10015608 T udp_new +1001562c t etharp_free_entry +1001565c t etharp_find_entry +10015738 t etharp_send_ip +1001576c T etharp_tmr +100157ac T etharp_cleanup_netif +100157d4 T etharp_request +10015884 t etharp_output_to_arp_index +100158cc T etharp_query +100159d0 T etharp_output +10015abc T ethernet_input +10015c94 t low_level_output +10015cf0 t arp_timer +10015d0c T ethernetif_recv +10015d84 T ethernetif_init +10015dc8 T lwip_POST_SLEEP_PROCESSING +10015de4 T rltk_wlan_set_netif_info +10015e04 T rltk_wlan_send +10015e98 T rltk_wlan_recv +10015f04 T netif_is_valid_IP +10015f3c T netif_get_idx +10015f5c T netif_rx +10015f6c T netif_post_sleep_processing +10015f70 T sys_mbox_new +10015f8a T sys_mbox_free +10015f9e T sys_mbox_post +10015fbe T sys_mbox_trypost +10015fe0 T sys_arch_mbox_fetch +1001602a T sys_arch_mbox_tryfetch +1001604a T sys_mbox_valid +10016054 T sys_mbox_set_invalid +1001605a T sys_sem_new +10016096 T sys_arch_sem_wait +100160d6 T sys_sem_signal +100160e2 T sys_sem_free +100160e8 T sys_sem_valid +100160f2 T sys_sem_set_invalid +100160f8 T sys_init +1001611c T sys_thread_new +10016180 T sys_arch_protect +1001618a T sys_arch_unprotect +10016190 t mark_ip_in_table +100161d4 t dhcps_initialize_message +10016284 t add_offer_options +10016374 T dhcps_handle_state_machine_change +10016444 t dhcps_receive_udp_packet_handler +10016710 T dhcps_deinit +10016738 T dhcps_init +10016840 t prvInsertBlockIntoFreeList +10016888 t vPortDefineHeapRegions.constprop.1 +10016928 T pvPortMalloc +10016a08 T __vPortFree +10016a4c T vPortSetExtFree +10016a68 T vPortFree +10016a98 T xPortGetFreeHeapSize +10016aa4 t prvTaskExitError +10016ab8 t prvPortStartFirstTask +10016ad8 T pxPortInitialiseStack +10016b00 T vPortSVCHandler +10016b20 t pxCurrentTCBConst2 +10016b24 T vPortEnterCritical +10016b44 T vPortExitCritical +10016b60 T xPortPendSVHandler +10016ba0 t pxCurrentTCBConst +10016ba4 T xPortSysTickHandler +10016bd0 W vPortSuppressTicksAndSleep +10016ce8 W vPortSetupTimerInterrupt +10016d38 T xPortStartScheduler +10016d68 T vApplicationIdleHook +10016d6c T vApplicationStackOverflowHook +10016d80 T osKernelSysTick +10016d84 T vListInitialise +10016d9a T vListInitialiseItem +10016da0 T vListInsertEnd +10016db8 T vListInsert +10016de8 T uxListRemove +10016e08 t prvCopyDataToQueue +10016e78 t prvCopyDataFromQueue +10016ea0 t prvUnlockQueue +10016f0c T xQueueGenericReset +10016f78 T xQueueGenericCreate +10016fac T xQueueCreateCountingSemaphore +10016fc0 T xQueueGenericSend +100170b8 T xQueueCreateMutex +100170dc T xQueueGenericSendFromISR +1001713e T xQueueGiveFromISR +10017194 T xQueueGenericReceive +100172c8 T uxQueueMessagesWaiting +100172da T vQueueDelete +100172de T vQueueWaitForMessageRestricted +10017324 t prvWriteNameToBuffer +10017348 t prvGetExpectedIdleTime +10017384 t prvResetNextTaskUnblockTime +100173a8 t prvAddCurrentTaskToDelayedList +10017438 T xTaskGenericCreate +10017600 T vTaskDelete +100176bc T eTaskGetState +10017724 T uxTaskPriorityGet +10017740 T vTaskPrioritySet +10017808 T vTaskStartScheduler +10017874 T vTaskSuspendAll +10017884 T xTaskGetTickCount +10017890 T pcTaskGetName +100178a0 T vTaskStepTick +100178b0 T xTaskIncrementTick +100179c8 T xTaskResumeAll +10017aa4 T vTaskDelay +10017ad4 t prvIdleTask +10017b58 T vTaskSwitchContext +10017c08 T vTaskPlaceOnEventList +10017c28 T vTaskPlaceOnEventListRestricted +10017c54 T xTaskRemoveFromEventList +10017cc8 T vTaskSetTimeOutState +10017ce0 T xTaskCheckForTimeOut +10017d2c T vTaskMissedYield +10017d38 T eTaskConfirmSleepModeStatus +10017d6c T vTaskGetInfo +10017dec t prvListTasksWithinSingleList +10017e4c T uxTaskGetSystemState +10017ef8 T xTaskGetSchedulerState +10017f18 T vTaskPriorityInherit +10017fac T xTaskPriorityDisinherit +1001801c T vTaskList +100180cc T vTaskGetRunTimeStats +1001818c T pvTaskIncrementMutexHeldCount +100181a4 t prvCheckForValidListAndQueue +100181f0 t prvInsertTimerInActiveList +1001822c T xTimerCreateTimerTask +10018268 T xTimerCreate +1001829c T xTimerGenericCommand +100182dc t prvSwitchTimerLists +1001834c t prvTimerTask +100184cc T xTimerIsTimerActive +100184e4 t device_mutex_init +10018528 T device_mutex_lock +10018558 T device_mutex_unlock +10018574 t _freertos_enter_critical_from_isr +10018594 t _freertos_exit_critical_from_isr +100185a4 t _freertos_systime_to_sec +100185ae t _freertos_ms_to_systime +100185b0 t _freertos_sec_to_systime +100185b8 t _freertos_usleep_os +100185bc t _freertos_yield_os +100185d4 t _freertos_ATOMIC_SET +100185d8 t _freertos_ATOMIC_READ +100185dc t _freertos_modular64 +10018650 t _freertos_thread_enter +10018652 t _freertos_enter_critical +10018656 t _freertos_exit_critical +1001865a t _freertos_ATOMIC_SUB_RETURN +10018672 t _freertos_ATOMIC_DEC_RETURN +10018688 t _freertos_ATOMIC_ADD_RETURN +100186a0 t _freertos_ATOMIC_INC_RETURN +100186b6 t _freertos_ATOMIC_SUB +100186ce t _freertos_ATOMIC_DEC +100186d4 t _freertos_ATOMIC_ADD +100186ec t _freertos_ATOMIC_INC +100186f2 T _freertos_malloc +100186f6 T _freertos_zmalloc +1001870e t _freertos_memset +10018712 T _freertos_mfree +10018716 t _freertos_get_current_time +1001871a t _freertos_spinunlock_irqsave +10018730 t _freertos_spinunlock +1001873c t _freertos_mutex_put +10018740 T _freertos_wakeup_task +10018746 t _freertos_up_sema +1001874a t _freertos_exit_critical_mutex +10018756 T _freertos_timerCreate +1001875a T _freertos_timerDelete +1001876e T _freertos_timerStop +10018782 T _freertos_timerChangePeriod +1001879c T _freertos_timerIsTimerActive +100187a0 T _freertos_acquire_wakelock +100187a6 T _freertos_release_wakelock +100187ac T _freertos_get_scheduler_state +100187cc t _freertos_thread_exit +100187d2 t _freertos_GetFreeHeapSize +100187d6 t _freertos_udelay_os +100187da t _freertos_mdelay_os +100187de t _freertos_deinit_xqueue +100187f8 t _freertos_spinlock_free +1001880a t _freertos_mutex_free +1001880e t _freertos_free_sema +10018812 t _freertos_push_to_xqueue +1001883a t _freertos_pop_from_xqueue +10018862 t _freertos_down_sema +10018884 t _freertos_init_xqueue +100188a0 t _freertos_spinlock_irqsave +100188dc t _freertos_spinlock +10018914 t _freertos_enter_critical_mutex +1001894c t _freertos_mutex_get +10018984 t _freertos_spinlock_init +10018992 t _freertos_mutex_init +10018996 t _freertos_init_sema +100189a8 t _freertos_create_task +10018a18 t _freertos_memcmp +10018a26 t _freertos_memcpy +10018a2c t _freertos_delete_task +10018a78 t _freertos_mutex_get_timeout +10018ab4 t _freertos_up_sema_from_isr +10018ae4 t _freertos_systime_to_ms +10018ae6 t _freertos_msleep_os +10018aea T save_and_cli +10018aee T restore_flags +10018af2 T cli +10018b04 T _freertos_arc4random +10018b34 t _freertos_get_random_bytes +10018b72 T RtlInitSema +10018b80 T RtlUpSemaFromISR +10018bb0 T RtlDownSema +10018bc4 T RtlUdelayOS +10018bc8 T _htons +10018bce T _ntohs +10018bd4 T _rtw_zvmalloc +10018bf4 T _rtw_vmfree +10018c18 T _rtw_malloc +10018c28 T _rtw_zmalloc +10018c38 T _rtw_mfree +10018c48 T deinit_mem_monitor +10018c4a T rtw_vmfree +10018c4e T rtw_mfree +10018c54 T rtw_memcpy +10018c64 T rtw_memcmp +10018c74 T rtw_memset +10018c84 T rtw_init_listhead +10018c8a T rtw_is_list_empty +10018c94 T rtw_list_insert_head +10018ca0 T rtw_list_insert_tail +10018cac T rtw_list_delete +10018cbc T rtw_init_sema +10018ccc T rtw_free_sema +10018cdc T rtw_up_sema +10018cec T rtw_up_sema_from_isr +10018cfc T rtw_down_timeout_sema +10018d0c T rtw_down_sema +10018d20 T rtw_mutex_init +10018d30 T rtw_mutex_free +10018d40 T rtw_mutex_put +10018d50 T rtw_mutex_get_timeout +10018d64 T rtw_enter_critical_from_isr +10018d74 T rtw_enter_critical +10018d78 T rtw_exit_critical_from_isr +10018d88 T rtw_exit_critical +10018d8c T rtw_enter_critical_mutex +10018d9c T rtw_exit_critical_mutex +10018dac T rtw_queue_empty +10018db6 T rtw_end_of_queue_search +10018dc0 T rtw_spinlock_init +10018dd0 T rtw_init_queue +10018ddc T rtw_spinlock_free +10018dec T rtw_spin_lock +10018dfc T rtw_enter_critical_bh +10018e00 T rtw_spin_unlock +10018e10 T rtw_exit_critical_bh +10018e14 T rtw_get_current_time +10018e24 T rtw_systime_to_ms +10018e38 T rtw_systime_to_sec +10018e4c T rtw_ms_to_systime +10018e60 T rtw_sec_to_systime +10018e74 T rtw_get_passing_time_ms +10018e88 T rtw_msleep_os +10018e98 T rtw_usleep_os +10018ea8 T rtw_mdelay_os +10018eb8 T rtw_udelay_os +10018ec8 T ATOMIC_SET +10018ed8 T ATOMIC_INC +10018ee8 T ATOMIC_INC_RETURN +10018efc T ATOMIC_DEC_RETURN +10018f10 T ATOMIC_DEC_AND_TEST +10018f20 T rtw_modular64 +10018f3c T rtw_get_random_bytes +10018f50 T rtw_getFreeHeapSize +10018f60 T init_mem_monitor +10018f70 T add_mem_usage +10018fa4 T rtw_zvmalloc +10018fc4 T rtw_malloc +10018fe4 T rtw_zmalloc +10019004 T rtw_netif_queue_stopped +10019008 T rtw_netif_wake_queue +1001900a T rtw_netif_start_queue +1001900c T rtw_netif_stop_queue +1001900e T flush_signals_thread +10019010 T rtw_acquire_wakelock +10019020 T rtw_release_wakelock +10019030 T rtw_create_task +1001904c T rtw_delete_task +1001905c T rtw_wakeup_task +1001906c T rtw_timerCreate +10019088 T rtw_timerDelete +1001909c T rtw_timerIsTimerActive +100190b0 T rtw_timerStop +100190c4 T rtw_timerChangePeriod +100190d8 T rtw_thread_enter +100190e8 T rtw_thread_exit +100190f8 T tcm_heap_free +10019178 T tcm_heap_init +100191c8 T tcm_heap_freeSpace +10019208 T tcm_heap_malloc +100192a8 T tcm_heap_calloc +100192c0 T flash_init +1001935c T flash_turnon +10019374 T flash_erase_sector +100193a0 T flash_stream_read +10019470 T flash_stream_write +100195c8 T i2s_init +100196a0 T i2s_set_dma_buffer +100196f2 T i2s_tx_irq_handler +100196f8 T i2s_set_param +1001972c T i2s_deinit +10019730 T i2s_enable +10019734 T i2s_disable +10019738 W pinmap_merge +10019774 W pinmap_find_peripheral +1001978c W pinmap_peripheral +100197c4 T sleep_ex_selective +100197d8 T deepsleep_ex +100197fc T us_ticker_read +10019828 t get_addr_fobj +10019872 t get_addr_fobj_save +100198bc t _fwrite_word +100198e8 t get_addr_bscfg +10019964 T copy_align4_to_align1 +100199ee T cmp_align1_align4 +10019a98 T flash_write_cfg +10019cd8 T flash_read_cfg +10019d6c T En32KCalibration +10019e00 T WDGInitial +10019e8c T WDGStart +10019ea4 T WDGRefresh +10019ec0 T I2SISRHandle +10019f7c T RtkI2SDeInit +1001a05c T RtkI2SEnable +1001a098 T RtkI2SDisable +1001a0d4 T RtkI2SLoadDefault +1001a138 T HalI2SOpInit +1001a1b4 T RtkI2SInit +1001a378 T HalI2SInit +1001a3b6 T HalI2SDisable +1001a3dc T HalI2SEnable +1001a400 T HalI2SDeInit +1001a458 T HalTimerOpInit_Patch +1001a494 T freertos_ready_to_sleep +1001a4a4 T freertos_pre_sleep_processing +1001a568 T freertos_post_sleep_processing +1001a58c T acquire_wakelock +1001a5cc T release_wakelock +1001a628 T get_wakelock_status +1001a634 T HalI2SInitRtl8195a_Patch +1001a736 T HalI2SSetRateRtl8195a +1001a77c T HalI2SSetWordLenRtl8195a +1001a7a4 T HalI2SSetChNumRtl8195a +1001a7cc T HalI2SSetPageNumRtl8195a +1001a7f4 T HalI2SSetPageSizeRtl8195a +1001a81e T HalI2SSetDMABufRtl8195a +1001a888 T HalI2SGetTxPageRtl8195a +1001a8a8 T HalI2SPageSendRtl8195a +1001a8f4 T HalI2SClearAllOwnBitRtl8195a +1001a928 T HalI2SDMACtrlRtl8195a +1001a92c T HalTimerIrq2To7Handle_Patch +1001a980 T HalTimerIrqRegisterRtl8195a_Patch +1001a9fc T HalTimerIrqUnRegisterRtl8195a_Patch +1001aa74 T HalTimerDeInitRtl8195a_Patch +1001aaa8 T HalTimerReadCountRtl8195a_Patch +1001aac0 T HalTimerReLoadRtl8195a_Patch +1001aaf4 T HalTimerInitRtl8195a_Patch +1001abc8 T HalTimerIrqEnRtl8195a +1001abdc T HalTimerEnRtl8195a_Patch +1001abf0 T HalTimerDisRtl8195a_Patch +1001ac04 T vWFSSVCHandler +1001ac0a t svcing +1001ac24 T PatchHalLogUartInit +1001acc8 T PSHalInitPlatformLogUart +1001ad8c T InitSYSIRQ +1001adc8 T DurationScaleAndPeriodOP +1001ae00 T CLKCal +1001ae5c T BackupCPUClk +1001ae7c T ReFillCpuClk +1001ae9c T SYSIrqHandle +1001aedc T WakeFromSLPPG +1001b014 T InitSoCPM +1001b04c T RegPowerState +1001b0b8 T ReadHWPwrState +1001b334 T QueryRegPwrState +1001b36c T SetSYSTimer +1001b3a4 T SleepCG +1001b494 T DeepSleep +1001b5d8 T HALEFUSEOneByteReadRAM +1001b5f8 T HALEFUSEOneByteWriteRAM +1001b5fc T HalLogUartWaitTxFifoEmpty +1001b614 T FunctionChk +1001b618 T HalReInitPlatformTimer +1001b688 T HalGetChipId +1001b6b0 W __low_level_init +1001b6b4 T rtl_libc_init +1001b6d0 T rtl_snprintf +1001b730 T rtl_sprintf +1001b77c T rtl_printf +1001b7c4 T rtl_memcmp +1001b7cc T rtl_memcpy +1001b7d4 T rtl_memmove +1001b7dc T rtl_memset +1001b7e4 T rtl_strcmp +1001b7ec T rtl_strcpy +1001b7f4 T rtl_strlen +1001b7fc T rtl_strncmp +1001b804 T rtl_strncpy +1001b80c T rtl_strsep +1001b814 T ram_libgloss_close +1001b824 T ram_libgloss_fstat +1001b844 T ram_libgloss_isatty +1001b850 T ram_libgloss_lseek +1001b860 T ram_libgloss_read +1001b870 T ram_libgloss_sbrk +1001b88c T ram_libgloss_write +1001b8ac T ram_libgloss_open +1001b8e8 T init_rom_libgloss_ram_map +1001b930 T memcpy +1001b938 T memset +1001b940 T sscanf +1001b95a T __aeabi_llsr +1001b970 t rtw_ht_operation_update +1001ba22 t associated_clients_update.part.11 +1001ba5e T chk_sta_is_alive +1001ba9c T add_RATid +1001bba4 T update_sta_info_apmode +1001bc5c T update_beacon +1001bf1c T rtw_check_beacon_data +1001c61c T associated_clients_update +1001c626 T bss_cap_update_on_sta_join +1001c7d6 T bss_cap_update_on_sta_leave +1001c8d2 T ap_free_sta +1001c984 T expire_timeout_chk +1001cac0 T rtw_sta_flush +1001cb44 T free_mlme_ap_info +1001cb90 T sta_info_update +1001cbcc T ap_sta_info_defer_update +1001cbfc T start_ap_mode +1001cc3c T init_mlme_ap_info +1001cc52 T stop_ap_mode +1001cca0 T rtw_generate_bcn_ie +1001cfc4 T set_hidden_ssid +1001d01c T _rtw_init_evt_priv +1001d02e T _rtw_free_cmd_priv +1001d038 T _rtw_enqueue_cmd +1001d064 T _rtw_dequeue_cmd +1001d098 T _rtw_observequeue_cmd +1001d0ac T rtw_init_cmd_priv +1001d0b6 T rtw_init_evt_priv +1001d0ba T rtw_free_evt_priv +1001d0bc T rtw_free_cmd_priv +1001d0c0 T rtw_cmd_filter +1001d0de T rtw_free_cmd_obj +1001d108 T rtw_enqueue_cmd +1001d15e T rtw_set_channel_plan_cmd_callback +1001d176 T rtw_survey_cmd_callback +1001d192 T rtw_disassoc_cmd_callback +1001d1c2 T rtw_joinbss_cmd_callback +1001d1de T rtw_setstaKey_cmdrsp_callback +1001d1f8 T rtw_cmd_thread +1001d354 T rtw_joinbss_cmd +1001d5fe T rtw_disassoc_cmd +1001d64c T rtw_setstakey_cmd +1001d73c T rtw_clearstakey_cmd +1001d7dc T rtw_dynamic_chk_wk_cmd +1001d82e T rtw_set_chplan_cmd +1001d8ae T dynamic_chk_wk_hdl +1001d976 T lps_ctrl_wk_hdl +1001d9da T rtw_lps_ctrl_wk_cmd +1001da44 T rtw_sitesurvey_cmd +1001db0c T rpt_timer_setting_wk_hdl +1001db20 T rtw_ps_cmd +1001db7c T rtw_chk_hi_queue_cmd +1001dbd0 T rtw_drvextra_cmd_hdl +1001dcac T rtw_do_join +1001dd50 T rtw_set_802_11_bssid +1001ded4 T rtw_set_802_11_ssid +1001dfdc T rtw_set_802_11_infrastructure_mode +1001e07e T rtw_set_802_11_bssid_list_scan +1001e0ce T rtw_set_802_11_authentication_mode +1001e0f0 T rtw_set_802_11_add_wep +1001e150 t rtw_free_mlme_ie_data +1001e168 T rtw_init_mlme_timer +1001e1c4 T rtw_del_mlme_timer +1001e1e4 T reconnect_timer_hdl +1001e284 T _rtw_init_mlme_priv +1001e306 T rtw_mfree_mlme_priv_lock +1001e322 T rtw_free_mlme_priv_ie_data +1001e35a T _rtw_free_mlme_priv +1001e382 T _rtw_alloc_network +1001e3d2 T _rtw_free_network +1001e432 T _rtw_free_network_nolock +1001e458 T _rtw_find_network +1001e494 T _rtw_free_network_queue +1001e4dc T rtw_if_up +1001e4fc T rtw_get_capability_from_ie +1001e500 T rtw_get_capability +1001e51a T rtw_get_beacon_interval_from_ie +1001e51e T rtw_init_mlme_priv +1001e536 T rtw_free_mlme_priv +1001e53a T rtw_free_network_queue +1001e53e T rtw_is_same_ibss +1001e554 T is_same_network +1001e5b8 T update_network +1001e652 T rtw_update_scanned_network +1001e764 T rtw_add_network +1001e7a2 T rtw_survey_event_callback +1001e84e T rtw_dummy_event_callback +1001e850 T rtw_free_assoc_resources +1001e91a T rtw_indicate_connect +1001e92a T rtw_indicate_disconnect +1001e94c T rtw_indicate_scan_done +1001e950 T rtw_joinbss_event_callback +1001e96e T search_max_mac_id +1001e9b6 T rtw_stassoc_hw_rpt +1001e9ee T rtw_stassoc_event_callback +1001ea1c T rtw_stadel_event_callback +1001eac2 T _rtw_join_timeout_handler +1001eb4c T rtw_join_timeout_handler +1001eba4 T rtw_scan_timeout_handler +1001ebd4 T _rtw_scan_timeout_handler +1001ebd8 T rtw_dynamic_check_timer_handlder +1001ec30 T _dynamic_check_timer_handlder +1001ec74 T rtw_select_and_join_from_scanned_queue +1001ed48 T rtw_surveydone_event_callback +1001ee60 T rtw_set_auth +1001eeb0 T rtw_set_key +1001ef72 T rtw_restruct_wmm_ie +1001efd8 T rtw_restruct_sec_ie +1001f044 T rtw_joinbss_reset +1001f054 T rtw_restructure_ht_ie +1001f134 T rtw_update_ht_cap +1001f1be T rtw_joinbss_event_prehandle +1001f3ea T rtw_linked_check +1001f406 T rtw_buddy_adapter_up +1001f43e T check_buddy_fwstate +1001f45c t get_da +1001f47c t get_sa +1001f4a6 T OnAction +1001f4b8 T DoReserved +1001f4bc t _mgt_dispatcher.isra.2 +1001f508 T rtw_is_channel_set_contains_channel +1001f52a T init_hw_mlme_ext +1001f540 T init_channel_set +1001f5d8 T free_mlme_ext_priv +1001f600 T mgt_dispatcher +1001f688 T alloc_mgtxmitframe +1001f6c0 T update_mgnt_tx_rate +1001f6c6 T update_mgntframe_attrib +1001f722 T rtw_build_mgnt_frame +1001f778 T dump_mgntframe +1001f792 T rtw_send_mgnt +1001f7b0 t issue_action_BSSCoexistPacket +1001f9bc T update_hidden_ssid +1001fa10 T issue_beacon +1001fc28 T issue_probersp +1001feb8 T OnProbeReq +1001ff80 T issue_probereq +10020138 T issue_auth +100203a0 T OnAuth +10020644 T issue_asocrsp +100208b8 T issue_assocreq +10020bf4 T issue_nulldata +10020cde T issue_qos_nulldata +10020e10 T issue_deauth +10020ef8 T issue_action_BA +10021174 T OnAction_back +10021242 T collect_bss_info +10021474 T start_clnt_auth +10021504 T start_clnt_assoc +10021538 T OnAuthClient +10021618 T report_scan_result_one +100217d8 T add_site_survey +1002195e T report_survey_event +10021b9c T OnProbeRsp +10021bd0 T report_surveydone_event +10021c34 T report_join_res +10021ca4 T OnAssocRsp +10021df0 T report_del_sta_event +10021e82 T receive_disconnect +10021ed8 T OnBeacon +10022060 T OnDeAuth +100221b8 T OnDisassoc +10022328 T report_add_sta_event +1002239c T OnAssocReq +1002298c T rtw_port_switch_chk +10022a10 T update_sta_info +10022a90 T mlmeext_sta_del_event_callback +10022b10 T _linked_info_dump +10022b72 T _linked_rx_signal_strehgth_display +10022bac T linked_status_chk +10022e20 T survey_timer_hdl +10022f00 T _survey_timer_hdl +10022f04 T link_timer_hdl +10022f82 T _link_timer_hdl +10022f86 T addba_timer_hdl +10022fa6 T NULL_hdl +10022faa T setopmode_hdl +10022ff0 T disconnect_hdl +1002309c T setauth_hdl +100230ac T setkey_hdl +10023104 T set_stakey_hdl +10023208 T set_tx_beacon_cmd +1002327c T mlme_evt_hdl +100232c8 T tx_beacon_hdl +10023382 T check_buddy_mlmeinfo_state +1002339c T site_survey +1002356c T sitesurvey_cmd_hdl +1002367a T concurrent_chk_start_clnt_join +10023710 T start_clnt_join +100237e4 T join_cmd_hdl +10023908 T concurrent_chk_joinbss_done +10023ad0 T mlmeext_joinbss_event_callback +10023c0c T set_chplan_hdl +10023c28 T init_mlme_ext_timer +10023c84 T init_mlme_ext_priv +10023dc0 t get_hdr_bssid +10023de8 t filter_packet +10023e70 t promisc_get_encrypt +10023ec2 t promisc_info_get +10023f66 t promisc_set_enable +10024002 T _promisc_deinit +10024054 T _promisc_recv_func +100245a0 T _promisc_set +10024630 T _is_promisc_enabled +10024648 t SetEAPOL_KEYIV +100246e6 t ToDrv_SetPTK +1002478e t Message_ReplayCounter_OC2LI.isra.2 +100247bc t Message_SmallerEqualReplayCounter.isra.4 +100247ee t Message_setReplayCounter.isra.5 +1002480c t INCLargeInteger +1002482c t INCOctet16_INTEGER +10024874 t INCOctet32_INTEGER +100248d4 t ToDrv_DisconnectSTA +10024998 t CheckMIC.constprop.14 +10024a18 t CalcMIC.constprop.15 +10024a78 T DecWPA2KeyData +10024b2c T DecGTK +10024be8 T ToDrv_SetGTK +10024c78 T init_wpa_sta_info +10024d64 T SendEAPOL +1002541c T ClientSendEAPOL +10025904 t ResendTimeout +1002598c T EAPOLKeyRecvd +10025b04 T ClientEAPOLKeyRecvd +10025ec4 T psk_derive +10025f78 T psk_init +10026068 T psk_strip_rsn_pairwise +100260e8 T psk_strip_wpa_pairwise +10026168 T tkip_send_mic_failure_report +100262dc T pwr_state_check_handler +100262e0 T ips_enter +10026388 T ips_leave +100264a0 T rtw_pwr_unassociated_idle +100264ea T rtw_ps_processor +10026542 T PS_RDY_CHECK +100265aa T rtw_set_ps_mode +10026618 T LPS_RF_ON_check +1002666e T LPS_Enter +100266dc T LPS_Leave +10026718 T LeaveAllPowerSaveMode +10026728 T rtw_init_pwrctrl_priv +100267fc T rtw_free_pwrctrl_priv +10026810 T _rtw_pwr_wakeup +100268ec T rtw_pm_set_lps +10026934 T rtw_pm_set_ips +10026978 T rtw_pm_set_tdma_param +10026994 T rtw_pm_set_lps_dtim +100269a0 T rtw_pm_get_lps_dtim +100269ac t recvframe_pull +100269ce t recvframe_pull_tail +100269f0 T rtw_signal_stat_timer_hdl +10026a8e T _rtw_init_sta_recv_priv +10026aac T _rtw_init_recv_priv +10026b54 T rtw_mfree_recv_priv_lock +10026b88 T _rtw_alloc_recvframe +10026bba T rtw_alloc_recvframe +10026be0 T rtw_free_recvframe +10026c7c T _rtw_enqueue_recvframe +10026ca8 T rtw_enqueue_recvframe +10026cd2 T rtw_free_recvframe_queue +10026d0a T rtw_free_uc_swdec_pending_queue +10026d32 T _rtw_free_recv_priv +10026d62 T rtw_free_buf_pending_queue +10026d66 T recvframe_chkmic +10026e64 T decryptor +10026f00 T portctrl +10026f76 T recv_decache +10026fa4 T process_pwrbit_data +10026fe4 T process_wmmps_data +1002706c T count_rx_stats +100270e0 T sta2sta_data_frame +1002721c T ap2sta_data_frame +10027348 T sta2ap_data_frame +100273d0 T validate_recv_ctrl_frame +1002756a T validate_recv_data_frame +100277c4 T wlanhdr_to_ethhdr +10027900 T recvframe_defrag +100279aa T recvframe_chk_defrag +10027a60 T validate_recv_mgnt_frame +10027a9c T validate_recv_frame +10027b64 T recv_indicatepkt_reorder +10027b86 T process_recv_indicatepkts +10027bde T recv_func_prehandle +10027c06 T recv_func_posthandle +10027c6a T recv_func +10027cf4 T rtw_recv_entry +10027d24 T rtw_recv_tasklet +10027d7c T rtw_wep_encrypt +10027dc2 T rtw_wep_decrypt +10027e08 T rtw_tkip_encrypt +10027e74 T rtw_tkip_decrypt +10027ee0 T rtw_aes_encrypt +10027f4c T rtw_aes_decrypt +10027fb0 T rtw_init_sec_priv +10028022 T rtw_free_sec_priv +10028042 t wifi_mac_hash +1002806c T _addba_timer_hdl +10028070 T _rtw_init_stainfo +100280ea T _rtw_init_sta_priv +100281d2 T _rtw_free_sta_xmit_priv_lock +100281fe T rtw_mfree_stainfo +1002822a T rtw_mfree_sta_priv_lock +10028260 T _rtw_free_sta_priv +10028280 T init_addba_retry_timer +100282a8 T rtw_alloc_stainfo +10028372 T rtw_free_stainfo +10028514 T rtw_get_stainfo +10028590 T rtw_init_bcmc_stainfo +100285c0 T rtw_get_bcmc_stainfo +100285e4 T rtw_free_all_stainfo +1002863e T cckrates_included +10028666 T cckratesonly_included +1002868e T networktype_to_raid_ex +100286ec T judge_network_type +1002873c T ratetbl_val_2wifirate +10028750 T is_basicrate +1002877c T ratetbl2rateset +100287c0 T get_rate_set +100287ea T UpdateBrateTbl +1002881c T UpdateBrateTblForSoftAP +10028850 T Save_DM_Func_Flag +10028866 T Restore_DM_Func_Flag +1002887c T Switch_DM_Func +10028898 T Set_MSR +100288bc T set_opmode +10028900 T SelectChannel +10028934 T SetBWMode +10028970 T set_channel_bwmode +100289c6 T get_my_bssid +100289ca T get_beacon_interval +100289e8 T is_client_associated_to_ap +10028a00 T is_client_associated_to_ibss +10028a1c T is_IBSS_empty +10028a3e T decide_wait_for_beacon_timeout +10028a5a T invalidate_cam_all +10028a62 T write_cam +10028ad8 T clear_cam_entry +10028b06 T flush_all_cam_entry +10028b64 T WMM_param_handler +10028b8a T WMMOnAssocRsp +10028c58 T HT_caps_handler +10028cf8 T HT_info_handler +10028d1c T HTOnAssocRsp +10028d54 T ERP_IE_handler +10028d70 T VCS_update +10028dc2 T rtw_check_bcn_info +10028fd2 T update_beacon_info +10029028 T is_ap_in_tkip +100290a0 T wifirate2_ratetbl_inx +1002910c T update_basic_rate +1002913a T update_supported_rate +10029164 T update_MCS_rate +10029170 T support_short_GI +1002919e T get_highest_rate_idx +100291b8 T Update_RA_Entry +100291c0 T set_sta_rate +100291c8 T update_tx_basic_rate +10029220 T check_assoc_AP +10029314 T update_IOT_info +10029372 T update_capinfo +100293f0 T update_wireless_mode +10029490 T update_bmc_sta_support_rate +100294b8 T update_TSF +100294ca T correct_TSF +100294d2 t _init_txservq +100294e8 t set_qos +10029538 T _rtw_init_sta_xmit_priv +1002957e T rtw_mfree_xmit_priv_lock +100295ca T qos_acm +10029604 T xmitframe_addmic +10029762 T xmitframe_swencrypt +1002978e T rtw_make_wlanhdr +1002996e T rtw_txframes_pending +100299aa T rtw_txframes_sta_ac_pending +100299e0 T rtw_txframes_update_attrib_vcs_info +10029a80 T rtw_put_snap +10029ac4 T rtw_update_protection +10029b0a T rtw_count_tx_stats +10029b5a T rtw_free_xmitbuf_ext +10029b9c T rtw_alloc_xmitframe +10029bf4 T rtw_free_xmitframe +10029c46 T rtw_free_xmitframe_queue +10029c84 T rtw_get_sta_pending +10029cc4 T rtw_xmit_classifier +10029d2a T rtw_xmitframe_enqueue +10029d38 T rtw_alloc_hwxmits +10029d92 T rtw_free_hwxmits +10029da8 T _rtw_free_xmit_priv +10029e74 T rtw_init_hwxmits +10029e8c T _rtw_init_xmit_priv +1002a044 T rtw_get_ff_hwaddr +1002a058 T xmitframe_enqueue_for_sleeping_sta +1002a218 t dequeue_xmitframes_to_sleeping_queue +1002a26e T stop_sta_xmit +1002a356 T wakeup_sta_to_xmit +1002a56c T xmit_delivery_enabled_frames +1002a688 T rtw_xmit_tasklet +1002a6e0 T rtw_xmit_mgnt +1002a6e4 T rtw_xmit +1002aa0e T rtw_sctx_done_err +1002aa1a T rtw_alloc_xmitbuf +1002aa74 T rtw_free_xmitbuf +1002aae6 T rtw_alloc_xmitbuf_ext +1002ab6c T rtw_sctx_done +1002ab72 t rtl8195a_free_rx_ring +1002ab80 t bus_write32 +1002abdc t bus_write16 +1002ac38 t bus_write8 +1002ac94 t bus_read32 +1002acee t bus_read16 +1002ad4a t bus_read8 +1002ada6 t rtl8195a_free_tx_ring +1002ae34 T rtl8195a_init_desc_ring +1002af74 T rtl8195a_free_desc_ring +1002af90 T rtl8195a_reset_desc_ring +1002b026 T InitLxDmaRtl8195a +1002b188 T rtl8195a_check_txdesc_closed +1002b200 t rtl8195a_tx_isr +1002b2e4 T InterruptRecognized8195a +1002b374 T InitInterrupt8195a +1002b394 T EnableDMA8195a +1002b3bc T EnableInterrupt8195a +1002b3fc T DisableDMA8195a +1002b408 T DisableInterrupt8195a +1002b420 T UpdateInterruptMask8195a +1002b482 T CheckRxTgRtl8195a +1002b4bc T rtl8192ee_check_rxdesc_remain +1002b4ec T rtl8195a_recv_tasklet +1002b800 T rtl8195a_tx_int_handler +1002b82c T InterruptHandle8195a +1002baa0 T rtl8195a_xmit_tasklet +1002bac8 T lxbus_set_intf_ops +1002bb08 t GetTxBufDesc +1002bb52 t UpdateFirstTxbdtoXmitBuf.isra.3 +1002bb84 t check_nic_enough_desc.isra.4 +1002bbd4 T rtl8195ab_init_xmit_priv +1002bbe2 T rtl8195ab_free_xmit_priv +1002bbea T GetDmaTxbdIdx +1002bc06 T rtl8195a_enqueue_xmitbuf +1002bc2a T rtl8195a_dequeue_xmitbuf +1002bc4e T SetTxbdForLxDMARtl8195ab +1002bcce T UpdateTxbdHostIndex +1002bd0c T rtw_dump_xframe +1002bede T check_tx_desc_resource +1002bf18 T rtw_dequeue_xframe +1002bfac T rtw_xmitframe_coalesce +1002c260 T rtl8195ab_xmitframe_resume +1002c356 T rtl8195ab_mgnt_xmit +1002c392 T rtl8195ab_hal_xmit +1002c4a0 t Hal_GetEfuseDefinition +1002c4d0 t ResumeTxBeacon +1002c514 T UpdateHalRAMask8195A +1002c6ac T HalLittleWifiMCUThreadRtl8195a +1002c700 T HalCheckInReqStateThreadRtl8195a +1002c74c T HalTDMAChangeStateThreadRtl8195a +1002c798 t rtl8195a_read_chip_version +1002c80c t Hal_EfuseWordEnableDataWrite +1002ca50 t Hal_EfusePowerSwitch +1002ca64 t rtl8195a_free_hal_data +1002ca7e t StopTxBeacon +1002cac8 T SetHalODMVar8195A +1002cb80 T rtl8195a_start_thread +1002cbe8 T rtl8195a_stop_thread +1002cc0c t Hal_ReadEFuse +1002cd7c T GetHalODMVar8195A +1002cd90 t rtw_flash_map_update.part.12 +1002ce30 t rtw_flash_map_erase +1002ce74 t Hal_EfusePgPacketWrite +1002d0f0 t Hal_EfuseGetCurrentSize +1002d1d0 t rtw_flash_map_write +1002d39e T rtl8195a_InitBeaconParameters +1002d40e T _InitBurstPktLen_8195AB +1002d418 T rtl8195a_set_hal_ops +1002d4f8 T rtl8195a_init_default_value +1002d4fa T rtl8195a_InitLLTTable +1002d544 T Hal_GetChnlGroup8195A +1002d580 T rtw_config_map_read +1002d66c T rtw_config_map_write +1002d718 T Hal_InitPGData +1002d776 T Hal_EfuseParseIDCode +1002d78e T Hal_ReadPowerValueFromPROM_8195A +1002d82c T Hal_EfuseParseTxPowerInfo_8195A +1002d8c4 T Hal_EfuseParseEEPROMVer_8195A +1002d8da T Hal_EfuseParsePackageType_8195A +1002d944 T Hal_EfuseParseChnlPlan_8195A +1002d974 T Hal_EfuseParseCustomerID_8195A +1002d98a T Hal_EfuseParseXtal_8195A +1002d9a2 T Hal_EfuseParseThermalMeter_8195A +1002d9ca T Hal_ReadRFGainOffset +1002da1a T BWMapping_8195A +1002da3a T SCMapping_8195A +1002da62 T rtl8195a_update_txdesc +1002dd32 T rtl8195a_fill_fake_txdesc +1002ddf0 T SetHwReg8195A +1002eab0 T GetHwReg8195A +1002eb44 T SetHalDefVar8195A +1002ec24 T GetHalDefVar8195A +1002ec48 T PHY_QueryBBReg_8195A_Safe +1002ec74 T PHY_SetBBReg_8195A_Safe +1002eca0 t phy_RFSerialRead_8195A +1002ed54 T PHY_QueryRFReg_8195A +1002ed6c T PHY_SetRFReg_8195A +1002edc4 T PHY_MACConfig8195A +1002edde T PHY_BBConfig8195A +1002eeee T PHY_RFConfig8195A +1002eef2 T PHY_SetTxPowerIndex_8195A +1002effc T phy_TxPwrAdjInPercentage +1002f03c T PHY_GetTxPowerIndex_8195A +1002f12c T PHY_SetTxPowerLevel8195A +1002f132 T phy_SpurCalibration_8195A +1002f3ea T phy_SetRegBW_8195A +1002f428 T phy_PostSetBwMode8195A +1002f584 T phy_SwChnl8195A +1002f62c T phy_SwChnlAndSetBwMode8195A +1002f67c T PHY_HandleSwChnlAndSetBW8195A +1002f72c T PHY_SetBWMode8195A +1002f74e T PHY_SwChnl8195A +1002f768 T PHY_SetSwChnlBWMode8195A +1002f786 t HalTimerEnable +1002f798 T InitTDMATimer +1002f7c0 T ChangeStateByTDMA +1002f7d0 T GetMinRateInRRSR +1002f804 T CheckInReqState +1002f814 T InitCheckStateTimer +1002f844 T InitGTimer1ms +1002f890 T DeInitGTimer1ms +1002f8d8 T ChangeTransmiteRate +1002f914 T PowerBitSetting +1002f990 T ChkandChangePS +1002f9f4 T IssueRsvdPagePacketSetting +1002fa68 T IssuePSPoll +1002fa94 T WaitTxStateMachineOk +1002fae8 T IssueNullData +1002fb78 T PsCloseRF +1002fbac T PsOpenRF +1002fbdc T ChkTxQueueIsEmpty +1002fbf4 T InitPS +1002fc64 T ConfigListenBeaconPeriod +1002fc88 T PS_S2_Condition_Match +1002fcbc T PS_S4_Condition_Match +1002fd38 T PS_32K_Condition_Match +1002fd74 T PS_S2ToS3ToS0State +1002fddc T PS_S2ToS0State +1002fdf8 T PS_S3ToS2orS0State +1002fe28 T PS_S0ToS1ToS2State +1002fe84 T PS_S1ToS0orS2State +1002feb4 T PS_S2ToS4State +1002ff00 T PS_S0ToS6State +1002ff20 T PS_S6ToS0State +1002ff38 T CheckTSFIsStable +1002ff88 T WaitHWStateReady +1002ff98 T SysClkDown +10030008 T SysClkUp +10030054 T ResetPSParm +100300c8 T PS_S4ToS2State +100300ec T SleepTo32K +1003014c T Change_PS_State +100302f8 T Legacy_PS_Setting +1003036c T PSModeSetting +10030410 T ChangePSStateByRPWM +10030454 T ChangeTDMAState +10030574 T TDMAChangeStateTask +1003059e T EnterPS +100305c0 T SetSmartPSTimer +100305fc T GTimer7Handle +10030658 T SmartPS2InitTimerAndToGetRxPkt +10030694 T PS_OnBeacon +10030744 T PSBcnEarlyProcess +10030800 T PSMtiBcnEarlyProcess +100308ac T PSRxBcnProcess +100309fc T TxPktInPSOn +10030a3a T PsBcnToProcess +10030af4 T GTimer6Handle +10030b40 T RPWMProcess +10030b7c T PSSetMode +10030bf4 T SpeRPT +10030d14 T ISR_BcnEarly +10030d80 T ISR_MtiBcnEarly +10030db4 T ISR_RxBcn +10030dd0 T ISR_RxBCMD1 +10030e00 T ISR_RxBCMD0 +10030e54 T ISR_RxUCMD1 +10030e92 T ISR_RxUCMD0 +10030ece T ISR_TxPktIn +10030ee0 T ISR_TXCCX +10030ee4 T H2CHDL_SetPwrMode +1003100c T CheckInReqStateTask +10031052 T HalGetNullTxRpt +10031070 T ISR_TBTT +100310e8 T H2CHDL_BcnIgnoreEDCCA +100310f8 T PMUInitial +10031148 T PMUTask +10031254 T PHY_RF6052SetBandwidth8195A +10031298 T PHY_RF6052_Config8195A +10031350 t process_rssi +10031386 T rtl8195a_query_rx_desc_status +10031436 T rtl8195a_query_rx_phy_status +1003158e T hal_com_get_channel_plan +100315c2 T HAL_IsLegalChannel +100315e0 T MRateToHwRate +100315f4 T HwRateToMRate +10031608 T HalSetBrateCfg +100316b4 T Hal_MappingOutPipe +100316d0 T hal_init_macaddr +100316fc T hw_var_port_switch +10031984 T SetHwReg +1003198e T GetHwReg +10031990 T switch_power_saving_mode +100319d4 T rtw_bb_rf_gain_offset +10031a1c T PHY_GetRateValuesOfTxPowerByRate +10031bb4 T PHY_StoreTxPowerByRateNew +10031c50 T PHY_InitTxPowerByRate +10031c68 T PHY_StoreTxPowerByRate +10031c80 T PHY_GetTxPowerIndexBase +10031d20 T PHY_GetTxPowerTrackingOffset +10031d4c T PHY_GetRateIndexOfTxPowerByRate +10031d60 T PHY_GetTxPowerByRate +10031dc0 T phy_StoreTxPowerByRateBase +10031e0c T PHY_SetTxPowerByRate +10031e48 T phy_ConvertTxPowerByRateInDbmToRelativeValues +10031f48 T PHY_TxPowerByRateConfiguration +10031f5a T PHY_SetTxPowerIndexByRateArray +10031f98 T PHY_SetTxPowerIndexByRateSection +10031ffc T PHY_SetTxPowerLevelByPath +10032032 T phy_GetWorldWideLimit +1003205e T PHY_GetTxPowerLimit +10032188 T PHY_ConvertTxPowerLimitToPowerIndex +100322d8 T PHY_InitTxPowerLimit +10032320 T PHY_SetTxPowerLimit +1003239c T PHY_GetTxPowerIndex +100323ac T rtw_hal_chip_configure +100323c2 T rtw_hal_read_chip_info +100323d8 T rtw_hal_read_chip_version +100323ee T rtw_hal_def_value_init +10032404 T rtw_hal_free_data +1003241a T rtw_hal_dm_init +10032430 T rtw_hal_dm_deinit +10032446 T rtw_hal_init +10032470 T rtw_hal_deinit +1003248a T rtw_hal_set_hwreg +10032498 T rtw_hal_get_hwreg +100324a6 T rtw_hal_set_def_var +100324b8 T rtw_hal_get_def_var +100324ca T rtw_hal_set_odm_var +100324d8 T rtw_hal_get_odm_var +100324e6 T rtw_hal_enable_interrupt +10032508 T rtw_hal_disable_interrupt +1003252a T rtw_hal_inirp_init +1003253c T rtw_hal_inirp_deinit +1003254e T rtw_hal_irp_reset +1003255c T rtw_hal_xmit +1003256e T rtw_hal_mgnt_xmit +10032580 T rtw_hal_init_xmit_priv +10032592 T rtw_hal_free_xmit_priv +100325a0 T rtw_hal_update_ra_mask +100325ce T rtw_hal_add_ra_tid +100325dc T rtw_hal_clone_data +100325ea T rtw_hal_start_thread +100325f8 T rtw_hal_stop_thread +10032606 T rtw_hal_read_bbreg +1003263a T rtw_hal_write_bbreg +10032666 T rtw_hal_read_rfreg +10032678 T rtw_hal_write_rfreg +1003268c T rtw_hal_interrupt_handler +1003269e T rtw_hal_set_bwmode +100326ac T rtw_hal_set_chan +100326ba T rtw_hal_set_chnl_bw +100326d0 T rtw_hal_dm_watchdog +100326e6 T rtw_hal_macid_sleep +10032706 T rtw_hal_macid_wakeup +10032726 T decide_chip_type_by_device_id +1003272c t rtw_net_get_stats +1003277c t netdev_if2_close +1003279c t netdev_close +100327f8 t rtw_if1_deinit +10032892 T rtw_os_indicate_connect +10032896 T rtw_os_indicate_scan_done +1003289a T rtw_reset_securitypriv +1003298e T rtw_os_indicate_disconnect +100329d8 T rtw_init_netdev +10032b28 T rtw_drv_if2_init +10032d30 T rtw_drv_if2_stop +10032d86 T rtw_drv_if2_free +10032dd4 T _netdev_open +10032ef0 T _netdev_if2_open +10032fac T netdev_if2_open +10032fd4 T netdev_open +10032ffc T rtw_drv_probe +1003317c T rtw_dev_remove +100331c0 T rtw_drv_entry +100331ec T rtw_drv_halt +1003321c t rtw_wx_set_autoreconnect +1003324a t rtw_wx_get_autoreconnect +10033258 t rtw_forwarding_set +1003327a t rtw_set_ch_deauth +1003329c t get_priv_size +100332b0 t rtw_wx_del_custome_ie +100332fc t rtw_wx_set_pscan_freq +1003337e t rtw_wx_update_custome_ie +100333f0 t rtw_set_tos_value +10033410 t rtw_get_tx_power +10033554 t rtw_wx_set_custome_ie +10033600 t rtw_pm_get +10033644 t rtw_pm_set +100336f8 t rtw_wx_read32 +100337a4 t rtw_wx_write32 +10033808 t rtw_wx_set_freq.isra.10 +100338b0 T rtw_ex_set +10033970 T wireless_send_event +1003397a T indicate_wx_custom_event +100339d6 T indicate_wx_scan_result_present +100339fe T indicate_wx_scan_complete_event +10033a28 T rtw_indicate_sta_assoc +10033a78 T rtw_indicate_sta_disassoc +10033ad0 T rtw_indicate_wx_assoc_event +10033b02 T rtw_indicate_wx_disassoc_event +10033b32 T rtw_set_wpa_ie +10033c48 T strtopsk +10033cb4 T rtw_wx_get_passphrase +10033d00 T rtw_wx_set_ap_essid +10033df0 T mac_reg_dump +10033e9c T bb_reg_dump +10033ef8 T rf_reg_dump +10033f70 t rtw_dbg_port +100345d8 T rtw_set_sta_num +100345f4 T rtw_ex_get_drv_ability +100346b4 T rtw_ex_get +1003494c T rtw_ioctl +100358d8 T rtw_os_recv_resource_init +100358dc T rtw_os_recv_resource_alloc +100358e6 T rtw_os_recv_resource_free +100358e8 T rtw_tkip_countermeasure +10035988 T rtw_handle_tkip_mic_err +10035a30 T rtw_recv_indicatepkt +10035c80 T skb_fail_inc +10035c9c T skb_fail_get_and_rst +10035cb8 T init_skb_pool +10035d10 T init_skb_data_pool +10035d68 T alloc_skb +10035e68 T kfree_skb +10035ed0 T kfree_skb_chk_key +10035ed4 T skb_put +10035f08 T skb_reserve +10035f16 T dev_alloc_skb +10035f32 T skb_end_pointer +10035f36 T skb_set_tail_pointer +10035f3e T skb_pull +10035f56 T skb_copy +10035f7e T rtw_remainder_len +10035f8a T _rtw_open_pktfile +10035f9c T _rtw_pktfile_read +10035fca T rtw_set_tx_chksum_offload +10035fcc T rtw_os_xmit_resource_alloc +10035fd6 T rtw_os_xmit_resource_free +10035fd8 T rtw_os_pkt_complete +10035fe0 T rtw_os_xmit_complete +10035ff2 T rtw_os_xmit_schedule +1003602e T rtw_xmit_entry +1003607a T rtw_alloc_etherdev_with_old_priv +10036090 T rtw_alloc_etherdev +100360bc T rtw_free_netdev +100360dc T timer_wrapper +10036130 T alloc_etherdev +1003618c T free_netdev +100361a6 T dev_alloc_name +100361b0 T init_timer_wrapper +100361d0 T deinit_timer_wrapper +1003621c T init_timer +100362d4 T mod_timer +100363b4 T cancel_timer_ex +100363fc T del_timer_sync +10036460 T rtw_init_timer +10036468 T rtw_set_timer +1003646c T rtw_cancel_timer +10036476 T rtw_del_timer +1003647c T rltk_get_idx_bydev +1003648c T rltk_wlan_init +10036514 T rltk_wlan_deinit +100365d8 T rltk_wlan_start +1003660c T rltk_wlan_check_isup +1003661c T rltk_wlan_tx_inc +10036630 T rltk_wlan_tx_dec +10036644 T rltk_wlan_get_recv_skb +10036654 T rltk_wlan_alloc_skb +10036694 T rltk_wlan_send_skb +100366c8 T rltk_netif_rx +10036774 T rltk_set_sta_num +10036778 T rltk_set_tx_power_percentage +100367ac T rltk_wlan_control +10036840 T rltk_wlan_running +10036858 T rltk_wlan_handshake_done +1003688c T rltk_wlan_wireless_mode +10036918 T rltk_wlan_is_connected_to_ap +1003695c T Efuse_PowerSwitch +10036968 T Efuse_GetCurrentSize +10036974 T Efuse_CalculateWordCnts +10036998 T EFUSE_GetEfuseDefinition +100369ac T efuse_OneByteRead +100369e0 T efuse_OneByteWrite +10036a14 T Efuse_PgPacketWrite +10036a28 T efuse_WordEnableDataRead +10036a5a T Efuse_WordEnableDataWrite +10036a6e T efuse_GetCurrentSize +10036a96 T rtw_efuse_map_read +10036af8 T rtw_efuse_map_write +10036c78 T rtw_macaddr_cfg +10036d3c T rtw_get_cipher_info +10036db6 T rtw_get_bcn_info +10036e86 T rtw_init_default_value +10036ef4 T rtw_cancel_all_timer +10036f5e T rtw_free_drv_sw +10036fd4 T rtw_reset_drv_sw +10037030 T rtw_init_drv_sw +100370b8 T rtw_start_drv_threads +10037174 T rtw_stop_drv_threads +100371a8 T rtw_read8 +100371b6 T rtw_read16 +100371c4 T rtw_read32 +100371d2 T rtw_write8 +100371e0 T rtw_write16 +100371ee T rtw_write32 +100371fc T ODM_InitRAInfo +1003729c T InitialRateUpdate +1003739c T RateUp_search_RateMask +100373ce T RateDown_search_RateMask +10037420 T StartRateByRSSI +1003744a T RateUpRAM8195A +100374de T RateDownTrying +1003751c T TryDone +100375b4 T RateDownStepRAM8195A +10037654 T RateDecisionRAM8195A +10037738 T ArfrRefresh +10037940 T H2CHDL_Set_MACID_Config +10037a04 T PHY_DM_RA_SetRSSI_8195A +10037a32 t CheckPositive.isra.0 +10037b14 T ODM_ReadAndConfig_MP_8195A_AGC_TAB +10037b8c T ODM_ReadAndConfig_MP_8195A_PHY_REG +10037c04 T ODM_GetVersion_MP_8195A_PHY_REG +10037c08 T ODM_ReadAndConfig_MP_8195A_PHY_REG_PG +10037c3c T odm_ConfigRFReg_8195A +10037c74 T odm_ConfigRF_RadioA_8195A +10037c84 T odm_ConfigMAC_8195A +10037c88 T odm_ConfigBB_AGC_8195A +10037c98 T odm_ConfigBB_PHY_REG_PG_8195A +10037cc6 T odm_ConfigBB_PHY_8195A +10037d0e T odm_ConfigBB_TXPWR_LMT_8195A +10037d34 T ODM_CmnInfoInit +10037e28 T ODM_CmnInfoHook +10037ecc T ODM_CmnInfoPtrArrayHook +10037edc T ODM_CmnInfoUpdate +10037fac T odm_CommonInfoSelfInit +10038020 T ODM_DMInit +1003806e T odm_CommonInfoSelfUpdate +100380c0 T ODM_DMWatchdog +1003812c T PhyDM_Get_Structure +10038150 T Phydm_CheckAdaptivity +1003817e T Phydm_NHMCounterStatisticsInit +100381f4 T Phydm_SetEDCCAThreshold +1003822c T Phydm_MACEDCCAState +1003826a T Phydm_AdaptivityInit +10038348 T Phydm_Adaptivity +10038468 T ODM_CfoTrackingInit +10038492 T ODM_CfoTracking +100384b2 T ODM_ParsingCFO +100384e4 T ODM_InitDebugSetting +100384f8 T ODM_Write_DIG +10038598 T odm_ForbiddenIGICheck +1003862a T ODM_Write_CCK_CCA_Thres +10038664 T odm_DIGInit +100386fe T odm_DigAbort +10038720 T odm_DIGbyRSSI_LPS +100387cc T odm_FAThresholdCheck +100387f8 T odm_DIG +10038a58 T odm_FalseAlarmCounterStatistics +10038a84 T odm_CCKPacketDetectionThresh +10038adc T odm_RxPhyStatus8195A_Parsing +10038be0 T odm_Process_RSSIForDM_8195A +10038d22 T ODM_PhyStatusQuery_8195A +10038d4e T ODM_PhyStatusQuery +10038d52 T ODM_ConfigRFWithHeaderFile +10038d70 T ODM_ConfigRFWithTxPwrTrackHeaderFile +10038da2 T ODM_ConfigBBWithHeaderFile +10038dca T ODM_ConfigMACWithHeaderFile +10038ddc T ODM_Read1Byte +10038de2 T ODM_Read4Byte +10038de8 T ODM_Write1Byte +10038dee T ODM_Write2Byte +10038df4 T ODM_Write4Byte +10038dfa T ODM_SetMACReg +10038e00 T ODM_SetBBReg +10038e06 T ODM_GetBBReg +10038e0c T ODM_SetRFReg +10038e12 T ODM_GetRFReg +10038e18 T ODM_MoveMemory +10038e22 T ODM_delay_ms +10038e26 T ODM_delay_us +10038e2c T getSwingIndex +10038e84 T odm_TXPowerTrackingThermalMeterInit +10038f36 T odm_TXPowerTrackingInit +10038f3a T odm_TXPowerTrackingCheckIOT +10038f6e T ODM_TXPowerTrackingCheck +10038f7c T odm_RSSIMonitorInit +10038f84 T ODM_RAPostActionOnAssoc +10038f8c T odm_RSSIMonitorCheckIOT +10039060 T odm_RSSIMonitorCheck +10039074 T odm_RateAdaptiveMaskInit +1003909c T ODM_RAStateCheck +100390de T odm_RefreshRateAdaptiveMaskIOT +1003912e T odm_RefreshRateAdaptiveMask +10039144 T ODM_Get_Rate_Bitmap +10039234 t _ReadEfuseInfo8195a +100392fc t rtl8195a_interface_configure +10039330 t rtl8195a_hal_deinit +1003936c T _InitPowerOn +100393ec t ReadAdapterInfo8195a +1003941c T _InitDriverInfoSize +10039426 T _InitNetworkType +10039448 T _InitWMACSetting +100394b8 T _InitAdaptiveCtrl +100394fc T _InitEDCA +10039578 T _InitRateFallback +100395bc T _InitRetryFunction +100395e8 T _InitOperationMode +10039630 T _InitInterrupt +10039670 t rtl8195a_hal_init +10039948 T rtl8195ab_set_hal_ops +10039a20 T FillH2CCmd8195A +10039a40 T CheckFwRsvdPageContent +10039a42 T rtl8195a_set_FwRsvdPage_cmd +10039a4c T rtl8195a_set_FwMediaStatusRpt_cmd +10039a78 T rtl8195a_set_FwMacIdConfig_cmd +10039b38 T rtl8195a_set_FwPwrMode_cmd +10039bc8 T rtl8195a_download_rsvd_page +10039ed0 T rtl8195a_set_FwJoinBssRpt_cmd +10039eda T rtl8195a_Add_RateATid +10039f2c T rtw_rpt_h_addr +10039f78 T rtw_txrpt_read8 +10039f96 T rtw_txrpt_write8 +10039fba T rtw_ratemask_read8 +10039fd8 T rtw_ratemask_write8 +10039ffc T ReadRateMask8 +1003a006 T WriteRateMask8 +1003a00a T ReadTxrpt8 +1003a014 T WriteTxrpt8 +1003a018 T ResetTxrpt +1003a050 T PsuseTxrpt +1003a070 T CheckMaxMacidNum +1003a0a8 T GetMediaStatusCommon +1003a0c2 T GetTxrptStatistic +1003a178 T rtl8195a_InitHalDm +1003a29c T rtl8195a_HalDmWatchDog +1003a380 T rtl8195a_init_dm_priv +1003a458 T rtl8195a_deinit_dm_priv +1003a45a T MediaConnection +1003a478 T MediaDisconnection +1003a498 T RATaskEnable +1003a4c2 T SetMediaStatus +1003a500 T H2CHDL_JoinInfo +1003a538 T H2CHDL_SetRsvdPage +1003a5d0 T H2CCmdCommon +1003a614 T HalPwrSeqCmdParsing +1003a6d4 T hci_dvobj_init +1003a6e4 T hci_dvobj_deinit +1003a6f4 T hci_dvobj_request_irq +1003a704 T hci_dvobj_free_irq +1003a714 T hci_lxbus_dvobj_init +1003a750 T hci_lxbus_dvobj_deinit +1003a790 T hci_lxbus_dvobj_request_irq +1003a7e4 T hci_lxbus_free_irq +1003a83c T hci_lxbus_intf_stop +1003a874 T rtw_interrupt_thread +1003a8e8 T lextra_bus_dma_Interrupt +1003a930 T init_rom_wlan_ram_map +1003a948 T ODM_ReadAndConfig_MP_8195A_MAC_REG +1003aaa4 t CheckPositive.isra.0 +1003ab88 T ODM_ReadAndConfig_MP_8195A_RadioA +1003ac00 T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_QFN48 +1003ac50 T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_QFN56 +1003aca0 T ODM_ReadAndConfig_MP_8195A_TxPowerTrack_TFBGA96 +1003acf0 T ODM_ReadAndConfig_MP_8195A_TXPWR_LMT +1003ad28 T ODM_ReadAndConfig_MP_8195A_TxXtalTrack +1003ad54 T GetDeltaSwingTable_8195A +1003ad84 T GetDeltaSwingXtalTable_8195A +1003ad94 T ODM_TxXtalTrackSetXtal_8195A +1003adb4 T Hal_MPT_CCKTxPowerAdjust +1003ae84 T ODM_TxPwrTrackSetPwr_8195A +1003af94 T ConfigureTxpowerTrack_8195A +1003afe0 T phy_PathA_IQK_8195A +1003b194 T phy_PathA_RxIQK8195A +1003b528 T _PHY_PathAFillIQKMatrix8195A +1003b6be T _PHY_PathBFillIQKMatrix8195A +1003b83a T _PHY_SaveADDARegisters8195A +1003b86e T _PHY_SaveMACRegisters8195A +1003b89c T _PHY_ReloadADDARegisters8195A +1003b8d0 T _PHY_ReloadMACRegisters8195A +1003b900 T _PHY_PathADDAOn8195A +1003b93c T _PHY_MACSettingCalibration8195A +1003b984 T _PHY_PIModeSwitch8195A +1003b9c0 T phy_SimularityCompare_8195A +1003baf4 T phy_IQCalibrate_8195A +1003be6c T phy_LCCalibrate_8195A +1003bedc T PHY_LCCalibrate_8195A +1003bf3c T PHY_IQCalibrate_8195A +1003c1f0 T DoIQK_8195A +1003c20e T ConfigureTxpowerTrack +1003c220 T ODM_TXPowerTrackingCallback_ThermalMeter +1003c62c T ODM_ResetIQKResult +1003c674 T ODM_GetRightChnlPlaceforIQK +1003c6c8 t __AES_UnWRAP_veneer +1003c6d8 t __rt_arc4_crypt_veneer +1003c6e8 t __rom_psk_CalcGTK_veneer +1003c6f8 t __ROM_odm_SetCrystalCap_veneer +1003c708 t __rtw_get_ie_veneer +1003c718 t __rtw_ieee802_11_parse_elems_veneer +1003c728 t __rtw_set_fixed_ie_veneer +1003c738 t __ROM_odm_CfoTrackingFlow_veneer +1003c748 t __SpicWaitBusyDoneRtl8195A_veneer +1003c758 t __HalI2SClrAllIntrRtl8195a_veneer +1003c768 t __rtw_secmicsetkey_veneer +1003c778 t __rtw_set_ie_veneer +1003c788 t __rtw_secmicappend_veneer +1003c798 t __aes_80211_decrypt_veneer +1003c7a8 t __tkip_80211_encrypt_veneer +1003c7b8 t __HalI2SWrite32_veneer +1003c7c8 t __rt_md5_hmac_veneer +1003c7d8 t __CmdDumpWord_veneer +1003c7e8 t __rtw_check_network_type_veneer +1003c7f8 t __ROM_odm_QueryRxPwrPercentage_veneer +1003c808 t __wep_80211_encrypt_veneer +1003c818 t __rtw_get_bit_value_from_ieee_value_veneer +1003c828 t __Strtoul_veneer +1003c838 t __rt_arc4_init_veneer +1003c848 t __rtw_get_wps_ie_veneer +1003c858 t __HalCpuClkConfig_veneer +1003c868 t __ROM_odm_EVMdbToPercentage_veneer +1003c878 t __rt_hmac_sha1_veneer +1003c888 t __aes_80211_encrypt_veneer +1003c898 t __rtw_get_wps_attr_content_veneer +1003c8a8 t __PHY_QueryBBReg_8195A_veneer +1003c8b8 t __tkip_80211_decrypt_veneer +1003c8c8 t __StrUpr_veneer +1003c8d8 t __AES_WRAP_veneer +1003c8e8 t __wep_80211_decrypt_veneer +1003c8f8 t __rtw_get_wpa2_ie_veneer +1003c908 t __CmdWriteWord_veneer +1003c918 t __ROM_odm_GetDefaultCrytaltalCap_veneer +1003c928 t __rom_psk_PasswordHash_veneer +1003c938 t __rtw_get_wpa_ie_veneer +1003c948 t __key_2char2num_veneer +1003c958 t __HalI2SRead32_veneer +1003c968 t __rtw_parse_wpa2_ie_veneer +1003c978 t __HalI2SIntrCtrlRtl8195a_veneer +1003c988 t __rtw_get_rateset_len_veneer +1003c998 t __phy_CalculateBitShift_veneer +1003c9a8 t __PHY_SetBBReg_8195A_veneer +1003c9b8 t __prvStrCmp_veneer +1003c9c8 t __rtw_get_sec_ie_veneer +1003c9d8 t __rtw_seccalctkipmic_veneer +1003c9e8 t __rtw_parse_wpa_ie_veneer +1003c9f8 t __HalDelayUs_veneer +1003ca08 t __ROM_odm_FalseAlarmCounterStatistics_veneer +1003ca18 t __ROM_ODM_CfoTrackingReset_veneer +1003ca28 t ___vsscanf_veneer +1003ca38 t __rtw_secgetmic_veneer +1003ca48 t __rtw_set_supported_rate_veneer +1003ca58 t __rom_psk_CalcPTK_veneer +1003cd88 d __FUNCTION__.15004 +1003d1f8 d bitrate_table +1003d324 d samplerate_table +1003d330 d decoder_table +1003d33c d imdct_s +1003d3cc d sfb_8000_short +1003d3f3 d sfb_32000_short +1003d41c d is_table +1003d438 d rq_table +10045474 d root_table +10045490 d sfb_44100_mixed +100454b8 d is_lsf_table +10045530 d sflen_table +10045550 d sfb_16000_mixed +10045574 d ca +10045594 d sfb_44100_short +100455bb d sfb_44100_long +100455d1 d sfb_48000_mixed +100455f7 d sfb_24000_long +10045610 d scale.7384 +10045658 d sfb_32000_mixed +1004567e d sfb_16000_short +100456a5 d sfb_8000_long +100456bb d sfb_22050_mixed +100456e0 d window_l +10045770 d sfb_48000_long +10045788 d cs +100457a8 d sfb_24000_mixed +100457cc d pretab +100457e2 d sfb_48000_short +10045809 d sfb_22050_short +10045830 d sfb_8000_mixed +10045858 d sfbwidth_table +100458c4 d sfb_24000_short +100458eb d sfb_32000_long +10045901 d sfb_22050_long +10045918 d window_s +10045948 d nsfb_table +10045990 d hufftab24 +10045f98 d hufftab10 +10046130 d hufftab11 +100462d0 d hufftab12 +10046450 d hufftab13 +10046a88 d hufftab3 +10046ac8 d hufftab15 +100470b8 d hufftab16 +10047700 d hufftab6 +10047770 d hufftab7 +10047870 D mad_huff_pair_table +100479f0 d hufftab9 +10047ac8 d hufftab1 +10047ae8 d hufftabA +10047b58 d hufftab2 +10047b98 d hufftabB +10047bd8 D mad_huff_quad_table +10047be0 d hufftab0 +10047be4 d hufftab5 +10047c4c d hufftab8 +10047d54 d crc_table +10047f54 d D +100487d4 D mad_timer_zero +10048ef3 d __func__.19394 +10048f06 d __FUNCTION__.18518 +100493ea d __func__.20174 +10049428 d err_to_errno_table +10049470 D ip_addr_broadcast +10049474 D ip_addr_any +10049488 D memp_sizes +100494a8 D tcp_pcb_lists +100494b8 D tcp_state_str +100494e4 D tcp_backoff +10049559 D tcp_persist_backoff +10049560 D ethbroadcast +10049566 D ethzero +10049595 d __FUNCTION__.9288 +100495a4 d __FUNCTION__.9300 +10049666 d dhcp_option_lease_time_one_day +1004968f d dhcp_option_interface_mtu +10049691 d dhcp_magic_cookie +10049776 d CSWTCH.269 +1004979c D osdep_service +100498c0 d __FUNCTION__.12529 +100498d6 d __FUNCTION__.12381 +100498e9 d __FUNCTION__.12330 +100498fd d __FUNCTION__.12392 +10049992 d __FUNCTION__.12364 +100499b1 d __FUNCTION__.12338 +100499cd d __FUNCTION__.12525 +100499e3 d __FUNCTION__.7295 +10049aec d PinMap_I2S_RX +10049bcc d PinMap_I2S_TX +10049c2c d I2SDefaultSetting +10049c40 d PinMap_I2S_CLK +10049ca0 d __FUNCTION__.8941 +10049cac d PinMap_I2S_WS +10049d5b d __FUNCTION__.8757 +10049d68 d __FUNCTION__.8770 +1004a04d d __FUNCTION__.8619 +1004a068 d __FUNCTION__.8626 +1004a163 d __FUNCTION__.8612 +1004a217 d __func__.8808 +1004a236 d __func__.8818 +1004a254 d __func__.8830 +1004a26e d __func__.8840 +1004a290 d __func__.8835 +1004a659 d __func__.8603 +1004a673 d __func__.8686 +1004a686 d __func__.8825 +1004a69f d __func__.8631 +1004a6d2 d __FUNCTION__.17777 +1004a6f4 D wlancmds +1004a8ec D rtw_cmd_callback +1004ab78 d RTW_ChannelPlan2G +1004abf0 D WPS_OUI +1004abf4 D RSN_TKIP_CIPHER +1004abf8 D MCS_rate_1R +1004ac08 D P2P_OUI +1004ac34 D WMM_INFO_OUI +1004ac3a D RTW_WPA_OUI +1004ac3e D WMM_PARA_OUI +1004ac44 d RTW_ChannelPlanMap +1004ac5c D null_addr +1004ac62 D WMM_OUI +1004ac68 d wlanevents +1004ad28 D zero_bssid +1004ad65 d __FUNCTION__.17681 +1004ad7b D SNAP_ETH_TYPE_APPLETALK_AARP +1004ad7d d __FUNCTION__.17495 +1004ad90 D SNAP_ETH_TYPE_IPX +1004ad92 D rtw_bridge_tunnel_header +1004adb9 D rtw_rfc1042_header +1004add7 d CSWTCH.36 +1004ade3 D ARTHEROS_OUI1 +1004ade6 D ARTHEROS_OUI2 +1004ade9 D REALTEK_OUI +1004adec D RALINK_OUI +1004adef D MARVELL_OUI +1004adf2 D CISCO_OUI +1004adf5 d rtw_basic_rate_cck +1004adf9 D BROADCOM_OUI1 +1004adfc D BROADCOM_OUI2 +1004adff D REALTEK_96B_IE +1004ae05 d rtw_basic_rate_mix +1004ae0c d rtw_basic_rate_ofdm +1004ae0f D AIRGOCAP_OUI +1004ae23 d CSWTCH.66 +1004ae3c d CSWTCH.48 +1004ae7e d CSWTCH.28 +1004ae90 D efuse_map_mask +1004aea0 D flash_map_mask +1004af3c d __func__.21107 +1004b282 d CSWTCH.15 +1004b306 d CSWTCH.17 +1004b375 d CSWTCH.14 +1004b40a d __FUNCTION__.21257 +1004b41c d rtw_private_args +1004b833 d __FUNCTION__.21057 +1004b846 d __FUNCTION__.21294 +1004b857 d __FUNCTION__.21241 +1004b866 d __FUNCTION__.21126 +1004b876 d iw_priv_type_size +1004b954 d __FUNCTION__.17334 +1004b96a d __FUNCTION__.17736 +1004b97a d __FUNCTION__.17760 +1004b98d d __FUNCTION__.17712 +1004b99c d __FUNCTION__.17649 +1004b9aa d __FUNCTION__.17661 +1004bd81 d __FUNCTION__.17827 +1004bd9a d __FUNCTION__.17654 +1004bda5 d __FUNCTION__.17615 +1004bdb4 d __FUNCTION__.17811 +1004bdc6 d __FUNCTION__.17765 +1004bdd4 d __FUNCTION__.17724 +1004bde5 d __FUNCTION__.17637 +1004d186 D CCKFCCTable_Ch14_8195A +1004d196 D CCKFCCTable_8195A +1004d1a8 D OFDMSwingTable_New +1004d254 D CCKCETable_8195A +1004d26a d CSWTCH.39 +1004d27f d __func__.20571 +1004d2a0 D hci_ops +1004d2c5 V Array_MP_8195A_TXPWR_LMT +1004d838 D xHeapRegions +1004d858 D UartLogRamCmdTable +1004d858 D console_commands_main +1004d868 D console_cmd_wifi_api +1004d8d8 D console_commands_at +1004d948 D console_commands +1004d968 d UartLogRamCmdTable_end +1004d96c D __data_start__ +1004d96c D oversampling +1004d970 D SystemCoreClock +1004d974 D error_flag +1004d975 D wlan_st_name +1004d97b D wifi_cfg +1004d982 D wlan_ap_name +1004d988 D wifi_ap_dhcp +1004d998 D wifi_st_dhcp +1004d9a8 D feep_tab +1004d9e8 D wifi_st_cfg +1004da58 D tab_txt_rtw_secyrity +1004da80 D wifi_ap_cfg +1004dae8 D wlan_ap_netifn +1004daec D tab_code_rtw_secyrity +1004db14 d iss.7932 +1004db18 d tcp_port +1004db1a d udp_port +1004db1c D lwip_host_name +1004db3c d dhcp_server_state_machine +1004db3d d dhcp_recorded_xid +1004db44 d uxCriticalNesting +1004db48 d seed.12497 +1004db4c d wakeup_event +1004db50 d wakelock +1004db54 d last_wakelock_state +1004db74 D mlme_sta_tbl +1004dbe4 d PMKID_KDE_TYPE.17744 +1004dbec V nr_xmitbuff +1004dbf0 V nr_xmitframe +1004dbf4 d P802_1H_OUI +1004dbf7 D rtw_adaptivity_mode +1004dbf8 D g_user_ap_sta_num +1004dbfc d rtw_private_handler +1004dc40 V max_local_skb_num +1004dc44 V max_skb_buf_num +1004dc48 D rom_e_rtw_msgp_str_ +1004de24 D ARFB_table +1004de63 D TRYING_NECESSARY_idx +1004de77 D DROPING_NECESSARY +1004de8b D PER_RATE_UP +1004de9f D PER_RATE_DOWN +1004deb4 V Array_MP_8195A_PHY_REG_PG +1004df44 D Array_MP_8195A_AGC_TAB +1004e154 D Array_MP_8195A_PHY_REG +1004e7cc D rtl8195A_card_disable_flow +1004e86c D rtl8195A_card_enable_flow +1004e90c D Array_MP_8195A_MAC_REG +1004ec14 D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_TFBGA96_8195A +1004ec34 D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_TFBGA96_8195A +1004ec54 D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_QFN48_8195A +1004ec72 D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_QFN56_8195A +1004ec90 D gDeltaSwingTableIdx_MP_2GCCKA_N_TxPowerTrack_QFN48_8195A +1004ecae D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_QFN56_8195A +1004eccc D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_TFBGA96_8195A +1004ecec D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_QFN56_8195A +1004ed0a D gDeltaSwingTableIdx_MP_2GA_N_TxPowerTrack_QFN48_8195A +1004ed28 D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_QFN56_8195A +1004ed48 D Array_MP_8195A_RadioA +1004f310 D gDeltaSwingTableXtal_MP_P_TxXtalTrack_8195A +1004f32e D gDeltaSwingTableIdx_MP_2GA_P_TxPowerTrack_TFBGA96_8195A +1004f34e D gDeltaSwingTableIdx_MP_2GCCKA_P_TxPowerTrack_QFN48_8195A +1004f36c D .ram.bss$$Base +1004f36c D __bss_start__ +1004f36c D __data_end__ +1004f36c D __ram_image2_text_end__ +1004f36c d skbdata_list +1004f374 V skb_data_pool +10052774 D HalI2SOpSAL +100527b0 d sampCntAdd +100527b4 d sampCnt +100527b8 D mp3_serv +1005283a D tskreader_enable +1005283c D readBuf +10052840 D tskmad_enable +10052844 d bufUnderrunCt +10052848 d oldRate +1005284c d sampDelCnt +10052850 D pbuf_fifo +10052854 D pi2s +1005285c D I2sTxSema +10052860 D rtw_join_status +10052864 D wifi_mode +10052868 D scan_result_handler_ptr +1005287c d join_user_data +10052880 d event_callback_list +10052a00 D paff_array +10052a78 D lwip_init_done +10052a7c D xnetif +10052af4 D wifi_run_mode +10052af5 D wlan_st_netifn +10052af8 D wifi_autoreconnect +10052b00 D wifi_st_status +10052b04 D web_scan_handler_ptr +10052b10 d s_phostent_addr.7552 +10052b18 d s_hostent.7549 +10052b2c d s_hostent_addr.7551 +10052b30 D h_errno +10052b34 d s_aliases.7550 +10052b38 d select_cb_list +10052b3c d sockets +10052bfc d select_cb_ctr +10052c00 d mbox +10052c04 d tcpip_init_done_arg +10052c08 d tcpip_init_done +10052c0c d allsystems +10052c10 d allrouters +10052c14 d igmp_group_list +10052c18 D current_header +10052c1c d ip_id +10052c20 D current_iphdr_src +10052c24 D current_iphdr_dest +10052c28 D current_netif +10052c2c d str.6810 +10052c3c d reassdatagrams +10052c40 d ip_reass_pbufcount +10052c44 d xid.7832 +10052c48 D dhcp_rx_options_given +10052c54 D dhcp_rx_options_val +10052c7c d dns_seqno +10052c80 d dns_table +100530e0 d dns_servers +100530e8 d dns_payload_buffer +100532ec d dns_pcb +100532f0 d dns_payload +100532f4 d tcpip_tcp_timer_active +100532f8 d next_timeout +100532fc D netif_list +10053300 D netif_default +10053304 d netif_num +10053305 D pbuf_free_ooseq_pending +10053308 d raw_pcbs +1005330c D tcp_active_pcbs_changed +10053310 D tcp_ticks +10053314 d tcp_timer +10053318 D tcp_listen_pcbs +1005331c D tcp_active_pcbs +10053320 d tcp_timer_ctr +10053324 D tcp_tw_pcbs +10053328 D tcp_tmp_pcb +1005332c D tcp_bound_pcbs +10053330 d seqno +10053334 d tcplen +10053338 d ackno +1005333c d flags +1005333d d recv_flags +10053340 d tcphdr +10053344 d recv_data +10053348 d inseg +1005335c D tcp_input_pcb +10053360 D udp_pcbs +10053364 d etharp_cached_entry +10053368 d arp_table +10053430 D lwip_tickless_used +10053434 d s_timeoutlist +10053464 d s_nextthread +10053468 d dhcps_ip_table_semaphore +1005346c d dhcps_send_broadcast_address +10053470 D dhcps_ip4addr_pool_end +10053471 d dhcp_client_ethernet_address +10053484 d dhcps_subnet_broadcast +10053488 d bound_client_ethernet_address +10053498 d dhcps_netif +1005349c d dhcps_local_gateway +100534a0 d ip_table +100534c0 d dhcps_pcb +100534c4 d dhcp_message_total_options_lenth +100534c8 d dhcps_local_address +100534cc d client_request_ip +100534d0 d dhcps_allocated_client_address +100534d4 D dhcps_ip4addr_pool_start +100534d8 d dhcps_local_mask +100534dc d dhcps_network_id +100534e0 d dhcp_message_repository +100534e4 D ext_upper +100534e8 d xFreeBytesRemaining +100534ec d ext_free +100534f0 D ext_lower +100534f4 d pxEnd +100534f8 d xStart +10053500 d xMinimumEverFreeBytesRemaining +10053504 d ulTimerCountsForOneTick +10053508 d ulStoppedTimerCompensation +1005350c d xMaximumPossibleSuppressedTicks +10053510 d xPendingReadyList +10053524 d uxTopReadyPriority +10053528 d xTickCount +1005352c d pxReadyTasksLists +10053608 d pxOverflowDelayedTaskList +1005360c d uxDeletedTasksWaitingCleanUp +10053610 d xTasksWaitingTermination +10053624 d pxDelayedTaskList +10053628 d xYieldPending +1005362c d xSchedulerRunning +10053630 d ulTaskSwitchedInTime +10053634 D pxCurrentTCB +10053638 d uxPendedTicks +1005363c d xSuspendedTaskList +10053650 d uxCurrentNumberOfTasks +10053654 d xDelayedTaskList1 +10053668 d xDelayedTaskList2 +1005367c d uxTaskNumber +10053680 d xIdleTaskHandle +10053684 d xNextTaskUnblockTime +10053688 d uxSchedulerSuspended +1005368c d xNumOfOverflows +10053690 d pxCurrentTimerList +10053694 d xActiveTimerList1 +100536a8 d xActiveTimerList2 +100536bc d xLastTime.5416 +100536c0 d xTimerQueue +100536c4 d pxOverflowTimerList +100536c8 d xTimerTaskHandle +100536cc d device_mutex +100536d8 d mutex_init +100536dc d uxSavedInterruptStatus +100536e0 D min_free_heap_size +100536e4 d g_heap_inited +100536e8 d tcm_lock +100536ec D g_tcm_heap +100536f0 D flashobj +100536fc D fspic_isinit +10053700 D WDGAdapter +1005373c d last_acquire_wakelock_time +100537bc D post_sleep_callback +1005383c D pre_sleep_callback +100538bc D reserve_pll +100538c0 d sys_sleep_time +100538c4 d hold_wakelock_time +10053944 D missing_tick +10053948 D Timer2To7HandlerData +10053960 D SYSAdapte +10053964 D PwrAdapter +10053bf0 D libc_has_init +10053bf1 D print_off +10053bf4 d rheap_end +10053bf8 D auto_reconnect_running +10053bfc D p_wlan_autoreconnect_hdl +10053c00 D mac_monitor_callback +10053c04 D mf_list_head +10053c08 d pscan_retry_cnt.21430 +10053c0c D promisc_callback_all +10053c10 D promisc_sema +10053c14 D promisc_callback +10053c18 D psk_essid +10053c60 D psk_passphrase +10053ce2 D psk_passphrase64 +10053d23 D wpa_global_PSK +10053d73 d RFC1042_OUI +10053d78 d rx_ring_pool +10055e58 d stop_report_count.20629 +10055e59 D bCheckStateTIMER +10055e5c d WifiMcuCmdBitMap.20974 +10055e60 D p_wlan_init_done_callback +10055e64 D rtw_power_percentage_idx +10055e68 D p_wlan_uart_adapter_callback +10055e6c D rtw_adaptivity_en +10055e70 D p_wlan_mgmt_filter +10055e74 D rtw_initmac +10055e78 D rtw_adaptivity_th_l2h_ini +10055e7c d drvpriv +10055e90 D skbbuf_used_num +10055e94 V skb_pool +1005604c D skbdata_used_num +10056050 d wrapper_skbbuf_list +10056058 D max_skbdata_used_num +1005605c D max_skbbuf_used_num +10056060 d skb_fail_count +10056064 D timer_table +1005606c D rltk_wlan_info +1005609c d timer_used_num +100560a0 D max_timer_used_num +100560a4 D Noisy_State +100560a8 D pExportWlanIrqSemaphore +100560ac D gDeltaSwingTableXtal_MP_N_TxXtalTrack_8195A +100560ca D .ram.bss$$Limit +100560ca D __bss_end__ +100560d0 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/atcmd_user.c b/project/src/user/atcmd_user.c index 3f98bfa..36ec730 100644 --- a/project/src/user/atcmd_user.c +++ b/project/src/user/atcmd_user.c @@ -328,12 +328,12 @@ LOCAL void fATSP(int argc, char *argv[]) switch (argv[1][0]) { case 'a': // acquire { - pmu_acquire_wakelock(atoi(argv[2])); + acquire_wakelock(atoi(argv[2])); break; } case 'r': // release { - pmu_release_wakelock(atoi(argv[2])); + release_wakelock(atoi(argv[2])); break; } }; diff --git a/project/src/user/wifi_console.c b/project/src/user/wifi_console.c index d789733..8a77947 100644 --- a/project/src/user/wifi_console.c +++ b/project/src/user/wifi_console.c @@ -226,18 +226,25 @@ LOCAL void fATSF(int argc, char *argv[]) } LOCAL void fATWP(int argc, char *argv[]) { + int x = 0; if(argc > 1) { - pmu_release_wakelock(0xffff); - wifi_set_power_mode(1, 1); - wifi_set_lps_dtim(atoi(argv[1])); - } - else { - unsigned char x; - if(wifi_get_lps_dtim(&x) >= 0) { - printf("DTIM: %d\n", x); + x = atoi(argv[1]); + if(x == 0) { + acquire_wakelock(~WAKELOCK_WLAN); + release_wakelock(0xffff); + _wext_enable_powersave(0, 0, 0); + _wext_set_lps_dtim(0, 1); + } else { + release_wakelock(~WAKELOCK_WLAN); + _wext_enable_powersave(0, 1, 1); + _wext_set_lps_dtim(0, x); } } + else { + printf("DTIM: %d\n", _wext_get_lps_dtim(0)); + } } + /* -------- WiFi Scan ------------------------------- */ LOCAL void scan_result_handler(internal_scan_handler_t* ap_scan_result) { @@ -318,7 +325,7 @@ MON_RAM_TAB_SECTION COMMAND_TABLE console_cmd_wifi_api[] = { {"ATWT", 1, fATWT, "=: WiFi tx power: 0 - 100%, 1 - 75%, 2 - 50%, 3 - 25%, 4 - 12.5%"}, {"ATSF", 0, fATSF, ": Test TSF value"}, #endif - {"ATWP", 0, fATWP, ": WiFi power"}, +// {"ATWP", 0, fATWP, "=[dtim]: 0 - WiFi ipc/lpc off, 1..10 - on + dtim"}, {"ATSN", 0, fATSN, ": Scan networks"} };