|
|
楼主 |
发表于 2008-10-22 09:29:52
|
显示全部楼层
>>> 我倒想听听你所谓SMI中的while(1)是如何进入C4的。哈哈,狂抓
% U' W- e! A2 e9 F& u# p) [ d2 B) |: i4 {4 @, _9 e) g. i3 o# j. [
SMI_Handler() {* M' X; \, J, j* x* ?9 H; ?1 U: `
while( 1 ) {
y- t. B+ f! z- X% D. v0 { read_ACPI_LVL4(); // <---- CPU into C4.5 T5 o- D9 i o- P6 E+ K
// Interrupts or breakup events take CPU out of C4;* Z0 L9 V4 O" h0 r* ~$ ~$ g5 ~
if( GPIO_is_High() ) 4 v2 W1 ^* M! g1 b7 ^
break;7 Y; c6 `5 o z4 o+ R, q
}9 h8 C: p) I1 y
}
" V: f% b A* V有什么不对吗? s$ Z! A+ d! k {; p ^8 z& [
! ]* M( Y! [- b v
现在的问题是,用示波器观察STP_CLK/STP_CPU 等pin都没有发现assert,另外进到C4 按道理cpu应该会发VID 给VR 的结果也没有看到,不知为何。 是因为在SMI 里面写LVL3/4 register 不会让CPU 进入到C4吗?
- ]2 |0 r) v1 q, y5 e* ?, e- R) m+ F/ q
另外请教,让系统进入到S1然后返回的延时大概是什么样子? 可否达到要求?
/ U; Q6 o9 D6 ?5 {1 h6 c4 G还请大侠多指点几句。。。 不要抓狂。。
# V( `5 C- O" X- G. ^1 }, m' M2 V
! Z: i( j# ^# o& X9 g* o; \[ 本帖最后由 1点0 于 2008-10-22 09:36 编辑 ] |
|