A patch of MBR for Vortex86

Thinker thinker at branda.to
Wed Jul 16 02:46:20 UTC 2008


Hi all,
DM&P is the vendor of Vortex86 series SoCs. As I know, most Vortex86 SoC
chips have
a hardware watchdog timer included. It can be configured to trigger
PCIRST signal to
reset the system. I have a driver for Vortex86 watchdog timer, it is here,
http://www.freebsd.org/cgi/query-pr.cgi?pr=125409
The driver is compatible with watchdog(9).

Although the driver seems work, but sometimes, for some reason, the
system was hanged
when kernel is still booting. So, I have a patch for mbr boot code to
initialize the watchdog
timer to reset the system if it is not been cleared in 20 minutes. It
provides capability and chance
to recover the system from hanging when booting.

Following is the patch. If you have a Vortex86 board, maybe you can help
me to test it.
Thanks you!

begin 644 mbr-vortex86-watchdog.diff
M9&EF9B`M<B!F,V%B9CDX.&0T.3$@;6)R+G,*+2TM(&$O;6)R+G,)5V5D($IU
M;"`P.2`P-#HR-SHP,R`R,#`X("LP.#`P"BLK*R!B+VUB<BYS"51H=2!*=6P@
M,3`@,#(Z,3`Z-3`@,C`P."`K,#@P,`I`0"`M,C0L-B`K,C0L.2!`0`H@"0DN
M<V5T($9,7U!!0TM%5"PP>#@P"0DC($9L86<Z('1R>2!%1$0*(`H@"0DN<V5T
M($Y(4D125BPP>#0W-0D)(R!.=6UB97(@;V8@:&%R9"!D<FEV97,**PHK"0DN
M<V5T(%946%])3DE45D%,+#!X.#1A"0DC(%9O<G1E>"!I;FET:6%L('9A;'5E
M(')E9RX**PD)+G-E="!65%A?5$E-14]55"PP>#4*(`H@"0DN9VQO8FP@<W1A
M<G0)"0DC($5N=')Y('!O:6YT"B`)"2YC;V1E,38*0$`@+34V+#<@*S4Y+#(S
M($!`('-T87)T. at D)8VQD"0D)"2, at 4W1R:6YG(&]P<R!I;F,*(",@=&AE(&%C
M=&EV92!P87)T:71I;VX@:6X@)7-I(&%N9"!S8V%N('1H92!E;G1I<F4@=&%B
M;&4@=&\@96YS=7)E('1H870@;VYL>0H@(R!O;F4@<&%R=&ET:6]N(&ES(&UA
M<FME9"!A8W1I=F4N"B`C"BUM86EN. at D)>&]R=R`E<VDL)7-I"0D)(R!.;R!A
M8W1I=F4@<&%R=&ET:6]N"BMM86EN. at HK(PHK(R!3970@:&%R9'=A<F4@=V%T
M8VAD;V<@=&EM97(@;V8 at 5F]R=&5X.#8@=&\@<F5S970@=&AE('-Y<W1E;2!A
M9G1E<@HK(R!65%A?5$E-14]55"`J(#0@;6EN=71E<R!I9B!K97)N96P at 87)E
M(&YO="!L;V%D960 at 86YD(')E<V5T('1H90HK(R!T:6UE<B!B969O<F4@=&EM
M96]U="X**R,**PD);6]V=R`D5E187TE.251604PK,2PE9'@**PD);6]V8B`D
M,"PE86P**PD);W5T8B`E86PL)61X"BL)"6UO=G<@)%946%])3DE45D%,+"5D
M>`HK"0EM;W9B("165%A?5$E-14]55"PE86P**PD);W5T8B`E86PL)61X"0D)
M(R!65%A?5$E-14]55"`J(#0@;6EN<RX**PD):6YC("5D>`HK"0EM;W9B("0P
M>&%C+"5A;`HK"0EO=71B("5A;"PE9'@**PHK"0EX;W)W("5S:2PE<VD)"0DC
M($YO(&%C=&EV92!P87)T:71I;VX*(`D);6]V=R`D<&%R=&)L+"5B>`D)(R!0
M87)T:71I;VX@=&%B;&4*(`D);6]V8B`D,'@T+"5C;`D)"2, at 3G5M8F5R(&]F
M(&5N=')I97,*(&UA:6XN,3H@"6-M<&(@)6-H+"@E8G at I"0D)(R!.=6QL(&5N
%=')Y/PH`
`
end



More information about the freebsd-current mailing list