找回密码
 加入计匠网
搜索
热搜: BIOS ACPI CPU Windows
查看: 13825|回复: 0

Reset Control

[复制链接]
发表于 2010-10-29 16:27:02 | 显示全部楼层 |阅读模式
Reset Control

7 [! Z! Q* S' |* d& G1.Reset Introduction% q7 n) L. E, q" d
, R* ~% ~* o9 s( ~( n6 [% k. |/ |7 K. t6 y
Reset机制是BIOS中一个很基本的动作,很多部分的操作往往需要做一下Reset然后才能正常工作。Reset如影随形无处不在,哪个功能不正常就Reset一下呗(玩笑而已:)),ResetBIOS code中还真是挺多的,翻翻code就会找到像MRC初始化、ME设置、Setup的调整 、三键重启、BIOS Flash之后的Reset等等。虽说Reset是一个很简单的操作,但是我一直搞不清楚Reset有哪些种类,这些Reset分类的区别以及使用时机,所以就打算总结一下。翻翻spec发现其实Reset大致上就分为1. HW Reset 2.Soft Reset 3.Special Cycle Reset 4.Global Reset这么几类,每一个类别下又可能有几种不同的实现方法,后续就分别介绍一下各个Reset的原理以及使用方法。& E' b; U( A8 @- a! Q9 {7 w# o$ ]
! u0 |$ o& m( j. y/ d( e
2.Hard Reset
2 g+ z# K5 R4 u) y* l1 K/ U* f0 V8 X' f- R* R' O
HW Reset通常是将整个Chipset以及连接在Chipset上的所有的bus device都会被Reset,它的信号上的表现就是Chipset将会给出PLTRST# signalPlatform Reset),BIOS可以通过向RST_CTL Register (CF9h)06或者0Ecmd来产生一个HW Reset060E的区别是0E会产生一个Power Cycle,也就是S3# S4# S5#的信号会依次下达。因为这和S5power sequence是一样的,所以0EHW Reset也通常被称之为S5RESETHard Reset常见开启或者关掉某些device,或者一些port的时候可能就需要做一次Hard Resetbus reset,再重新分配和扫描资源。: P. B. S2 R6 X# |

& j4 R% q9 j3 S, S% G: D$ [3.Soft Reset* I$ v+ f! w$ j1 R  l" _: o7 |) p% }
  f/ F; U  U, H( r2 g, B! Q, j, t: c
Soft Reset指的是只Reset CPU其他部分不受影响。Soft Reset有很多种方法,比较常见的是透过IO Port 92 or CF9还有就是64port FE CMD,虽然操作方法不一样,但是最终都是透过拉CPUINIT# 16PCI clock实现Reset CPU的目的。Soft Reset通常对应的就是BIOS warm boot,比如常见的三键重启,或者windows下的reboot等动作。
' P$ @4 _# D9 V" E* S& x, Z# ~3 N4 Q9 ^: F/ @* L
4.Global Reset4 E$ `) D) z& g" U
2 E' N0 Q) p1 C6 b5 t2 X+ L6 g% ]' J- j- z
Global Reset又称为Powerok Reset亦或者是Full Reset,它与Hard Reset非常像也是下06/OECF9唯一的差别就是,它需要将LPC那边CF9GRBIT举起来。Global Reset有一个显著的特点是它会有一个掉电的动作,有些DeviceME or TPM,对它们的初始化或者设置通常都需要做一次Global Reset.5 h1 d6 n+ o8 O0 I0 J
% J) G8 M7 Z* S$ {$ L) ^
5.Special Cycle Reset0 M2 y2 f0 E7 A7 @0 h' B/ p7 o* o
3 C) D; L( g" `+ s7 b! y; N' {
Special Cycle Reset按照BWG上的说法,是指当CPU产生一个shutdown special cycleChipset将会产生一个soft reset而且该soft reset无法避免,不留痕迹!:)
0 G1 C# m8 Q; J3 i# @( j$ v# r; P* [" Q
/ T; U& {6 J/ f* Y5 F

+ W$ x3 D5 p2 K2 SPeter( g$ Y0 @/ o+ k( [$ n" R

) o3 A* k! |, ~: {
6 h- O( M, j- H% X5 r. P
2010-07-04+ s) _8 L  H3 l
( f+ B3 r: d. h8 c6 j* r8 @
[ 本帖最后由 peterhu 于 2010-10-29 16:28 编辑 ]
您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

Archiver|手机版|小黑屋|计匠网

GMT+8, 2024-5-15 10:55 , Processed in 0.025592 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表