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

bebug :从S4回来可以进入bios setup.

[复制链接]
发表于 2009-5-15 15:48:20 | 显示全部楼层 |阅读模式
大家好,我在接案子的时候遇到个bebug :从S4回来可以进入bios setup.
  M: a  R% k& K! v& c% @我的解法是这样的,在POST的过程中系统检测按键的时候,我加了段代码去判断PM_BASE+04h的BIT10 – bit12是否等于110b。
5 @: E) l2 u& G$ [" ~% {代码如下:, P( @2 l( x4 p4 x* [& o: I
VOID CheckForKey( EFI_EVENT Event, VOID *Context )
+ r+ J( g: r* O* Q* e{5 H- |/ j, n& e# C
, O2 u! u, i5 V, x
………..  
5 J! r3 [$ I+ F9 q5 Y8 m& `# Z7 H  UINT8 Data,Data1;. P! i; |3 f# O3 |/ m+ |
! ~; X7 O- p# u- M6 u
    Status = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, &gCpuIo);2 I$ t. o% v; G
     if (EFI_ERROR(Status)) return;" ]% @/ @' v3 O
    Status=gCpuIo->Io.Read (gCpuIo, EfiCpuIoWidthUint8, 0x405 , 1, &Data);  //read PM BASE register 0x05,Get sleep type3 `" S8 L" ~  e$ p
        if((Data == 0x18)){0 H6 Q: C5 |- `, @2 p
          return;}0 t6 L% i1 \* _0 |8 j3 ?2 ^' s
……….…….2 R4 Q/ c9 w6 k# o1 o
}
( {" E0 P$ E! ~! c7 B  [# @6 X可是仍然从S4回来可以进入bios setup.
4 c  t7 O( ]( r6 d% t我想问1。PMBASE是不是在S4回来后被清空?
- b$ X4 F  J/ U       2.是何时被清空的?: ^; G% \: P' J3 V' |
谢谢
发表于 2012-5-28 11:24:42 | 显示全部楼层
Power Management 1 Control Register 这边的register应该在S4状态下就是被清掉的,因为当时已经没有电了,也不用那段code特意的清掉他们,直接没有电了;3 _$ U% N9 w0 m1 |0 W9 ]# T
所以你那code不起作用,你可以在进S4的时候,写systemflag到CMOS,再进行判断!
( x: ]6 N" H6 j) Z) N3 h个人认为这样oK;
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

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

GMT+8, 2026-7-19 13:26 , Processed in 0.081543 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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