summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Glauber <jglauber@cavium.com>2017-02-21 14:07:50 +0100
committerWolfram Sang <wsa@the-dreams.de>2017-02-23 13:03:56 +0100
commit4c21541d8da17fbe94ecadbfc913d6dff3be7ca2 (patch)
treea98ded9e179bcf1e36f66cafe8fad6573b6b4e7f
parent7999eecb7e5675c3c7c2981a3ba9be6fc8e2ee27 (diff)
downloadlinux-4c21541d8da17fbe94ecadbfc913d6dff3be7ca2.tar.gz
linux-4c21541d8da17fbe94ecadbfc913d6dff3be7ca2.tar.bz2
linux-4c21541d8da17fbe94ecadbfc913d6dff3be7ca2.zip
i2c: thunderx: Replace pci_enable_msix()
Using pci_alloc_irq_vectors() instead of the deprecated pci_enable_msix() allows to remove the msix_entry from struct octeon_i2c and thus to get rid of the config symbol check. Signed-off-by: Jan Glauber <jglauber@cavium.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
-rw-r--r--drivers/i2c/busses/i2c-octeon-core.h4
-rw-r--r--drivers/i2c/busses/i2c-thunderx-pcidrv.c6
2 files changed, 3 insertions, 7 deletions
diff --git a/drivers/i2c/busses/i2c-octeon-core.h b/drivers/i2c/busses/i2c-octeon-core.h
index e160f838c254..aa3c8f4771c1 100644
--- a/drivers/i2c/busses/i2c-octeon-core.h
+++ b/drivers/i2c/busses/i2c-octeon-core.h
@@ -6,7 +6,6 @@
#include <linux/i2c-smbus.h>
#include <linux/io.h>
#include <linux/kernel.h>
-#include <linux/pci.h>
/* Controller command patterns */
#define SW_TWSI_V BIT_ULL(63) /* Valid bit */
@@ -118,9 +117,6 @@ struct octeon_i2c {
void (*hlc_int_disable)(struct octeon_i2c *);
atomic_t int_enable_cnt;
atomic_t hlc_int_enable_cnt;
-#if IS_ENABLED(CONFIG_I2C_THUNDERX)
- struct msix_entry i2c_msix;
-#endif
struct i2c_smbus_alert_setup alert_data;
struct i2c_client *ara;
};
diff --git a/drivers/i2c/busses/i2c-thunderx-pcidrv.c b/drivers/i2c/busses/i2c-thunderx-pcidrv.c
index bba5b429f69c..1d4c2beacf2e 100644
--- a/drivers/i2c/busses/i2c-thunderx-pcidrv.c
+++ b/drivers/i2c/busses/i2c-thunderx-pcidrv.c
@@ -188,11 +188,11 @@ static int thunder_i2c_probe_pci(struct pci_dev *pdev,
i2c->hlc_int_enable = thunder_i2c_hlc_int_enable;
i2c->hlc_int_disable = thunder_i2c_hlc_int_disable;
- ret = pci_enable_msix(pdev, &i2c->i2c_msix, 1);
- if (ret)
+ ret = pci_alloc_irq_vectors(pdev, 1, 1, PCI_IRQ_MSIX);
+ if (ret < 0)
goto error;
- ret = devm_request_irq(dev, i2c->i2c_msix.vector, octeon_i2c_isr, 0,
+ ret = devm_request_irq(dev, pci_irq_vector(pdev, 0), octeon_i2c_isr, 0,
DRV_NAME, i2c);
if (ret)
goto error;
Sy*7`|IY\SW% 4 ~*u)sZ~|\*ET٭s^C(7 XExKw2[xps$6%SiȢa[z&eM+FwA񋞛/a1F#>9cc*9]3w2 0~>6d 8e0Fxfb`3,M`E|K01 0:>(1jJ*|Ē 8Q*| 4UtrdJ!f(o&i Ðh&/5WN+HwcIf&)b$· Gx@7JA$x6 c G}MRIߨ! i"sRJk.lj# f&KQm +tcљ44t7ÛM- dDn{Г jA$6|w3jS[c<,xymIǬk3W1ϑ{^y}5kĴqo={Ɛ|52/79ssI_c~s&:1eRs&{Uey9ߺ+Dn|3}O>M~5Կshf|t:bZ}_N=c~Pns~qmIuαr&eKҕC{xRC )r|0۸ձUdA2sj훭wnh3c[:G?@$Z cr HNGgϲp Ok4m`}3ۯY[x٥0gg~_G#g׆=_.AJFɉ˛Cbdy  3-G2;d&1Հ7[-fHMʐF}=#}B_sAAgo45JNsl.C^F|bXC?tn׫mzNCN*w_6k)sǘHzS4O$ g=,\%(a ,3Z4`{,A@ T4:2 J@@7QeLB?myX)>)#e"-A#uiQfs)pSz )R/. n~6m~~υ\̻esc 9pלUgYNEk}PuCk%^#u˳k"#G۽t˺CCsPm5:AFz ~6,_'?~WU(߷ۢuG, /=M6eWtk-_~CG:,^gY3^L輒 N;q| kW}^-+Xr^| N]vcmq쪉˲-+xo6a,? Ӽmw_ oE|U3OHmC:݄N֩x|WEKWe染| e_5#Ib! O(t,-{L!cR=s9@v:kt9W\+mCH(wua]_'E9^-aMǔ䍶[q*-Ӿ́t&7Y}D0ȟꞬCnsǴ`NrhqxoQ=}ߗk<~w[n7t Ӕs:_LeU{J,,!wŰ;-؀}/Z#C7"^N3®g 8!\LNf Sdf!@cr1dC{`Hi_@~v6a_t߷Y&wQ'u_ !ȏڐvL0I>Gj,2>c$>$XIBaĨ2 {fq \'u>| 1)COƌ~RU1W]mkmcVX#zu8bcVX"Ƭ81Y"1V{J}J]/Jn:(SVڪmUVgn}E%-:~[^VN+~2e뺐x59Lz=I$0 9PS~l$ۍ]fLVRum0muQ$>'<uEzIUckS|S*VCd9:Ò~.S)$K΂'@1 !g"$ĭDip;T%IĆ  NƷI 3v7;{B `ˣ;] _ֱ8S;_^W:y_+~̀xqOLy!(ɐ>D`:g*>ᯨ%2 64*x0N$s|(ukϟݲHzӶN664]&UQXJBfA;x>-|͟IqjY3' $== g`=Π[Iv/ig;:7P^$~'ǂEJ)LX ;;~yGs4pH'`UL@n!>Ry}[?OGk[HUU?6UGy{8\i)RQCZW꺔\OB+csρqڿ% $քqQHp{탾[+>ƻ㌜XFBK* ^+}o|K^{cku׬N_~)K5@X?b|uw`~"wϜfs`>M <LzrrgEL T<(ow2K_`Oe,?~yS6/qu9^hs2 C3^Ae"O"EDP?'9͍C$;x+K4_<+( J;b6 "ӿ@YC\]\ D^m ~qP.y4\#?{uO烓jd_mrrhMpNwq7!to>c0^.Ʒe@F'羳tyu|7Ugnۮ@܉j%z|KVo(d# ޕGŻؽ?z+A =qrJ"aCH JZ\l;629^ذ#p_*-y'*@= ;\+'\U«Zir*{dwu`5rXϬ+rjB0$#ݘ#S:"A߽pBJr!/x.v>l@m2g{AJL% 9vQy<>ue+&r _O7~G`;8>,AK<^?kL(Q Y_~Uo Q{sA}}~r nv7KExtIv@>+s=cCXx}sAs}_kucvz|g,G|9Bf<8r۫žVZ[)~_әtv}gy-?U=Ԅiݷ^4Aۚ=<\=B@`1 =uY>͚} 񟯓Toku|UheaPafrw*& \N? q0FO_h$/6XvSM150(Ra)І>˱!i ʳ«HnQ@Td"!d/d 6iQm~;aߑA-8]TCMr6h[W3Hic@΋<[GCa/Ez1~ܧЀ;{n3=Vz,Sy.@pPŬ}jlɥzˣݏFo3D1/vlgkCoG|8g7 \bh'wvA[Sk9o<_;V C]!|n| ~~g4$A\U|#*sŭb@\"&0₅oirY&3zĸT{t+dum E3ԅA苐gU j!m CkeXPz:8ѥGA*,EkD s_\P$'yڥyA4̘z*E?p2R VT_sA6&|Bl拍e8viqxA6 8ށbZ$Lx@~F$gt%|`i wJ9C0B2g 䞣:М[bXĚ `r=(h;]\PCT -OQim v6tóx"A>K[%<$P9BO7D1׶/ EHZ׃ۦP~}(jky-Z:he]{dJۡf3'&tAW1 5߻S4k|sYRW᳔v yA=@1׻^˔q@yvgX옸t*u 1(ވLFJwo1n0;A-T{$]P]D Km5B-za[Pf,e, ̼jr%avփ@oixS(Xs&;ٺ@u׌ձv9APl^^BGy\ ]F` C]}ےc0}Vk-m| BuPJh0p`@q  {ۡnH9⨁܈߻R2nqðpW 5A}0#L8=w9ٝ' CN2e4+:wX=PVo:[m~Sʋh3`Kٗ_r.kOK;b@P>/*{x Ͻ7I\ڹ\9 #aQ~{Z茘[03}h:m3͖)cҠ"Z%Gf_Өtx$72 a`,%Mc*z=Vudt ~qgܩ0*oH$!pzDT!Vs*aoA߈ ~\a͠T|yHǫńe~Kz=;f^f=c/[WҚ6SalW(evjlsޒj6>wig, Tw/)sݟjrhGzρ^h A'$ҕiD8!$G|; YB/nSFK *'Bϔ])4Q/pewmn\ >CyC]u 0ɁYgn(&bjZ dd N!G='d@}}- nxQ~Md {POC=[:r0NM3,u%rz>g7=fd揵x/VgUbw~yJ{!eE-6p*:\ȓ#E}+KnQ>(x\iiF'`'&<x&OCeQis׈*5P)pύ kV6G+Gj߱9Hz@jA|2~Λ :xPG]9ZC(#۝-}<nvoAI'ZPoS??_Ndw[gٝI0+茤mqH食EO|d!o~>XGmN:kiBO5hp@Y}**$9C*$6*h+mn&vyEmbk  !/ξ4vwfy*1Fѐ{|: ɠJُp vLP(DT۷Ú((Ģ l휹3쇅ϨapبzdWNg ̓[:DS5u笓 ,7Laml w=>" 94 =*@(2vwcɾsW{V7NrG\#yuQ7K/Un%q#=eγ]F fqn m rjoUT}v'd΀~,ʥ`w+CR4G9^8<n„NbS xSSjTtm0V`QqsET"5! tBE"dP[ALa*Z~RM=ֹ7XH {|:>a x.y8$tN82Ld|cie6vTt}_m TE*"QSΡ6]׷&:[{U_ޖM։8oӟdN^[@4P?Pm9i 5y,Q#dl]bP;!wwXliP0yUn$Gȴ[ՃX%f! _P O@NɨI \ڂkh ܳ ^M̗I ekT#))&J}Obf\չfU(9ÿɺsOP0zq]{t?E뺭#f5 ׵smkH>{l_mZ Myl bsZU_5TI+N=(訷6K!ҫlv6a+&LDX-0Oӏ/e+=Ѝ`$uWɤm4 / p썢+NYähP/$ ȫ}c8Q;p#9(9>YHY!&U9e}o.\ xsƦ}c."'ѵM{ܭ@vPM66Q@SffZSzZn[v\ozoWev|ܡ춛Ri|~B =W`v(!D!9kgW$,(ߗS<1|ādstowO1О>j߂ ߟ4!"7 ^ Úo.\ΊE+evE.yYmPhRBÞ~wŲUKnp\ sMՊuImj x!.D\ qfdkکPJ:ڐe#a Pkk_mH9nnAG]Mcv^@H.i'`7H?f؛6wUNdaN _ ;T nӶtkPk~'>RJ+Sa ! KHw?'LTa2?B}!('k̹we>W,.@R(PfM'Tc|MY H{Yg)/QXZ@Bmz)v/93"IA(2e8{/0A*5$MdRo#fy(B#'Dd"BAӫh |Glܢ^%⮊|E' #B bCy](Z.rs?HW({O"?/'mul;>XJ d3D;/iT|b.yY/,, lWt9roT#?`tCjE-. }>r Ȁ[& M5t SE2pv")m݋0P *|k{66+WZS`Q>R{]+4՚sUɉWzkqv%ol`XAvj ykx-u>GQ&n{sahw|9HW.y;I&PSDV_@Upin8\^>emu'&.{ =nPK;nwRkDG~8 u8Rnvckd37~#XoĠ \m߿gjcν@(Z(Ai z (;yyJ RyBm_KXq}Ղ=gn}*,q /(,DKթKXA`:BRN! :HbP\6eHu2@}\]f еSqpy zUvrXtQGA_LƜU&~˗oOۑ45\^q aW7\@ƾνסutG5 ?~F f*Ai1pgEM6TcU3xjTt"vA@c }%>Z>i;!'0(C\<]ėͭWe3Ͻ`@q^~0E]"|>y? ڱ*9w߿8XAr{?[ݟ/I>I'|Hz9w_e2Bf:>b(Z E)S>{3~:26OMf@|V)zP>UiD 9M 3^>bA)" '\nNhXy 7B>zi8&u0ͷK)C8e#p**,̕J#t2 W pĀ:ֻ~?tF"O d?ц^@X@`$8g1pFG1lfEeN]cFC3nV\ؾ.N0#[:1#T#̸"@ "YU@TR(ܪ]9-qaT'[{P vBFQPhsҐ[ZH|L_$pj3 &V+nEJ ċ8C7e,D['8J"+/H8XMw1w 8n[qqÌ GYl/àӧ F/.32݂-'5 s[mЦn2@|(ՙ$OLT>3v   x 6d~w=yc~/i' cuݓ+( 8;M]rRՒ|E(^g8Q) ߓӁ)!Xw>=2{όÕ1D[:|<@R /n+2/(eP:Kopq]pzN?em!V9bv%? 4#@ E1.#C1b 3>7"MҞ8b`nV!Đ.]*>_S<pr4$ iqW (ӌH/Zq "cLV=u#SJjG#(F)jC? —fʥj݆v_>i۵=S|4.L\t^;aD)YTH8s?B *;ÈEvt7c`N] A7Rw/4t6L5n_wT\}ݔj1ӑcsqڿoov?ܟ~]r GetzPl 2QP{z$ǒaOF0>*i$!2O4($1FGۀgSٷnok_x#1ާpE\u|gyr(޲gQ(b{'DV]odx0_~R=U=}FyiO+cb!"Bjs=5AQct/7/8\W96gsҀ;y+"OFJY:'S8dC|@0;yA?Vt WˇL/FAq8 0eS*<&>B- (}]#ϳX|[0[ns` [EԼC(q+.Uyk\^O7b:.Px犃284'^ܦܣc?n_b9fK|iSLC"!0=G(}eB6`ɵʪ0ؐ_I`>SǞpu_¥݆dwXp90 c7坯L/O3cjj=5/6o BBC%nm?,KvhG\6`-{$rq+Mnd@[$eTYVPJ'gw_K= =#!7k!D6=[OqJ(w'@MЛlm Add璘#  yOZNyt8Ø1N ?[SPτdċ_wFMomm%iť!{BL I&e(ҭ ]봎a_h ,xK_oǹ2AڽEP*KXY7ѷ $/$Jr_ӏO)3`UMK~Y9STʜ;GA=PyR#"kƘ]̈́mz <]_F"Qۼz׉З*RꜗhqL?ȴA#3,PRQ5{w]99TFTͻ ~R x=Ætԯ}l Fk=4&W;]kGrO d— `!Y*\xԠb]׺dltָhtnD`uȶ,=bUg.Ü:nA[p_62΍AsXQYo _K)?hzEmfp`I! ²tN}qgA(75^ :ޘgMKlA1 \nh5dp!7#݄/7P )P'DD8^CX`>@6u Ͽr(ȹAJ|GW{:N˃EPS>Z<%WTV;#v1eYZ oL_+ Λ/ѣC g4<먿KZXοL0`m;%c:n|,m.0/5Cs~,Zb2z##e!c6ٔz~pt e7|K~Ȣw2ks_#D%t#%{!UuX j(s0u.`ZpD'N%0~T".&笩2*\22-1 CO@?jʭ]j]Xk9.Qu=~_ķ*@Ǭ(u E]b!Oߨr_t-DJS ف6`#՝[$LBHMg&vZ;Ўv+P@Gpi3SKu-a Lx@5שPQqiuyc$evcy* MN+ xҠ˛6 00KT|pbd /bDFus~2=|,\5Qs[$ΘP]zu|p#^N3|=֥)7dCL|-7cBmӱR\I mGP|.iR׻BF &~|f%]h 0:90>h>L0Mu;A :Zo֡eѤJXA+ڶW!~*F9l'Hp 8OP"8;lQm.<$7aL?~gj?zg`a4lp}h;ymip] ~2Ed,ˣذa4\6pX7FyfXYIo|.dEC1%-r͢YRd5 /u+ '@Oj3SGjlGT3"yL~qZEf%|9nkL0q mWJ"6 c{:;>gr4ə[10`u"?$_ڱa0ȮWB 4"0߾Xc7'?'> 5 @XhT/KsNCC]x(.!(g\._)٩^0;jU ' 0킄(F++ tfILE 9]% ˒\\y^FfF~׶חeCM7(0+ >@ѱLW"ƻ!lPN̕=w|^N˲@.)|l}i@o8}2^uA 1oI\nL>Dz4hl,uC0>i>&@vxA >"8}p:ϧ(.R*PԤL `CSѭBbTH_Ps&PB-(8ze98]6J#磧B-n1Letj@ JZluUb5=1뇚H]I2}Fv tl5h^.cǥdn(Yvr8^M6Xkwƛ}]j?a}j:0ph*d^\@r+@$o][H9*Nb+zU7ͷ+V%έ2攖4cqY|6 IozeD{?,|LEPm_QB͙XSk < f\ӭGSsV+e+5#R ͭWl@HJLˑRgzst$mϿbJ@*:ά ("|LYt>}#j>1/vRE垬*5W 5"1W H^̏> F%n᷏XlW:9+[ GE}KRt^=}Fi\UT 7VT({?`nc{#P󣋢3#'cp4r ((Q?s~|IŊi|,H([1Bn0ۍ'7֣"E|^R58%?*qaǖheY$XBv cDr|esmmjFu [aT, aKr犯%"]Yg &#a&P]0 9\,Dg_wHGzFzPt{q]3[b D45zLVvO{g"(G~k`L]En+gb/|I/}D@lh|7EeL$@!r?m ;e k 49Pccc߉C" AyUw!s{幩pX?S?<;f7.5T|g&$yf6yS /΍ ܽ /3(dj eMmH`-mM;-JuD("v6.qXXDIF{yIOxY8-Q2YV'elOTrL!Dģ$O|a 饖ta Gz&Cr4+o.DG@V<*Hg} #m./1#WDWvd F"B*}dE[9Մqm ٸF;& }0++Ǖg],]n<>R4 s╔8xIκ!y}d3#$ M<2b.]B@?W8_r00kp 鷙y: 6 c[[Ѿ۵i<#ǯwduS7苿V ft҃bXXҩ7ohp`)1'sA:TM]2Bs@fef!!,߾a[$\i#~aY}ryӄh-TkQ'bUɛNBwd.1qƊ͇Lb`!f$S0_}0xb9! cwՑ%.rS2f$A->}\ҵi.tD`f)PFCjg2]QjntfZPgK B !8Q{gPHM- Dxr(jJklV'<+Mm]}3ߛ:R^Rtiq{G49hRBJ0^ ۼ:kRf:\8s\!HKy+ La'1 aMuycYz@!b6w1P~LE*," wr .5VQ8FGilݞ 3HS/۪)c>Jq.4#$J:yc[9x!_ݏȌʚo `K#L]% ]<$C.*v1V>MS_6 'I.#"`ͿSA.YfuMV3%wOrS0F'硐ay`l"0C Hn`26YӅ\぀z' m#vb.g2 +t5vwũ09e* C7-e{ ߯P5u/ŔX0nav`:£4d,6`9@]#\b2/_J?ٌjbrYQE\t[?P [x : 1JI#|bù#h **`EOZ!Je`\@S) K B9KPm(E裝\Te}]{%o=J/Lt 0yT,9 fd?[Xqc7xckc#,pTKH Cqg :9 64+^o3S_HXP3 ͸lðM>pWFuB[ 5CT>ng=usP)N~ggj |\@]e, @ԪA 2~N G=8Q,+п9g(PHd7uƏ㜼QeeT)0ŻNadmcў!qX!}O{A٠2c [޾gV|!@ ( ^]D|e% Tw;Ϙ]`t+yxxW6C68R!9=|1 XXKvFSfѣTay3XC=0Cg˜bHRىh=W T{+x]8 Qb}:J{bO,]U~ũK1/RBauE`9Izw+x+r+mtὖ4L{+g4, ^!!Q(PVAP J`p]; 6}>ݤ0=uUy.|1I%7qBPkdC9T/ T_L0-0K"*]E 8űyr819gjIKۗSZ{``F~NInUIZ9Ps`,/JFn[Ƅz[ ZoYp(@KЫCIP$76*mbPź\\BR!Lx)U +4Ӵ:lKN:j:~L6Vj/eG8VX,D۩.U10Fǝ4_S:-s˿t"IA [O uKp`&vfDZf@HEm: ڿg3.ɜ0%mw7#3ɵ{]c -ÌنY;?EfS~gТRZrG`eћ:930FMST0H(PPP:$ޕj"<ߴ,J)S(R \0a WD>c'e!ua)A^%Kh RkhN vh׉6 x5˄)fJ-®'Rh&ݧ6obfՋ%BDyFF22 id6@FR^^O:N.1D!#1!R| ժ0IL$ШPh1[o~ C:EHI@ LG m8mݰY}f&k1kĈ<";5hGd0N"16}v*c R%D[xȝ0#$chN$D{sۯum=7Ns2$3:o^QߞhbˉkAi@gYl3'P7y:C3p\#YQ1Euo" + |8#lKm:gy1Q~~2cY!VIsWCDinR1)*UޔA5.O ' Ƞ w"|Rrm07v{4$˸.JL? zUkk3vi~EʖBs鞢9UԐ*߰F5&6Qأ(sKl gB dDZ⵨{ݱ#ιN7MĚ[`={-ݙD^$$aIrf[@1Ĝ)%3~U fl4s PZ ٦E"Y F&B%A\ZDk3S\Z( ?Il.B$gq*GV) %M,.^j}fUUD Mï )%R,,ڡ.FGշ~ ~`H?\z;GKK/R3h !Zh!Efd<'4w]v3n o!".מ.6ԂeVB$R1O! ڱw; 7#:Rĉ>KEq, Mn}Xb>nǽ<p4S\,ڐd?gva p"Vۯzd` \})UAC\5́w|6ra/ލObCO+wbV-c=FNxع84rP|엒$yaB, $2k 9fGOTq#%j< WÃAUya@. B?/{Aa7$w|0C8q<~~,kbޢ"lk;2"N6G_h01]l8WDΊ?Cx0V8wKer']QeMʊ7[}v9!Wa5rjR3Iͷjx%L4leY3ќLŦ(Z4pRyA}yxip*9CUdO3Fk@>7tZTTZgjgq$3e''ϰB<؀yx"]?ͱc^n޶ħ64B.E58FĈw%Ldm.(Vi>eoM*Ut6ڂ/CZJlM"Dl!C#N(Ն)1(P'<(RJ\ 4/a&@^0<; 8z!BP:uK{;H4)+ƕkGȫpFNM=k]$׮3a( F<c= h5 |baSɆ"j"[iiӋ &xwz3`'%4?w@ZdoP81]E_iNU[ ڨ!!ٌE9D8U1x\v^SxLj&ԃ|?># _瑚ܬH{ȩθjF4̡Nwgr@W~tOϫ6 eYD(tm}4? !v>}^ Q:MQK[s+M^xoX0f~. z>ڹCxA }c>F.#FA[@@w(RD`];)RcgœWsZfշsqV\{ l ćGtzlrӦgaVFgq? ^McC`qoDGֿٚ@WDH"VLzsmn;y bsd"?nEG-" Q(!\3_l A6Ya}р7gN DdM0." >%w#-|>+/ifL#{h̽9C%ܢ\j=?TXٜ/ɜ'A_kRDĀE`HM$B9=k/~D O<Ϊ"ԛpƒQTdnqWvE2@mjҰԴ(KꕣjZ/45:A=9k6lݏBKam@g .uD|oPvmeZ/C *u%657 @WPX] DCI<_{=ҕ!B \B\]RPT@Ib[Ql*&4^Ctߠ٫-ie#p/,?% H:Պ`Q 8{_}&\WeԑDÊ>LdJ\ˈox 8 GτYX9*pK2)*ֈ8)fH;Mo/ o9g5(X`GAwPB^BMUjK 5"uUMk XQ_+aW0pr/ؔ 'c+B5'%s`< 68+ƘʚD%=tIqj^z9P갩ȠAc?oQ$nK-kA[3="ޭs$"lOʀF$b)t 6xUFK$!ŸHsW~椠n0>3*@|ȀC(, !6v̾Љl)#u+tIU@-pyOzDGuuB<0a>YRuPo MR (7T~){>,ǚ{/ ˠ#@Mҋ!}6 I5_Sl(5} vЎzT Waך}02)1v@Ʒ\H?PTc a$ 9LyL?Px#[|qBGN*GKkܱ8[uû?4#V)T$Q}}f#R|;(E'jo Mf2lP7ypބ"y%/u?7%)V}ro  x 8ܲs$Ho",|Cup\2|>!X@léق,/kK=p,6w;xd6XI2 FFamuӈ ,PďCV$yvxpNHZ~8:¥TRK1NkE?aE 5;号ץ<,O/N#Gǣ7h0|AV$NL1C}cl ~6ޕw*EI4,>"_:ږpʎW}]#ɶ_~˪B6Lc˴Mvn#f\$ޜ¢&ɒyz>jZa\ȅ/Р a\! V2Ίc;!;>bYucAY_FKys,t 6pܯ oܩ{ӂvLl LQy%sy#S+5}I)y-d0u(3 Ԅ/~r MDVլ{xģkvX*:KX10HEL9=U]M"@k&E㏈t'k ~B>~Fv{|8圾^ pxMs ^!A&)qf6W6b73=:U|{cӡ h3vw!PfsrdYXZnP w$gc uaɊP U6wņ %tM!\ n1Bw޹eDϑi>c693!G*$ulwľPaq*ՇHIn2NB&EA 9 0k@C #@rpxpWsƵ[:RoU,Us,LĀ x,tTouҡ#@y-[ֺ8;-|q`!׻|m3pkh"A"! B_B_*?r1V:XQYVaAґ.Z WSdVNfč6hkUcAGd{-" {`<߱BlT(".߫4GԚhJ/-vAEW瑩62x-':1)ٍGgAapE4"5BH:cp A-]y$sS| dyՌrcC8-(I3-n-d`sN]j4b%@8-P*U 80Sajs$I@s%J)l`@[UY%=rT `jZ[*UTbʇ qh4ҙ5 7=pu.;b}ۃ^rqyԫ{C~G0!xXbW?1Q!0wߌb]y3JB(;T $ `xpƳ^/_FcyKx#CvmEi =!tD1֘y0ЩY,~PI2>stZ%t8 U$%ny^jQ52Æ9 >3Nێpbw8B2ьlqܧ8C=`ȊxI qht+a`, U c칰0g裙A* O@R>K~}ӋoppO:Y<8HIueRn<Й.$^z-vnGU; RTwmue7p>i;pw PT"TƁͽXˋ·d\kFX=57/qUL<2lMA}5Y@ `mq*6%Њ`qpc5z~<{KR]tET\:>Zr8>EU!:Hg#|XH(ǂzɦt)xaأR Z4(qp A1uڤII$ſaQj, 珑aYTr0 % GZ'17!c,m"y^v0葝 fvs'[%EK$쵮T+(ţ_ˢWT J,i /8fcXyM@l#O2 ?9x_,[IKJKٯ#6Yax`,ƃ8EY^ QDL+kE"uAW9@VQJdr52LX  qT (-pKPO+[\[IsbV'\iw1qGA~ ̢Jkͫm%P-xLH#$RZ&^JmWZ#\-x=?q\Ȍ1J_>y端ޚ&[,d+uQ) ;HYE͆VcXj@[kh>lC^4W&,4/ pT*P qq3AUA8F(IjYyv h1ݎ,0.[ڶMAFgod麗\޿&[b/D7҇E"֪\a#{8Є&5٬0Z-pmM!"H_6\sʻ0ݙƍ`b 8xj[W41#T1zaXEa }D@e6Q Ƣ; 4(.H9]?E9az $loj2=. NEYA (wܵM_@=]zoBRa#]dQDTnU̇*_h/U_n1՟>0"U|d1YkP5|P%Ϯ^Q Vkw\\/OdF‡JsYHM(0!dG Tn$sQVgF9Z+ޠHh ؂𨽶nxz4/_瞫Syeq#-B O=p'ʪ"'m9Yܞ|͝^Pm r*i:[+ T`C#yaX.H:&{Ms}K'#b9@d6;h ]&3/MmCN]  XHz\]A('h흃3?c;.'Dw8q @Ȁ]&c[caS Bq]9 ?088*9 74PBɮ9yCs\pE_8cǣ01'KX 40l$K b]RnߡfP),*(>26/=+|7XVP e6޿8BBt!;bn:LXXR=#PL%g"b*YG NĦ땯]V8T^k$:2J_ݑ~pU8alÐF,}Sz[dCv"SwxaBb8nHSsp5_Xva5yCWK2kűI_'}S~OQor{"ڡV{9zzlIɴ${o(Tشg~>͛s4\9 ,;yP52s!R[MqX8 bcAHju3rƉZȾ{l43̭)DH9?{s`.B3|5:G;Jo,~Լ^aɁpIp}#qugZ. 9`w6dA7x'+5q5_Ϥ8"'{Uu[Wp>.ajY@PJQ vZBWMbjI?(cB NO̓*fkDU(!k0TI Dlh֠͂٩ԈYSﭷO;,@ %zDN{Ǜ{>(3Is~o Ϳ8h E/!Ơ,߅2?r Oلy''!ȣo\߇B <;f@_3\.ac Yn,yWiē2>d9HNz8IH_H`6~\^x:LC^+O2}Tz?G{~n6-j:$8(0)sH-9! 41#ҟ gTn '~ύ0ϊ30ÞOP{cb4[^ߛ`(T(˳NWD3dO$9JhP_hP7dZ/@NsE|[˩cUc^?oѯjN X(叽YTu0{lë-VSy;3A X?.  YF QA 5aIs%iBfu>}dheSq ŒB{SVY'O&>ץۙb~18t OW"~yui_ ?knϙG7G,t|%ȑ^M^y~ لl{쐖Qk췗wfqå sO[WH=5Pf/nXp=!C/ !ln^80.zh!Ʌ>]+ç9y9gzaL0);zp_ =M3qgA1`H??EBR^Ynuv'?ӳ.[˩O |(!~~"ss)W 4C‹OO_dD{G>biJqFS `?$)[N_է#to{}0s)zb$/BQ7 yH~ҟ7e-+)((׊Z/ڲ{F;DȁG9xZ5"o)?*Cx;??.^uo0)HB^.5'm3!QA]K4aG>pLj3G]~܇'OWT pn3 ?6tS3`@0ˆ$fZ^\ָ :P~6쾻YG3OwcK 1iss&}g?ηZ5xz/C~3d<M/ۘWZ [@Ygqzps㱽^<3ߏinm^6 r6z`YlQӷi޷#|1ۣ9g)yt\Iv=bAoKn}6y ӣܷ3[Cw߲C;E%ԙx{|~>VNtG 퍯yvehf|oA˘1M@fUHψ*##DȊ]́Ö u#S}\>#~>7{%ѦU׌}c F>fFHcwlϕֿ"̵0V[uM8>mM?Cx ة[P<||/>Up6RLe0pDGG;]$:DO϶>1~_Sg.G' 7*UW rsOY +a .Easx t"QNWAnXR"뛯s;ۢGlH d Yζh3(̓hWG}ه.1<(ZgytJGJ&~QC_>>irAus.zW?#D7r1Ln~1}m6".?jaDG`/?ln_*]Wu[MsXH+ŌeX\)cOG[Fb9R^~yJ(-.<͔"V{$UBѕU-j=z|w)qg_fVTζ/G,Q"c`T_16Fa^91'4Ax#`pb<JK;?ݟh*k*^$bd>]cp|GKƬcX[}}ߌ;40`+0nkCáG݌h9^nytǻX`dnXek.s:NXPErH^t u}o"p>J#B颈USݒfQ@HqrIPAKj\jC0'UKOo ]14! $IgqE\q|u|WS-RʼnN 9f6]xYƃjQ*>Cx=Fz%Oo o+?0w^5oQ`:)ϼ\/k(; al'~('_@@4̕k1'.a̿e3@ ی>'\O?$ α@0)ZoEKO]6-i?t*" )!6~9WW pD]_T7},@]PMlMqeh!۾ݛ^D% ~@.Ϙ a׷kw62ʉ!o *䐃p@LJH2#+O׹m \z6Me}6 vshez &~6ݶ{= 7e;~_Dq8+c Mk""'aM @(jrTW{7pynNfY2$kۻfN ~ ,^Vó M0Gb_q@*,v8ʖ3xs޻Z T*S.V" PBAiʥC7Aa$ YpX.YBjvuf+P@D? AM6m3n3d9@4$ ϓv\ ďGpU#p"gfǘ׿@yEagt0@'`DX 4Q*A8 3GY [@\G\ mZ\ʞ97:Èæx(MۻGg8LcEd"[\W(-.Y QlTqDev`@@0@"XYjؙO,i7Y7pK[p]ukT0^5(>k(9P"Uh;?;F@mݳ)HJ4*v,wϢAr בJ`:htnKƾdCJ%p^mR\zh!o1Vb7rBsr Ez׍7O¯ԉbjRsdv`0DEԅr%R~'Sua tZ͓vS.WEuOY<Uu_\`"m܆A*+߮}O])LȆ-۹nzQ_~"/c]G=!j+ANd@zmJ(>p\r AuwmQw:WJ:P`ѪLäd@IP><ء]㫸M1vHF_Qz֝ᐵW$Rrl{ VyWEZg|VfAu{{ADlnpku8R#;CFxLH:Bz6MwiG+hLwbK pP*r7ڦr ~MXUu-/荸Q=7rؙqz/C MCY< gk-صaC;jwyx4+7srX7# >zjDDekJN8HBD%[HF(k3o6q@#O?Q[vܚ1x-k~ez<{aY4G3Ajb'CU4}q[>8M_U(ҎwvucJJk[0ڰUn_b}zR9',N:8q2\\O{g%|%"q&Ȯ1V>DÏژ/m(p+절9p&B<5 C>1/vwkpibճ&v E9(T4N98Gg>X3b;X+ǥ!u4 $ 8yYx)䁙rF3'>Q_o愑ePs|jjAyhyurⲱ(Ё8!ҡۮ XK4awTwgW=gYgwIN~!=g$4DIu 4]*YVcr.Ms޽:oUH`]N!ӳ8>E*˔fHQWsx.:J # f)iVqVG3fH8\ tprGcԆIgS%I2TKH{6qngveG@7EE!]ܓ0!l)1vcŔZռ\.*~tj\V·z2x9t?W,³e iDUC 0 v?u;d/­v"M*JX#&ϦwVmٱl_ޫ\NVY,P&q3@O}+hS{αH m q=ʺKlOusb'˧m rԸL:Kʂje==gA+81^[qfAH^]ʄ'HY9Gœ pEw͜][VtJrkpAGȈi m~T6~f3ogF6ah>" gJ8ϯN_SF?t;~wSC' ;%}u[݈t;%2Դ=j{Pv>P :N4 3V|,yij5#bv$;ۢGJx +kBό\q-[̭]:p  \O!1kK9H,T3gfkJMZ?[!dݎ7ŅO?sM2iE̴/&4 r !* H?J77)юp$W '3j=J~F }WZ ]8c5AÖ0 .?#+H5\Gmvwk^ MVF輈Bw{]:;" u`<}iy/XbB/% ;lyČcc ~‰bd1@ͺlS ^;`Kl;Kpe6후C)j"IN ݆ā8ؗC)[m~ǵx}ZM֐|!sqsp-O:@SKu\-_ U׬k,@NJ 6hOq&`L b NJ:R]"13Z^4~iZRJMSp}W׺`g|:2a'ƖtPy|g.;kA, aǸ)!ɍZ+%aWE=`KY#YCL9D҈"1$EuUaD4m0rA"2D$>b=W {v0ޔAQYS#=ܹ#yM䅥3>y ai@̷jA!orl (46(LBG.)v5 }a lׄSvA:Wwy9p#1sNy&aoH4]hgD" +*?%U.͠uquDiv`#'RVu찃1Ĉ #;k=n:Ld_):jmJui ]9ڕM~MWCaYo5k*PH?|`hy8ѹJ_#+z]Ef&R])B'RXj -um0%gUPfXEE.96{"!@snG}nu"0,z5p'j D ,k9l5p5po$8Cd?~ Drd.pT"vq2,B|e5 2m=S DDr 8ŗ"(*'Iċ{q&$PMPRDP @Mf :ru5ldl!6VѦ3NGJ7S4q@-FΕl8#_>+z!|G]|ktU~ei?.;: iA$Zf0Ii YFVN"]܆$җ:zX<3DrHv(f4ߠC|7oݭ%9H{nq?X yYܩ SU89 b{e+5=s) dE[ jv|60!z w"?]}R?w:BC)d$4R;C4ZlQ}>+`'xm@̈|Ut_ltXSڔ\!|F-I V@}`|5 eQ^" ,/"mیd- b m,B$BnoGiN#MRTv}Ykҁ8Dzs֜j#v9-Tط'J7>,$"j}?+ ߷0x~SU!c+rL1 8V7 mSgmZk,KnY^,Yf_J* ݓ xiq,'`;>7"Y8#qeЪ}`Tq 00KUѱ \Ԃ2'V?xCY-@bY)ʐ̝IVM4c3tg'`0o4?JT@! i2 3`rVM7L7us@jucH[+ue*=5Sd㲊_)pN`8 mr TX#ȁ L7s]z!9&_mφBHUQ#PQb#$&3%-qN>gpM2I$p24ӞɅ&Z 9/bBb}/h=؝]4[hb; !`H/1рtapLWo[iȾgß3FCёEX M HֈPR<̄==Qd렏of mW)C:fǫ+8l{9E WW6^AC浰HHwx(cBi\.B6`E$S"l0.c=nE$AJㆰ-@ rU \'ki<' LKf2C Bz^Ŵ5+,vm]\Ip252qs h‚҃S(̝ƬELELEUPPPQE QE QE#TCTQCTCTQ@UTUUUy\;N2up ~[b UƲ Gǣ]"]`U~䔑 n̩ eݤ ~9Wq=avr:a(`0y3BzڒeݓL#$Am*n}D`A01DIZ7C8֫ܫSwcĮn܍*פĿfS3($xK CH0@PT34QUT4+C@TT4  AI@#kpq` ``!b)XX?,Z&i$@RHD/((hB) B)h$%a`hDb1DEޙkպL fuT-&PurT 6 @C=4:|-ZrDe Bp`TlHͳ}'N )FO*8vAmH b4]p"Df Fl/X !3^[c\MgBf $:t>a3(G1*񭶊G: 4NdD"#:ETё`SEfLl6" c2CP gyurH`(}6g]RkYvq ЄBj[1Q?AA>B.>F[oF`-qsX% o bAE s 2 >uaC>ל}^%ۆä1LATSdB;FSao!Ͽ\OX{f Ơl>]W&5бѻ Hc mڜlNJG!gi6#ibC.^Zua|١?Fwnir0^̂C2 g{o%'ьseq9Nr3t$-$BA$3E. npX#!\>? ) ):vޤd<uG{kU!NٴeIq y)M\|䭙A"T T@*T h"%I bEPZPDF`_ W` JJRs =. B)*Ȕ?v5QWUUUEER"*"*: ?jSJX$*ŦB ;w/P߽?пJ+R" ZRj:d>þzzx|aopI96MMyMؐ4Ǭ.lώ>]Kxɵ6ٿ>wѿh0 $5 ,gM=[3$\H~c 2-^n3E w9H5|8%x%?:2@Ӭ -Gy"-Ipu5~JM0sZ$ d1Ć 2\D.ܪC{g=Rs^`zbF1/w9A$Щ@Г?8yֶGHQivy9ҋPRPf5+jɈ]n.%(ɓu88v''a,AQ;gEhUH~HgYiK8VL(;\*K\AoC}(Z%[%ko"tP @=B?z"g6PXt3z7(ҠXD#rIн^ /Sˏ6ù\#C"ܐՑ7h^Y;w߅IaڜJR0bNUAvܵ7hWs1̩Ψ/㔟ŦĒg@Bq;"2BuI\^(AB b7WsJ=0t?v ׆@:P!@D5!9@-~|Oq#c<|ĞD!8-UPx oFr v@C!/>P [P=^^i q}l􄀴E40zq~#Y1-q?:p@&hoKTS/IH#9Ѣ*r@rPKmnpȶal^8}i{>fJG@m|' `=Yv6$oL8 r_>¬GA2=W2Fe/JU{Yfhڀ=PjDK;S8#~܌9ù<̶V荪/)n]}9\ֳ*pj0\D~SD%=g:箃,`m`8= ő&x Sl:/&}|y"~/;-B8suE`];:^8nyӗGԿ,5XpCSEs( :n(p4 UYyDfD&/^Y?x۱Ȇ1ҰʦAbm M>.kxd}3ȅ3u"%#fnDS$LʹsO~@\m0&k':=oj@sQ$J'M0Y4tq?7:i뗒gFT%$"".m#ΨK FN>lFsiX *NͽO1ۺ N4:}ֶ2>Sv#fS|]c䝄T 69gMx&{薭0T@X#.Տ_ ٽֽp^_#v ptG초D`Fe?-]lMSaZo !!{D{Hk̛Ϊbտʂ/fW^>ySD=R_=Ljß<\GS* a&X8b[ߢ{v\y6P,tO6$/f|ɦPLؐ xv;ǴQIYS=ǫnWh&/Q_dVQ)xeã6EAGY}U9g.W`9:0_ԡnx(ͅ#-ކ MS_]ҜMVb.p(>:*,JR, PW?7)Ϫ; _5RGCl0f[U~7i\5BʒN.ۿp>tl X"!IYr p+٤K1m˘cH93\0u8}}!> 88.}e7v (J/q?oSC8S!Loz;:1AH2!%\>r ܐ5 5Iw d+cgG2+ ѩn6٬n{.j ~0eO@^]__nH{ukhuȠ#fmK ;~A )#K ×wJl?͠B/^ ~/*냞Ϯ5Hч|N(C (@a@0ɭٶ%q Lc1JLa,!b0v~oolg>3̶6wTqW)9-(oZѼZK" ]m̲ /;R;$x@u ]yX Z>RU @ f!@IJ*{&66!U1fiF}9C9;fB9lv6=|1h}R 拀9D3@y 0c<r.=g!^c󷖛Q򱸔 @C+A0Ū`%xzҒA ߷*`婛! N,]m+i-vL`xNZBt9R/ rE9Ú0.Dƨ`@ޤ-W. 9Ăs9)jzCi8ҷU1k$7atɔ$ ᕃv U2xzOÉ=-Eӿng>6f 9WayW@u<>u@ ,N Q%5> J8~*l>0Qp:ȩͷ>