landis 发表于 2008-3-13 15:02:01

system flag的问题

南狼兄,请教一个问题,64端口(状态口)的bit2位,也就是system flag位。通常是post时,用来决定是上电复位(冷启),还是软件复位(热启);那么该位的0,1到底是由什么决定的或说什么影响该位?是EC吗?是怎么影响该位的?

bini 发表于 2008-3-13 16:47:52

system flag是由kbc bios决定的,但具体由哪些影响,我也无法给出定数(我无知不了解).这是ISA/EISA时代的产物.但我想我举的这些例子估计会影响这些的:
1、三键重启;
2、port CF9h(06 & 0E)重启或关机,如hardware reset或system off;
3、其它紧急情况,如CPU过热ACPI thermal shutdown,按reset键等;

能希望有所帮助

kelvinklee 发表于 2008-3-13 19:27:50

我曾经在CPU Reset之后观察过这一位,好像没有什么变化。

现在BIOS运行时是怎么来判断是CPU Reset还是PCI Reset?

谢谢!

A_jack 发表于 2008-3-13 21:00:42

目前在代码里还没查到post过程中clear system flag的动作。如果不是post过程中BIOS某个warm boot相关的procedure会去clear这个bit的话,可能是EC自己clear了,这个可能要请教EC的工程师。。。。

bini 发表于 2008-3-13 21:24:26

基本上是由KBC BIOS去解决set / clean的动作的.

landis 发表于 2008-3-18 09:44:38

我看了一些代码,实际上是否set还是clean system flag,也是由BIOS通知EC去做这个动作的,来让BIOS做下次判断,而且对于64端口(状态口),BIOS本来也就只能读而不能写。
页: [1]
查看完整版本: system flag的问题