From 817486c718a0db341d9f4944ce36ad2916e8845a Mon Sep 17 00:00:00 2001 From: "Jipeng.tang" Date: Wed, 19 Nov 2025 11:12:57 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E5=8A=A0=E9=95=BF=E5=BC=80MOS=E7=9A=84?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E4=BB=A5=E5=8F=8A=E9=97=B4=E9=9A=94=E6=97=B6?= =?UTF-8?q?=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 7 +- .../ac_project/code/inc/config.h | 2 +- .../ac_project/code/src/comp_dac.c | 9 + .../ac_project/code/src/customized.c | 42 +- .../project/Objects/CPS8860_anker_9196.axf | Bin 424432 -> 426512 bytes .../Objects/CPS8860_anker_9196.build_log.htm | 36 +- .../project/Objects/CPS8860_anker_9196.htm | 374 +++++++++--------- .../project/Objects/cps8860_Target 1.dep | 46 +-- .../common/app/src/main.c | 8 + .../protocol/pd_protocol/src/pd_protocol.c | 17 + 10 files changed, 307 insertions(+), 234 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 3ee9b27..c0900b8 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -15,6 +15,11 @@ "atomic": "c", "ios": "c", "locale": "c", - "type_traits": "c" + "type_traits": "c", + "bitset": "c", + "chrono": "c", + "algorithm": "c", + "__bit_reference": "c", + "unordered_map": "c" } } \ No newline at end of file diff --git a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/inc/config.h b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/inc/config.h index ec0696d..14870ba 100644 --- a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/inc/config.h +++ b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/inc/config.h @@ -88,7 +88,7 @@ extern uint16_t system_1s_cnt; /****************project inforamtion MTP ADDR:0x100000C0*******************/ #define SOFT_WARE_VERISION_H 0x01 -#define SOFT_WARE_VERISION_L 0x05 +#define SOFT_WARE_VERISION_L 0x06 #define CUSTOM_ID 0xA1 #define PROJECT_ID 0x60 /**********************���칦�ܺ궨��************************************/ diff --git a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/comp_dac.c b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/comp_dac.c index 304cf3f..df6302f 100644 --- a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/comp_dac.c +++ b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/comp_dac.c @@ -99,6 +99,11 @@ void comp_dac_open_vbus(uint8_t port) gate3_control(true); break; } + + log_info("comp_dac_open_vbus:%d %d %d\n", + REG_ANALOG_GATE1->bf.driver_en, + REG_ANALOG_GATE2->bf.driver_en, + REG_ANALOG_GATE3->bf.driver_en); } /* * @brief comp_cccv_step_speed_set @@ -197,6 +202,8 @@ void comp_dac_cc_step_speed_set(uint8_t port, uint8_t speed) extern uint16_t adc_vin_start[TYPEC_PORT_MAX] ; static void comp_dac_cv_2dcdc_fb(uint8_t port, uint16_t val) { + //log_info("port:%d set_vol:%d\n", port, val); + /*CV_DAC = ((target - VREF)/RFBUP-VREF/RDOWN)*1000000/gm_FBCV + VOFFSET_CVFB1 */ int32_t temp[TYPEC_PORT_MAX + 1] = {0}; uint16_t fb_gm_cv[TYPEC_PORT_MAX] = {FB_GMCV1_150, FB_GMCV2_150 }; // {180 * 16, 180 * 16}; @@ -600,6 +607,7 @@ static void comp_dac_mode_init(void) REG_ANALOG_FB1_FBCV->word = 0x01;/*enable fb1_fbcv_en*/ // /***********FB1_CC LOOP************/ drv_dac_ctrl_cc0_cfg_word(VIN1_CC0_CONFIG_WORD);/*set CC_DAC0 = 3A*/ + //comp_dac_cc_2dcdc_fb(TYPEC_PORT0, CURRENT_5A, CC0_LOOP_OFFSET); REG_ANALOG_CS1->word = 0xA3;/*enable current-sense */ REG_ANALOG_FB1->word = 0x115;//0X117;/*enable fb1_fbcomp*/ REG_ANALOG_FB1_FB->word = 0x01;/*enable fppath1_en*/ @@ -612,6 +620,7 @@ static void comp_dac_mode_init(void) REG_ANALOG_FB2_FBCV->word = 0x01;/*enable fb2_fbcv_en*/ /***********FB2_CC LOOP************/ drv_dac_ctrl_cc1_cfg_word(VIN2_CC1_CONFIG_WORD);/*set CC_DAC0 = 3A*/ + //comp_dac_cc_2dcdc_fb(TYPEC_PORT1, CURRENT_5A, CC1_LOOP_OFFSET); REG_ANALOG_CS2->word = 0xA3;/*enable current-sense */ REG_ANALOG_FB2->word = 0x115;//0X117;/*enable fb1_fbcomp*/ REG_ANALOG_FB2_FB->word = 0x01;/*enable fppath1_en*/ diff --git a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/customized.c b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/customized.c index 1d735a3..345d666 100644 --- a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/customized.c +++ b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/customized.c @@ -697,6 +697,19 @@ void insertion_equipment_judgment(void) } +void user_delay_ms(uint32_t cnt) +{ + // 延迟期间,也要让协议正常响应 + for(size_t i = 0; i < cnt; i++) + { + drv_delay_ms(1); + pd_protocol_run(TYPEC_PORT0, &g_app_protocol_param[TYPEC_PORT0].pd_param); + pd_protocol_run(TYPEC_PORT1, &g_app_protocol_param[TYPEC_PORT1].pd_param); + dpdn_protocol_run(TYPEC_PORT0, &g_app_protocol_param[TYPEC_PORT0].dpdn_param); + dpdn_protocol_run(TYPEC_PORT1, &g_app_protocol_param[TYPEC_PORT1].dpdn_param); + } +} + void mos_switch_control(void) { if(!user_app.need_switch_mos) @@ -717,7 +730,8 @@ void mos_switch_control(void) user_app.need_switch_mos = false; log_info("%s %d\n", __func__, __LINE__); gate3_control(true); - drv_delay_ms(8); + // drv_delay_ms(8); + user_delay_ms(18); REG_ANALOG_GATE2->bf.driver_en = 0; REG_ANALOG_GATE2->bf.cp_en = 0; } @@ -731,10 +745,12 @@ void mos_switch_control(void) if(comp_adc_get_vin12(TYPEC_PORT0) * comp_adc_get_cur12(TYPEC_PORT0) <= 40000000) { user_app.need_switch_mos = false; + log_info("mos_switch open gate2\n"); REG_ANALOG_GATE2->bf.driver_en = 1; REG_ANALOG_GATE2->bf.cp_en = 1; - drv_delay_ms(8); + // drv_delay_ms(18); // 需要等gate完全开启,8ms是否够?----> 不够,要长一点 + user_delay_ms(18); gate3_control(false); } @@ -859,6 +875,10 @@ void adapter_state_check(void) return; } + log_info("adapter_state:%d usba:%d\n", + user_app.adapter_state, + usba_state); + #if SWITCH_LINE_OFF_PROTECTION // log_info("close_prote\n"); // 每次切换gate2和gate3的时候, 关闭2秒保护, 2秒后且在ready状态再打开 @@ -1043,7 +1063,8 @@ void adapter_state_check(void) { REG_ANALOG_GATE2->bf.driver_en = 1; REG_ANALOG_GATE2->bf.cp_en = 1; - drv_delay_ms(8); + // drv_delay_ms(8); // 8ms不够开启gate2 + user_delay_ms(18); gate3_control(false); } } @@ -1052,7 +1073,8 @@ void adapter_state_check(void) // 1. 确保gate3是关闭的 REG_ANALOG_GATE2->bf.driver_en = 1; REG_ANALOG_GATE2->bf.cp_en = 1; - drv_delay_ms(8); + // drv_delay_ms(8); + user_delay_ms(18); gate3_control(false); } @@ -1146,7 +1168,8 @@ void adapter_state_check(void) // 先关再开, 防止功率并联反灌 REG_ANALOG_GATE2->bf.driver_en = 1; REG_ANALOG_GATE2->bf.cp_en = 1; - drv_delay_ms(8); + // drv_delay_ms(8); + user_delay_ms(18); gate3_control(false); } } @@ -1154,7 +1177,8 @@ void adapter_state_check(void) { REG_ANALOG_GATE2->bf.driver_en = 1; REG_ANALOG_GATE2->bf.cp_en = 1; - drv_delay_ms(8); + // drv_delay_ms(8); + user_delay_ms(18); gate3_control(false); } @@ -1238,11 +1262,9 @@ void adapter_state_check(void) } } - log_info("adapter_state:%d port0:%d port1:%d usba:%d\n", - user_app.adapter_state, + log_info("need_send_cap_flag[0]:%d [1]:%d\n", need_send_cap_flag[TYPEC_PORT0], - need_send_cap_flag[TYPEC_PORT1], - usba_state); + need_send_cap_flag[TYPEC_PORT1]); user_app.last_adapter_state = user_app.adapter_state; } diff --git a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.axf b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.axf index 325454ab320848b8accf9b307318dac19edf8ba0..fd500d4e07411915340c55c97f6eb294250f992e 100644 GIT binary patch delta 34070 zcma*w30zdw|3ChF&Ye55>aYodz<{iZ3Mh)Hi3~U$v#?8nqVUT*Za;~=H&PDe>{HEV`84~^S zSouejl?%gHHno;HtjbEqs@QKES?jzM*XuS@GSi)2Y?yN*yTWH>?akp&FzrC5Vms&D zp}xSLbat>LvjNVrmO}sG)ry@}{(g_ydF4Ro8Ox8>np$4j{eklXZF8enb34rBIjQMc zsmjZ2rLVKtI)bbBod2+9IbttO%WGJcTV}a5rB_(l=rT1~t(ZAWP4cY>xil$Hv*(sQ z)yrZJEAzE`l{Lvx>|U3iMAWOyVz-z3qLkT{^-5(#-OQORX+{N4;uQ^&)QUlu#>`QY zrd5o}onK;$4d_09%>0sM{67$_3#}b{X-KZMtiv27nK|b-Xvvm4cQuG-vz%ue#AocR zuqJJm>M3n_a`y?QeCz^Qw8_TKXsuk3|)7iX<^GW*$?=yRPlcQ*3P z;62ivIlfu!wsW!XsE{$~ip{oPN%G3!6|Az;1KUwn8R4w)O=LTqF@7Q5YpXltDC_F( zZgqC?OAK9mZ{GX1qw8Ksk2z*J=9k<3V{cnd-Q87t=lW@kc{!i+?;domCMo>FbsuVI z<@41Kjw;G#=Xw8E*jvu&4YS$Ay@wl)W$chM+7`-oI@{YiuvL4f*j{7oV`o5MlbAzw z`xN$$SO4)jc_S3|;O_f%zVGCX$O>bsS9oOJgS+oKdj&?b4bBOH|7I!9jzR62ZSS<8 zR~YN&Y!ni~+U{);@)u+6oQa_|d|rEJY}hk=Nqgt3VKK@eD_uL^#jgT;T_pn=jrg-to`1+h&0aPoU
hBiR&8t?jR&vE&y+5h<+gOO>Dw1X< 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 DH2zP51;n(>?qHv84~D%NA(1+O@0=d&uiy^YEOy z?>*Q&+9rQUI}|^Br@}lsrU9a1^Jtjd7N*CG z%nE5IM_&ZUcaNYu%B$fd7&pk2L9jj3wN8_1ou;o7;}06ZmB}bKUlzqtRk!nRfvURe zaIiGzu-R2oCC9+#7}AWwzO>kcZNQ9X}-H%5x7$ysH(HzOGh=5Q{Y<3!(jTdAH4$6;90OH`EA%+@(Gyk{h9eyaDZtX zpwsX@^pBLVXV#6fXxU@mlFO3&ysuxo+~*zN>S!ZehgkDc?P^x z@*D69$^V2`k?HynHQ)vUYovrm(TcKOawfb<@-TRd1A^9r22X>fU z9AH-+*2S+>sKd!8MX!fomoI6UKvu^}}C> zHOYavZBAbzqZdtJTi9Rn7&yQo1(qWaBKZK^MDhDyBfaF$iyyW3c%>RxQx+=CH*@0wB0`^s^r=7uY1Icl46Ul8Ja+inP z6YekNkAeqFo(>ndZER3iATU-+cmsY?@?m&_WcsGUbjjD?HInbc>m>&#D#{y@)8HL0 zyEdr#2$YB%gFufTGHhO+qaM^!Fwdp(L^xY=Pq??_C*cr>kEg<=2;duS#)~T4 z0Vhg619z1C2b?WAs3k@qxea_v@*ucY@?_W%>FXKcA_NL0Z-*C4{tDhJ8RuZi3CW?Y zFha?lV9n1{{|MOi9F%LJf2I}Yf0~r=3KDusJ_OTsGI~*uoQI#3d=IAUWM+AAYb>Oa zTf@xXQ$7&(l{~FA=6^>iuo?;3lJ~&FC4UKzmHZn#L$WOu3!&sz@C%aj;Wd(r90=@? z0?)&0Lr;s}fICV)1b3JGC458jZ*Yy|kTmSI8+q#M4F4$EF&crpQeZy3!{!;_P57wf zQ*d;EryMt_ltRf7=~!kYcZFY*JRZL2v7>Gw0wV%F6}}Fil>8}tNAiDQ&3#3KmI+H6 ztVWWX!SRxNz!{Rq!PDxE6DkJ+=j#Jib+5x|xWYg$8o_?JqvR8C0nXpe^8dh#B=ffD zG52XI4c`oo##y47-vdrIO(#^N5y&tDumjFEjpKt&@L#4;eiZh_S)f_rH}G)DH{qWo z2W4Q>j4gRm>2JIB35zcYU z@<=#Oa!*I z{ik^}27&)d33FgNiJ}*kuZ3f9&SQEv+(Pod;9|-Dfd@x>^6OxSTvkur$!8CrO0r3cQZRSbHf(s=- z3D1(e684Yt8p7MEcq~zD( zpCo?rE4$0A3xDbQ=gIV4aJ}h~X1A$s8@H`xX?Ki!sOJC2z zhD7ow@D9oUg{vehU9sK3=9pf%URf6ae`Xr>#leZ#S{miBqXPnq%m4<+hfhm>9KK;1 z0~EnElBd8;uyr#ld={P}c^TzPUJozAw!oe5sCxr}J)S__PBfrS zB=3itU`;UV`y8Gt`8)WsY1;q)g1`+k04v>b@c;{wSwR3iJj>&7c#`Bc@GR44U>5wb zY1G#jJ}Y@Ve9LWP|Nk5U-snbp(L%Qlj*)yA&Nht^RKSI%X#(K6k}W;Z<&vAgdrV{a zPViZmUHkuG2vnH~sIV0FMz5F+S^%d>eg)2xyd9n-`6#?bas_-)@=x$p!w%OJ*CB92 zN(juxwjNVuHXsR3lbi()mplxfD|sTkMe+jpgyePbEi%S$bom|xLeL0$(JVL)caVGu zE|h#5o-f%e2b*fik??1d@e{bp3Ca2JEttk{jBpGB0jSjUY`8PtreDD4;gVm&=gX3J z;d5Ub3^p*lA;TqFu&?R{3aL)i7Ye?SX9^2qik|SV; zXKU+-)97o{Vk)HZa!XcyG zM)^f}lW7GvRDVO@q9;(NVx3Md@Kg{APnVnmuaVpdjvV93e;ghqc>?^I4TEn z!rw~n535r>`DJid$&2Ae(>&$xz+EJtfbqMauKh1H;0gjeq=XvygycYMroWfm8lF|| z9s#DXJA7I45ZL^!c`a+30?A+@JY!( zz-)$R`2WJaCD*`nB{#r+=A9YR{y!9fqf$Z)95T~WVSBi<ZTwlBd9% zOruBU!ynJY{HGUn(NYA?N(pP=8rA7E-iI5^at{w5g99X=g1bw;0nd`GV$ZtN zAqBz_I3YO=J})^Jz9D%K?Ej3X0VQyO-a;UHjwfM1yjSuG z_^9Mtur}9|A2JZ9*OHUq7Ls#d`iBqbMLk|N5c7Y!89*1#LxMx{N_eT{_u!9Bqk?1b zdC3(pd)708AK`e(Rd9x6Z4l=FU@6cT2OFm)w}P*lMgz0pTGMF20NCGLhEP5l4l#}L zDexW13t-=Q?gk?N6$b)uN`ZawNy%Tr=Otfd%ztR zc=8>?5$G!gCc}l2m&2u!x4?@fABJy8{x_^W=N;DAM*25o~on5M@g_aZQ@K2TNnAv{;| zN%*Yf%kWQ<@4~kv`wzt(70Ge1`n;zBZQyLvwEypoz$`NWKM8*E7WIG(W%rnAF zxTWM?@O+oC|HnLj0)fw@gavSoB;xSG5v7K(eNzEY48fkz2MHP%>6$aP>4V;1n5N#Du+Ljya>K1 zS-{0Fd-C6fXGuN`zb5$`xPjA?Uj={Vl=lC=IH^cm?MaA-t0X@PN3QXd7r>(=&xWT< zUJLhJ>&f2-HxeFy1K$wlwi#1=69NBqo&<)on8A{RU~RppJPCG4&Vq&H{_q~tSjb1g z=S^dLli=l!4Xz3U5SW3$Imt_5`$kXs7Pv_A9@uY_r~ETGSn_wUUGlGRzGOO0a~zif zUZXIA*W4AN#Ub!Y(`aA7%$_g<^ax=3Gh+(!?=O)T=)n~NmTyAD9rzl zq=ZdK_*n98_#beXdw>J*Mc5Cf3eUkeB>x59k=$f7jtB64Rx|$**kAJC(GFaLF#~v9 zcsdf|O=ASh;55nG;Lehd!+DZ_ga=Fh9WIpIumBgKBquu%m?Z^zz>6f0fLBSL4R4aX z7RG~<^;5VH-Y@wJ_+!bHFrI6y&v!(P!BQy&9)a;(Vtv9uxJvRw7>^a!mp>2VvB7%3 z3gfB3dVc`pslR$xz<8?9v_rXu0G`@21Ik};w&bWnT*Hyv86GA1ad^DsnecSUFT?XC zAAncX8($Cj3W4?Y0jB&0zbRRJ0_(BlSQuX(sBiG2@CnI<@L9h5PR&W7DE)RIf&59JU zcYzk^$a$z>_(Lv!$mI|DxrhAnL*Dw3Klr=Tl~4a3P|iH$OAon9%zqA@Cr_MTF?QbQ zjHd1x816P`%+M5gF3M>R)BMSV@w}xi-R(U1G;A&~BjEFrpM!mMB=jK>{~f3A#1xCQPYmG6Y{_+owjA$T}!ao6`bJPLly?Qh{daJbw5DR$s+ z1_9cz(+GY?LKWQ5ZEYM5=p;9V{WZn*yz0tNg$H|k@*joA!|mL|_lI}DI5aove*!-3 zKZQ%-H24|!0B^$d@Aa8IbQs2?ZnhkE`58C_-#E;4`zLrXJkjkx zDIYc`&1FJlhn90l-2-(l{A-{2}Z!EIiGWdL97&2hUiyar#~H5=Fx zUWG62KI<;eg5&X3P%pPf!Y$$EZcm3t!LA9ycJ~DY_8@>i#uRPChe&(_H^uE^aBtYp z?Qh`WusOm?_y%mQ1?qV0Y48QyD0hAYoDDzjc3XG{Z1ezacLyPG8i7~c2~We*LlxW8 zZodrQfjhaq2hPAZI2*ft0`3KytL1fg6ztU8EW8vp7t(9+XYgn` z?xzNDTw}#^R<^e83Yx-&_zI=j;#Tl;u(=F$hO_ab`-9y1z2P@ubG;q`e+HXt4Sw)i zIS*I6^Iw8**zq&)blgu3SdGAx7|&X;4UUiXbm3t*4R$RwOgRoOg3Z{FLRf_17C%4-tB6@#|YFSU@o;6;TZhlkU0zP!SoM|noDs2 zE`#rZ%iO~!!Y%QGKds!(gXteAHD}ov_ylbB&T!QDqaqj$k@D|wI);GYyPz#$4h=BXI@@yB<;EOO8C1auQQHJ%e zur>a%I(MKS5?ZEuX31!H6x_#MJ_Y_5-r)8;7>`BO@84g9Pr$9*<*&is>7E|m0h_-* zLnnS8m0|s(pG>C%1`1Rl!TjwN@=vh&+biTdu=(37WUncTV*d6DIUJ@R2BFoK+!ijA z+zXxw;}p**FLF?zjccKx0iK3e!(-eDOJVvQ4zt2HVEWgPOdo>jpMf?j{EFPpQ{PqC z4x9B=!%OfbZrX6s_#EC-@yiPcG;#-Q@NF0eI7UJgd>|7ez{`dK(qZ~Xe@*v<@v_tZ z=;FZ;7=`u5Khi*`_tS8y$Bw$i2xNHzb?f0dlHY?5Nd5?}mi!gmiFrnF6`m>iF1$~& z?=*$J`0s8IuDgaKfb)a;7AC`X$&bLPl6%2fk_%w`OiKOmQ{3hl5B}*`*FuUP@PRi= zBYo={?dCB3?O(M3E>`}Ee_HNfrFNlFefj>Etl1W(=wDf^pR1OPC)&3ad)it5sTX-$ zC-_*}WE7{mygu0am&MZNiL|lg&-H?EYqiCa*1nB9KgMpoZn3l*H`d7iT>moOdQKJ2 zck#RVJ6cYmB9B(YUsvY69wbtA#a5RmcpqclD)UF>dWJ*}s7waVE%mT;Ds+`UvW8U#wS7 zu>Pv4(R(Ix=k&vmF4T#qXIf*eS^ZR{=q2$g zK5JX?#W?)fB&FE>EJ{CB{7T`nMw;@Y2$^MV*0Nt4O{pltwMESJnOIn9`NyV3nTa=T qp3Ikhou+&(iZKYk?I)JaLOX2!;(h!L`}$d{veC@LUs}cJ_5T6+N@kA$ delta 32708 zcma*w34BafA2;xO&Ye552$M|`vP|}bgoGd|sn{YRh?bUGB8`yLl1QQ`I<&MDMTZ_* zYfB$%OVLY9(Uqc&w%Y1L(TA26Oo+pIjN+;m}bzu@vw@q7aq$omuJjW5}AEYlVnz5f2T<-E3lt#65DY{wK-v1 zwJBkH^}cCJLTq(v-}-3ZY1Ww`S;1L{qC>KL%Y(D5RY`fCadG9|Q7lry^tQLR^JwSW z@=p4+CJDaPN|bLl^@88-GLJrtU9#(*nV$OJye1XzSbM!^BKy)F@AWH7u{Zbb$oHk% zv%Ry}UHgmPBLlxpRVhxxM@z$Bc7J*hTCHItfm@c&Fs(n^z^@WC!yupU%jZIH80fN zKd2}H_A@@OvzGQL&3dzn-5)e7V(hRz!V<*x*gIP?nAknpvW~IO?Y@2?k%t@hC~S+z zpwjHz;R?HddtZb1mfYc4!A$jN8J2th_D*|0zX-P8KHl#u*52O5zcXvGyVC!4#&Yb< z16#3&cDD)qo3XC;_@F!dW+!`8@H6~gC;QsqYpjKRVaP=Gjr~qY7q-{lv1PZgf8SLS zwCc$06ih;&hE_Xk4vq=E^lp=+AHS*lHOaoLWfxXzKiP5y%iNvYDwVU=_8DP4J)7N4 z&9-JMHPh^$hlK^OyVmKmo7_CDth|4l-KGCcckOjy6|CAmK0L(p*d3}}sqwZi4j&S< z{?5g)hSa;M3EB5=uSbf9V`#(fJK>(JNzy&bL1f(RX$@qmwZYdO85wBv$x~t#>;2mo z?lJs-?w)nNlJMW^*x5>r-q3J+cmu5fUUdxrH>p!V#==c|0Ks3z&)pEgXw$t5Z~G>-*+x`h2=RyJtks3q34n73=1z^(B@_kDlvCuPN|COi~DeV5_B_1ssQf{T}>v8o5D$J1Q#{D{_{`R(p z4J8)qoSqv{QIVA6noY_KC0NZr?X-ivrbV`qVjw4zASQf@SO7UK8kYI z2i5O2p?|XOB<37O`&qS;lviyg*Eb|Oq7`?XpHJMWJ4o$$&E=TC zo$hOIh|O#<@V+V6nr({m3@b>fznz1XQBf|X+FwqH<7ZRt&%`alhNDS*f9}!2{%m4v zcE>&^exAou^_1;edwa8lsOHxktFsAPKgC*qd$7G*LPlU}yjrEGvT8;(AF;`14$M<2mobRtFH@KplKs&Wu zb6?Be?mZU-FR*zevg-S{Ke9KpDP=?KrAb}lTm9|q<92_SAH3FHu}tguze@aMKc3Vl zM5(t`NCHFl@AD+uI~3$DX@){~#?{2Qbd^y*}9{#kblshn3_i zxgKmZ&6oPyC+)M6yD(wjpB&xc&ATaxymi;PW%!|iKI?C9blC$Qoa*CDeo|kM*z;8BDQW_73f$x#g~XXgez# zZ=c?-L*S5xC*Oy)frtrd%F*Q)q#r92loq2H97&U&^%Itvf8_j*t7yzNhod$U#YpWnLS_as+kl^>)@b z<9S8tHcL@_k+$DHC_OrCUX)^)jQ8T<&hdFpRFv9CxL8p#?aR{pMcs;VmQ9`F%#nw^ z`XVe6UBMcYVws=5`+oX+9&D$5Z};al3tIM)J#s*+-9vk%FyB06YSK(mg7J9*?;QK8 zo~`)CHuf)jwqR-YlRf)rH&K5}`-YqVdvdQJ?H!k#i%BNt=lUB+ee$&)=TXJB4kw7xr$&lI*j3N3c-)8vGw%KZrx9 zwiD>JaMab^|Jk|xWu`R6a1v9L!-$(P9Dp}9bUBQ6H|C@GS>(Hh>5KXw@y*EZ=ZvFP zcRfduUmBl%Nw#OmPQ)I}OLeE%cV!1@GcixgX}Ut{Fx2*cj4Qy-`UEB3#Bw0j+&Cpy z5SORqfW3R4AX`Gh|893RazEG>ntl`V%e6O7|NodyYWq;slkI5hEJwf6{Gxgepq`viEe&7GqXh>=QAACnPJD z$Lx~_VDZ3$n_`db5rjjLBLgDXKKsQ1tysCe9>a6(VFOzQ=3`-|(nbT0qHLZ$wSOyZ zX|!T_naXN&k!PoUabByyatzUIHfDQQEQ}uZW&QkFFZ;=X16iIuEWefSdPJ?rMfK9e zeqztfZ^dgO?PK#-n#=1HW%J_Qra?AUJvvLVrw;Ppy=w6Ic+b3N6~+JGoCSz(KWNt7 z$unQ_WKDPPn-{CHUb}yqpX$wPX7Bc0{`^!v<{AA}Z#G=z_h#yUHDftmeDm{qW(dpS ze9v?Gi>=rq4}M~<9vH)XIUhP(Pa4j~dFxA3*@R%edXCO)teHvo9>Auk9!G78()wc) z6Qf^b0s8tE*rQDU;}Nz_Woi17$JnL}UN>Fuw3OZPWm$U48?4@o&zz>W+re^FX40qa zWUVv#iADOx>nxQa@ZAmezKQMAm;J>uIE&Gb-(o+Q_}~~l^$k|xsRx;O3Nt4yQ55T9 zy}!l_eb_bq9Y4N+vGsaJ0FUFWt3J8~&-7wv^|e;Mw+a7bo<1ajzi46>{ag~S(3qm< zx97)9{IH)mRlp1NnVorm#wO@rr1O4^A81L@C-lh=@k5+>=&70fQ^r?EJEMqGYV) ztRz6#g0*1LF^}J8%k{MWJeu+HGJV(p-hyF@%Lno(#&eRKjk}f4y)mLR=jcZ~!c8=# zg^%(sjMeCC2J^Oz=ckLv?mS)B9^+=lvof4{$34#TDbK#4Jc6-w{fA-nIa{xLf?9P{ zSVr(y*yrNS5qu2Wt9y*(?HEtUr?T6`rBVEM%+2ZozKrqU5yBUl#OH;4F?(AKd6L`M zDslQrjCzYO6>+P$FoxgY`^uc-Z9SI9F}`ssX@vgvI9|m(tS`#_)2)<0ZDvjN_sV!Y zV?*_y$}u%vVCUr#H#Xw@-YP!#g*j+B~uHgJUwQj!kqc^J{9~4 zmhcHylp4Ipc%snPoXytEC{Q)Mytt^Ks&rzp!kjtuW0gFKrP6wJ81I{u{VZoSCU^GI zNtMMFRRv>;pPVwO2n8K^^|&d#8&lshnZ+54W)<_F=F`|aI-AM^Serbo-!I|4(HpgW z$Jy^H)mC0nR#jG1Hi4R5T%|BaE! z*P!h=p6hi2O}&XX`&|F}IV=Oow51AYt5{-u(f%JeyT#3w#goPqOe&sQP*hl6_+;sX z(yHkSbL7)o%tcd!X=_)4_cfHs-OYn9GsO|oN6zD)GZP)Ki<(N_M&uW%7GZmdf9*LJ zd(*9W*NBJbW5ONON6qJ*nP)k+t~c>sB-SqAp=Kw=;RQTD<{5-v#hc-%WvtiFOc@)9 z|CH?g>V=C;`5GxdCFyA|@i6AO58HAR0{g@h3wea*p#JPaG`IC(jQ1%dkH)sX+e(!k zV&=-C@`A##MFpi}iYHZ-j>YsjGKudOq5JP6e~Iq7m}fD6+Vm%(izWo2?8_?q7dMOU z+cbYObEJqVFY_$TgbYdg`!8eNile>8M|fvpv)!$ZvzMGBtDIh0P&%m;i-IGAXjsBi zwav)4NAI|lTbZW?Bg(=1ni#bV?RQXrZW$lQ;%PVa8s5u8Q03>Gjc_!-XhK5-D=^jATyepNGi<&_t)z|2X8pBQ{9lZ%)O);6@hpAqYF@zD1^xaSK7(Nk_RKo| zJY$3P`|Eif_9(G>-9~I#_`NuN(OVe6iXO3<|G_-#+To}v1v6X(ZRO#bgZe{Tv3+1O z^>?;ma=$8-hos6~AU;U7WGwh)D9>Utq z4(PWI)1-~o2Ytk!@G8lnvGfuz3NBalV;k! ze^Woq*G=d6Nak^`6IL7?WQaNE`A@zz798vNDwd@=C~W6!n?CeBZ_Wbl!6wEFdX$w- zP`bU#*?P?^ernKK>MJf_PvSW^7x{nU>=Uu^B5&XFgh?B_!3*bP*`M$NPaKf@V}9bz zeiStqc`*A$c>c`)^zPLcrA~47E_&t28(Od){vV#oyf;($B4_pJm2(@kAbs*B-h+7$ z?T7F(mEGY!V%G*OQ2*vK76{M5c?j?4>@Pk4SKfhnZYE#i?7UcX1^sbFziYIwZnpuV&Qn+;DZ4lW1aJzpHH#a6*V{cbG}WS(?<8Gs~{2>uHjW(W0$|Kf?v zlMYGO;=Njw-$aED>Z@u>S^F~zKQ7EAx&$35vNI12CW zBI!1d_cFLVOzdi+28$`T`3+Axg8mtAi{qN(NLi3V(FrlpBF z4Lpob>nPSY@NisC5QiK1AD#g?_n3tDi52_QcrQcN2(jTN_uqR@4Z;Ql$#Lk!X(E)X z$(n=u0Ip)L&^gRCyl;vLsv2o_Qn#yW0`p8kk*D!qEj}@+@tT8rjY-99p%bHz@Xiw{ zW;H=`P#8(a-4(f-z)llY7Cxf5iJrpO!-Hvf~8@rmN>$Ffa zbEN1NADVtTmHZ9wog$@~+Q#gpUf2v1iOW7>VRJQ#UrH74G*@GK(e)ixoFafc(^#{ zuO1ck7S+QuW)xcY24~;v&3sjV7Mg&K`O|nGM%=v}!C}>|W@a&G4eco%S@g&J)HcjN z0E^0Cyk{1mnsuDbMXoPbYhh;QND;cfdc!{y$0MupP8f|$?{jw4$1L7S)LNLCBSrr< zK=om5lCUfJ3GaYHEZYC#?9Zm2*vnQGPju~QEe~Pq=gg!xZJ{#ezZrD~pu}O6=(dlu z_nVrpJM8m9EVHBk38@JVN~~ zX%S{{9Hz}uiq_V0c3Cw~seG~!$H`U2MOCF`lN4rT2^FzcwZOAmEY4c-3Kc9+z1WTB zINo(ApSzle`*DRXuTZE28Ou5&u!#nGVBi%R$i;xoRfpmsy8EgZ#NsH`BfR7(RPhr3 z+m|aFBNWSrc<-YEekgD<*1fd$>WcP0h4*0;pau4QYIAXgn=K zr8PluEHy07(fGlR@wTR`LpeCyO&gDzaEQNBHBYK4DtKzjm~j&wwHO%!#IG@GHtQ(b z#;U)1#o&OR4(bn&7ZGu4%ZCl;pmJ$ks~p5BLt#bXM8&dcDpO`SLQ^XWiqJ+!gG%B= z^F;L*f4Xed3|p79324e;>>BBCG+GO7$BdNi|E&Gu|6Ti+2#MxDyVh#2Ptb!u;JtZ* z*p{HSO}qKe3VO$*wNGPNwB%w@X%7_?&{@rt31}LH0uT~xHg6#Y`l?@h?(tSENAV68 z_Y>7b-=S38-LZ?~9s4l$j2P5fz2cvS1K=FI=i~Zcw+}cIIHFm9j|U|i3G4q^{4}u= z$L_AqnsZW7K8hDh+o)HEZp0BX9rf2yU3)pRIgWeB6pt-H>s^}!BhQt8RvVV^e^={; z7`?iR4SwoH4>Xbv+)Kp!$!bgzwV9Yg1>I9O>3`IduY0vse_-PdU`b=;lZ()Ilcy9{ zRuvRFR~*ZDEXkVsi6fa#Nghmp+L2C|z_G2S^Wc9LpW{fT8*`W!N{pDCs#?XlLuwOI zo}wO(Ps6f%X%eMNxY-*0dhe zAuOHL8(s$#tYUbVPZo1Ks4;v`g4o(YtxG>T8J)bHv$dLeK>yr=oWela z)o31^C~7m+S`nVEdf?(#e7YLV(nY^?^>04EQsiW);kY6*E(5zHmLO(4q+0m|SBaOq zs2+TNl~~yYMHYzzUDUh$T9w$>RSo0Y6Ggi$^$*V+6Lw2@=ZUW})d+qfQPgB2+x98q z+QXRaYl)(578*{IR)e=icxR~*YSY$=n3F+`>W)#AKP?ivtC1{8@7rDN#2=!I(y!rt z_(k;9WgJ-J%0O{NY1x?4qJpVq72_3VO?swm4ASsN@l1)>!_P{{au2 z>3U*Iz5p%3PX8W`!AGvrftA%JBtH z7h;n`d#CKL_?B?4^gx5N@n#<~pRr#epk!a=bHcbX7r~b(;TPsJX)^*yspl1;VnD8X zH+5%g9HrsCejysTnzQ!iin56XW6H-&a%>W?A;JDuVMexnZS?7VRZrGxyJLNOv>^NO zg6w=8KBHqa^&_kaIG`QfUJLAOdBzbsic=s~KB26vyr7DjZLHM`9jW^qwKx(cO__*e zgFyXiKUHO_vdD4C*1l@6MfmksqZ3Y0M^u&+w(r=fdqqXzbj2^6-J;m|;^{q0%5bW$ z_}x=}ZljOvulh1RdXZi}K;4QH?8PE9A4iWKdPcrF(9?r1jA?Du_r=m-YPknp_tKa; zTX;O7&iAB?S(>KSn#8In)Sc`t(RaAoDrl=__DA$te|&hVX0yMEf!~Rl!_}y!Z))aL zN2I@cPHY{nzUo0&vQXvkdd>*-3S+%Q>L_&`>ncu-Qr|+~Oe;|5vbmzZK%L62i46tn z@KCw}juP*vW=3N&x5WQUwZ&?!%)z2&v>F>f%p8GOQ#B-3Yo?Z%L#QR@R`}nC{x=5% zU{F(IMAt%fJ`T%1EmS{e`TF7~Rc{l;@~)NNR#SCk@kuE=~!wWEepPpO-m;hum#W4iiU1luNBtWw9b4dS^~>a%&D zn9S&iK#V`o9Ae_?u9@ao6H~ud{eib>sYVw1hitn= z-fL=z_pO+w|XY`xuJN#O_ z`1Vb86gMS^^sQ>1$lsv0;MIv@bt4iIUfrgaI1>&eirL%L94D?MiVNG+EGKRziuCQ6 zr9!`94rzT?i+v;);I_Fzr+~deC_U zbX4rzsb2D=lLY9`ree)5^-T{t835lGIq#}Awptv07bjPjMD4q34_rD=+l^BR<{>)m zQR7fahsLThe;B$M_FIkWnv{#LYrlr~+GoZq; ztOu$d_zW>yoiosEMgHc(zE>^tqy>s9_Z8mnsqOs_+8k?2pz3dqpq0W$O%(a>sZTR6 z@%ejdt_PiApyj`bU|lV-(a8gZQwuD}SVl2yLuKY5jM+l9mOH9wY0jj^nEPQ|v=~z} zTyK;xJC>zFY6hOda%9YMWyHcpixXu=#unxX&dfB`gR#|Cm3I1z`_#p_x+MbNSAS)r zMg99&ZM%w3KfpY?7bzY(puWUn#HR3^PZfw5T zaY%i{tTj=anq&2_!|G?jxHfj_2lc$lcIuy;#hR|?|D>*t6|?KqDEDb6Gg)TqJw zdJogm&g>hJnq>-1{^r?O%XIDu zedQX{{tA8}Ts&&g5_pMK%(7@v{6M7GV9}CzXtemsqNVY(F+%gz;&@t|NcPp*@;&il zq_393cP5G@zM7Sr+K64gT6SW>Lr^WJsb|TGBi{U#{#1np~zgGt_*H1ga zZ>EVy{1G4ANlf!cK1;e-=a2LW8R8h(ql>8V*W&rgt|BBri{t?hi>?7$B464~j0@1B z`PnS7C;;t@=^=IoXx;d|KBAW5LvuxoK#YH1U-59D)|#i~iKhZFo_+nr(m=G^I#3)A zM8016`sF~)gYoJ?;*St+}D|KR0kQO951ZjS}<}uMH2qTz3RE!VO5;fdbQu3VX zJAvhw(;mWx2Q*f(xKYAzE{Oc%=9#L<{mAGbyz_9bGFp^;Edhw7?M- zGm%FdI+`o{oMqPT#`(?G5Y3BQo)qtepy{)VC}%uBF-A0LsdeCs#)_^jF$)q(L`6%q zXnCo4wWXHKM~@euw$!Ha*%L&!R`B78Vp1zia%h=&trcd?>~j4?EA26+t)9%4rD92# z7AU%gX~9}jWuqsBX`%c;l~@#}C29AjaAl}7-+5;C5@*BEs=-sml`t(;vrNYctut|H zbFG<$4#Mcw)-iSEINJ%=QnV{GxN^doE1WI~zY~rs_RJDB;kXlcZlmVgl**(y%2;d^ zZjU|JAK_X{kr|=2)Q-;KO1`7Kuj5t%<;Ecb`Y-r-YGkl@EkX6sDw3iw9b;CA^eC+j-@Z~5N1?;-trE+lP>c0- zaWG0ti0HK%ix5hj#~bG`1w};|P!t^Qqy1gi2val)uU{)tqqR=FW}PUF#@x!;AXXsW zbk7@@a*XmX$#NDH*UaWf(KHsRH@Au4Sk2Ct?hrd-(W;woiyvdPPTswC zVi9oVPQhl>F}s`-uzHtxI1X7oc8l?G=&PZ7#Hu(fW-IrK<77n_cjC~L@_iyH9{CRJ z7sGHBl6!n07RF=o%{ibSiPs7kzjRPUCDJN>NaQAJ@l8t(b0r4jyiQY27s?zX#R(I7 zZP5|2DG|MN^doU9QL}pA{Mb2TkXPh;m;;2RHKr!#GZESv8;{MOi|p34@j5D=YOO{3 zwsX|+?J=%=i~9eIGRstRxcG_6Y(6f2YmE&-&R3#&8?3l+F)`vo)$l~K})WDC%lsInecAGawfu*(Vs^5Y z#W(wjkCIVd`AOVN##(JXFGAbmGwXur)fOAf@{3|DdE?LG<+iBjlmCdlZ86?Um&Cs* zJ@^+<-xlpj`&C%mA${-_(Wjjj!6#f5CGC(t|2OecJ1s6|^Y2^#WG%VOL(*tvCFnT^p#;r*!NnBIAUOrur89OK>ox8A9P z_GNP$oqjvw3R8SAKs#;2G(Z;#4O2QD;2Wj^x-ey!((@%#LWyKbFPDsTt~@Jx_tYY6 zX*f!k>!IU(!!$tmxD8W1bX0Gc2EuW2VVKhCYL{Uez(vMJQ#zfDNa;4^uoR#SbnYT$ zQ0NZ7VM?b9UWRFaPPGkFI$g&%OapX@-!P@q#eBmS1rM;$g?=MI8R)XTVH%(-`i3c; zZciAd0lINvn9}L~gJBw=TN8#Uoo-ziwqX1U-PSMyl!0zi7^VTbe_@!?>E?l98ld|M zhAEwHNf@R9x?5qG(&@H>VH*w6-3KE;8R+JMVH%*DSB5E_?o1h`0lH~rn9}L?l3^O4 z8&QTSo$j`|Y;z3lbO#(O1Kn6N3eW)Eb2Cg8&^}J0I$Z^K*oM`ghUk*G zoPi#cFiZpV425B;fG%7ZrUAOvVVKhCu?E95K+i!KrgU6@aTv>=vjOy=ft+EZWJ;iC zEaY^0P{A+_&@&8%X$17Nfnge;M-vQFdb!iI{5u;!kAlb<=s63+G?0Yru7;@sx>RhK z2I%1n!<2qhG9}Q%E^<1Z3M#bz8x5d4PjUu29W+b>bO*^WjeyP`4buSKlQK-{^o)aH z8lbynhAExyoG2q55oZt3ofbI*-J~!~19VrzFjYWjeTHd(?m`*H9tdBO(O=Eg+A?3d z-be{5y7~xGc8b$|wRV1Vt&0vTC|ry1zEr(MKkYtqoIo1+Cz=$6?sFKP2^-sZD)=&N zY?8^_VLInF@*jtdrJd5x!N#&h#zVc0vy$wgVV=-+cB6tA4R@1Vvw|{og^gK59t0b+ zf?NR8B>bsRR(1xOjkXr!e;Pm zl0#q|csHiU!p6&_)Hd{az++)!$4Q+q+l&>%*i%wqEixE8M)E<}*b$PygN+>@`37w4 z=*WIe-1{|h8`#*7k$b_$ev3THhJdl7qQFep*e{W3mYhYGZz(Cm8FOkQ=#(s#r5H|KZvr7)&2$kUiUv>a2I`haubuFc&Gei6J#vJKuY`Biua`~|Az zXuvkgZ!yYa$M^{X^!N~smRfiQ4)t~W4|sxPvzMYwgz1hHRoDt%?&r>*2A`0e3!j8H zx*9M7UW#Xm9ODZ>1(Oko32;}iL>w7}L)I+_8!zgJA0M#hjfGh%77d36x~q8@&XfEY zJXCT8d`0q$u(d^Fd7H8UfnM%_asb{g`6u{`osJ_mw;Y z9?|GDrmR6=LSuj_AHpw7{to`3mAk@QO@-g1TGYgwot%%B)7+$O)LX7i1Z|@{uuCya zo0OKci*dcEm-8O*G&o7>Wjj1V@;0&IQOvAk4-~uhfSWcmM&ewm(;x6CIH0L}QYzrV zl3#?6N`4)_v_wo@ zT|1FIL<`SMLc<Tr_jL4%v+30EDPqGA%(D#$zl~zpHKTH_?0Fzt z-2?83=Yi?oKUGAd?GGn}xm^m6ko*ih5}uFz)cghT6?gh0xYna6R}rXkWq1=F9qz7B zho6&t6h12XEPM=}<|=S^6i^85UnTO>1S&cIp9K~f1^yrTH;KtlU~R@8 zxA8@DMu+Jug0#J->BJsbIgAyOj*-b1;rmkhU8%f<*ET$jNBxZ#c|MHiU>q;9fKR&Y z$7^j3ZzFKp2%rH!!e=Dc!{;Ph@zsEflC$BZP!lI`$f$?w6-$aLj|8gK@I z6;g%VIS1Y#xftFg`DJ*Eu8EQidpazvMyiLCF>H z5y`K?pGy7!J|_7bd{VL!sVJv#f~e4odLRse(^7_P_>ANU@Hxo~;ER$s!Ivd}1YebW z1->rX7q>8KaWv7`fG!B!k}?#*cO)-_>m|PjGwv?`J*-LQ(bx`1j)8q7=fl1>DKHZO z+(>L}&}KM9@|UpV2`%KH9{VpGDW&5kf)Xn^7fzI12`5Wl3)@nqz)=J`O8yJZkZg@r zl!1~{;9-&%K0-FqC&c0&?+z)$WMnubc`AI$FbcdNA`7+908IN^NV#RC zzHQuHzh~HJ0y37b*G&h*vAk!B4wz6 zk4t_D{z~#X__XBr;PaAk4N18w`DggLvE-1}*dR;p2zxhi=N|y4Hjy^4 zQxM3NGQ18ClKde&QSwE2j%0Hi>{LD6BS?TNCFj9(`Ho&R!INOShqQrRiojJV!wxvi z(_P>c950!k;OrtfC<*gia%Z@|kY|U~-IA}t$0RptixEmrg0-gZ^8MgelAnT8 zB`<7?`QJwhY(<7al8?dTB>x64lx%8;g;a6`%zWGp=m~pEE`qyAp4$%dzqb_FfDFSV ze*_mvJ`YcoOb_(TksJ;$l-w0wA$c&oL-Nx$1k`5k7Te)2lDEP=C4U58m3$t)BUwwu zUc0%wzGV2k+`D<8nUD2S0@+KT8*}nr0D5_-x{cr)!*A0IS&y)Noe9(28N#*_1&|^3&H1emxiINAv9Szg|zYKxi zMgT_!i{ZZwBYg+#jk7+Z!q4DglF!2bk*s#awjF12M*c+jcgg+X=W&unFUS6W5(39v z0h)p(@M+2K!XM)#iC&cc9sIlG+i-K7;~42aov|mizR;z4~cN+{{yy3_D;uICOH9)up&Rk?`S|D1QIEL7d5B|?r3$;;i+&&q}$8k z8Is?I|0DSeI55hczZRY&IWPm~$kER6J4TR#Kp_J3q6Rz;PnSF!_K9()uY^-2?|}nx z)Jrcae+ix<`6f&UvPOEyLs-k=r2T&u0`Eu}M!;W5u7b}?o(KObc{AJ~`6NuoiN*+j zhjq!`U9ij~Q2*maE$)H9ssy)3z&?p?m&0L_UxEK4c`v-8wLAZJ@P5gxE3Oi>ai=H3 zD{NAr2Lk&gkA`a{&xAdb+!eeIZ;<>k?3?UP{{`+R**6mlspN-X+v`$b3<8@ZFNWWd zycPaN@^|n#$$!H^ZQTuM`7l;n$(is1$t4eC{@bO%Qe;>oc^mwz3SP;=Jd(T{rtLqyDE;4ASSBRbz_fj*7p_+} zuy!SEf)g>VSAZbpTZ;K`Doq5P5; z!1J)~8~N?SaFa0r%sXN9;#4bPJN1$(ZCe=h+)*%4L&V-7<^rFCG3e_qnBgZE$bH7{Otf<~zM8{YQ9~73gAUuTn!gWz68&aTnBHG?30c4UUDLQOmbKF zy5xM=7j-)I#?}AU}y8RLC)7S0O@GQw!;7$Fc z{r}$x^v-h^@ImE^CAWgNNKS!=^>^jRLY57e8b%Keg(pfL4-XmOu74)He}H59ojvdh z0(Ybgo8ioX?gAgeb0nXHKb3qDK5ZBc`U}1#SZT=hLL{`yhHLbc&}lUUk}?72f16c9f9tTxV;aa^{Cs&sRGI8;e(QI z!lxuR!SXOtc)>7tfj{BgC)`&0;UH47H*AyK3f^lN^~J*HBzK0{aCd#SAqYeo0Th@F zXBbA0%!NxO3)uK&S32O>4%d%xSNH)OILc+DpM=*KMt$eub8g!j{z4$Jz+FKTtm9K8 zhr%l)C&6K(-TC{%BP9=qKb1TgE-ZBCp9}A5H1_|?5jfcxsBPE?hdt>oum|2^7*q5) z+<%Na{X6($$=9fSu{&MEMyR7?UwD{d+W*HPFx3daU19pMTzXL#4}?#Tbs6a+U~Qbs zNFN7B8b%=@{axgdkDn30<`lv3TH_E4$hT)8IFF+-GD#g-iA@$ z3tQ1{pCcJBXsA#hU4Fc_wv4W<|Mz$EzCB$rXaeE5#!jd15OS32?^ zfae)T{%_&Ha(DS_aOz|-)_b#<3;297T!U|_#F+nioh``1IKpy-;yKX=~b=@Fohl9i<0p>28!`>%G6_H;X6}Y z`7y#Nu+P)(^7G+Ln8xpDz#0TL7#UDt6Rb=A2tF?POPEb{kKo^Mf5}(jS(0zVTO>EZ ze&^s+=lC5B@I@eSn!CbyI8$;aTr9Z{JWuj4c$wrvc#UE7$Yl74~Mo&^vD} zxEnAOE|6Rb|0Q`E+$*;n;h?(vTn-JJ7c|Uwm@;O+W<<74?iqmV!!EhVN zonZQHaC%V>kA|lhMvs<1iurGo0<)1}f#lcWBZg7IPWX)E!!Uc+J%X>`SjiXRj*@S| zLnNCAWB#9%0^vCLxNI0LOo8hSqX9i&A7hz8`T#i4FwzU*Taqha@7b;fBL6~oljMyy z1ddCAkKi+szlUoj)6vq%If~;&8xjpiLz5*3!5>IYgS$NE&Yueplx!P?K%o?v371J; z2EQnI8+=vrAy|9fH3Ia&k8qe_H1HmrX&C7NkD&pE6+B>-i~#+JJiTZkc@*9yxfniU z7!{VoJLbCb!?WODCBFpw&U2-sJ^^PKM*cV9%0^@V|26`%8UwWrAHb(2pMw7*`B(V5 zkrZ z>U?+l7Pz0}!|-mG9sB?95ooo*-Qu6&WXX5ogObfdF+$1obL?R+xks1)Crj=E&oPWy z@(BE?)6V^W1p;@B4CsLu;L?Te3Rl6uO5OrDNInGnFLLMq7EYA>Gu&PB4Y<@{tgDXI zXc*>+lpz9MBe^rYUvfW6U+f-XF?>w&v+ym+E8*Ig-T8OIGnT-#t)K>cg1`m}xcm)# zO7aCbaH%`}Z+MvG<~YWmE;$ljEV&Duxy)UD5Zn)TY^$gNV-WaQ$}j~!C;3IV_!V~r zuffwLZ-duK{tRwncjvzdeSV-;;?=p;~ygz)#FzO!( zFM7>cpD#QP{=p^%rXyfo?ar_a9wT`J+;ojQeJ>m!`3u-8`6oC}@^$#AoC7!U0kwkf|O(AynQnib+2j^t!`q~yMEspJxPisa|uIg&TSizR;yuWB^D zE^r=!O^pG3M-Sd5+3!g#)sox7$0QGePfMgX~V1^4Sa(@2@95+T0_LsCUTkZo1Lmu#$ z2VD7ppL@W|AMjfbc+WrGUODp5fKvT{FFxRFqHrNPZx}iw)HMUWim@|ybq@7^C_D?M zIZRG~@w}y_y~`Q!N!VCm`oU);KMr4(j6Zgv+=2sK<);*5yX%8*Nf;H(Mg~0Y==gg% zG{R+YhLpY*#^Z~P`M1KuV3Vst9Uckyb@_967u?e2ui;ZLZP%&(pNnnS${^6p6}W{A z4U(IV#fDo`EH9|e0#D&HO60pn2IF@i_nlU~m6$k7N3;6Qxksf81Tpt&A?(2IEmT#~&b~3XV_(_{L$nEB`m}5O{*izfgYIn8G^vvScq@ zf5Ve$mN#7aZJ`M4MIgl$Xb0EAc`j$d!|;tnT&Z$Q(PQuqIKkzo;d8Jt#Vg=Ue9$#83zi{X*5F+nrnT`)c{LD=pJ429tvxJj-8JK_FtQH#m!(I8kOR*z?pKv(_-T@mu&* zKQ*8!uDKTCE0jiy!{O&)V;M+>d*kP$2fHfBgg3#)dfgBH6gJkHC*d=2oh!c$zG`*% zz+5;plD-U%^`9Cb5U54K%T-_-Tn`&vwhtZ@8h57#Q6!bvXUx3d-c zb9P3LEQEdWOB^q`(pSN|V4CODfL-u0*k&xXClR=gfH4bxgXwSZ8A~ynh-CmScU2Gs z-+|k@oB`9{@H1vvKD+`pdT1O>f9ua^fDJwpuh<-a(2ZL3Iszw=!D!G2F#RDwqrf+? zhM(#&(*J-HVWYuKC((0M_yaty21UaMVb_L6$$%sA6A5iy>BHe+i8gnOE2sc6G;?KG z0MlP4G#ao0z6zUN=?CFku+gA%a3Fq+B+He47cPX2_1>!t%Lp9jN^c48vLRqBbZrr! zKWVttm7yCIXyab*2f+C8;>M-C0LF7#jSFcd?3?6X?dHRSU}L-SDm)pU>#F}>u&o{e zW7GOR0v+*=0l4GGugOl4S zmUmswD#!YF2Z6S(zyM@OOmXjQ3gN}@Yp(QiI5X9qe-1ngHo9~PZ2Zs+o#<_V>F1H@ z_<;N_j0cGwYZ>{|a;$&GZ>><^dt@+vYlZw9Z2Z;=`5t^$s-VSW`g5r63X|b$FwW^5 zBg`hZcP;}|eke?T@nWf#!XIJ! zn>@j;`hJI7;w#F{UH%iMFL~p5#xXvdQh{&yraKSfEoeXhOn(Ox={SnUxBX$ftn?pU zEl7uv*yuhm(CDFXisVu_OY#hOrrWlL#R%+k2O2iO*lssgxEJoq-2NP%Cix7!NAh(T zU#)H|e-Fm#K%>1YQF)_r-8B?}l*T}9Lo%EtxjT%XMQNGya*e6bB(`Wgaj5pXW0_yHeyy^#UwI*i|@Y)tX6k94^t||lIA588Z z83`}-QLHpcl#ajJ;P`v5tzDi1)1SK??eaXhYcs`)<)nq9z;Xm8Aduk7@GsqWrS`g} zA6TPZ8Y*_x;cq*w|F7oD^<#C~+2;Cg4|6w@ezU3hGgVFN)Jar7Z2nxI>uVnGW$M^@ z41V?fVe@DD{!sJZCR3-*MGk+i+oH^MCR18*p)0+6g85hcX`Uxt$$urAe^AA@Z>fIb zWM}hrF)GdMD~_k*SGLpA#-<71DvaW@4(0@nXQVr&XP8@PrcT90={iPu2!mrg6w$bk z>jk~d;hLIJ=->%Gub(+lGi7w>>`LxA$b3uHGlrNWnc6wS6-;>C?14Huq`TZO0>7bb zYM+wo^5rMZQJN_=wb<4EQzhnf&6Jkj$&vn<{>>!wLz>zlEkn0dnQv(7lPM`Wd&X?j zeCDTPdFg}8po%iv!|t1rAVzl3nur57vxVh}lQwg-c{Z|i#czMw%q>LI+2*GFK)Pr- z+Z;!qJ@Bc`ei*;SASTX6-s*w)ZJ~SO)!F7K^ZGnhsd`y_h+!?@->Q-zE>o7SO-zah z!=DR8xEFq8tDopN#~hu!w2h`L9fOO9n9aCUqR;|Q8=7f&(+0_SS(j?c9x)F^__rpp bbq?B5V-jEEGkDL_W@WXJ51+JB(d+*JP*C@m diff --git a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.build_log.htm b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.build_log.htm index 13280d6..a05a95d 100644 --- a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.build_log.htm +++ b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.build_log.htm @@ -31,23 +31,24 @@ assembling startup_CMSDK_CM0.s... compiling adapter_antifake.c... compiling system_CMSDK_CM0.c... compiling comp_auto_zero.c... +compiling comp_primary_side.c... +compiling main.c... +compiling cps8860_it.c... +compiling comp_discharge.c... compiling app_spec.c... ..\..\common\app\src\app_spec.c(177): warning: #177-D: variable "umask_val" was declared but never referenced uint32_t umask_val = 0; ..\..\common\app\src\app_spec.c: 1 warning, 0 errors -compiling comp_primary_side.c... -compiling main.c... -compiling cps8860_it.c... -compiling port0_customized.c... -compiling comp_adc.c... -compiling port1_customized.c... -compiling comp_protection.c... compiling comp_dac.c... -..\code\src\comp_dac.c(311): warning: #177-D: variable "temp" was declared but never referenced +..\code\src\comp_dac.c(318): warning: #177-D: variable "temp" was declared but never referenced uint32_t temp[TYPEC_PORT_MAX + 1] = {0}; -..\code\src\comp_dac.c(455): warning: #177-D: function "comp_dac_cc_acdc" was declared but never referenced +..\code\src\comp_dac.c(462): warning: #177-D: function "comp_dac_cc_acdc" was declared but never referenced static void comp_dac_cc_acdc(uint8_t port, uint16_t val, uint16_t offset) ..\code\src\comp_dac.c: 2 warnings, 0 errors +compiling comp_protection.c... +compiling port0_customized.c... +compiling port1_customized.c... +compiling comp_adc.c... compiling comp_powerout.c... compiling customized.c... ..\code\src\customized.c(26): warning: #188-D: enumerated type mixed with another type @@ -56,21 +57,20 @@ compiling customized.c... user_app_s user_app = {0}; ..\code\src\customized.c(175): warning: #177-D: function "path_scp_mode_exit_action" was declared but never referenced static void path_scp_mode_exit_action(uint8_t port, scp_param_s *scp_param) -..\code\src\customized.c(1582): warning: #177-D: function "comp_ccloop_enable" was declared but never referenced +..\code\src\customized.c(1604): warning: #177-D: function "comp_ccloop_enable" was declared but never referenced static void comp_ccloop_enable(uint8_t port) ..\code\src\customized.c: 4 warnings, 0 errors -compiling comp_discharge.c... compiling dpdn_protocol.c... compiling qc_scp_protocol.c... -compiling ufcs_protocol.c... compiling pd_protocol.c... -..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c(827): warning: #550-D: variable "pd_hw_uvdm_header" was set but never used +..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c(844): warning: #550-D: variable "pd_hw_uvdm_header" was set but never used pd_hw_uvdm_header_u pd_hw_uvdm_header = {0}; ..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c(275): warning: #177-D: function "pd_analog_set" was declared but never referenced static void pd_analog_set(uint8_t port) ..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c: 2 warnings, 0 errors +compiling ufcs_protocol.c... linking... -Program Size: Code=12502 RO-data=1910 RW-data=60 ZI-data=3872 +Program Size: Code=12642 RO-data=1910 RW-data=60 ZI-data=3872 FromELF: creating hex file... After Build - User command #1: .\CPS8860.bat C:\Users\TJP\Desktop\GIT_TEST\CPS8860_9196_70W\Anker_9196_CPS8860\PD_CPS8860_A1_CPS_Common_Demo\ac_project\project>set Project_Name=CPS8860_anker_9196 @@ -118,11 +118,11 @@ out_type : expected out file type 'd' output binary file(.bin) [out_file_name_without_postfix] : Option: out file name without postfix. ---------------------------------------------------------------------- -input code size: 14,472 [14.133K] - app size: 388C ; CRC: A411 +input code size: 14,612 [14.270K] + app size: 3918 ; CRC: 3572 -out code size : 14,476 [14.137K] -create file: .\output\CPS8860_anker_9196_A1_60_V1.5_CRC589B.hex success! +out code size : 14,616 [14.273K] +create file: .\output\CPS8860_anker_9196_A1_60_V1.6_CRCA78C.hex success! C:\Users\TJP\Desktop\GIT_TEST\CPS8860_9196_70W\Anker_9196_CPS8860\PD_CPS8860_A1_CPS_Common_Demo\ac_project\project>move /Y .\CPS8860_anker_9196_*.hex .\output һļҲļ ".\Objects\CPS8860_anker_9196.axf" - 0 Error(s), 9 Warning(s). diff --git a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.htm b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.htm index 4549988..2d7bafd 100644 --- a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.htm +++ b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.htm @@ -3,11 +3,11 @@ Static Call Graph - [.\Objects\CPS8860_anker_9196.axf]

Static Call Graph for image .\Objects\CPS8860_anker_9196.axf


-

#<CALLGRAPH># ARM Linker, 5060960: Last Updated: Mon Oct 27 14:12:20 2025 +

#<CALLGRAPH># ARM Linker, 5060960: Last Updated: Tue Nov 18 18:10:44 2025

-

Maximum Stack Usage = 280 bytes + Unknown(Cycles, Untraceable Function Pointers)

+

Maximum Stack Usage = 288 bytes + Unknown(Cycles, Untraceable Function Pointers)

Call chain for Maximum Stack Depth:

-main ⇒ app_spec_run ⇒ app_protocol_run ⇒ adapter_state_check ⇒ wait_c2_ready ⇒ pd_phy_open_vbus ⇒ adapter_state_check (Cycle) +main ⇒ app_spec_run ⇒ app_protocol_run ⇒ adapter_state_check ⇒ mos_switch_control ⇒ user_delay_ms ⇒ dpdn_protocol_run ⇒ fast_charge_reset ⇒ comp_powerout_open_nmos ⇒ comp_dac_open_vbus ⇒ comp_set_vol_cur ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb

Mutually Recursive functions @@ -134,26 +134,26 @@ Global Symbols
  • >>   comp_adc_clac_cur (via Veneer) -

    __aeabi_memcpy (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

    [Called By]

    • >>   port1_scp_def_vol_init (via Veneer) +

      __aeabi_memcpy (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

      [Called By]

      • >>   port1_scp_def_vol_init (via Veneer)
      • >>   port1_capabiloties_features (via Veneer) -
      • >>   port0_scp_def_vol_init (via Veneer) +
      • >>   port0_scp_def_vol_init (via Veneer)
      • >>   port0_capabiloties_features (via Veneer)
      • >>   scp_mode_exit_action (via Veneer)

      __aeabi_memcpy4 (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

      [Called By]

      • >>   port1_pd_src_cap_init (via Veneer) -
      • >>   port0_pd_src_cap_init (via Veneer) +

        [Called By]
        • >>   port1_pd_src_cap_init (via Veneer) +
        • >>   port0_pd_src_cap_init (via Veneer)
        • >>   comp_protection_monitor (via Veneer)
        -

        __aeabi_memclr (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

        __aeabi_memclr (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

        [Called By]

        • >>   pd_protocol_reset (via Veneer)
        -

        PE_SRC_Send_Soft_Reset_action (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

        [Called By]

        • >>   solve_huawei_matebook (via Veneer) +

          PE_SRC_Send_Soft_Reset_action (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

          [Called By]

          • >>   solve_huawei_matebook (via Veneer)

          __ARM_common_switch8 (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) @@ -161,7 +161,7 @@ Global Symbols

        • >>   comp_protection_type_check (via Veneer)
        -

        afc_packet_reply (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

        afc_packet_reply (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

        [Called By]

        • >>   scp_afc_identify (via Veneer)
        @@ -177,15 +177,14 @@ Global Symbols

        [Called By]
        • >>   SystemInit (via Veneer)
        -

        comp_dma_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

        [Called By]

        • >>   system_common_init (via Veneer) +

          comp_dma_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

          [Called By]

          • >>   system_common_init (via Veneer)
          -

          drv_delay_us (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

          drv_delay_us (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

          [Called By]

          • >>   system_init (via Veneer)
          • >>   pd_phy_open_vbus (via Veneer) -
          • >>   mos_switch_control (via Veneer) -
          • >>   adapter_state_check (via Veneer) +
          • >>   user_delay_ms (via Veneer)

          drv_dpdn_dp_0p0v_get (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) @@ -206,11 +205,11 @@ Global Symbols

          [Called By]

          • >>   app_spec_run (via Veneer)
          -

          drv_watchdog_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

          drv_watchdog_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

          [Called By]

          • >>   system_init (via Veneer)
          -

          fcp_set_vi (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

          fcp_set_vi (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

          [Called By]

          • >>   scp_mode_exit_action (via Veneer)
          @@ -231,12 +230,12 @@ Global Symbols
        • >>   PD0_Handler (via Veneer)
        -

        pd_pe_run (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

        pd_pe_run (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

        [Called By]

        • >>   pd_protocol_run (via Veneer)
        -

        pd_phy_analog_set (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

        [Called By]

        • >>   pd_sys_init (via Veneer) +

          pd_phy_analog_set (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

          [Called By]

          • >>   pd_sys_init (via Veneer)

          pd_phy_get_cc_status (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE), UNUSED) @@ -248,11 +247,11 @@ Global Symbols

          pd_prl_req_cap_msg (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE), UNUSED)
          [Address Reference Count : 1]

          • pd_protocol.o(.constdata)
          -

          pd_prl_run (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

          pd_prl_run (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

          [Called By]

          • >>   pd_protocol_run (via Veneer)
          -

          pd_pro_reset (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

          pd_pro_reset (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

          [Called By]

          • >>   pd_protocol_reset (via Veneer)
          @@ -263,15 +262,15 @@ Global Symbols

          pd_resp_svdm_msg_assemble (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE), UNUSED)
          [Address Reference Count : 1]

          • pd_protocol.o(.constdata)
          -

          pd_src_cap_msg_assemble (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

          pd_src_cap_msg_assemble (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

          [Called By]

          • >>   pd_src_cap_msg_assemble_patch (via Veneer)
          -

          pd_sys_init_default (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

          [Called By]

          • >>   pd_sys_init (via Veneer) +

            pd_sys_init_default (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

            [Called By]

            • >>   pd_sys_init (via Veneer)
            -

            pd_timer_event_mgr (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

            pd_timer_event_mgr (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

            [Called By]

            • >>   periodic_work (via Veneer)
            @@ -289,8 +288,8 @@ Global Symbols

            [Called By]
            • >>   charge_protocol_reset (via Veneer)
            -

            qc_sys_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

            [Called By]

            • >>   system_common_init (via Veneer) +

              qc_sys_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

              [Called By]

              • >>   system_common_init (via Veneer)

              qc_timer_func (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) @@ -312,24 +311,24 @@ Global Symbols

              [Called By]

              • >>   dcp_qc_scp_run (via Veneer)
              -

              scp_phy_hook_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

              [Called By]

              • >>   scp_sys_init (via Veneer) +

                scp_phy_hook_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

                [Called By]

                • >>   scp_sys_init (via Veneer)

                scp_phy_logic_reset (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE), UNUSED)
                [Address Reference Count : 1]

                • qc_scp_protocol.o(.constdata)

                scp_phy_reg_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

                [Called By]

                • >>   scp_sys_init (via Veneer) +

                  [Called By]
                  • >>   scp_sys_init (via Veneer)

                  [Address Reference Count : 1]
                  • qc_scp_protocol.o(.constdata)
                  -

                  scp_phy_rx_int_all_mask (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

                  [Called By]

                  • >>   scp_sys_init (via Veneer) +

                    scp_phy_rx_int_all_mask (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

                    [Called By]

                    • >>   scp_sys_init (via Veneer)
                    -

                    scp_prl_hook_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

                    [Called By]

                    • >>   scp_sys_init (via Veneer) +

                      scp_prl_hook_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

                      [Called By]

                      • >>   scp_sys_init (via Veneer)

                      scp_prl_rx_handler (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) @@ -341,20 +340,20 @@ Global Symbols

                      [Called By]

                      • >>   dcp_scp_run (via Veneer)
                      -

                      scp_register_attr_rom_list (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

                      [Called By]

                      • >>   port1_scp_register_attr_upgrade (via Veneer) -
                      • >>   port0_scp_register_attr_upgrade (via Veneer) -
                      • >>   scp_register_attr_upgrade (via Veneer) +

                        scp_register_attr_rom_list (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

                        [Called By]

                        • >>   port1_scp_register_attr_upgrade (via Veneer) +
                        • >>   port0_scp_register_attr_upgrade (via Veneer) +
                        • >>   scp_register_attr_upgrade (via Veneer)
                        -

                        scp_register_value_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) -

                        [Called By]

                        • >>   scp_sys_init (via Veneer) +

                          scp_register_value_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

                          [Called By]

                          • >>   scp_sys_init (via Veneer)

                          scp_register_value_to_encryption_arry (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE), UNUSED)
                          [Address Reference Count : 1]

                          • qc_scp_protocol.o(.constdata)
                          -

                          scp_reset_default (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE)) +

                          scp_reset_default (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

                          [Called By]

                          • >>   scp_protocol_reset (via Veneer)
                          @@ -384,7 +383,7 @@ Global Symbols

                          usb_bc_init (Thumb, 0 bytes, Stack size 0 bytes, rom_symdef.txt(ABSOLUTE))

                          [Called By]

                          • >>   charge_protocol_reset (via Veneer) -
                          • >>   system_common_init (via Veneer) +
                          • >>   system_common_init (via Veneer)

                          I2C_FUNC0_Handler (Thumb, 2 bytes, Stack size 0 bytes, cps8860_it.o(i.I2C_FUNC0_Handler)) @@ -393,12 +392,12 @@ Global Symbols

                          I2C_FUNC1_Handler (Thumb, 2 bytes, Stack size 0 bytes, cps8860_it.o(i.I2C_FUNC1_Handler))
                          [Address Reference Count : 1]

                          • startup_cmsdk_cm0.o(RESET)
                          -

                          __scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED) +

                          __scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)

                          __main (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
                          [Address Reference Count : 1]

                          • startup_cmsdk_cm0.o(.text)
                          -

                          _main_stk (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001)) +

                          _main_stk (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))

                          _main_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))

                          [Calls]

                          • >>   __scatterload @@ -408,15 +407,15 @@ Global Symbols

                            [Called By]
                            • >>   __scatterload
                            -

                            _main_clock (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008)) +

                            _main_clock (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008)) -

                            _main_cpp_init (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A)) +

                            _main_cpp_init (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A)) -

                            _main_init (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B)) +

                            _main_init (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B)) -

                            __rt_final_cpp (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000F)) +

                            __rt_final_cpp (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000F)) -

                            __rt_final_exit (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$00000011)) +

                            __rt_final_exit (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$00000011))

                            Reset_Handler (Thumb, 8 bytes, Stack size 0 bytes, startup_cmsdk_cm0.o(.text))
                            [Address Reference Count : 1]

                            • startup_cmsdk_cm0.o(RESET) @@ -502,7 +501,7 @@ Global Symbols
                              [Called By]
                              • >>   _main_scatterload
                              -

                              __scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED) +

                              __scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)

                              ADC_Handler (Thumb, 16 bytes, Stack size 8 bytes, cps8860_it.o(i.ADC_Handler))

                              [Stack]

                              • Max Depth = 24
                              • Call Chain = ADC_Handler ⇒ comp_adc_int_handler_mtp @@ -591,34 +590,34 @@ Global Symbols

                                VIN_OVP_Handler (Thumb, 24 bytes, Stack size 0 bytes, cps8860_it.o(i.VIN_OVP_Handler))
                                [Address Reference Count : 1]

                                • startup_cmsdk_cm0.o(RESET)
                                -

                                __scatterload_copy (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED) +

                                __scatterload_copy (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED) -

                                __scatterload_zeroinit (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED) +

                                __scatterload_zeroinit (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)

                                adapter_state_check (Thumb, 902 bytes, Stack size 32 bytes, customized.o(i.adapter_state_check)) -

                                [Stack]

                                • Max Depth = 248
                                • Call Chain = adapter_state_check ⇒ wait_c2_ready ⇒ pd_phy_open_vbus ⇒ adapter_state_check (Cycle) +

                                  [Stack]
                                  • Max Depth = 256
                                  • Call Chain = adapter_state_check ⇒ mos_switch_control ⇒ user_delay_ms ⇒ dpdn_protocol_run ⇒ fast_charge_reset ⇒ comp_powerout_open_nmos ⇒ comp_dac_open_vbus ⇒ comp_set_vol_cur ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb

                                  [Calls]
                                  • >>   charge_protocol_reset
                                  • >>   __ARM_common_switch8 (via Veneer) -
                                  • >>   drv_delay_us (via Veneer)
                                  • >>   comp_set_vol_cur
                                  • >>   comp_powerout_protect_en
                                  • >>   comp_powerout_default_set
                                  • >>   comp_powerout_cur_set
                                  • >>   wait_c2_ready +
                                  • >>   user_delay_ms
                                  • >>   port_scp_derate
                                  • >>   mos_switch_control
                                  • >>   gate3_control

                                  [Called By]
                                  • >>   app_protocol_run -
                                  • >>   port1_pe_src_cable_check_callback -
                                  • >>   port0_pe_src_cable_check_callback +
                                  • >>   port1_pe_src_cable_check_callback +
                                  • >>   port0_pe_src_cable_check_callback
                                  • >>   pd_phy_open_vbus

                                  app_dpdn_init (Thumb, 14 bytes, Stack size 0 bytes, customized.o(i.app_dpdn_init))

                                  [Called By]

                                  • >>   charge_protocol_reset -
                                  • >>   system_common_init +
                                  • >>   system_common_init
                                  • >>   fast_charge_run
                                  @@ -634,7 +633,7 @@ Global Symbols

                                app_protocol_run (Thumb, 86 bytes, Stack size 16 bytes, customized.o(i.app_protocol_run)) -

                                [Stack]

                                • Max Depth = 264
                                • Call Chain = app_protocol_run ⇒ adapter_state_check ⇒ wait_c2_ready ⇒ pd_phy_open_vbus ⇒ adapter_state_check (Cycle) +

                                  [Stack]
                                  • Max Depth = 272
                                  • Call Chain = app_protocol_run ⇒ adapter_state_check ⇒ mos_switch_control ⇒ user_delay_ms ⇒ dpdn_protocol_run ⇒ fast_charge_reset ⇒ comp_powerout_open_nmos ⇒ comp_dac_open_vbus ⇒ comp_set_vol_cur ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb

                                  [Calls]
                                  • >>   app_protocol_reset
                                  • >>   typec_run (via Veneer) @@ -648,7 +647,7 @@ Global Symbols

                                  app_spec_run (Thumb, 58 bytes, Stack size 16 bytes, app_spec.o(i.app_spec_run)) -

                                  [Stack]

                                  • Max Depth = 280
                                  • Call Chain = app_spec_run ⇒ app_protocol_run ⇒ adapter_state_check ⇒ wait_c2_ready ⇒ pd_phy_open_vbus ⇒ adapter_state_check (Cycle) +

                                    [Stack]
                                    • Max Depth = 288
                                    • Call Chain = app_spec_run ⇒ app_protocol_run ⇒ adapter_state_check ⇒ mos_switch_control ⇒ user_delay_ms ⇒ dpdn_protocol_run ⇒ fast_charge_reset ⇒ comp_powerout_open_nmos ⇒ comp_dac_open_vbus ⇒ comp_set_vol_cur ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb

                                    [Calls]
                                    • >>   drv_watchdog_feed (via Veneer)
                                    • >>   app_protocol_run @@ -750,7 +749,7 @@ Global Symbols
                                    • >>   comp_protection_type_check
                                    -

                                    comp_adc_init (Thumb, 76 bytes, Stack size 0 bytes, comp_adc.o(i.comp_adc_init)) +

                                    comp_adc_init (Thumb, 76 bytes, Stack size 0 bytes, comp_adc.o(i.comp_adc_init))

                                    [Called By]

                                    • >>   system_init
                                    @@ -784,7 +783,7 @@ Global Symbols
                                    [Called By]
                                    • >>   comp_powerout_init
                                    -

                                    comp_dac_2fb_patch_enable (Thumb, 28 bytes, Stack size 0 bytes, comp_dac.o(i.comp_dac_2fb_patch_enable)) +

                                    comp_dac_2fb_patch_enable (Thumb, 28 bytes, Stack size 0 bytes, comp_dac.o(i.comp_dac_2fb_patch_enable))

                                    [Called By]

                                    • >>   system_init
                                    @@ -910,7 +909,7 @@ Global Symbols
                                  • >>   comp_cccv_step_speed_set
                                  • >>   comp_powerout_default_set
                                  -
                                  [Called By]
                                  • >>   system_common_init +
                                    [Called By]
                                    • >>   system_common_init

                                    [Address Reference Count : 1]
                                    • comp_powerout.o(.constdata)
                                    @@ -968,14 +967,14 @@ Global Symbols

                                  [Address Reference Count : 1]
                                  • comp_powerout.o(.constdata)
                                  -

                                  comp_powerout_soft_time (Thumb, 22 bytes, Stack size 0 bytes, comp_powerout.o(i.comp_powerout_soft_time)) +

                                  comp_powerout_soft_time (Thumb, 22 bytes, Stack size 0 bytes, comp_powerout.o(i.comp_powerout_soft_time))

                                  [Called By]

                                  • >>   periodic_work

                                  comp_powerout_standby_machine (Thumb, 16 bytes, Stack size 0 bytes, comp_powerout.o(i.comp_powerout_standby_machine))
                                  [Address Reference Count : 1]

                                  • comp_powerout.o(.constdata)
                                  -

                                  comp_powerout_state_machine_run (Thumb, 10 bytes, Stack size 0 bytes, comp_powerout.o(i.comp_powerout_state_machine_run)) +

                                  comp_powerout_state_machine_run (Thumb, 10 bytes, Stack size 0 bytes, comp_powerout.o(i.comp_powerout_state_machine_run))

                                  [Called By]

                                  • >>   periodic_work
                                  @@ -1005,7 +1004,7 @@ Global Symbols
                                • >>   comp_protection_monitor
                                -

                                comp_protection_init (Thumb, 64 bytes, Stack size 0 bytes, comp_protection.o(i.comp_protection_init)) +

                                comp_protection_init (Thumb, 64 bytes, Stack size 0 bytes, comp_protection.o(i.comp_protection_init))

                                [Called By]

                                • >>   system_init
                                @@ -1087,6 +1086,7 @@ Global Symbols

                              [Called By]
                              • >>   app_protocol_run
                              • >>   pd_phy_open_vbus +
                              • >>   user_delay_ms

                              dpdn_time_func (Thumb, 70 bytes, Stack size 16 bytes, dpdn_protocol.o(i.dpdn_time_func)) @@ -1131,8 +1131,8 @@ Global Symbols
                              [Called By]

                              • >>   main
                              -

                              main (Thumb, 76 bytes, Stack size 0 bytes, main.o(i.main)) -

                              [Stack]

                              • Max Depth = 280
                              • Call Chain = main ⇒ app_spec_run ⇒ app_protocol_run ⇒ adapter_state_check ⇒ wait_c2_ready ⇒ pd_phy_open_vbus ⇒ adapter_state_check (Cycle) +

                                main (Thumb, 124 bytes, Stack size 0 bytes, main.o(i.main)) +

                                [Stack]

                                • Max Depth = 288
                                • Call Chain = main ⇒ app_spec_run ⇒ app_protocol_run ⇒ adapter_state_check ⇒ mos_switch_control ⇒ user_delay_ms ⇒ dpdn_protocol_run ⇒ fast_charge_reset ⇒ comp_powerout_open_nmos ⇒ comp_dac_open_vbus ⇒ comp_set_vol_cur ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb

                                [Calls]
                                • >>   user_timer_event
                                • >>   usba_detection @@ -1143,12 +1143,12 @@ Global Symbols

                                [Address Reference Count : 1]
                                • entry9a.o(.ARM.Collect$$$$0000000B)
                                -

                                mos_switch_control (Thumb, 164 bytes, Stack size 24 bytes, customized.o(i.mos_switch_control)) -

                                [Stack]

                                • Max Depth = 68
                                • Call Chain = mos_switch_control ⇒ comp_adc_get_vin12 ⇒ comp_adc_vin_vol_channel_coeff +

                                  mos_switch_control (Thumb, 162 bytes, Stack size 24 bytes, customized.o(i.mos_switch_control)) +

                                  [Stack]

                                  • Max Depth = 224
                                  • Call Chain = mos_switch_control ⇒ user_delay_ms ⇒ dpdn_protocol_run ⇒ fast_charge_reset ⇒ comp_powerout_open_nmos ⇒ comp_dac_open_vbus ⇒ comp_set_vol_cur ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb

                                  [Calls]
                                  • >>   comp_adc_get_vin12
                                  • >>   comp_adc_get_cur12 -
                                  • >>   drv_delay_us (via Veneer) +
                                  • >>   user_delay_ms
                                  • >>   gate3_control

                                  [Called By]
                                  • >>   adapter_state_check @@ -1166,22 +1166,22 @@ Global Symbols
                                    [Called By]
                                    • >>   main
                                    -

                                    pd_callback2_init (Thumb, 24 bytes, Stack size 0 bytes, pd_protocol.o(i.pd_callback2_init)) -

                                    [Called By]

                                    • >>   pd_sys_init +

                                      pd_callback2_init (Thumb, 24 bytes, Stack size 0 bytes, pd_protocol.o(i.pd_callback2_init)) +

                                      [Called By]

                                      • >>   pd_sys_init

                                      pd_phy_close_vbus (Thumb, 14 bytes, Stack size 0 bytes, pd_protocol.o(i.pd_phy_close_vbus))
                                      [Address Reference Count : 1]

                                      • pd_protocol.o(.constdata)

                                      pd_phy_open_vbus (Thumb, 176 bytes, Stack size 32 bytes, pd_protocol.o(i.pd_phy_open_vbus)) -

                                      [Stack]

                                      • Max Depth = 280 + In Cycle +

                                        [Stack]
                                        • Max Depth = 288 + In Cycle
                                        • Call Chain = pd_phy_open_vbus ⇒ adapter_state_check (Cycle)

                                        [Calls]
                                        • >>   comp_adc_get_vin12
                                        • >>   comp_discharge_vout12
                                        • >>   comp_powerout_open_nmos
                                        • >>   pd_protocol_run -
                                        • >>   drv_delay_us (via Veneer) +
                                        • >>   drv_delay_us (via Veneer)
                                        • >>   dpdn_protocol_run
                                        • >>   comp_powerout_default_set
                                        • >>   adapter_state_check @@ -1193,9 +1193,9 @@ Global Symbols

                                          pd_protocol_reset (Thumb, 62 bytes, Stack size 16 bytes, pd_protocol.o(i.pd_protocol_reset))

                                          [Stack]

                                          • Max Depth = 48
                                          • Call Chain = pd_protocol_reset ⇒ pd_src_cap_init ⇒ port1_pd_src_cap_init
                                          -
                                          [Calls]
                                          • >>   pd_src_cap_init -
                                          • >>   pd_pro_reset (via Veneer) -
                                          • >>   __aeabi_memclr (via Veneer) +
                                            [Calls]
                                            • >>   pd_src_cap_init +
                                            • >>   pd_pro_reset (via Veneer) +
                                            • >>   __aeabi_memclr (via Veneer)

                                            [Called By]
                                            • >>   app_protocol_reset
                                            • >>   scp_disable_pd_func @@ -1204,42 +1204,43 @@ Global Symbols

                                              pd_protocol_run (Thumb, 142 bytes, Stack size 16 bytes, pd_protocol.o(i.pd_protocol_run))

                                              [Stack]

                                              • Max Depth = 72
                                              • Call Chain = pd_protocol_run ⇒ send_new_capability ⇒ pd_src_cap_init ⇒ port1_pd_src_cap_init
                                              -
                                              [Calls]
                                              • >>   solve_huawei_matebook -
                                              • >>   pd_prl_run (via Veneer) -
                                              • >>   pd_pe_run (via Veneer) -
                                              • >>   send_new_capability +
                                                [Calls]
                                                • >>   solve_huawei_matebook +
                                                • >>   pd_prl_run (via Veneer) +
                                                • >>   pd_pe_run (via Veneer) +
                                                • >>   send_new_capability

                                                [Called By]
                                                • >>   app_protocol_run
                                                • >>   pd_phy_open_vbus +
                                                • >>   user_delay_ms
                                                -

                                                pd_src_cap_init (Thumb, 24 bytes, Stack size 8 bytes, customized.o(i.pd_src_cap_init)) +

                                                pd_src_cap_init (Thumb, 24 bytes, Stack size 8 bytes, customized.o(i.pd_src_cap_init))

                                                [Stack]

                                                • Max Depth = 32
                                                • Call Chain = pd_src_cap_init ⇒ port1_pd_src_cap_init
                                                -
                                                [Calls]
                                                • >>   port1_pd_src_cap_init -
                                                • >>   port0_pd_src_cap_init +
                                                  [Calls]
                                                  • >>   port1_pd_src_cap_init +
                                                  • >>   port0_pd_src_cap_init

                                                  [Called By]
                                                  • >>   pd_protocol_reset -
                                                  • >>   pd_sys_init -
                                                  • >>   send_new_capability +
                                                  • >>   pd_sys_init +
                                                  • >>   send_new_capability

                                                  pd_src_cap_msg_assemble_patch (Thumb, 8 bytes, Stack size 8 bytes, pd_protocol.o(i.pd_src_cap_msg_assemble_patch))

                                                  [Stack]

                                                  • Max Depth = 8
                                                  • Call Chain = pd_src_cap_msg_assemble_patch
                                                  -
                                                  [Calls]
                                                  • >>   pd_src_cap_msg_assemble (via Veneer) +
                                                    [Calls]
                                                    • >>   pd_src_cap_msg_assemble (via Veneer)

                                                    [Address Reference Count : 1]
                                                    • pd_protocol.o(.constdata)
                                                    -

                                                    pd_sys_init (Thumb, 84 bytes, Stack size 16 bytes, pd_protocol.o(i.pd_sys_init)) +

                                                    pd_sys_init (Thumb, 84 bytes, Stack size 16 bytes, pd_protocol.o(i.pd_sys_init))

                                                    [Stack]

                                                    • Max Depth = 48
                                                    • Call Chain = pd_sys_init ⇒ pd_src_cap_init ⇒ port1_pd_src_cap_init
                                                    -
                                                    [Calls]
                                                    • >>   pd_src_cap_init -
                                                    • >>   pd_sys_init_default (via Veneer) -
                                                    • >>   pd_phy_analog_set (via Veneer) -
                                                    • >>   pd_callback2_init +
                                                      [Calls]
                                                      • >>   pd_src_cap_init +
                                                      • >>   pd_sys_init_default (via Veneer) +
                                                      • >>   pd_phy_analog_set (via Veneer) +
                                                      • >>   pd_callback2_init
                                                      -
                                                      [Called By]
                                                      • >>   system_common_init +
                                                        [Called By]
                                                        • >>   system_common_init

                                                        pd_typec_insert_debunce (Thumb, 32 bytes, Stack size 0 bytes, pd_protocol.o(i.pd_typec_insert_debunce)) @@ -1247,29 +1248,29 @@ Global Symbols

                                                      • >>   PD0_TYPEC_Handler
                                                      -

                                                      pd_typec_time (Thumb, 44 bytes, Stack size 12 bytes, pd_protocol.o(i.pd_typec_time)) +

                                                      pd_typec_time (Thumb, 44 bytes, Stack size 12 bytes, pd_protocol.o(i.pd_typec_time))

                                                      [Stack]

                                                      • Max Depth = 12
                                                      • Call Chain = pd_typec_time

                                                      [Called By]
                                                      • >>   periodic_work

                                                      pe_src_cable_check_callback (Thumb, 26 bytes, Stack size 8 bytes, customized.o(i.pe_src_cable_check_callback)) -

                                                      [Stack]

                                                      • Max Depth = 264
                                                      • Call Chain = pe_src_cable_check_callback ⇒ port1_pe_src_cable_check_callback ⇒ adapter_state_check ⇒ wait_c2_ready ⇒ pd_phy_open_vbus ⇒ adapter_state_check (Cycle) +

                                                        [Stack]
                                                        • Max Depth = 272
                                                        • Call Chain = pe_src_cable_check_callback ⇒ port1_pe_src_cable_check_callback ⇒ adapter_state_check ⇒ mos_switch_control ⇒ user_delay_ms ⇒ dpdn_protocol_run ⇒ fast_charge_reset ⇒ comp_powerout_open_nmos ⇒ comp_dac_open_vbus ⇒ comp_set_vol_cur ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb
                                                        -
                                                        [Calls]
                                                        • >>   port1_pe_src_cable_check_callback -
                                                        • >>   port0_pe_src_cable_check_callback +
                                                          [Calls]
                                                          • >>   port1_pe_src_cable_check_callback +
                                                          • >>   port0_pe_src_cable_check_callback

                                                          [Address Reference Count : 1]
                                                          • pd_protocol.o(.constdata)

                                                          periodic_work (Thumb, 138 bytes, Stack size 24 bytes, app_spec.o(i.periodic_work))

                                                          [Stack]

                                                          • Max Depth = 136
                                                          • Call Chain = periodic_work ⇒ comp_pwr_vol_cable_comp_task ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb
                                                          -
                                                          [Calls]
                                                          • >>   pd_typec_time -
                                                          • >>   pd_timer_event_mgr (via Veneer) +
                                                            [Calls]
                                                            • >>   pd_typec_time +
                                                            • >>   pd_timer_event_mgr (via Veneer)
                                                            • >>   dpdn_time_func
                                                            • >>   comp_pwr_vol_cable_comp_task -
                                                            • >>   comp_powerout_state_machine_run -
                                                            • >>   comp_powerout_soft_time +
                                                            • >>   comp_powerout_state_machine_run +
                                                            • >>   comp_powerout_soft_time
                                                            • >>   comp_powerout_cc_mode_check
                                                            • >>   comp_discharge_ctrl_work
                                                            • >>   adc_sample_value_update @@ -1285,7 +1286,7 @@ Global Symbols

                                                              port0_capabiloties_features (Thumb, 30 bytes, Stack size 8 bytes, port0_customized.o(i.port0_capabiloties_features))

                                                              [Stack]

                                                              • Max Depth = 8
                                                              • Call Chain = port0_capabiloties_features
                                                              -
                                                              [Calls]
                                                              • >>   __aeabi_memcpy (via Veneer) +
                                                                [Calls]
                                                                • >>   __aeabi_memcpy (via Veneer)

                                                                [Called By]
                                                                • >>   capabiloties_features
                                                                @@ -1301,20 +1302,20 @@ Global Symbols

                                                              [Address Reference Count : 1]
                                                              • customized.o(.constdata)
                                                              -

                                                              port0_pd_src_cap_init (Thumb, 112 bytes, Stack size 24 bytes, port0_customized.o(i.port0_pd_src_cap_init)) +

                                                              port0_pd_src_cap_init (Thumb, 112 bytes, Stack size 24 bytes, port0_customized.o(i.port0_pd_src_cap_init))

                                                              [Stack]

                                                              • Max Depth = 24
                                                              • Call Chain = port0_pd_src_cap_init

                                                              [Calls]
                                                              • >>   __aeabi_memcpy4 (via Veneer)
                                                              -
                                                              [Called By]
                                                              • >>   port0_pe_src_cable_check_callback -
                                                              • >>   solve_huawei_matebook -
                                                              • >>   pd_src_cap_init +
                                                                [Called By]
                                                                • >>   port0_pe_src_cable_check_callback +
                                                                • >>   solve_huawei_matebook +
                                                                • >>   pd_src_cap_init
                                                                -

                                                                port0_pe_src_cable_check_callback (Thumb, 46 bytes, Stack size 8 bytes, port0_customized.o(i.port0_pe_src_cable_check_callback)) -

                                                                [Stack]

                                                                • Max Depth = 256
                                                                • Call Chain = port0_pe_src_cable_check_callback ⇒ adapter_state_check ⇒ wait_c2_ready ⇒ pd_phy_open_vbus ⇒ adapter_state_check (Cycle) +

                                                                  port0_pe_src_cable_check_callback (Thumb, 46 bytes, Stack size 8 bytes, port0_customized.o(i.port0_pe_src_cable_check_callback)) +

                                                                  [Stack]

                                                                  • Max Depth = 264
                                                                  • Call Chain = port0_pe_src_cable_check_callback ⇒ adapter_state_check ⇒ mos_switch_control ⇒ user_delay_ms ⇒ dpdn_protocol_run ⇒ fast_charge_reset ⇒ comp_powerout_open_nmos ⇒ comp_dac_open_vbus ⇒ comp_set_vol_cur ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb
                                                                  -
                                                                  [Calls]
                                                                  • >>   port0_pd_src_cap_init +
                                                                    [Calls]
                                                                    • >>   port0_pd_src_cap_init
                                                                    • >>   adapter_state_check

                                                                    [Called By]
                                                                    • >>   pe_src_cable_check_callback @@ -1325,12 +1326,12 @@ Global Symbols

                                                                    [Address Reference Count : 1]
                                                                    • customized.o(.constdata)
                                                                    -

                                                                    port0_scp_def_vol_init (Thumb, 14 bytes, Stack size 8 bytes, port0_customized.o(i.port0_scp_def_vol_init)) +

                                                                    port0_scp_def_vol_init (Thumb, 14 bytes, Stack size 8 bytes, port0_customized.o(i.port0_scp_def_vol_init))

                                                                    [Stack]

                                                                    • Max Depth = 8
                                                                    • Call Chain = port0_scp_def_vol_init
                                                                    -
                                                                    [Calls]
                                                                    • >>   __aeabi_memcpy (via Veneer) +
                                                                      [Calls]
                                                                      • >>   __aeabi_memcpy (via Veneer)
                                                                      -
                                                                      [Called By]
                                                                      • >>   scp_def_vol_init +
                                                                        [Called By]
                                                                        • >>   scp_def_vol_init

                                                                        port0_scp_power_request (Thumb, 18 bytes, Stack size 8 bytes, port0_customized.o(i.port0_scp_power_request)) @@ -1338,16 +1339,16 @@ Global Symbols


                                                                      [Address Reference Count : 1]
                                                                      • customized.o(.constdata)
                                                                      -

                                                                      port0_scp_reg_hook_register (Thumb, 6 bytes, Stack size 0 bytes, port0_customized.o(i.port0_scp_reg_hook_register)) -

                                                                      [Called By]

                                                                      • >>   scp_reg_hook_register +

                                                                        port0_scp_reg_hook_register (Thumb, 6 bytes, Stack size 0 bytes, port0_customized.o(i.port0_scp_reg_hook_register)) +

                                                                        [Called By]

                                                                        • >>   scp_reg_hook_register
                                                                        -

                                                                        port0_scp_register_attr_upgrade (Thumb, 30 bytes, Stack size 8 bytes, port0_customized.o(i.port0_scp_register_attr_upgrade)) +

                                                                        port0_scp_register_attr_upgrade (Thumb, 30 bytes, Stack size 8 bytes, port0_customized.o(i.port0_scp_register_attr_upgrade))

                                                                        [Stack]

                                                                        • Max Depth = 8
                                                                        • Call Chain = port0_scp_register_attr_upgrade
                                                                        -
                                                                        [Calls]
                                                                        • >>   scp_register_attr_rom_list (via Veneer) +
                                                                          [Calls]
                                                                          • >>   scp_register_attr_rom_list (via Veneer)
                                                                          -
                                                                          [Called By]
                                                                          • >>   scp_register_attr_upgrade +
                                                                            [Called By]
                                                                            • >>   scp_register_attr_upgrade

                                                                            port1_afc_power_request (Thumb, 18 bytes, Stack size 8 bytes, port1_customized.o(i.port1_afc_power_request)) @@ -1358,7 +1359,7 @@ Global Symbols

                                                                            port1_capabiloties_features (Thumb, 30 bytes, Stack size 8 bytes, port1_customized.o(i.port1_capabiloties_features))

                                                                            [Stack]

                                                                            • Max Depth = 8
                                                                            • Call Chain = port1_capabiloties_features
                                                                            -
                                                                            [Calls]
                                                                            • >>   __aeabi_memcpy (via Veneer) +
                                                                              [Calls]
                                                                              • >>   __aeabi_memcpy (via Veneer)

                                                                              [Called By]
                                                                              • >>   capabiloties_features
                                                                              @@ -1374,20 +1375,20 @@ Global Symbols

                                                                            [Address Reference Count : 1]
                                                                            • customized.o(.constdata)
                                                                            -

                                                                            port1_pd_src_cap_init (Thumb, 88 bytes, Stack size 24 bytes, port1_customized.o(i.port1_pd_src_cap_init)) +

                                                                            port1_pd_src_cap_init (Thumb, 88 bytes, Stack size 24 bytes, port1_customized.o(i.port1_pd_src_cap_init))

                                                                            [Stack]

                                                                            • Max Depth = 24
                                                                            • Call Chain = port1_pd_src_cap_init

                                                                            [Calls]
                                                                            • >>   __aeabi_memcpy4 (via Veneer)
                                                                            -
                                                                            [Called By]
                                                                            • >>   port1_pe_src_cable_check_callback -
                                                                            • >>   solve_huawei_matebook -
                                                                            • >>   pd_src_cap_init +
                                                                              [Called By]
                                                                              • >>   port1_pe_src_cable_check_callback +
                                                                              • >>   solve_huawei_matebook +
                                                                              • >>   pd_src_cap_init
                                                                              -

                                                                              port1_pe_src_cable_check_callback (Thumb, 46 bytes, Stack size 8 bytes, port1_customized.o(i.port1_pe_src_cable_check_callback)) -

                                                                              [Stack]

                                                                              • Max Depth = 256
                                                                              • Call Chain = port1_pe_src_cable_check_callback ⇒ adapter_state_check ⇒ wait_c2_ready ⇒ pd_phy_open_vbus ⇒ adapter_state_check (Cycle) +

                                                                                port1_pe_src_cable_check_callback (Thumb, 46 bytes, Stack size 8 bytes, port1_customized.o(i.port1_pe_src_cable_check_callback)) +

                                                                                [Stack]

                                                                                • Max Depth = 264
                                                                                • Call Chain = port1_pe_src_cable_check_callback ⇒ adapter_state_check ⇒ mos_switch_control ⇒ user_delay_ms ⇒ dpdn_protocol_run ⇒ fast_charge_reset ⇒ comp_powerout_open_nmos ⇒ comp_dac_open_vbus ⇒ comp_set_vol_cur ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb
                                                                                -
                                                                                [Calls]
                                                                                • >>   port1_pd_src_cap_init +
                                                                                  [Calls]
                                                                                  • >>   port1_pd_src_cap_init
                                                                                  • >>   adapter_state_check

                                                                                  [Called By]
                                                                                  • >>   pe_src_cable_check_callback @@ -1398,12 +1399,12 @@ Global Symbols

                                                                                  [Address Reference Count : 1]
                                                                                  • customized.o(.constdata)
                                                                                  -

                                                                                  port1_scp_def_vol_init (Thumb, 14 bytes, Stack size 8 bytes, port1_customized.o(i.port1_scp_def_vol_init)) +

                                                                                  port1_scp_def_vol_init (Thumb, 14 bytes, Stack size 8 bytes, port1_customized.o(i.port1_scp_def_vol_init))

                                                                                  [Stack]

                                                                                  • Max Depth = 8
                                                                                  • Call Chain = port1_scp_def_vol_init
                                                                                  -
                                                                                  [Calls]
                                                                                  • >>   __aeabi_memcpy (via Veneer) +
                                                                                    [Calls]
                                                                                    • >>   __aeabi_memcpy (via Veneer)
                                                                                    -
                                                                                    [Called By]
                                                                                    • >>   scp_def_vol_init +
                                                                                      [Called By]
                                                                                      • >>   scp_def_vol_init

                                                                                      port1_scp_power_request (Thumb, 18 bytes, Stack size 8 bytes, port1_customized.o(i.port1_scp_power_request)) @@ -1411,16 +1412,16 @@ Global Symbols


                                                                                    [Address Reference Count : 1]
                                                                                    • customized.o(.constdata)
                                                                                    -

                                                                                    port1_scp_reg_hook_register (Thumb, 6 bytes, Stack size 0 bytes, port1_customized.o(i.port1_scp_reg_hook_register)) -

                                                                                    [Called By]

                                                                                    • >>   scp_reg_hook_register +

                                                                                      port1_scp_reg_hook_register (Thumb, 6 bytes, Stack size 0 bytes, port1_customized.o(i.port1_scp_reg_hook_register)) +

                                                                                      [Called By]

                                                                                      • >>   scp_reg_hook_register
                                                                                      -

                                                                                      port1_scp_register_attr_upgrade (Thumb, 30 bytes, Stack size 8 bytes, port1_customized.o(i.port1_scp_register_attr_upgrade)) +

                                                                                      port1_scp_register_attr_upgrade (Thumb, 30 bytes, Stack size 8 bytes, port1_customized.o(i.port1_scp_register_attr_upgrade))

                                                                                      [Stack]

                                                                                      • Max Depth = 8
                                                                                      • Call Chain = port1_scp_register_attr_upgrade
                                                                                      -
                                                                                      [Calls]
                                                                                      • >>   scp_register_attr_rom_list (via Veneer) +
                                                                                        [Calls]
                                                                                        • >>   scp_register_attr_rom_list (via Veneer)
                                                                                        -
                                                                                        [Called By]
                                                                                        • >>   scp_register_attr_upgrade +
                                                                                          [Called By]
                                                                                          • >>   scp_register_attr_upgrade

                                                                                          port_inser_priority_judgment (Thumb, 64 bytes, Stack size 16 bytes, customized.o(i.port_inser_priority_judgment)) @@ -1449,7 +1450,7 @@ Global Symbols

                                                                                          [Stack]

                                                                                          • Max Depth = 64
                                                                                          • Call Chain = scp_afc_identify ⇒ scp_protocol_reset ⇒ scp_register_attr_upgrade ⇒ port1_scp_register_attr_upgrade

                                                                                          [Calls]
                                                                                          • >>   comp_powerout_prototol_type_set -
                                                                                          • >>   afc_packet_reply (via Veneer) +
                                                                                          • >>   afc_packet_reply (via Veneer)
                                                                                          • >>   scp_protocol_reset

                                                                                          [Address Reference Count : 1]
                                                                                          • qc_scp_protocol.o(.constdata) @@ -1461,13 +1462,13 @@ Global Symbols

                                                                                          [Address Reference Count : 1]
                                                                                          • qc_scp_protocol.o(.constdata)
                                                                                          -

                                                                                          scp_def_vol_init (Thumb, 20 bytes, Stack size 8 bytes, customized.o(i.scp_def_vol_init)) +

                                                                                          scp_def_vol_init (Thumb, 20 bytes, Stack size 8 bytes, customized.o(i.scp_def_vol_init))

                                                                                          [Stack]

                                                                                          • Max Depth = 16
                                                                                          • Call Chain = scp_def_vol_init ⇒ port1_scp_def_vol_init
                                                                                          -
                                                                                          [Calls]
                                                                                          • >>   port1_scp_def_vol_init -
                                                                                          • >>   port0_scp_def_vol_init +
                                                                                            [Calls]
                                                                                            • >>   port1_scp_def_vol_init +
                                                                                            • >>   port0_scp_def_vol_init
                                                                                            -
                                                                                            [Called By]
                                                                                            • >>   scp_sys_init +
                                                                                              [Called By]
                                                                                              • >>   scp_sys_init
                                                                                              • >>   scp_protocol_reset
                                                                                              @@ -1482,8 +1483,8 @@ Global Symbols

                                                                                              scp_mode_exit_action (Thumb, 56 bytes, Stack size 16 bytes, qc_scp_protocol.o(i.scp_mode_exit_action))

                                                                                              [Stack]

                                                                                              • Max Depth = 16
                                                                                              • Call Chain = scp_mode_exit_action
                                                                                              -
                                                                                              [Calls]
                                                                                              • >>   __aeabi_memcpy (via Veneer) -
                                                                                              • >>   fcp_set_vi (via Veneer) +
                                                                                                [Calls]
                                                                                                • >>   __aeabi_memcpy (via Veneer) +
                                                                                                • >>   fcp_set_vi (via Veneer)

                                                                                                [Address Reference Count : 1]
                                                                                                • qc_scp_protocol.o(.constdata)
                                                                                                @@ -1506,76 +1507,76 @@ Global Symbols

                                                                                                scp_protocol_reset (Thumb, 48 bytes, Stack size 16 bytes, qc_scp_protocol.o(i.scp_protocol_reset))

                                                                                                [Stack]

                                                                                                • Max Depth = 40
                                                                                                • Call Chain = scp_protocol_reset ⇒ scp_register_attr_upgrade ⇒ port1_scp_register_attr_upgrade
                                                                                                -
                                                                                                [Calls]
                                                                                                • >>   scp_register_attr_upgrade -
                                                                                                • >>   scp_def_vol_init -
                                                                                                • >>   scp_reset_default (via Veneer) +
                                                                                                  [Calls]
                                                                                                  • >>   scp_register_attr_upgrade +
                                                                                                  • >>   scp_def_vol_init +
                                                                                                  • >>   scp_reset_default (via Veneer)

                                                                                                  [Called By]
                                                                                                  • >>   charge_protocol_reset
                                                                                                  • >>   scp_afc_identify
                                                                                                  -

                                                                                                  scp_reg_hook_register (Thumb, 20 bytes, Stack size 8 bytes, customized.o(i.scp_reg_hook_register)) +

                                                                                                  scp_reg_hook_register (Thumb, 20 bytes, Stack size 8 bytes, customized.o(i.scp_reg_hook_register))

                                                                                                  [Stack]

                                                                                                  • Max Depth = 8
                                                                                                  • Call Chain = scp_reg_hook_register
                                                                                                  -
                                                                                                  [Calls]
                                                                                                  • >>   port1_scp_reg_hook_register -
                                                                                                  • >>   port0_scp_reg_hook_register +
                                                                                                    [Calls]
                                                                                                    • >>   port1_scp_reg_hook_register +
                                                                                                    • >>   port0_scp_reg_hook_register
                                                                                                    -
                                                                                                    [Called By]
                                                                                                    • >>   scp_sys_init +
                                                                                                      [Called By]
                                                                                                      • >>   scp_sys_init
                                                                                                      -

                                                                                                      scp_register_attr_upgrade (Thumb, 36 bytes, Stack size 16 bytes, customized.o(i.scp_register_attr_upgrade)) +

                                                                                                      scp_register_attr_upgrade (Thumb, 36 bytes, Stack size 16 bytes, customized.o(i.scp_register_attr_upgrade))

                                                                                                      [Stack]

                                                                                                      • Max Depth = 24
                                                                                                      • Call Chain = scp_register_attr_upgrade ⇒ port1_scp_register_attr_upgrade
                                                                                                      -
                                                                                                      [Calls]
                                                                                                      • >>   scp_register_attr_rom_list (via Veneer) -
                                                                                                      • >>   port1_scp_register_attr_upgrade -
                                                                                                      • >>   port0_scp_register_attr_upgrade +
                                                                                                        [Calls]
                                                                                                        • >>   scp_register_attr_rom_list (via Veneer) +
                                                                                                        • >>   port1_scp_register_attr_upgrade +
                                                                                                        • >>   port0_scp_register_attr_upgrade
                                                                                                        -
                                                                                                        [Called By]
                                                                                                        • >>   scp_sys_init +
                                                                                                          [Called By]
                                                                                                          • >>   scp_sys_init
                                                                                                          • >>   scp_protocol_reset
                                                                                                          -

                                                                                                          scp_sys_init (Thumb, 86 bytes, Stack size 16 bytes, qc_scp_protocol.o(i.scp_sys_init)) +

                                                                                                          scp_sys_init (Thumb, 86 bytes, Stack size 16 bytes, qc_scp_protocol.o(i.scp_sys_init))

                                                                                                          [Stack]

                                                                                                          • Max Depth = 40
                                                                                                          • Call Chain = scp_sys_init ⇒ scp_register_attr_upgrade ⇒ port1_scp_register_attr_upgrade
                                                                                                          -
                                                                                                          [Calls]
                                                                                                          • >>   scp_register_attr_upgrade -
                                                                                                          • >>   scp_reg_hook_register -
                                                                                                          • >>   scp_def_vol_init -
                                                                                                          • >>   scp_register_value_init (via Veneer) -
                                                                                                          • >>   scp_prl_hook_init (via Veneer) -
                                                                                                          • >>   scp_phy_rx_int_all_mask (via Veneer) +
                                                                                                            [Calls]
                                                                                                            • >>   scp_register_attr_upgrade +
                                                                                                            • >>   scp_reg_hook_register +
                                                                                                            • >>   scp_def_vol_init +
                                                                                                            • >>   scp_register_value_init (via Veneer) +
                                                                                                            • >>   scp_prl_hook_init (via Veneer) +
                                                                                                            • >>   scp_phy_rx_int_all_mask (via Veneer)
                                                                                                            • >>   scp_phy_reg_init (via Veneer) -
                                                                                                            • >>   scp_phy_hook_init (via Veneer) +
                                                                                                            • >>   scp_phy_hook_init (via Veneer)
                                                                                                            -
                                                                                                            [Called By]
                                                                                                            • >>   system_common_init +
                                                                                                              [Called By]
                                                                                                              • >>   system_common_init
                                                                                                              -

                                                                                                              send_new_capability (Thumb, 76 bytes, Stack size 24 bytes, pd_protocol.o(i.send_new_capability)) +

                                                                                                              send_new_capability (Thumb, 76 bytes, Stack size 24 bytes, pd_protocol.o(i.send_new_capability))

                                                                                                              [Stack]

                                                                                                              • Max Depth = 56
                                                                                                              • Call Chain = send_new_capability ⇒ pd_src_cap_init ⇒ port1_pd_src_cap_init
                                                                                                              -
                                                                                                              [Calls]
                                                                                                              • >>   pd_src_cap_init +
                                                                                                                [Calls]
                                                                                                                • >>   pd_src_cap_init

                                                                                                                [Called By]
                                                                                                                • >>   pd_protocol_run
                                                                                                                -

                                                                                                                solve_huawei_matebook (Thumb, 128 bytes, Stack size 24 bytes, customized.o(i.solve_huawei_matebook)) +

                                                                                                                solve_huawei_matebook (Thumb, 128 bytes, Stack size 24 bytes, customized.o(i.solve_huawei_matebook))

                                                                                                                [Stack]

                                                                                                                • Max Depth = 48
                                                                                                                • Call Chain = solve_huawei_matebook ⇒ port1_pd_src_cap_init
                                                                                                                -
                                                                                                                [Calls]
                                                                                                                • >>   port1_pd_src_cap_init -
                                                                                                                • >>   port0_pd_src_cap_init -
                                                                                                                • >>   PE_SRC_Send_Soft_Reset_action (via Veneer) +
                                                                                                                  [Calls]
                                                                                                                  • >>   port1_pd_src_cap_init +
                                                                                                                  • >>   port0_pd_src_cap_init +
                                                                                                                  • >>   PE_SRC_Send_Soft_Reset_action (via Veneer)

                                                                                                                  [Called By]
                                                                                                                  • >>   pd_protocol_run
                                                                                                                  -

                                                                                                                  system_common_init (Thumb, 108 bytes, Stack size 16 bytes, customized.o(i.system_common_init)) +

                                                                                                                  system_common_init (Thumb, 108 bytes, Stack size 16 bytes, customized.o(i.system_common_init))

                                                                                                                  [Stack]

                                                                                                                  • Max Depth = 160
                                                                                                                  • Call Chain = system_common_init ⇒ comp_powerout_init ⇒ comp_powerout_default_set ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb

                                                                                                                  [Calls]
                                                                                                                  • >>   usb_bc_init (via Veneer) -
                                                                                                                  • >>   scp_sys_init -
                                                                                                                  • >>   qc_sys_init (via Veneer) -
                                                                                                                  • >>   pd_sys_init +
                                                                                                                  • >>   scp_sys_init +
                                                                                                                  • >>   qc_sys_init (via Veneer) +
                                                                                                                  • >>   pd_sys_init
                                                                                                                  • >>   comp_powerout_init -
                                                                                                                  • >>   comp_dma_init (via Veneer) +
                                                                                                                  • >>   comp_dma_init (via Veneer)
                                                                                                                  • >>   app_dpdn_init

                                                                                                                  [Called By]
                                                                                                                  • >>   system_init @@ -1585,12 +1586,12 @@ Global Symbols

                                                                                                                    [Stack]
                                                                                                                    • Max Depth = 184
                                                                                                                    • Call Chain = system_init ⇒ system_common_init ⇒ comp_powerout_init ⇒ comp_powerout_default_set ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb

                                                                                                                    [Calls]
                                                                                                                    • >>   comp_adc_get_vin12 -
                                                                                                                    • >>   drv_watchdog_init (via Veneer) -
                                                                                                                    • >>   drv_delay_us (via Veneer) -
                                                                                                                    • >>   comp_protection_init -
                                                                                                                    • >>   comp_dac_2fb_patch_enable -
                                                                                                                    • >>   comp_adc_init -
                                                                                                                    • >>   system_common_init +
                                                                                                                    • >>   drv_watchdog_init (via Veneer) +
                                                                                                                    • >>   drv_delay_us (via Veneer) +
                                                                                                                    • >>   comp_protection_init +
                                                                                                                    • >>   comp_dac_2fb_patch_enable +
                                                                                                                    • >>   comp_adc_init +
                                                                                                                    • >>   system_common_init

                                                                                                                    [Called By]
                                                                                                                    • >>   main
                                                                                                                    @@ -1616,6 +1617,17 @@ Global Symbols
                                                                                                                    [Called By]
                                                                                                                    • >>   main
                                                                                                                    +

                                                                                                                    user_delay_ms (Thumb, 74 bytes, Stack size 24 bytes, customized.o(i.user_delay_ms)) +

                                                                                                                    [Stack]

                                                                                                                    • Max Depth = 200
                                                                                                                    • Call Chain = user_delay_ms ⇒ dpdn_protocol_run ⇒ fast_charge_reset ⇒ comp_powerout_open_nmos ⇒ comp_dac_open_vbus ⇒ comp_set_vol_cur ⇒ comp_powerout_vol_set ⇒ comp_dac_output_voltage_set ⇒ comp_dac_cv_target_set ⇒ comp_dac_cv_2dcdc_fb +
                                                                                                                    +
                                                                                                                    [Calls]
                                                                                                                    • >>   pd_protocol_run +
                                                                                                                    • >>   drv_delay_us (via Veneer) +
                                                                                                                    • >>   dpdn_protocol_run +
                                                                                                                    +
                                                                                                                    [Called By]
                                                                                                                    • >>   mos_switch_control +
                                                                                                                    • >>   adapter_state_check +
                                                                                                                    +

                                                                                                                    user_timer_event (Thumb, 46 bytes, Stack size 8 bytes, customized.o(i.user_timer_event))

                                                                                                                    [Stack]

                                                                                                                    • Max Depth = 8
                                                                                                                    • Call Chain = user_timer_event
                                                                                                                    diff --git a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/cps8860_Target 1.dep b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/cps8860_Target 1.dep index bb53920..ca52824 100644 --- a/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/cps8860_Target 1.dep +++ b/PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/cps8860_Target 1.dep @@ -7,7 +7,7 @@ I (..\..\common\cmsis\ARM\inc\core_cm0.h)(0x6805B2C1) I (..\..\common\cmsis\ARM\inc\core_cmInstr.h)(0x6805B2C1) I (..\..\common\cmsis\ARM\inc\core_cmFunc.h)(0x6805B2C1) I (..\..\common\reg_def\system_CMSDK_CM0.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x5E8E2EB2) I (D:\Keil_v5\ARM\ARMCC\include\stdbool.h)(0x5E8E2EB2) @@ -127,7 +127,7 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1) I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -247,7 +247,7 @@ I (..\code\inc\customized.h)(0x68FF0CF8) I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1) I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1) I (..\..\common\rom_inc\comp\comp_dma.h)(0x6805B2C1) I (..\..\common\rom_inc\protocol\bc.h)(0x6805B2C1) @@ -298,7 +298,7 @@ I (..\code\inc\port1_customized.h)(0x68FF0CF8) I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1) I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1) I (..\code\inc\comp_protection.h)(0x687A2544) -F (..\..\common\app\src\main.c)(0x68FF0CF8)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -ID:\Keil_v5\ARM\CMSIS\Include -D__UVISION_VERSION="533" -DARMCM0 -o .\objects\main.o --omf_browse .\objects\main.crf --depend .\objects\main.d) +F (..\..\common\app\src\main.c)(0x691C3EDE)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -ID:\Keil_v5\ARM\CMSIS\Include -D__UVISION_VERSION="533" -DARMCM0 -o .\objects\main.o --omf_browse .\objects\main.crf --depend .\objects\main.d) I (..\..\common\app\inc\app_spec.h)(0x6805B2C1) I (..\code\inc\customized.h)(0x68FF0CF8) I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1) @@ -359,7 +359,7 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1) I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -413,7 +413,7 @@ I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1) I (..\code\inc\port1_customized.h)(0x68FF0CF8) I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1) I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1) -F (..\code\src\customized.c)(0x68FF0CF8)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -ID:\Keil_v5\ARM\CMSIS\Include -D__UVISION_VERSION="533" -DARMCM0 -o .\objects\customized.o --omf_browse .\objects\customized.crf --depend .\objects\customized.d) +F (..\code\src\customized.c)(0x691C45DB)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -ID:\Keil_v5\ARM\CMSIS\Include -D__UVISION_VERSION="533" -DARMCM0 -o .\objects\customized.o --omf_browse .\objects\customized.crf --depend .\objects\customized.d) I (..\code\inc\customized.h)(0x68FF0CF8) I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x5E8E2EB2) @@ -473,7 +473,7 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1) I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -590,7 +590,7 @@ I (..\code\inc\common.h)(0x6805B2C1) I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1) I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -705,7 +705,7 @@ I (..\code\inc\common.h)(0x6805B2C1) I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1) I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -759,8 +759,8 @@ I (..\code\inc\comp_primary_side.h)(0x6805B2C1) I (..\code\inc\port0_customized.h)(0x6805B2C1) I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1) I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1) -F (..\code\inc\config.h)(0x68FF0D3C)() -F (..\code\src\comp_dac.c)(0x68FF0CF8)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -ID:\Keil_v5\ARM\CMSIS\Include -D__UVISION_VERSION="533" -DARMCM0 -o .\objects\comp_dac.o --omf_browse .\objects\comp_dac.crf --depend .\objects\comp_dac.d) +F (..\code\inc\config.h)(0x691C461F)() +F (..\code\src\comp_dac.c)(0x691C4591)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -ID:\Keil_v5\ARM\CMSIS\Include -D__UVISION_VERSION="533" -DARMCM0 -o .\objects\comp_dac.o --omf_browse .\objects\comp_dac.crf --depend .\objects\comp_dac.d) I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16) I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x5E8E2EB2) @@ -818,7 +818,7 @@ I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1) I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -932,7 +932,7 @@ I (..\..\common\rom_inc\drv\drv_scp_phy.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1) I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -1049,7 +1049,7 @@ I (..\..\common\rom_inc\drv\drv_scp_phy.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1) I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -1167,7 +1167,7 @@ I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -1260,7 +1260,7 @@ I (..\..\common\rom_inc\drv\drv_scp_phy.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1) I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -1373,7 +1373,7 @@ I (..\..\common\rom_inc\drv\drv_scp_phy.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1) I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -1489,7 +1489,7 @@ I (..\..\common\rom_inc\drv\drv_scp_phy.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1) I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -1559,7 +1559,7 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1) I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -1675,7 +1675,7 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1) I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) @@ -1729,7 +1729,7 @@ I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1) I (..\code\inc\port1_customized.h)(0x68FF0CF8) I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1) I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1) -F (..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c)(0x68707983)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -ID:\Keil_v5\ARM\CMSIS\Include -D__UVISION_VERSION="533" -DARMCM0 -o .\objects\pd_protocol.o --omf_browse .\objects\pd_protocol.crf --depend .\objects\pd_protocol.d) +F (..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c)(0x691C4601)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -ID:\Keil_v5\ARM\CMSIS\Include -D__UVISION_VERSION="533" -DARMCM0 -o .\objects\pd_protocol.o --omf_browse .\objects\pd_protocol.crf --depend .\objects\pd_protocol.d) I (..\..\common\comp\protocol\pd_protocol\inc\pd_protocol.h)(0x6805BC94) I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x5E8E2EB2) @@ -1805,7 +1805,7 @@ I (..\..\common\rom_inc\protocol\task_pd_prl_func.h)(0x6805B2C1) I (..\..\common\rom_inc\protocol\task_pd_pe_func.h)(0x6805B2C1) I (..\..\common\rom_inc\protocol\task_pd_epr.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_powerout.h)(0x68FF0CF8) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16) I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) @@ -1905,7 +1905,7 @@ I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1) I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1) I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1) I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1) -I (..\code\inc\config.h)(0x68FF0D3C) +I (..\code\inc\config.h)(0x691C461F) I (..\..\common\rom_inc\comp\comp_config.h)(0x68FF0CF8) I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1) I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x5E8E2EB2) diff --git a/PD_CPS8860_A1_CPS_Common_Demo/common/app/src/main.c b/PD_CPS8860_A1_CPS_Common_Demo/common/app/src/main.c index 58d9808..e25a4e3 100644 --- a/PD_CPS8860_A1_CPS_Common_Demo/common/app/src/main.c +++ b/PD_CPS8860_A1_CPS_Common_Demo/common/app/src/main.c @@ -29,6 +29,14 @@ int main(void) REG_TRIM_DPDN1->bf.rh_am = 4; REG_TRIM_DPDN2->bf.rh_am = 4; + // gate速度开启时间改为6ms + REG_ANALOG_GATE1->bf.on_sel = 1; // 设置开mos时间为12ms + REG_ANALOG_GATE2->bf.on_sel = 1; + REG_ANALOG_GATE3->bf.on_sel = 1; + REG_ANALOG_GATE1->bf.fast_on = 0; + REG_ANALOG_GATE2->bf.fast_on = 0; + REG_ANALOG_GATE3->bf.fast_on = 0; + while(1) { #if TYPEC_PORT0_SUPPORT diff --git a/PD_CPS8860_A1_CPS_Common_Demo/common/comp/protocol/pd_protocol/src/pd_protocol.c b/PD_CPS8860_A1_CPS_Common_Demo/common/comp/protocol/pd_protocol/src/pd_protocol.c index 76df0a7..3ba8d3b 100644 --- a/PD_CPS8860_A1_CPS_Common_Demo/common/comp/protocol/pd_protocol/src/pd_protocol.c +++ b/PD_CPS8860_A1_CPS_Common_Demo/common/comp/protocol/pd_protocol/src/pd_protocol.c @@ -430,6 +430,23 @@ static void patch_pd_uvdm_for_hw_mate40(uint8_t port,pd_param_s *pd_param) */ void pd_protocol_run(uint8_t port, pd_param_s *pd_param) { + /* + static uint8_t new_state = 0, old_state = 0xff; + + if( port == TYPEC_PORT1 ) + { + new_state = pd_param->pd_pe_status.pe_status; + if(old_state != new_state) + { + old_state = new_state; + log_info("pe:%d %d %d\n", + old_state, + COMP_ADC_GET_VIN1_VOL(), + COMP_ADC_GET_VIN2_VOL()); + } + } + */ + if(!g_powerout_info[port].support_protocol.pd_support) { return;