From cad32c3930a0803fcad433cc3ba2e5ab4fec5e0e Mon Sep 17 00:00:00 2001 From: loongson Date: Fri, 6 Sep 2024 08:50:21 +0800 Subject: [PATCH] update to 210c2be518 1. remove unused file and some improvement for pwm and clk --- arch/loongarch/loongson64/init.c | 2 +- drivers/clk/loongson/clk-loongson2k300.c | 6 +++--- drivers/net/can/ls_canfd/lscanfd.ko | Bin 169392 -> 0 bytes drivers/net/can/ls_canfd/lscanfd_platform.ko | Bin 27720 -> 0 bytes drivers/pwm/pwm-ls.c | 5 +++++ 5 files changed, 9 insertions(+), 4 deletions(-) delete mode 100644 drivers/net/can/ls_canfd/lscanfd.ko delete mode 100644 drivers/net/can/ls_canfd/lscanfd_platform.ko diff --git a/arch/loongarch/loongson64/init.c b/arch/loongarch/loongson64/init.c index 45b1b0ac7..68aba3c25 100644 --- a/arch/loongarch/loongson64/init.c +++ b/arch/loongarch/loongson64/init.c @@ -258,7 +258,7 @@ static void *get_fdt_by_board_name(void) #elif defined(CONFIG_LOONGSON_2K300) if (!strncmp(b_info.board_name, "LS2K300-MINI-DP", 15)) fdt = &__dtb_ls2k300_mini_dp_begin; - if (!strncmp(b_info.board_name, "LS2K300-PAI", 11)) + else if (!strncmp(b_info.board_name, "LS2K300-PAI", 11)) fdt = &__dtb_ls2k300_pai_begin; else fdt = &__dtb_ls2k300_mini_dp_begin; diff --git a/drivers/clk/loongson/clk-loongson2k300.c b/drivers/clk/loongson/clk-loongson2k300.c index 7c944687d..668f59d5b 100644 --- a/drivers/clk/loongson/clk-loongson2k300.c +++ b/drivers/clk/loongson/clk-loongson2k300.c @@ -494,7 +494,7 @@ static struct ls2k_clock_desc ls2k_clock_desc_set[CLK_CNT] = { .clk_ops = &ls2k300_cpu_clk_ops, #else .fixed = 1, - .div_reg_set = (struct ls2k_reg_field_desc[]){{.reg_offset = PLL_NODE_0_OFFSET, .bit_offset = PLL_NODE_0_REFC_SHIFT, .bit_mask = PLL_NODE_0_REFC_MASK}, {.bit_mask = 0}}, + .div_reg_set = (struct ls2k_reg_field_desc[]){{.reg_offset = PLL_NODE_0_OFFSET, .bit_offset = PLL_NODE_0_ODIV_SHIFT, .bit_mask = PLL_NODE_0_ODIV_MASK}, {.bit_mask = 0}}, .freqscale_reg_set = (struct ls2k_reg_field_desc[]){{.reg_offset = PLL_FREQ_SC, .bit_offset = PLL_FREQSCALE_NODE_SHIFT, .bit_mask = PLL_FREQSCALE_NODE_MASK}, {.bit_mask = 0}}, #endif }, @@ -507,7 +507,7 @@ static struct ls2k_clock_desc ls2k_clock_desc_set[CLK_CNT] = { .clk_ops = &ls2k300_cpu_clk_ops, #else .fixed = 1, - .div_reg_set = (struct ls2k_reg_field_desc[]){{.reg_offset = PLL_NODE_0_OFFSET, .bit_offset = PLL_NODE_0_REFC_SHIFT, .bit_mask = PLL_NODE_0_REFC_MASK}, {.bit_mask = 0}}, + .div_reg_set = (struct ls2k_reg_field_desc[]){{.reg_offset = PLL_NODE_0_OFFSET, .bit_offset = PLL_NODE_0_ODIV_SHIFT, .bit_mask = PLL_NODE_0_ODIV_MASK}, {.bit_mask = 0}}, .freqscale_reg_set = (struct ls2k_reg_field_desc[]){{.reg_offset = PLL_FREQ_SC, .bit_offset = PLL_FREQSCALE_NODE_SHIFT, .bit_mask = PLL_FREQSCALE_NODE_MASK}, {.bit_mask = 0}}, #endif }, @@ -520,7 +520,7 @@ static struct ls2k_clock_desc ls2k_clock_desc_set[CLK_CNT] = { .clk_ops = &ls2k300_cpu_clk_ops, #else .fixed = 1, - .div_reg_set = (struct ls2k_reg_field_desc[]){{.reg_offset = PLL_NODE_0_OFFSET, .bit_offset = PLL_NODE_0_REFC_SHIFT, .bit_mask = PLL_NODE_0_REFC_MASK}, {.bit_mask = 0}}, + .div_reg_set = (struct ls2k_reg_field_desc[]){{.reg_offset = PLL_NODE_0_OFFSET, .bit_offset = PLL_NODE_0_ODIV_SHIFT, .bit_mask = PLL_NODE_0_ODIV_MASK}, {.bit_mask = 0}}, .freqscale_reg_set = (struct ls2k_reg_field_desc[]){{.reg_offset = PLL_FREQ_SC, .bit_offset = PLL_FREQSCALE_NODE_SHIFT, .bit_mask = PLL_FREQSCALE_NODE_MASK}, {.bit_mask = 0}}, #endif }, diff --git a/drivers/net/can/ls_canfd/lscanfd.ko b/drivers/net/can/ls_canfd/lscanfd.ko deleted file mode 100644 index 580daeb4976918660bb77d37172992714fa891c9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 169392 zcmeFae|TJVnfHG()AB=82sAB4Q4h+G84S=SfwnH_l$2jf#V)N<6*nnKO1q>@O;RXY zb%3I{rr6c)3R)#V-DTI-tt(2^Dk&7i-BMY_m3?HTt|;zhL3DZ6x|Ggyzt8!+lRNL` zgT?3h{`0-|b6q_%^E&sr&-?yyKIhDtne;>F&%2;dSC??qCH@s@l5D-Dki96{vXVWk zBqt=VPA1s%M*9bT;iYd+-thd^D?hvHGq0WSo=abQ$8Wy(mj1h&Uv-$R%l2T4dCOL; zT5Yd61}hJiKA$|94E|+ggCRS5HbRgUN7dTQViNsZuQs-tk~*NjhA( zzAl+pKcQL}EG3I3*t+E%!zFCDc}8-D`6-$IlKCoiCOZn)caLp5saQE}0=7Bw$z=0C z*V=3UR9j%-HJ+GMi}pD6L`#YNo7Xv9D=bcj%hx8u6!IZVG441kpGwRf&7iP|2?+POvCZX z-0}7u+gGM(-+e*T)w9Oiwlg_UxOQkq`MQoB<@Z%~l;5B3D6dI&lo#*WQNCt)M|pL1 zNBIMLhRYuu9xi`qXt;c<<#x8kHOc;MsjC+4aq5=3qcNSmu z%Z8*Y9WHk#!{vJ|Pjib?l8N(gC|Iq^sNcqh-PVm$Ec?aEaqH{4u-(Lt8w#+)dc6Le zt@rFx)_4DPP14XjC8} z=E-A|-+py+vhJ+O$(HxnevV1X-!eWGF`SuHetY6@;Y=6%Pb~KD7M@Ig^{s~FDbw^X z$5snJ{`cC|PkyUz=?c?5sdHzk{tY`zyN^juTWfI-P8=?5`C3C_yllKYUJj147_$6Y z{+VCo|NVzo3)LIzDm~WApP7^_!ZEe?eFxrM|Dz*MnK->VV!L+2j-)zJH@A9uGS_Na z>bCukx1VZjQfacjnD*s{r2fXIONS*l7beah^#g|eAC^pLoVc=@AID}tXnj;~eKcr& zgkyQo`l!q7Hve;-9nU*T)`unQ(USFI$@;WpeOj_UEm@zItT#*6nw&C~X5>9{P!HTx>&5<$vYt53{?%$PE;!xQ z7xlcuYFukMumH#Vc)32odgJyD2ihiDZa!~Eh&@jIyvwkLWDTi6i6Dy-NuYLE$1;;&hU!iv6i{sX!v-)CTb#j0C106Q!blhLQ zrgDGz+VuYNbvFOJ&*q=^57~TF-BJEvWk>l#>5lSWS*>4V^NZDROy6WZQynhv{I7;& z-Q5osx^14pdE@hTto7^}E@LjT_{y~#e|Pzy@#?l>W!gQ(t~1TgarXLn`-l1HNjvUd zWslR6wRQrn6!*40TdJOA$Nd+sI_=jtK3m%SqRpq*_a;ZpJSN%ug{#WDA8bl~XgRDN zS)5zH|HcB?>_WA4Zt=-vd*>5L^^#)cTbJ8BH9TC{X+1f7*ZA|)U)Vm6wZ7bY!x}qB zR~rW}o|63MCmNGJi}(3Iej*us>*VBZtj)!VT< z&)D7rbCasgQ}+C{L7S(*-ubFZdE*QB73%k!_8-4vI!@>ji6*k<^ zn;d(|G0F25^JSlCO5Sa8S6`9L-Dj`+Y!3V0cN)OT{nqo#@2_3m^NPaK6&BAUSMDtB zdVM~Jon$%T9A><1eB9nT!Q!+2E@A$8m(5$XZ~Qi|W25zP$8hQEHhC}U#vDCKm2h+viF9kOQ+at z%w;&9aDD>A^TU#KWG>5&XX(r3d-C~guGwyWtIcN}_m`~4OV;Bh>-&=RdCB^`WPM(; zJ}-TsV@Jt)y=1*!>a6DT*?(U1Z^?(=e4uUcn7sC5>N)d3`{7pC!{&diaL{~VTGrb9 zVb^?9*V_E?-l5@fb8Ea*yE>nb#yhUjo3*Q6%;qcf%Vg^vob#Ui?u%{ftam+7}ClVt7iyad;}T>p@%X`nOmM10OD%QTAAAeZaWXJ8R4$s#=W9!$|+4@Ur3%V>1 z+T-K()C8LkYCp~WO-$}8-n5~?<|#XF4nMG9V)f4awat~a-@dq@vr;Rpwz|)S^#38}=%Q~GYWLO_bXIGH>nzU29Tt1Vj)T;Wfn;~-Hq+wY z&rP#q0=by*(+3MUH_UvpVcfZ8n!Gy#ayzO zOO}KD{cJVQBj+3R2YLcATfRs70==@j!`>r5(U5%Fa)teT!yfA`PpJPp?LEMF`>ZZa zIuQ57;e1X(e1nz8lePOVEcU#zQtm2N%G5l~{Eg?s_MM%3U#bsowQUc#oXoXZ?ElfYQMd1e^FaO1ypO@D!{(1T1Klyoiu;b>^a_haLjxc?* zrzEen-dVS&3SRz{<>hnx8j_*ON#!Pcj$`4DqRln7zd`qYao@jxzr6SUZm| z|H0xko84w(k5hM>CcRg2%k@u}*DZd!T>W@qE_xNd$IIPkZNJq`g^qL0-;4IXVsn_I zcA7o&o-J3`7AmK7?kXH%dJj*&Y{$;}XufvdX!b*exwc*DHILpm z?wm7hJ`Ys~j;W{K_sUaZ^H=rTb#r4eCq4Q3=1_AK^OMzMPhl={71OcYuGMjTZ!(+B z>+BkT$gc6Lc8%X**Z38?#!v4r*_=?aW4UCYVmvfv+KpH zK4P`eI5o$y_@1@=9@0GbDPB+H$0F_lj@N6y`+0+17d%^j#(HSezt$}s&j#n#+U5JR z>-#LPHs_6JS3C8!r*?K4?7LUTaQ!?EJTUs5@Gng}~E9*M2 zuDUnBw_W|2Jzl@FRQ1n!g(`mQtOdEH<_1@y(*ItvHG5N02(fhA24Bl2t zcFi~;`S4jMCO`j9-O@Li?`d|A9oOCyr(ZwfyB_B#>s9RQ_`5b`Jpsn|anx|sn)?b( zhgXWXY->y=J%3+eZM9llJKgSue`#{E{NBc->6Mk@`(Ift?zVdl4g0@Y*kb(sEt8Wo zi{}-$EVt{}x*Ll1+wUtJ^>uqMcaClM&B@8;FEu7#no}*Fd1Ixx+uqCJ-oRmN?<*Wz zy|3`lZH>uhvpMt4X8Rp`?|1H$-C+7pc|)bR<@m|T?Bbl_L$^&%*4z8TLG$16 z^U29z_vGZER_lY1zvJ!x*H0{mlWe=g_J5;r%4h6aImCMh_`Ro|cGUb^3-uQJI~S}k z&Yn3rdE_hRd#2rIno}vBe&hAUEi>%(mvffgr|z;C>^zL?a^?s86wLV@j#(ZtFHHL6 zrZV-Qp0NFJa(&UWLwT=qsK?x4R{z@M1BZOvW$*vk&*A+IdJ*q$@ID9caq#{g*H|b0 z)ZQOhOyeCx)syNvkdNAvzrGy3UVS3TUXN#+t$)65?x}D1V(C9@n_t+!r;{6s_S&xJ ztM*yI!E?-besFH6R>OX;-G6!Z`iQzN%@uTww>|dtv)DT0v#h4$Zub(`8F-(BIm^FS z>J0Cb5I5duK+o?x2amVkGc5mybpHKN?V!0VmV>>oc*QB%=Y>ZmbL*1RlKMS=Q^a-g zB>ODzmN~!>H}Ua&o{e(ma6_?$5R-16#Kwc`$bKeaF0{RBA=#5C3J%C8?f zs|W0UKkn_L7wt2~$_~5VZ=XNzvHJ}}c0Z~*T>e0Zeco8H&l^*FFFt(UX_JzzMdbPG z_V2dzfzrBjCoGzj+*4flgW?tIhOaNxr`H!Yf2VlG>64Sw>h0Qi-8YL%Clwzk9d&|z z?se}m*?p#6?=1Gz7tcFw@cKE$>f4jKmloHS>g^o+MZ1Rw+o5Cdc;0D8z2Sk<(e`@X zlqHG1F3;<{xwQM6$0SGn=)Cga#otTnx0=5xmEyX(E3@@SegC}jQU7#a`5eo`75~|g z4B8xlbI0X&e*n3dxblYV+`YDXRf5k41|KdidbPz-Z^ztc>XHfbR#r>zw|i#xnM=W* zm$ALyZv6v)Q~J1VySDOVlI$*4jBa=k^_!{P^ff@kQ(F z;a?W#LKAH<-+lAON-}7g23O_#syMJ?lee4J-LFrsXgV%A?X?yAoVml!j~365 zZQW+G`*DlSSytz>E#L3>(fIcm9Uz~`!?F=#?`kZbDM16Rr@^X&2JdaJ|7yi+U>G?9ritl61KnT zr=#1#cH?Bbj(oCqH8fxjiGAjP{0(0B}SIjGp{a%9ayFt76j-IPds;gw@D|twVe@UZ_H4ee>xy+hc%irU zvHbdPp2aqJ8)+k`xR!{#8|2R>}=AEu|)pXUv^#XsCn_177gV~<<=t-|JWk}EKW z*FO0lm*cvl+LUyl*0oPQpTBO!>)qqt!@~I&{mt_)&%M}Q^D$n|Y7dNR?5w<4z&$kF zi^IJ&-dE%OHhZ6*-EZT4I_>Yly5SP;1#h!^!MG_l)-uRD6Pu1STeYQAv?^jPft@`;1bLXAwAD^*SiW}{Ef42Rr zzO|6;=TE<1DQ5GX>?>nV`*=C!JzRVj2il+i3?0Y?1N8{smxF-x>cwc>o`LpftJ+RWh7<Q7ZtI3`oKV?y-Vc*? zcHemOF-Z^Z9k1PbZ1TAY!^KS3bECfTdYx&S*kE&z`T44y2cdOOXHr=**Kd?xtJm3NkouOy8pRP7vZ=XrZwuKruGvcl$U`%JQg?dnfEDRu3zTaG4Rd9t=4lk z7B?ULV*CG1&g_^dRi_-5-3PhO-Zvj-b<_LkO?ExB_cs%Jn!+^+YKnU9J-(~$~*HPRK*J-#myTx?eGHY70+cbR6a&Mo!&&4$!J~vnQYmoAtbD|8ZOX z8OuYf^J^&9ZK|E8YBTM;p4xnn4d-9g)c04>#HA1uCRE9POO`I+XI!PIwzS6 z-7ouCyzzJKwQKh;z#LF3+C97HkF~zUy(afvyVSnhYUi`fci8u4hhF|Y>#SDu^LZ7= z;CS~DyDXOR;(f`Q*)>X5GrP{Ky>0yaxG!hUeCG9cmN0K-bLH#rEHA%nr#&Ao*kid` zw(oRUj*hR|d}{9&gG<81@`1NJ%b zB+){9 zS9to_lN00$-+@EEjxSknjF+!3>|5~6Wp|dI{oba0AD7)(9zM~&*JQ`*VdfLxgM?1& zz3h4hJ($(pUXNQpTVJ*JmRUcBeP;bwcl}5|+GmCfo@ov-HCs%_By*{+_M;aTAik~+ z`;M;ZMtnHm+_K@=gz+J+W9;0r#lGivhJE*Wi+%3;tbKp!XVwc(Sq~s)^uvhHZ~r#? zoCfE*{9p3_$>{0tT)bjQSNm1n1MOFK_w}`R_O4nn(A~$KaXnTo!-~FDD+g>Pxo6mh zymw{y3jcc9ivI4tf%YYRi%X>3_*!F+M z|776*bp}G;j<~gp%;Zn)pUoF`-!K1%=iqo8&;DCs-COJt+raLK@W|t$e^tL78C@d| ztoi#_;gFz#G`t-aD|>r--jw#OPM0iO(wp{P)7`hEr}x@dm}B@p`{e$nle^Mud;7Z5 zaO|dbl=k+$>Etf6Iq&Tko|v{RUa_KgAnorSNUvNrFtBX-vK3dQr>AXmE=`y9r`;+MrP!pWd+{~hscGyU$k(6T|E6^1^7cNPB$h4j#~Hj}ye_MJVwomXcbme_pKbw<9i`JcDI_IknGw13%ED;5u|>gygg%53_=kDe@C zn;O!^J?1FvAzL5Pbh?c<_xE+SFYfBOO2!}`<7jE`kO6(m}0J6 zwdCCCt504%q9ge4TxzN5?y=0RShDOYx1+FrWncHowDY>oo@HZHB+1CUmoD$^>P}bn zcXy>rdizkO(u!VaM>diK$w>!#ErnMt>$mAM>>@2$jn2(e2D5|ev|z#faVrGgyJQJU z*^m4!9KJx)V#b&Cy*E$h;(=woD>A7le_lJYVEc70UAD5l ze_(MR>zZ#qvOWzB!g$y>%T{#utm^7Mvj@LhJJST5X@+Mk&EjgZ8m9{votG}@>+Vjk zUD~}OeebI7Ro&_0YZqVLo$r8sY=v54SwdT)iANfT>jze+!Q|S$Wdms3v4&Z{FI;r# z1$nox8c0nGIypZ9nFKol*$YeA!bJOQtrp#0_Mpx1`Iuue-1R%oW`OSvGq5 zQI#cKXEM>&A!l?Z367_W7hIN}n_7ELpS8NlI>>ybCwDd3uK6tYK5*U2?)2oIRZZ#2 z-v0c_oOx~Ovaa?e%es5Ia$*NKp5*G1BvX{4&9Cb2x9EG9rziKLVNUMPOgdNf^>wcp zNUdY+h_QpWcU6BL25K;{wAq0bDPj7#iC6eSy zbCanKLJ(*Fz$%**Mm(gYW&M3PDlP1CldbJtxzZ-4e1n12SHAn?uJ>3DuFT}D>d!1^ z@CddVv@cjVXW{wn=U;Z&+b(OL)3)&9cbuOj$}gXD*`*g>df`EQ{+tC1u)(PPd2e6P z{4NVxZ5abL;TDL6XI*2A1~r!8SKt*xk8wMQ=~ z0nAkGt5)>%F7Copw5Q4JPv^buZI@m+=d!ko(z9F7yLe$5BK@C-|H;7r>kQ!P$&Z6y zSF+WG1dsb_g*v{@uw8wT^R;~+);=nTtY#N9@0vJXhOS zJ2rbv?3ZO+pP88+uFqd5^16@=Wh?SW_!|oT@CbigpKlMle1G}tHhx+~c(R^_0-=CM%Ovl@mRS4SU;Zb(fZ`;Uv53J-P+;<-@oH~ zcy1@iRXyG9J&UjFU4{D{hdOqA_18avtzGxo1+d*RS<-u`n`U;)ezyHoJZW!t@3NM4 z^>iPimmmJ{k-vp0ug}AKfkWInNnUfw<9`9;G5haY){iUgLveCu)2Hu--HOF4m$ko) z?dbb`SHE|7Wc&WkrQKN>@HUJVFa0?2Q(yd7SY&S;5q!H{g|_!!edSAUHnMi=HJAM* zUW|#K@6kuB;!i%;`|G_}i#MHkyVJgSV4$x*Zm(fihPKYlWJAB?R3mo2fI zdcSuAF?jIfm%jkCynDI5$CZ_b@UrCg{=ImS>mOL% zj<=}o+1u3-o0odhPE?<2YwjViuFpDjJ?;&^arcXcQ>YvR5c8dlc4{h9X;}1RoOZM)-QrsQx z?rOIi7>DBFf$wZ>gI##f)6Oa6P_~85quZaq43F8d`|{f-`SDkd%=)(-d9$epzFy8~ z`i8xuw1MLa3`7I!W^Bqv|2o7E1(O#jP1dnL*C zUoP2x~Xy+Y~6j(L)|p9`=jAs{uiE@erukA?jGEDc^MvdA2IdXus!0x zc5&Y!pL(;s-1#3b+Q+U*f(_gI?LPm?#RE&*mn=V24JY5Q%YHV=^S|A`$5}AH$qoE_ z$Jggqeg~tG=1mJ0{-Za|6~WY&$d0p za~|yf(7`*0f9UrAv)%t>;QtpHxUjA5O=&5+4?m}`b7^XSq|rVm>Fu$}bJ>ctuXDy3 zEvL^&OU=`pTc@`+pH(iWv(9Ka!*0j?!5jYGv=y^YkPkL1j@(xoyUzaH!B`Mp74dED zaYoU8Sw7w-VovTR}jV-MY|t0-YD8%&>C+Pv%kQ3@S381 z?{mCSw7(WO-YD8PWXBst`|D*oaD#9{^6Q#%`@0QR-AVRy`Ft?rr(}FI-rd=MPC!##t2nR4^ZHf%El@!2dMx?4sS+nSl>ve01Ip=}SHtIA8N|bKulL{*ZC| zN_4V5_~pYt27V7gc>HeQyM#X$_y*yR2hKj@>VKm>6CYOmd*Jg&L(A4Y9r#n(BfTWa z-oRVK@yIp54t#4kZpr^E@cqJH2pn}DGcvnkQlG6KT{AK8P2%Sjfv*<(qXST|*7e8|{ z&Tbyv!v(?q1krOz;M>Gc9#1i`zh60Kyd&6`P85|7GA;2>*59YeeUN1->wxpBP>~?-Y}rVqeIPt75Wd^wf}T zazx-;ZzXOBd=W1|g8j{bZxDV9?ME+ZvMn|QzDeGad^+%z zjlpqv7z*5eo{)9{)x=E>^7A3tF%{~+zd`xmZV8~9V==g$LQBYb_v z>yxFT^RI&aYO&uKc!%&iBKCh1`17KFOUCQ%e;lCl{PD}d{vPrFwP1gd*xwiIw~PM= zgZ*@||EFL-{Q9x`{pY|tg#R$`2I2n}__WuJ_4Cufk9fma{vUx~B>Y!_-zt9oci`)V zzYzH2;-@aVz9}Ya)3N(KJn&g3j^&dAZxB8?@B!h+2X4QY8#7)P_#Vm6$r-Ot?k{p@0Pxu5%}Zce`erM2tPOY9~S>@!Tx5^b8)c$h1kC>@agjY;_boD!?NFZ2m2$$ zesQp`N?ooBeBh+9c~~C!pz!{{x4m(!{dIx=qBNF&DDZvdvHYgMH=R6|e=P91r;X)* z5qN|6|5V@;M9*gfA39~MpSuDtojR8PZN}@9J(9P-5B3vIA8Y@Wz&m8W-w1r|sblST zWV}Af-^Yxu`*yG&5I>IuUXuKLKlsVtXN>y!SNb_)l;PQv!G2$MT|c_+XTcu-qmm!L z47@|~|Led@Qpev0zDMj|4E!XYQvf$x!e zof!Cb(Rpg%4Wj4tz&nJuWZdc~eKI?6y$|q~;OA!1d4AwqrS6vmo|eYO^(TSfbLv=r zdEf)$|2-ME>k!e|8TdBohh@RfKJn8VcuD$dRp9f4zd!H};n!!}-j~UKKN9SRq+aWS zeSZIAH0DnR`>o>tw!j;BqcLo9d*Ew@e?IUY$^REJUZ1R&ynQL~mBQ~0ex{55Zw7vj z@CO3lF8lpX;2T8ecLT2o|3TnG!he+U`efR~(VXGgPXeDV{OQ2+_o<`XJQH|_*#BqX ztA+nA@b$uL#*e{$=8(7PVHZ=6Ob+^t1*={c;WHxqJmbgs&%eTc=11%oNBHsx|4@W~ z+&JRmd6sc~A!2`D#(!PAa#8ZkXqJ=Yv55T#EskSto=n60{q5O&nj}9De%`zO10V2y z>RvH^J|{)^SA+jO!O5EN`09xLsS(~9;ctoX%OV{2ry6`f;ra3i|3HL)Ji>7wa6JEi z7vbNE@P{M(i3tB?gg+nQ_R-+DI**C)QzHDV2)`i0-;wcO*ZyVOvt!NxJrVm4M)*w; zep`h9b%cL5^k+w1-Uus0KWvHEe>KAIkMQqD_?`&=RfHGo$FJ9v2*-WQ@%r$r2>;^< ze^-R}L^yxwe1`o1#D1UK-v0JWFaDFapWlA*T>D0B_S?(m8D|@AZ|CnP$JpdQ%WR%; z))`NxS_(xx0NP_l;kyXZyaof1uBP zM%IL1FO0X5t{T~9%wHiGZ_6MKvR@U9ygKM_rnI*&S+$}QN@t!ud-jN3mwf}#_G=wAsx^E+ zws&Q}#W=Fn%+}HPMt_Mv;wby0DooqR@2I_lvuCx8SZBZDZ(oh?ueN7jMD6Z6{XZgu#rnGmGhPGh;e-Fk^aVGb6J(8?nsJoX*Hro}Go+oNtPj8&C0f)nYo>r8P3dXW@c_?!f#u? zGE_W^ z<}97fSuUEhT(m(-b1R%T&w!TZtSD{y^Ru9(IZJHwS()RrGMhZH1w79d&G~YA=Ikt} zw(s|4OXz6Jy=PC6m*y<#%~__Jvvz7j0Bu=b+p?_K`~;Bg-i|8U<}C2$nVGAzGBOjs z+Uyj8WfpIiwC1dhnzKe}&N`(zOKe+S>H^edi{^Ye3qsqnf;DHo*p}}w>(#cbzAahv zHfL#WX@!H9EGI2lnp>vl1VUP}l(%HbZpq?l$)vSpGF!5}v}A#|*<>x)k~LpT zmdKVoh1nt8dNw?_%*GyDvZJc4CEH6Lb>4n0h_N+mv9|n3&kntoeB10OXbnqj+nQ%4 znAC`ZOOXACi!fuEUWoE zm1VW91$x@D8Llmxu-dZPwdK{ZZsEzrPK53G-wA48zIgTMx6$#n`mtYY2O0B4`S$jK zrOWzpwzD759{fFg|Hb};e>^h-)>`xrp+dJ)#0&%Nwo;dio6l2ZC zoNdC1Is4(p*dKxTpOlRGc}my>zxEpEXEUR}#PQ)~zv_G9D>@%PPRek@F=zrY@2l>MUHqQ~ z9K+MW@EZ2#hv#@8Kg}^b-56fO{(|rv59DgUGuXiX!tfjq@B z@jTb(X=4pYIFXp-(Of&+$Os_{)>=SbB6LRg7)`)-4;h%j%uJMvCgg}W#$lIYVT1N3<}XK<+{17_d*swNJ>kPlh7?J%@kx3Ax5guJMv){gZ3m=Li3oAO0AQ!XVfAVWG3XgvRzruGcd+ zJNtRgo?QLk>g?a@?8()BW3WfxwuEB@n~@{`F%G*F3mdf8I+AN0$zPvuKC&d&It~S$ zs>gFUVc(K#-;!(JZi@K#9RBOEutBczl54!=8ZWuVdv`>S=g`5vC0GCC+P6;y|LEIG z;V2Ap?UTLE{%th2M{>2_@9gJ0dvdiuA$Pp&!L0I z5xE{mX>larCI`t3QULFvztJ zA9wbb(AXZywXgO#`?ouLa<$**?BC(+$yE=3M~6PY+}V?>{Sgy#BlLO2^*K4}730`4 z#li;dweI9vcXF)@xz@ct=u|zPLkIhuT>G3{`@A9I-*fn9pOb66WB9`*^j`X|>u=?VVP zCyU@H404^XHaq)w(%2r!^?u#fV2{4Kpl);na^xq*VVz=OgZ7$da?LZj=7C)Ee2>es z*W)>Ku&>BZ0(661`)XUnzvpnnz9QFn$u(Ybjh9^G-5$~7IrOlv$kji&_SL@NAAR*M zI0}PY=bt2epB47+rZFA^SNqi2`|D3~?OT2y7yf zSN;5bK8}m`(AXZyQQsJcd5VP%+H0SXYoCy79m%y%R))A#kLS?A|K;Yh7Ku9?zkJbtl)llWW~?j`;T+{#kc&jh9^GCD(Y#HQvF99?zkNbthN< znKZdE`&wC=7BvFC3Bmt~0+c{Z7{>T;shcqQ`USVPBD} ze{$`sn}dJU-M?QZhyEDHep4)L&|dREu6ZC=o#dK_L6--w$8+dl-O07?F+_{V(Wb40H5!^6(L13M0bT+dUxBKG9^ z{_A;XznISLkzD;xJ3Kdn{wtk5x!O;6_MOh2TT;p9C(c?L!@VF*d|Kz2hn-4b!|L7B+BXT`Iu6On;=)@k$wQp~Y z*pq7?4mtZ?=bv2dhn@XOXHTwrb~^j_I(u@pe>B+RxTw^PZa|Lu#yG4~ENswT`-EKk zgk0-Lu6^=Y(5ZSnhYlVW=Sa0mt5l|*LcY_-lm8i&!LBXLazSFwNK6o{?R9Wa1;i) z&R46Q{Z%x!M{@0}_0GQE*^{gPjlmv$=xalce8xE3r&!paz1D?X>q4%1BiFhN1)ZwL zbLe0nl4~E5`T;shvqQ`USVIPvKe{$`^&93ePa1;hP z^v5_%Q!H%IUh_b%c_3GvhJcl0k3Ay?w*FM=7{G(5Aq`3mdf8%jSfn0TxYaWJN9=smUp@VfN*SeEy-8V)2dk+7s zJGsV7uJMv7p+Cm4-xLcQwAVb4YaYl|C%NX~ z9+wBN$8+dl-O07?!lCCQ5fV+1mW?VSLRP}Uhv<)B1gP2jxAFxY|viw zMy`1y*SN?vZ_{)>=SbB6LRg7xe@=K!$13kT;nCzc*!+ha*g+*h#t?OhkZh> z{>imZRtEp*lMljC80320*boAT{fB65kL21{jn2O6?8(*s1ZRJ}vnM~zF+9D;+27#S zk*ocpNx2d9-{|bgHQv?Eeyy`7SNm$P$8mI%vnNMC#5l}TENswT`-)uqid^eXu6?yO z=u|zPLkEu|ay^d7^*FjY;@@-l59Le9HC}R!mt5l|*LVjbdOU|79!KQrpIncl^{(!3 zse`9{kVAir!!pIf2JJNuTu^>_{)tUI~Zom}gFYsA0j@XxxFYrNzd zFS*7`uJLY+=p9|$aoD9;*q|TH8@c9bL8t2R96H!1 z|DI=YVqt?^<0aR4$u(Ybjdxl^kLS?AJ|S2C%J-C-*fn9-N`jxa*dZ<<0aR4?~ds49C}!Ha`jKHb>HUd-sS2}4*fBX{iayhpuOgS zT=PJ#I>|K;+g%>K9?zkJbtl)llWX0FBmO;yf7YE`<0aR4$u(Ybjdy26kLS?Cx|6Ga za;JWLNdRgdS;!Mc-c-O07?tr7p8 z!$0dzuJMv`TEx#rrSrml54!=8ZWuV`)EXu=g`Bt zldFGnt@~rH?*4NJa_En7>^H^22JJNu+u{qSa))*JGs{ViHLvC z;h%LU*LcY_UUH3>T;tsn(c?Mvuz%6hT2Dx4j9C1u;0Q-;A*dEE7 z9K+LkXTRR9BiH**4bJ{AoISbPmx4X!EB`w$a^ye8;XcK}2JN+u^yu_@?O zJ)T1c`<7h$mR$RGdc?oy@Xx*_*LcY_UUH3>T;pwx=xA*SwKy zT;!U!oi1-)kLS?AJ|WjWA=f^6IO5-P_-CJxYrNzdFS*7`uJP`Q=yA%r>wAVb4YaYl|C%NX~F_#Cg$8+dl-O07?8ZWuV zORn+mkLd9ndRTXI^-r#KPmaab`F-p$`wkrXV;tM1SYQNu%>%jSfn0TxkJ+cWpAgaG zIb^WzrSrml54!=8ZWuVTOZNmIrOmZ)sIj<9I(4j=~^^ z{uqa8iiHi@YaYlo59F$oT=UTA^5FG&4jrsJxz?Rr>pm^w-*fn9-N`jxa*dZ<<0aR4 zPl)L89C}!Ha`jKHbzd3$>CC*IqK z;2(Xm0gl2T*FM=4?9nHFALNKP#^E}}!UpX%Z{(Uca_`&w(Y)R5^5(bk9NV)`$hA+% zwNExj{Cf`n>=Sa0mt5l|_uAo)T;tsu(c?L`XP=O(e{$`UdtBY$07qevLw}6JG{wRO z?KKbNng?>#Nv?U==JMe6cn%$`JGs`KTT;nCzc!wi;Jcl0E zom~BsYu$GR|Ck^C5{|+k*ZJY`V2}C1e=mX@@y0k@r&!paz2=Qv^G2?5k!#+baC!53 zJckbU3Ay$Ox%SDPh=0%FpM65E@sex2I*zh=0%FpM6EH@sex2>CSLEuST>GlY)!nZnhyEDHep4)L z&|dREu6ZC=o#dK_=`IgmkLS?Ax|3_&$+hmS5&xdUKkH7e@sex2wa_4Cbz&i+<72!mYblPjFP_eJg*Ty;77+vwbJ^?$Ro|Fp9w z*YoCJu*dv%inAw2y~nIBmt5l|*LcY_-diJjJcl0kIl1~L_q~kmhFsm>RtJ&~a_En7Sf*ImpuOgST=PJ# zI>|K;n_M2e9?zkJbtl)llWX1Yj`;T+{#kc&jh9^GCD(Y#HQvn;J)T1k>rSrz$+hm= zUEMzeM`4gde~iO4#li;dH4o&P2XfU(u6Y=CdGLBXhYr@ATA8B?>YRl?&KOT zxyDPb@sex24@dNP4n3?px%wy9x$_F|0$2crgENswT^FXe7AXlB_nuo_+ z9=smUp@VfN*SeEy-5-zm_ZX=4-G34M<9cQz z9ECxy*ALG*`_IzY9?6>=!_y-gbAX3GaeYOO{KPo6OtG**d(AVs=9ygcK(2YN4?0zk z=g`5vBG0q`1c(C*;nKmFS*7`uJMvxA*SwKyT;!U!=|QLJ@f+u{qSa))*JGs`qBjVq4 z_-Eb8HC}R!mt5l|*Lb@kdOU}oRxE6gtABE>`|98y5B_&v+u{qSa))*JGs`q8u9Nr{Il-l8ZWuVORn*fYrJbCdOU}oRxE6gtABE> z`(W^o>wzIS2!p(dAUtje_IQ|AH@cD>@y0l;Q!H%IUh_t-c_Y`j$Te@b2A!(MbLe27 zkZYfiYoBb4`1c(C*(c;0FS*7`uJMv*WJ)T1c`-EKkgk1Y%Tg1QT@XtOW z*LcY_UUH3>T;tsy(c?Mvv|?d{T>X=4pX?0&@!;?KkwbrsV}B_YHfXPTAlE#Qt4?yw z!^18QUXSO{!Mc-c-O07?yCVKQhkw?cT;nCzc*!+ha*g-Vh#t?Orxgnu;6RW zkB82>%tf{!hyECcVTy$f+G`%jH4o&flU(z#$K}E6@fcXF*exz_!uh=0%FpLHkK zc*!+ha*dZ<JFSlFPw=7C)EK(0E;H4kfC9=smUp@VfN*SeEy-K!D*p2I)uPOkBiYrNzd zFS*9MHloLK=waQ-)jzq`eSPqc`C$_rg+Z?K!>z#{^Fs@b?U5Yu#yHGVENswT^G2?D zBiFddHE$bT-n<^qp@V%wu6;tTeKHjB?>YRlPslZ1a*dZ<<0aR4H%0V#4n6D>a`jKH zeR8*}`#LxZgBM33jt!@85Je{!w+c2{@*_esd1KgO}&6bl=)*F2DG9>`TEx#nTm z<-zOm96DHca;-bL)_rHhzvuAJx|3_X;6>mkMqLk z;V2ApJuf`x?Ejj^_DJ637@j`w?El8CBiH*{`<(sV&YoQD>ml3*&Qou$%bsQna^ye8 zVVGiJgZ5fSa;+n|=9ygU*bsE89?zkJeM_!=ORjy}81e6U7AF=q$TePajh9^GCD(YT zMf7+M9qe0j^-r#S+Z6oc;cww6407$;>A@a-a)s*?a>N_saGhddgZ7#?a?KmL#zn4q zYjt_^dOU{?_6fQ63Ay&ktcZWl;h*yxxyDPb@sex2Ea*dZ<<0aR4$u-`th#t?OhkZh>{>imZdV+sEd;yNaAlE(_2=?fc%`~=0 za>N_sFi)|tL3_;`x#o>r<099*t#*0ydOU{?_6fQ63Ay&knuveT;h%j%uJMvYRl?&KOTxyDPb@sex28zOoX=4-G_pIJZyoZFvxX&xZBy^ zL1TL)SNqMu9`lL+|B=a&pBRVx6bl=)*F2MJp2;;2??AOmt5l|*LcY_-fa;*o`TEx#rJS4$^>hT;pSa))*JGs_Mp2I)uPOkBiYrNzdFS*8>M)Y_NJ*+#q`X|@Aw+8<> z?EfB)!XR%V2#=MBJ-OcBxX9UWb-u{e|NMwOx!Ny^*psXMnutBQ+7CJVFFF0>dcCwM z*yA|*2WL-?)iDn96bl=)*S;bTyBYZ#eB@epa_y_Tg9Fv$Idt$iBG==HT#uv85&xdU ze?1m9$TePajh9^GCD(YjM)Y_N9XyW6)jzo&N85sb)ZO3zC&%g-$9_{RY|viwK(2Wp zSDoaVhwUy8UXSO{!Mc-c-O07?!x8_U!$0dzuJMvxcz z6bl=)*F2DG9>`TEx#rkPZ}crJ%@kx3Ax5guJMvYV(8E3j^FXdT$u$orxIB10o|DMA?>rSrml54!=8ZWuV zds0M?=g`BtldFGnt^4%gAM?W(;3y1oogZ3*eWTfZg~s+sj(B4n<|!67Xs>xA*SwKy zT;!U!SuSs0kLS?AJ|WjWA=f@RC*t38_-CJxYrNzdFS*7`uJKkPdOU|7_6fQAC)Yl? z$kp8+cjV9?$k9>_Hh z8ZWuVORn)QjOg(kdRTXI^-r#KU+wDto;rBS2RZb|I4n~vY|viwK(2WpSDoaVhczw_ zUXSO{!Mc-c-O07?)rf!3;h%LU*LcY_UUH3>T;p9E(c?Mvuw&GozR~QyN@IH@N4zl(^ArmkwAZ|mYu?B; zE^^J=JuYuvkLS?AJ|WjWA=f_H7V+;n{IgHUHC}R!mt5l|*Lb%_^mq=SbJPp*Bk z)79OdXUU;I#`{Ths=7)RXC=7C)9~zF&4Pfs-n;}>GMrXf`&h3%h z`@rgxoV{O1uKr8T-uox_KH&c%Xa6;TFvyz-!s8Xr{_AcXx%yx0?7!jc$<=<|t8*jF zx7(dPIr=BYVV+`PgZA2o%jSfn0TxYaY5> z9=smUp@VfN*SeEy-IqrEdk+7sJGsV7uJMv`|98y^QWIr z$aQ|J27Am8-^7l?AV<704$~A18?@KFk!#+_H7;_^+gg`5ug7!fV4sj{pO9;x+#K=m zIsCIv$TePajh9^GCD(WdBYHfC9`*^j`X|>uS?}uZKUXD({usx8Q!H%IUh_b%c_3Gv zeL}8% zvM1u-bNFYUkZZi;8ZWuVORn)g71854^srCJ)jzrR$==`}eex|h3WHp)GoN?%zK6&? zgRA|{{ysW)T>VctAvZ!Fo?AD%0Xgy+kPv%Dadk+8X6LO80 zT;nCzc*!;1iz0eFhaUC`x%wy9KAGq0erX*%<%1mhV;q(#7B*~{ICO# z!XVf4NRPAUKCub8o~H(!{rz-qkL2oqb+E_$^MJD_M?Pa5<|!67Xs>l4*Se5v-pI8s zYl2SI<2iJ&56QI;$+Zuw5&xdUKl_ke<0aR4$u(YbjdyKCkLS?Co*-BMJgj$l@OnIl4%VGq>rSq9-w^TdIsCKkU|4ccoS$Tbh-s*_yvu-WCo>+u{q zSa))*JGs_ ziiHi@YaYlo59F$oT=Vd-%Y)bBIdrh@KuIb9;UlIcs-s&2kTC*btl)lw?_PX z4*#q>xyDPb@sex2t1G(xX z*F02Q9=smUp@VfN*SeEy-RDO9dk+7sJGsV7uJMvt^DkVUy&lh@gMCG=eMPQ)wKwA5 zbNFXpk!!r<8ZWuVORn)g7t!N6^sukU)jzrR)jn5ue_cTi{V|UHrdZgZz2<>j^FXdT z$u$rAT^_t1&!K~LC)c`@Yu%IAV(TQ)cs<8@)}37ACD(Y#HC}R!cS1yu=g`BtldFGn zt$Tg&kNM=E;3y1oogW&4J?4j9G`2@_#2e!E5N#J}h8&psj7c*!+ha*dZ<<2@mw$8+dmpOCA6a_y6oT;2WmHp!ts#B;PrS89jrUK)}37I-W2igIsCKk){gZ3mX9fS5AN==r$aQ{L>+B!Fj>90=_fvz;em9NnkzDO>jo6c`{icXLx!P}Y z_TP1S$kl$QvwzgtlQ%hrr`0Qvmq{Aso%SO06A{r8+bx%wY;_TP8*)qi%EqavYB_ z4(k*P8?@Ksnp}@-ay{#?vwuJMv< zyyO}$xyHLO&31E8yq?2?^BB4MC)aswfAEjK`XL;JL9Tr@Aq1-S>sCddnDIB zoEz-XhiBCNpVH1K#?LdW&)@83A;7SBixd3x$G=8>QIbop(&cK2FV~x znQWZJ);hM8Oj=jUg@tmF3nLjR7gmXcrTW4b7Vq6jKZs z>auPz+kWT&oo90V;3F>jO8NdX&;R$G?>X;#X2wYz=c60ov7a4}^ca_Ek=2zPzB=WsLY z$6Wo#D3lBCxw=;JzfX92g?p}Umi!--JlyqnqE;}=5pUUH*%pu%!2=^TBYU)=W^_fGs`-Qt-xch~>-`$N*<>A8|!d)NkIoy-M zn8W((F1Y7pCG#;Sx8uRN;L&f#BRa-qTI9WNaPJ%3eZjqNhcalN%EN;>fqPEio|Dz4 ze&tc0If1)hxch~>U%2}{-1t-;KFkT+_2HhAwG76&e{m@)%?lp>9gpM~muZprKES;X zaC^eN59?(gs!!$N!MVeI?r@*`MpM7?sL#2>-7nnz!rd?2{T^+6Di0sd9q#&YpZoC) z#<~AYId^#YcRZdu#${UMy$^8j1Kgf)@570*57npg@Zj9xK6kj!{Zv!G@~F?b!`(03 z{leWZ-2I+yd@2tg&K>UhaG(1J8T8Ku_}}^UM#=xDcyO+p$(_Gd^7ZEq+<$+1ujKzT z#iv)ee@@-ce9Y~?D02&s{qJ~`ALBAD@;*nn&k>%FpNo__KF0?cv`^(xgt>)#ZsDHW zhfV#;qds#BcfWA=3wOV8_xq^vsXTm`Te$1PJ-5&NP~1KLIhOxr{%~=Hd#-k6KIY_3 z$-|@Hjz@fq%e2UQ-{9Uixch>8-*%^`eJT$R<^=9JfqPEIrhes7pE-fMU%2~)yI;8b z-P8C~9zM(o-1Xs}lYQmf>%TvOhkwW8xno?WMc(@W_ddYw3HLr6DEm--Di06N9qx07 z``iyU^(&A1oIBk8!rd?2{leYvO5;;`_;BuU*N6Mu4`==Ox%OY9P%gN?KdfawzCZjF z;pr6~{dPR!V_c?1-unjkzQNrW-21j(_O1F<9v;jI+;al=oNP4pE06lj3Ecg{-7nnz z!rkxD#;5Y|VNT$#5BHoLE9d^-qEIe)_;);_V_c?1-unReKEUk>_daZveW*T_hX>~l z_qoG;?#G+@l}CNf9qxYN?icQU;qLcD<5PL~aPDx|hx^=5m2=-%ic0f>hkwT-ImTsL z7Y?*rVPaPPy}vJcg#^6=o?;XZe`&wZ<@UwPE$+~MvQ?tbC!7w&$~H9nPx59bbd zeYns4d^z_&j6%8K;otFyj&Ye5dG7<<`vA8m-23oG*@x;=d3bQ{aGyKe=l*6>zw)Th zxx?Kr-2KAcFWmiJXnZOUAI=@_`f#87TUmeSRHOd-3LgF)kLQkYnHG8P1Kj%nw3e&OyH?tbC! z_ua;)^6=r@;jRz&x!=tC@$3J)Q79MOzy80S`S|`&e_aiaemfqe$GA+3y!Q?6eS^C% zxcBW&*|+Lbd3Z1I;otFyj&Ye5dG7<<`vA8m-23pL>_hdbJUlpexX&H#bAQ;>uRQ8=?r`@DcfWA= z3wOVd8lTF;hjWL!KHTU2xSV_abu~QvJ08y+<1#Js-Uqn%0d7yY_hHBbv`^*X!MVeI z?r@*`Gfn-8qP zo?hYp_Z_PxUu(fDi*iRwzSf7k{(8x?2T=#^`bSItUIcT&U4Jw4JEz<)E|H%8oY>@X zz8#PB7?)|0_ng2zCvcx5+;eig@u@sK__~1SZSmG(!Toh{qN!hb6yWOu?tbC!7w&%H z?)OyVQ+fC>6L8mu`|ILj){k@l?I@HB9{wGV=opu2k@r5py$^7E!o3e~m3^o_m4^rC z4$s@-t;K@-+%GltD~|%4JKX)k-7nnz!rkxNjZfv_!@0v)&s}!@uM4 z+%YcGBJX{GdmrHTgnJ*Zlzpf^m4^rC4$s@-t;K@-+^;tED~|%4JKX)k-7nnz!rkw+ z#;5Y|;oRY_5BIshll9~0VEwrR_s@|BnU6X7iKTe*yx`Gq$0Iq$Wm@FDZ*cD$+dH66VaMy=>P7eKW z+&%w$_CJ|FTwLM%3X2cdO8$S8_u$TNl>DETJly$XC4ax<;m%*ke9Y};nOk`5f5)Tz z7?)|0_c_9Sj&ScY+~;^PJ?&F@crdqc&n?_@`&LuG@~FQYmubP>FWmjY-7nnzUTSu z?=#%{0QWvWD*If0Di06l3hudrd#)Zg^(&A1%oW`I!rd?2{leYv@FVfG`M>9_{Z=0D zGgolehkLHx$oer?e-VXp!96DzOa1}j=@st3|N5Zh|FY!auKytOi#aTL_+kzl9(c_6 z$opL2J{P$64eoP!n4b2jJXDxNxaSb=IegUAuRQ8Ahj8}`cfWA=3wOVd8=uOlMmXBwZ%LxXdN``qDKE^b+@XPf$! zN04)eyI;8bg}Yz4`(18)Di0sd9q#&YpZm_NALstkQdF83Jp4Nz$uTa|BJX{GdmrHT zgnJ)$m3^o_m4^rC4)?jkvs~P=Si770l}C_shr3_6`-Qt-xceO&pUT6BbBDV=+~&Ll2U(OvK{vD6!j&Ye5dG7<<`vA8m-1~5_>_hdbJUlpexX&G)<>HpbT50N69zo6> z?tbC!7w&%H?)OmRQ+fDs?r_(K``nLY{rL69|BOPp;QIjix>oWJ%X@I=*Gv9?l|0<} zqnVF6{Ogj3$9{G^;$vKvGlZ0<>A2`!aaxZEEl&d)@D<`@(41A zaQ6#$zi{^pcfZFQpUT6BIfT1D+;ey;>&Lm*@8|IF?|3|SjLWphdmrH52e>`q-iNbg zAF5B~;la7XeeUoq7q=|dR#U(72y*Ul_X~HwaQ6#$zvmjC%EO0qhr2%9=YA>c$M>Ia zM4?=8e}A}{`IwVmS|U9R@aVVWksjkRE%M$sxc3e2zTn=sTV>y>PvzmkoWMON@GKX% zEY|I&e&rElPT=kr?tbC!7w&%VG(MGw4|4){eYodjcY>IcM^Pvj+<%|DC-X5UhX_xv z@aVVW5g+3+E%M$sxc3e2zTn=sz3FM6%EN;>fqPEio|An|{mP?0a{_n2aQ6#$zi{_^ zpz*0Ze3%os>%+5L+_G2)6U4dy?_}`;5C4uwZj8&c$a^2)-Uqln;ogUpvJcg#^6=o? z;XZe`&;3wSzw)Thxx?Kr-2KAcFWmjEHa?Yy59bbdeR!6OTNdj`f;jj3@9*H@-|;9g z#${UMy$^8j1Kgf)@55Tzhw4*#cyR7;pF7;=zTVWYJnD1qaQ6#$zi{^pcfT8rPvzmm zxx-x_p5@|}#o9~|KNtQ_vUq{-D=a=doB5cNzbWs*qu-84e2mMq$a~-5-Z!}Wf_vY# z%Dz>f%EN;>fqPEio|AJ;{mP?0a{_n2aQ6#$zi{{adgD`h_%J7M*N11hxMi{4NZ>hv z`_~WeW!~RU;L&gW`mH=3IL2jKaPJ%3`v!MkaPQlVvTxO=^6+3z;GPq>=j8pSe&tc0 zIf1)hxch~>U%31Ipz*0Ze3%os>%+5L+_G37CWtwCoGf18{(TE8KRSmZ|F`ppi!0pU ze-4-YH%lJwIXqVK|F`7fuD@CG!_r4Lz@5KT@=GNTx6kFw$Ja&ueR}XX-;RgP7?)|0 z_ng2zCvcx5+;egzJ?&F@c<^-r_typ7Ul&)K`jtn0zAoVI7w&%H?icQUuQfiEhYw#D zaMy?X>*DKKKj!>nWlrFpt6NPT?)>e{$6VDvPXiwN)A8x8?YScFeTI9V;ob+h_xVoQ z=ju~=_%K&+&lTKrb+@TsdDLgF;O-ahe&OyH?tbqzK9z?La|L&OxaaC&){nXRc$q7> z=j3t8-;W39f;+!2zk$VEZI=4**q@F^=`k+TBJX{Md!OOn2e|k7KziDz^6+4;;GQeE z=jvcnzw)ThT*2Kh-2KAcFWmjEG(MGw4|4@~eYodpHS5P*)j5HCPL5Qj06Feh-&3EXqC-qf!=>N6*B_X~HwaQ6#$zZ;ED z<>AAez+E5iIXRZ~JtuJgdhdM6KU3xeo^OZJV!c`NpD1~_^A}70TS^}8{M!j)ZV!|^ zJodliAvnfmTI8RbKi$5%%>_x3hlC?YEY5hkI`CmHe|M5BK-O` zS8&&dd#;9jV9ZsW6S(JUx#a8bKZJX(b~Smp^Sd)2bNFp#ZsDd4b__cj2-PRW0=)c3SpUNZ5*9F{P7jS=Fyx-KXJnHjx z0e8P}_X~HwaQFK`<5PL~@O1%qeYn3aZf5=Xy7;a#CveZ9h!-qM6 zyFT1=axm-1x!3MzG-T5$IZcfWA=3wOV(jZfv_!MVd-AMSHs&-!uhUs#Gt^MZ$e$0Iq$Wm@FD4{+}T z+@5gn!$#SM>Qi}maPDxQJKX1fw5eZt)L)LvwBYU+?tbC!7w&$KH9nPx2j>oVeYns4 zY}SvT3-zB9!u{)qt<1-q{IfDA@aVVW(_7nfLf-oZ_rAg17u@@HuIyX&sXTm`6S(ID z?m2nAsb6{2UyjSP;O-ahe&OyH?tafVK9z?Da{_mLxaZ_T){k@lR5^Ee_;);>JH};N z7Y?*rVPaPPy#vJcg#^6=o?;XZe`&;6~Ye&tbrIWE(JyI;8bg}Yz4`@PioR309j zJKXi*KKIL6KhC}WcM9`q-iIq?AF5B~;la7XeeQ6d`_-m? zwGA+3Kg}Yz4`-QvTvGJ)qJeXU!>%%>_`?7w_)y^^} zaL?^Z$$z@!;m#k*e9YDNlsr84r{mLG!x)!ok$-Ofbo&bTKEu5aaPRYK+2`t0c|4T4 zf_tvuo~y%6{mP?0a|L(5aQ6#$zi{_^r17ade3&b^>%%=)8|B>V&lh<3cRZdu#${UM zy$^8j1Kgf)@59lu57npg@Zj9xK6kj!{a91K@~F?b!`(03{leWZ-2HAgK9z?L=MHy$ zxX=A;){pNe-@6o*<^}i9ovqBr_lI32508F39+k(qOpCnt4eot|yDzx+?OfTn>Qi}m zFeh-&3EXq?dQ-phsL!0h-7nnz!rd?2{hn`pDi0s#1n&B9&&iwR-0MG&f`@;{S^hx^AA* z!(AWlbHAGPl`_<=4 z9v=JO@hCFJWm@E)n?K#Y!hMc#?=#%zcrQKeQ+Yg;xrKXf;hx+3P5sKFK649qzi{^p zcfWA=`=IfuJbaj2xa-3`w-3v?*Y5-H@b7p$cZ|!l$a^2)-Uqln;ogTwWgn_f<>A4( z!+q{>pZnvce&tc0bBDWMxch~>U%2}n_Q%uaKNqg{TY0?Cxx-x_?sMOf_2cWk{_}Hq z_;);>JH};N7Y?*rVPaPPy;vJcg#^6=o?;XZe`&wW=@zw)Thxx?Kr-2KAcFWmj^ zZhR^aAI=@_`f#87o~$1~r|LiFhv%0;JYuo-WCvew?drr<~{g{(+DJsni?m4+u^3Rn#-1+xP{s&7QzK;jy z>++A!AB0c+_fv4!A4~p+N`1KNAIW^o`7f6|JkG1*VK&BPTI8RbKi$5&zw)ThoWtEO-2KAcFWmiZG(MGw4|5K8eYod*Gwa7()j5QF zPR^HnokO_i@M6jDDRTvP{kKd08_`%Uxa&VC`RW6Ao_ZgfK3FL}&*mG!$NV^6cI3yw z>lyDV{Aj5&7XJPDalEkaQRfE=Kad{>KUC_h6u!IUR}24K;d~e+zEtWwlWzq2$-?P3 z(3cCpk@@iX$N6!*e2^ap&u?7|@?qgP2jZW}NB-wa{aXR16)!(r_?^Okr0{!%|HHx` z6u!6cM}_}r;lsxlk6k?X$10!k5c8jrB=ZaB`~;jn;p=+T8$YPe`LxSFM?kNmKIhZA z_rW+{{PBhJIrqcu1GhiC%iEv)$OH2gZhz(wf9`|ZA8sGG{o!5S{^aqX4Y>XJIe`C4 z-T=2h+&*yo!@Iow$=e@pf4;xrzncDV`@`)6w?Dkg+n>Ds;r5STuf)Rt@ciijw?EuI zaQnl%y#2|K>A?%!{`ld4EN_7GN*zA858VFnE^mMGBM+31{rTC1|CP+csYf}uec<+o zcX|7hA9`xB=>zRk!A8sGG{o!5S{^WTba`CzS_vHKdzmuQC?GLvP-2U(`Z-4Um zrp^Gj|6cju${o!5S{^acsxBqI2F+XcdGl1J4ZXdY) z;a%STw-4O@@GftE^5c{G1Kj>c-u~q654Zm*`QJ=`xc%Ywf!iP6pG$xEu6&;txP9REhj)4Vlea(I{^wJS@1K{`A8voRec<+ocX|7hABQIw-2QK5 z4F4my`hua5ke|VR-Kl$-V{Q++OtMWga{&4%l z?E|+zyvy64y#3+!zb5~!^oQFYZXdY);a%STaQnl%y#2|KJTPD3_P>$u^Zj#o`orxHw-4O@@GftE^5gL2g4_T7jNw0~KivLs z`@roF@ACF1KR&5H!0rEm{7F8{OX54S(uK5+ZPyS)9$ z+aGTK59Po09W#L2A8sGG{o!5S{^acsxBpG~pHF|d{o(e3+aKQL?N8qRaQokq|NH3= zw?EuIaQnl%y#2}BA8!BK^1qe-@Ll;nFL3+7?GNwr_9t(Dxc%>>7~elHEYARLf4F_% z_J? z-u~q654ZoYG@J4Lb2I(n_J`XCZhv@}w?BFN!|l)idkg<-=?}L*+&*yo!@Iow$=e@p ze}2Cn{@2qVZhyFa;P!`idHa*MKivNOKNRr4nf`G5!|emNKfKG^pS=Cy_UF&Q$Nx_H z!|e~Z58VFnE^mMG_J`Y_-!F;(p-&Er1-C!kK5+ZPyS)9$+aGR!e!nFCtLYE7KiocW z`@_4u{mI)OZh!uaCj8$>f4KeO_JP|U-sSC2-u`g=k4uYj+5YcG-cEnG{o(e3+aKQL z?N8qRaQp9(|K;?D+aGQpxc%W>-u~q654Znb`G1)HaQnmU1GhiC%iEv4{o(fCC;yx2 z54S(uK5+ZPyS)9$+aGTK1MhZhyFa;P!`idHa*MKivLj<$pc>;r55y2X23O zm$yH8`@`+OCI7vjp7$Saf4F_%_J?Ds;r4$|{_m$h-2QO;!0iw3^7bchf4Kc` z$p6vqVX@%$hua5ke|VR-KY9DZ?f<^~m-7#Wh1(x)AGrPDUEcoW?GLyA2lC&M{&4%l z?E|+zyvy64y#3+!|GNASB|f4KeO_JP|U-sSC2-u`g=--u~q654ZmV`Cmu@xc%Yw zf!iP6fyPfZHE#AGrPDUEcoW?GLyABl*9Z0&x4o?E|+zyvy64y#3+! ze=Ps^QUGp$xP9REhj)4Vlea(I{)_)1!0^$ZAASRYk4rH`5<(f4F_%_J?<|hua5ke|VR-KY9DZ z?SDl6%jpldKiocW`@_4u{mI)OZvQp;Km74||KawB+Xrrcc$c?7dHcidzb^mb!0ZpV zKiocW`@_4u{mI)OZvSEbtN-TZtrxyBy>7iSznV4(a>FyWLy!`S@r>8a+-Tm`l_{A^0y7j_~Uz-o||MMFEI`>InS5x|EE)KY5FVwSkb&|7|!!i&MTkhfBwOz!%s~gMa|W1GJmjn zK3{($st=3b_7ngA$7dIxee}wE{QvOx-0!?U|Gnn^8$4fPt550-F`rRWvEjzQoP*>1vVHaQzd5}Vd*b`= z<_Et2;}Zy$UvArR?tf*Q%pY(+ugiJAV#AleZ1Uv&yc=~iqKmhV=KU9+o0FfJ tUOqpCIe+FazNX!K+;Q*KxDLZP%}+e9u1`&$JnjCAzcyR#)(!e}_fV zW@f=oA=$PNp+XZUr7EdV;#NdOm5Zpr2@BlJJN$Np@B9{Q>JH zv)##LL-O8a(DsMy1%CVPyOLjj<>J$;{^{ytzxu^53_ZU4KeznbhyUo_^X*(VgKeg3 zjrl`%%=YN%6T_)t^J*?82g(a)`b+y3hYzKT!w*g_4*y2_&B9a3<;ko4m&3=<#$;i@ z`gI#^N_$P8H@MJ0IJMZ{>)hb!-x+xI3u}9h>t!FC!}JtPOTjc122D$OVX>c@%ai}p z|M24C@Rg?R>jMh|*01~eKr(P_V6pJY^u%!K=!xM67fuWx+IM33@Z^c%Ur0_2KXiI= z_)|w0htD@(=OvHz|EBfzeT&0iI{NKGFI@|BeUqQC7#}seFWRdz&^s5epE+~+({}!m z6MYBIvwmm94*4{n`&LVG7&du!sd1hE|Z{mU$#<$m6p=&kj7%g_6cyeGN9=J~e0UbFgMlrHpt#`e`mEZ+B< zk2N;m6MYK<)~|b_FByQpzp&Roo4-e`$JlzZIK0~8TxI@yX#>zGoLtfC*M2hbq;%f4n1OZwSL_rR#(l}LSHg{E;du8Mx)tDTh-ap zTw1DBTGe)Y^r9qjK2vK{(psZaZMEj-I(DMo9x2zG<@+|zw5s>dR~zNS`8yuG)R?Jk zuFRHNb|I*@v%_?*)!bjr9PhZMerTlDx_`$tmDJ7^%k}#VW&1OgVm8c9jiimvq5bnS zZJ3#u%^zrYO05nCo2stgq+Tmm8|~_j+xJW-m1?`(s?Bw3&Bl)DX0zEi&~7%;={wV@ zTXx^JGo5NSI<02CUTvk7R_%dmD=E!)4mMk`%}w`K%Lg0Hdh@_xGj7c_TP65Pr)#sd zPPLMh>a|jPM|0+;-Pi5CZmRC1M(XX&S&UQHoz21&&Q%+g_72ZVVi|2!t2;iPG)l8o z(&Ajb)R}3vW)ssmTRKoH@7OjvJ~lcwT5lhyTyLqYR%hor>1?x7oNv^dr3!YGVfGy8HH9J~p*0yAODO%|Moce#t|Bk~&BK_L=@Z^!AaI zZI^mKG(MN@<~{6roLek$j#%E)FX__p!+-NzFM--SY`$JC)=P(*^BtOfaLb9Qjv`0*6RyrvZMOP^ghTGa!!wq4NQ+11zH zEZzf)V)v><59c=idtbfqzq0X_>H|gl^mymlR-V1)+AW{S#ux4SU%szcK6qborc|r1 zwCqjpKl1RyIK%vBpF_oRb9T1b=sjXNeXehN5u^zHwZ=?y`RTJB)!tZr0!Gc5B0fWl zHve3;)$vcuvkp(b^VmgK_;?PrHB_n;A1JkIrTw-f=eJB0ORZL^x65l^`tJ`ksB}++yJS_het^E&SPHt(kp4z#?wWx60?TjDKy{vFz=#Z2tel_zNCC@Hr?c z2K7HMUuvD}JK*FCKlm8N+t-w8(LSav4ji6y`_zUn?}KssaHD*%)oj#0SuHlI=Y9ov z{faX)7+=Jw+Dx%gnycAbI_LF!|fy&Nj=B-}&zKgx}SE{8I34#P4Rn9turO-INxxTc}%F<%6j`BuYEYX1#o{RBNQI z^7!bM&EsidVr*jT*w%?{!^7$J(JiB6|Br!Z&H6z8G-`$2K==FO@>BLWXF2er0o>8| zXamUwJ*eG$Cl^L|cFVfr+(5E=1p^pJE{^a^B7ALxUmD?;Mfl|rzAnOlGQ!ud;Px!U zo+bYK89f2ZzQmp<_=&5$-|YOeew=#$A?MHeF(dzY#(881UOIgE!v7z;JuCE(^FMda z2#+}bN9VVB|7^yW?h6><^TvC{^(V&rgLSpa{hW4ArN^AV?R?RXAMvR!vBdQ=7(2Js z&tGl4FIlSZi_Rx9`=#}{$@y)W{n9#IzU-XG z$8(%~EjvGuJh_y*?92Up{;V*il{zt^}uh3!ts z^-z!4|6+uHKEi)H^S^YR*11KN;amH>&={a@3wYjF#>G;jZ0x{M=o)7Vp?u%$`F|jBoD+Z(IibdE>wG5%Fwqmo*Hd7PWY{3TX276f%>>RAMi}|Cem3R0nZ<)*WYN;_l#}VCo7(AQjGZ8{QXj*aOiW<;EI7RkU zX60?>(u0$1508Mtd+}~~crMX>E>Oe-MN3bSa##U4u}A*JPId!qboo;in)_q6cX(>m z`+>)wCFuc$-T^D`2N9N&y$9Cj%-)@Z*mKkRPF`3;N5?62xt<~!uq3m@}i z)e~}&Y>1jKe&|#v1K459IKJ#ypU#PIAq|bUr*$Jt2n)>rSq9C)c{~iTDpW zOxCy^xyDPb@sex22<^FXe7 zAXlB_numk=G+Et4Jt2n)>rTGO$FU>Vy4T%6;|)1XSa))bmt5l|*LcY_-nodLki&#^ zCs+UE1^379knf=Gy9li(hyECcd5VoS+G`%jH4o&flU(zF`&l&A6LOqq-O07?ocQA%_X;PQJ;IKjjAMKjbiB-N`jxa`-`GyyO}$ zxyJi+K0I58lfI8G~6_559F$oT=Ov0m%CIwA%_L)POfz)*SfEd z_zyY!v+m>?FS*7`uJMv z5pRscF2%+g?KkF!-7UH1ja=g**Sy{AI#o}|F)7yxxvmrPFgF-C8Sx)-*m0eZYrNzd zFS*7`uJP`S=m|OWaGj8=e{x+Xd)+_QNqCO@Iyev7KDWm@+17(2-WZ2@ij6h;*_a=8 zx8#~Pa*c~z^Hy=4swd=_lX=WYXRd9xqqyaVE}LBx=tQ*d#sc29692Rakx&gu}1ri`C)fUu6ZNZxX3kcPqfn4)It~$vz4@ZMMgnB{_9jrUK)}37I{!GMw$l;%LC)aq%HC}R! zmt5n0Hliow(8IcutABE>`$_kYx`%U9T6c1-`>BZkki$RgPOkBiYrNzdFL@Xf=J{?!Psm}%x|6Gaa;^KT?jLoZf+KI_ z&>!P4O|h{?d(8v6=7C&wl4~Ab3-S=^2|0AI?&Ml`a;^L85&t2Ff7YE`<0aR4$u(Yb zjrYxno{&Qi>rSrz$+hl7{TOZkNXK3y*?FS*7`uJMvt1G(xX*F50wOwd$M$Z?)^C)c`@Yu(2p{zDG`tUI~JORn*fYrNzd z@79Q(kV6maPOkpRweFMdA9ddVN8ZSxKgMC2Vq=Z=ng?>t1G(xX*F5YD@(}6?Idrh@ zrSrml54!=8ZWuVI~~yza_C{*$<;r()_u2<^FXe7AXlB_nuku1hfq(*p@VfN*SeEy-48|lhaCP{cXExFT;nCzc*!;1ha!4H z4n3?px%wy9xgd9$|4#{;LlIuGBZp44c;h*b}T;nCzc*!+h za*g+NL{G?}hwG4B{gdlDeBJ${?)+O__#=n@7>8YojWyb99>_Hh;B*FA9epA9C;&$ z{uqa8ij6heYaYlo59F$oT=T#`g;zZxhYr@ATvom}H3*LcY_ zUUH3hRYXt7p@(%RSO4T%_qFa{KX=IWb7Z~SW1Wm)VsGS#H^yO_Vq=Z=nm2OI8@a|s zu6f%Kfn4)It~$vz4rSq9AB*@8IsCKkx5j_3AwJ5RT2LohY8mSxyDPb@sex2`TEx#j`-&{R*zah`Q2*SeEy-PdEVHT55IoM#@% zHC}R!mt5l|*Le9%M)iaodbVO?ja>bcYu(dqRQ`Uy)%Ve*zK?lh9409?*3xX7B$@|u z%>%jWB-cE!eyS(rkifc=v&T6!9&6p17xf=67#_h;8UUH3>T;nCzcsY;88*)ft-O1HIdBJtF<8>8v-$H0TIp&RVn5WoSqrK*V zT=PJ#I>|K;(1)gaLXPvSJGs`KT6raS8c3hYF%QFMu3&?Hg8KP>CRhFBs)tL-uctA5(6esa~%_a*i7eNL|W$yE=z>L-uctA5(6esa~%d{aO5lJl5# zBv(D;s-HY&uli}P`pH#4^G*HFx=?b}Pp*2%RX=&mUiH&n^^>c9>ZAVSuAiK}gRQy`d@IN;sNJZ7)@X-~Z_r+dGn`U|4}RX-+I{p6~L zT=kR3>{UPQRX@4v9})e>`g1_8`pH!fx#}m6*{goqtA29TKPLK5x_)xiPp*2%RX=&m zUiH&n^^>dqt)l;B*H5nc$yE=z>L-uctA5(6esa~nUG(qtFQMeBpIr5jtA6sBz3QjE z>L*wIH;eu~uAh9ppJzv|ddO8jdCXq*(_ZzHtNuwBhU@2`@1vXaebrB{ddO8jdCXq* z(>_g>H*(d#)6J-#>x^9WldB$b)lVL?SN*h4m&;GcRsXI)|I)8EE&UsI)lYlXL$3PC zWA>___Nt#;^-qibO@2(S`pH!fx#}m6*{goqtA29T?{brV+j$=ktY78(;8zB`5ODrB z8_=GBU*r4ej`}|Qyx;fH?dr=9z<)O1&9=t@tf9Lx+w;w6`|zy&$WAia?zHm$AouXo zPooDK^P~IcYxTXKZu`DuFWN*ONaK$P2Hch%Ex8DGnMZ`WWCn7uh}S9N5daW z8lCC1N@e>Qp;l?u-0g4MPdMR6p{os3odsjRW4Sr|$>}gDKm7iCZRiE|@^p6{P5K_! zF;5I~$9t@!UgIl%Ue~>j$A44B5;))O*)8}EKS#*da>sl8mI!=K`Z2q^eX*V#$;lPg z;UkIbnYun~tk?V}{qu|0(cH`O&jv93w}@Wz7vR|1Yko1q{Mgm`f8JQH`3F5wo9ukp z9Cy)Ow%2R^wf;tY)8oMWsFTiLHHP`ae?w)5iTw{}vUWW0x?7IN7_^SPu&?Xqw2#N{ zL558ZlV7rvy~eNd1;M|Yr4P=}+o96F#?PRat~5xq8;>_ ze^n*78gpaJk6*3S`M+{duru(f`uF+x?m*ws@&92Qj5=x0@ht-H zIi5ZKCkEUPOZ8lsu1wTYE-Ms#dHCG0Dbl M_xi1t0dko9FJj#aKmY&$ diff --git a/drivers/pwm/pwm-ls.c b/drivers/pwm/pwm-ls.c index 0761646d7..5062d7d30 100644 --- a/drivers/pwm/pwm-ls.c +++ b/drivers/pwm/pwm-ls.c @@ -263,6 +263,11 @@ static int ls_pwm_probe(struct platform_device *pdev) pwm->chip.base = -1; pwm->chip.npwm = 1; + of_property_read_u32(np, "#pwm-cells", &pwm->chip.of_pwm_n_cells); + // Default of_xlate = of_pwm_simple_xlate + if (pwm->chip.of_pwm_n_cells >= 3) + pwm->chip.of_xlate = of_pwm_xlate_with_flags; + pwm_clock_frequency_get(pdev, np, pwm); dev_info(&pdev->dev, "pwm->clock_frequency=%llu", pwm->clock_frequency);