Here is NXTV's ramini.c to be placed in version 1 of linuxbios
src/northbridge/via/vt8623/raminit.inc

It was written by Felipe Rodriguez for NXTV and is now being contributed
back to the linuxbios project. His email address is included in the
comments in the file.

It assumes the SPD contents on the module are valid, and it sets up
the CLE266 DDR controller appropriately.

Features:
o Detects number of ram banks
o Properly tunes tunables
o Detects column and row address sizes
o Works for every 128M DDR module we've tried as well as one 256M
  module, correctly setting the available memory in linux.
o Lots of comments for reference

Now if someone else wants to convert this X86 code to C code for romcc
in version 2, that would be great.

Enjoy!

-Dave


begin 644 raminit.inc.gz
M'XL(",-`F4$``W)A;6EN:70N:6YC`.T[^W/;QM$_$W_%-HG'9#Z*Q).BE#I3
M6I(=345)):7&GL2#P>,[EMAIL PROTECTED]@#U\%_?W3N\"4)B7'\SG:G:>,B[O=V]O7W<
M[AZ'/TKP([EMAIL PROTECTED]'[EMAIL PROTECTED]&8\T#2)VY\4)BV*$%?_OW"R]
M&-91>(=+`3\N([EMAIL PROTECTED])@Q6QG^`IW(!C!;C2Q9619V\2!EX"5N`.PPA6H>LM
MG@@/CFT"[EMAIL PROTECTED],X8)_>7]Y"^]9P"++A^N-[7L.7'@."V(&%I*FD7C)
M7+`Y'[EMAIL PROTECTED]<`GX'-:.1(NQ#&!&2KI40YQ&$
M:UK70W:?P+>[EMAIL PROTECTED]:+7;[EMAIL 
PROTECTED],ESCCI:($O?XX/D^V`PV,5ML_#ZA0&#X
M]?SFEZO;&YA<?H1?)[/9Y/+FXT\(G"Q#G&[EMAIL PROTECTED],
MSV8GO^"2R=OSB_.;C[@)>'=^<WDVG\.[JQE,X'HRNSD_N;V8S.#Z=G9]-3\;
M`,P9L<4(08N(%_R44(PN2RS/C[.-?\2#C9$[WX6E=<[EMAIL PROTECTED]
MPR,DEA\&=WR;"%P(\B?P%A"$21\>(@_U)0EAZUAI>7&R?3@/G$$?1H<&3*TX
MALD]'N:)M;(CS[W#C],)R*JB'?7A=CX9%.I[BK+UP_6*!0FQ/+\^!6N3A`<.
M5WV(UV$0X^Y)N^#RP\T_.9UT[62#QQ,==]XQW\,[EMAIL PROTECTED]@%KH1&@S[`G]=1-GG
MOP6/R?W`"5<_<X*H1<?0N0SO095EO:Q&3NB22L>;%4/E#QB<[EMAIL PROTECTED]'PZ)3/9
M^$P(ZM[R/9<SBENW$)[6QYOU.HP2P2?)ZI^>!6?7YY.#*=BA%;G$\U"2OG?9
MPD/,?ABND3S\(#\:LBQ7QA4QKN*$)'4^K]:=U"M(G4','!(W?#>(PM6`&/A.
MDB+/=*Q8.<9IU'T\T.].)G-02&,0G+F#WZ/[EMAIL PROTECTED],+4&INX`,^IP`Z,94JL!
M:@[EMAIL PROTECTED]@2X"[EMAIL 
PROTECTED]"[0$1;IA`Q"KQ0%DB]U_Q:;+?.NIM/CT'W-`LURC9?(I
M$&`LBD@;2C0LV^?*2PQ%*Y)O?2F:X6U,T,B.M?&3$E4_?##M,'!KA'$8:[EMAIL PROTECTED]
[EMAIL PROTECTED])[!X;FM(W;OA9L8#TN<Y;'4\8*$^::S]-;F.HP3<V4Y4=B5'S6C
MATM.YN:OL_.;LRZJPJ'1)XV0QS0Q_!%BEFS6X*PWI%,52$/FD`Y"5L<5/NZR
[EMAIL PROTECTED]<8V/C[?PI)SHG,6KR_G5Q9EY?OGNRKSY8*(/G'5_>'WPNK=S3FZ9
M<UOFVG#^'[EMAIL PROTECTED]'(\>]T-IF2)YI::[AY0I<!Z'[0&X(,<+58H%C!&$L"
M-%>9%4/W^P26ZT8LYKIB6S$J;BA"@G`-K^,,#E5_&81^>/=$,9;CXL'BCI&/
M2]W^#==,_>"(?-XYZ0$B&*NZKKW_P-T*!E1DAGQ_[O8YJK=6\`<H0YEVL<)=
M)'P7R/5OAP?&IRH(>KP5LH!W"G3A!**7`+2ANHU#.U!J(%LXY$^2X&3&+.$%
M[2><[EMAIL PROTECTED]<+E9V1B@<4<V+B</"G,N<9<+>2"1LJ[">[^#&J0HJ*JOF/V()S>Y
MN)A?=^.5O8G-"-&:A)(4[#&,[,XKQ^_C?U+'6:UM6BJK_5<6?O_\I8,G9DXG
M:#EKDW;1Z0R'H(RF=G[B52ZU,I,1&G)ZJ"RN,B=K+V`N9\=-V?$[>*DP1[JI
MJ&-NUIR=D3[$[U,;[EMAIL PROTECTED]>!/00:O(V]EH1YQR3UX;K*L\>;NPYN>
MBZJ=MT=NT$B#+QO+)'$.HAIE<>8+"$63'NAE"3NAOUD%-2'7^#B62EO3]]G:
M4;ZU`,W4M+W$1((F42M!63E4PH)=0/9+@,8Y$$/?GE3!I/I"].^HO.0K1ZDP
MN6[*0T4!A"/9@""``1YJ>BQ)6ULJ\.DE?$<OP;7-;H%,+2$;5Y%)[EMAIL PROTECTED]<2T4
MC/N`:WO2<+CE?'\Y^S#N\LFJ[R7'`+'WA:5^4!]H`P76=Z`90IL,Z^!GPP7:
M!`5NAJXG51_N#)GE+#D27"_D^.8-&?S;=#&\$21D\=W.O\/_@:V(0:<Z2/^H
M8L9MF*%_M*KG6J1:2C*K^1<%IN*FR-&X>,WVDJ<V;>86AWK5?V6C;J&GS3T<
M?4]8G%0&[EMAIL PROTECTED]'P@<2.=DDP7*;??]V-VJECEJIHM9;42LMJ#.F<M390(9:
M;45M*.IT-W*]CERO(5?:16*,6I"K=>1J#3D9?XM0T"7N1J[4D2MUY'H;\I'>
[EMAIL PROTECTED]<0VWVH9;:Y-XQE:!6Z_A5EJ%@@*'(>B%PN1+:/J,+NM]2L.SJ[?P
M-P62X]V.Q?;KUU(+?1$?%7NQ_3R`Q9@<EV*,43+>W&[EMAIL PROTECTED]'G8*;,
M+S"[[3:EXG")<2KHH1),4TO26BR0I=(UA5`J?&-2QV5.9\><]/_K:/8Y8W3$
MSY[QUVGH-H56#=W+LK9QMUK67BZA03*M+F$O9[:-O-V9[>6&MY&WN^&]PD>#
[EMAIL PROTECTED]"4/1R-5%V.%QL<L.DVP]U(X8F4_3V1+3Q1IS;L9`ZJ,NJFHSRK
MK^4"8UX/N<#$*W">H'(#45]P3][3X$FH5/;9WY"SE<;^=IHNU1IJ"?.;V?GE
M^^X/>?&H)TIA`IR7NUH7$42OI`^RR"$)!1VN&UDK,_$PP;^3>%&LX014+2L/
M([EMAIL PROTECTED]<Z30R4E;\7`2N#DX@,<@#PPJL=S^,([EMAIL PROTECTED],9`>:-OWE"UUI
MQ;@BR]-E^MV2*</$'#P3=?O>U5[5F;3MW7A6DJK1J[J/%G3:L]BT$C*M!9DP
MP]+(<369N.&##36<D9ZFIICAKR-VX"RMZ(Y1]OK;H:AOS-"RKC=^S$2&33,C
M,5.V.9'Q_F;T]4\"(?^;G\Z`*L/IB(QTE1O\<)`-*``J#:@WZ8B"(!H?&1CY
M&$(=T`?M1LI8&A)Q4='DA-52,8:*1)'/J-*/,TH_K\,4A:JHNEVNI-UD=MT3
[EMAIL PROTECTED]@%L-"R8!JA\AA-CP:\5'2Q#$"&3C<D.ZKAWUN'`VD:^4>
M>X_47G,*F^`GO8C8OS;\2-ZDV^#&T,GKNF9DQ682DG:):C%/<(M21BD-S<5%
M.H`I9B%SE-7)Z;<4UE&[L';OIEPD4?:I__Q)2:[)-$QN&[EMAIL PROTECTED]
MQ\E\2X[J".4X#D17<79=$Z>F8OZ]+4[=!CC<(4YT'6EED4O5<A+OGE?[GY=M
M:7\5T;(]1*N.]A8MW2A,+S?D7+3Z3AWEM_O2BJ^HO.YDHR*!EU1E&XJ+-92F
M_D`FV%"PK0.J'##S_M$CN>XFF.-"#Y5JQ.!KFNB7EJBI?#/XXUI_9:2_J)25
MME[$<?.J.6H;]0BI-&7Y:=JXU9,9B9Z,;*4H^/))9'M)Q'NG%,CP]+:6B5:+
M5JH6GUS?4A,V5;,B\&6]BS3NU<"R/P/#7W_T"<`.PR1&XNN8+C'RHR-#5VAL
MKU2JVT1Q`CX+[M"DW\"8KS<^25L=)YVSR>0>S[:1C?GV>I33N!J\3_AU:FL+
MHR,IAQG2/N([EMAIL PROTECTED]<=!*LAL]!6&\)2&\V,!)&"11Z/LH510"_`PJ
M7YTV2&JS?WD#.LVFW1'.W?@/6%OH/^CV+RAKI5E]:S:-U%/DQ5OC+8U/KZB=
M3+/RMM1&[EMAIL PROTECTED]>@G]^02T0?:2WHJ0,G5ARDY7[>Q$D_+9PJ^#^-2J>*
MN'V>GEU,/G;3_G&*]4QT0$_^?K:M739G0,E`3[V8PW*:$4-G%B^W%UE"D[-%
M<SPQ-R*W2Q:@"'=%!@'=M,,UT`=JG[C4Y=XV.K?<3"Q/'`K5)XOY3Y=N,"E)
MRS.OF/.88G_%K$?\[GJBZ40#L=>G?\1&%W@)9?9FL<!36>$AT`L2-%S?PH\5
MREDB4,J"<B\HB^22W.#:MQQFEK":86`2-NZ<TP+1RV`E$L=YX.`>*<7EI^$(
M#8>'I7BW$C%Z&L-?D21+*\"3JC`MK5*]-;-ACCJN%?Q'CN@)Z]S23\N4CF$Z
MZ5-SO0_3TR'J6^-!&X98>7(,9U;D/Z4Y5<Q\YB2T?-J'D_GWA$.2VK==]^!,
MRS+IW,N@&E*C'7U$[$2>+=X#T;.,M^=7>/L/HX2RA_<;SZ5NQ/4=J&/HHKI2
M2Z)'!BNY;F12]D%H\#[&>U6H#)=7U^A#1%\TM;`=UB53"HHK2/_``C?<$/!#
M&+FH4>&*OVK*VAOI>QW76ZWR;!*H""C+<I<TL8<[1#4M6[J:6^(DC3YP';'T
M[O-"%M-,4=!2:K0X[NE\]AP2K;1/RA!E>5G>A+JUAP)X7(,=-[$PR8/KU^U/
M;4)^\G8&)SRO?P:57B[4C/GE,JZ>E;;[K+A7+B#U%T,:+X8<O1CR\,60]>/8
M#7GT8DCK&<@]M*[21]^R+R2&>9JWJ&3U*CW/HU<V<G5X8&11>G8V.177PMZN
MDI8FUYQ[5B?_TN'!1K!B$BNF**LU#E/I)14+\E,52G;!#<)HA1Z9UT'H2M&,
MJ4"DU!"):V\=2^;+^'!Z99O2A66'L`UZ>R2)*XA)#Y_$*ZHB/R4KY;/\C567
MOXW#2V9(D;+TX*HW2.\OY&=5NAFH1]LT1YRFKH@;^?;[(R4SQ86''L`/'S`N
M\\=66YC&^8VE^IJDE`_E#[VDIOM_^9%1RW30.OW]Z[0DZXL./K\+T%6&XB%%
[EMAIL PROTECTED](JJZ<;H<"Q.D0-RF5(Q,)O+</+K"W0)8X]#+CS?K\P)QX[3E5&U
M<51K'-7ST99]#E[S"'_/(GI5+):+59E6H\'[EMAIL PROTECTED]@XD&<HI?CS
MK7T[$NJW)Z%]>Q)ZC<2^-':6=<NO)1M>XA49]%>\X.-^&-(6C;,43UV*AYW%
M.TR)GEB6&2?GY`4.-_V\19&U;DE;\0Z+"LO?F]Q%F(71,V"I$R^I>)"Z]<)U
M4'>HM1NT[7]$WR>[EMAIL PROTECTED],?%0$+"!1SOKGBV>E_Q^Z*
MXWEF>SMFMBHVPJ\K2H/>E-62OPGN9=J"`R*"T5-,TPE1_9&(5`X&9<%^JVCP
M0R4:C!NCP?A_T8"?UX)^8E"V[F\0$OXTG3WCPI^FLV=P^--TZA%B)YU",1?X
M)Z<:G"HFBZR8-2GCM]/!SN<\7I4#08,@JF9]>O;V]GWJX32U2WC;#!=>-SU[
M+_N;G,XWBX/<D_'&*/>7Z:?CK(R8=0[4H48EA6[^.X0N$H:#_.<+76?9Z^75
[EMAIL PROTECTED]:74JWMC95QY1J!R6"[EMAIL PROTECTED]@'W,[EMAIL 
PROTECTED]@ZX'LV[E7E*
MJ'@<_QH"5C,!\9;C/[EMAIL PROTECTED]("XKLMOF=.G*I-F;"EDI2S=VG-<3GG1)S%DE[I
MEJ(TI"_;FN*P:%&T*:=(P'8JYG*W[D&+7G:;YI[7]=[7_:)#VA',MRX*HZ(2
MU_1#ED->8L;S\D4G[D>JB7.'1CFT:&[EMAIL PROTECTED]:.:E6JH<D^_M
MU$N&M??/66%=_)QBJ_EAB>;'+2[F!4%E)):5WI[$`X"NR*#U].GT4=IKG3V.
MCJ";]R)[-&*,H4O/[/G/4OA(1B3KS!9_^>/^_`\O)Z,=P*HQ&M)3,;L$K&N5
MKFX[YI&Q`[@)LZ;6:[EMAIL PROTECTED];B,6G7C2V,\2B[%&;@>`!4
MI*FNK5?`Q6*="D^E=<>2\+YKQ]LJ0!R*YM]8K>G?H=:LEX="[EMAIL PROTECTED]
M+DX,G<9ZZ3DQ6&MT(_0;8?I9TA9]1=!QY5[QA*5B!Z.\#]0X?5AJ$^W\P1H*
[EMAIL PROTECTED]<`\````
`
end
_______________________________________________
Linuxbios mailing list
[EMAIL PROTECTED]
http://www.clustermatic.org/mailman/listinfo/linuxbios

Reply via email to