请教和Cstate相关的S3问题
bini,现在我遇到一个S3问题是这样的:在c-state enable的情况下作S3,第一次S3都能正常resume,但是第二次S3 resume的时候执行完method(_wak)后hung住(极少的情况下第三次)。后来我在_wak中加了一个Notify(\_PR.CPU0,0x81),resume的时候就不会hung住。但是作S3 3-5次后进不了S3(此时LCD是已经灭掉了)。后来我check了一下,MCU是最新的,PPM reference code我也查过没发现问题。bini你之前有没有遇到过类似的问题那。。 好象没碰到过这种情况,不过你的project是什么平台?
如果你的平台是Napa,操作系统是XP SP1,使用的是多核,打开C-state,我记得,在S3、S4返回时,在PPM Code里,需要对MSR 02Eh(MSR_PM_CFG_CTRL)重置一下。 Hi ,
建議一:
如果resume 回來在 _WAK 最後要Return(WAKP) 前切成 LFM or HFM 試試看,
意思是說開始resume時候就要切頻.
建議二:
Notify(\_PR.CPU0, 0x80)// Reevaluate _PSS!
Sleep(50) // Defer for 100ms
Notify(\_PR.CPU0, 0x81)// Reevaluate _CST!
Sleep(50) // Defer for 100ms 还有,建议把一些不必要的device都关掉来测试,象各PCIE port和USB port,以及其他外接device。以排除一些device不良造成系统坏死。 Hi bini
project是diamondville的,外设我都关掉试过了,pcie port USB port 还有audio这些设备我都关掉了。可是进S3的时候还是会hung住 原帖由 bowen0205 于 2008-7-16 17:59 发表 http://www.ufoit.com/bbs/images/common/back.gif
Hi ,
建議一:
如果resume 回來在 _WAK 最後要Return(WAKP) 前切成 LFM or HFM 試試看,
意思是說開始resume時候就要切頻.
建議二:
Notify(\_PR.CPU0, 0x80)// Reevaluate _PSS!
Sleep(50) // Defer for 100 ...
Hi bowen0205:
之前S3回来的时候会DOWN在_wak的时候我试过Notify(\_PR.CPU0, 0x81)回不来的问题就解决了,但是现在的问题是概率性(3-5次之后)进不了S3。我查了一些资料没查到Cstate和S3之间的关系。现在的话只要enable C state S3就会有问题,disable C-state S3就OK。之前down在_wak回不来我以为是P_LVL3_LAT的问题,调了一下没有效果。但是Reevaluate _CST 一下OK了。 现在进不了S3和 down在_wak有点像,可是这边down住的时候都没跑到_PTS.没办法通过Reevaluate _CST的方法来解决。 down的时候,没跑到_PTS?系统还有哪些反应呢? 刚MSN聊到系统已经hang up,所以先看测试一下在系统下C-state是否功能正常,同时检查一下Clock的配置,还有Cpu core电路是否也正常。如果问题解决,就请update一下哦,Share一下经验。 Hi jack,
就像狼哥說的那樣Clock的配置,Cpu core电路.
尤其是當複製出來system hang up 時去量V-Code and VID 是否 match.
Clock是否有開Stoppable for CPUCLK ,或者你把spread spectrum disable 試看看.
Good luck.
update
Dear bini and Bowen0205:根据二位仁兄的建议,我量了一下C-state,发现果然有问题,在C-state transition的时候v-core电压竟然无变化,量了VID也一样,没有变化。。现在正在查,看是什么东西在影响。为什么会在performance monitor显示已经在C state transiton的情况下VID没变化。
页:
[1]