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

EC与BIOS启动XP时候之间的关系

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?6 P% X) m5 d8 _4 A# o
我所知道的:
4 w/ h* b; c9 `. |  ~0 s9 M(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;: x0 o5 F4 s. U. j: o
(2)BIOS通过SHM到SPI Flash上更新数据;
- R2 U1 D- ?( C; p' ^8 l" z$ ^(2)HOST通过PM1端口与EC交互键盘的标准命令;
1 ?3 q$ Q, [! U, c4 q接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。
" D3 z* N  ~! O4 U( m/ ]) F2 |& _. U, t4 a
小弟出入EC & BIOS领域,请各位老大指教!
发表于 2010-1-13 00:55:32 | 显示全部楼层
进windows时,windows会打开ACPI Mode.EC的一些SMI的功能,会转为SCI来做.见ACPI SPEC中的图.
回复

使用道具 举报

发表于 2010-1-26 22:29:40 | 显示全部楼层
目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。
  M  ~  {1 A- E5 Y- u8 u
/ ~- ?- x& K: T. _2 Y; W这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;; @9 v% P3 N/ N: w4 K
. m! x5 Q' x% M' E# H4 g, R1 F
还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

发表于 2010-1-27 10:12:39 | 显示全部楼层

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.* W4 [0 Q9 |! I9 h3 v7 u8 u
2.调整一下SCI#信号的脉冲宽度试试看.
+ w, h/ s, O; ?1 o; R3.让EC架串口debug抛一些信息出来看看.
0 b: Y! ]) R2 U9 V4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。% b' D( {% S: l6 p
或者将ec 相关的asl直接拿掉试试看。
回复

使用道具 举报

发表于 2010-1-27 11:40:14 | 显示全部楼层

我碰到同样的问题

我在滚动条的时候会停很久,在OS底下能发出SCI(ASL Q Event丢80口验证)。在滚动条的时候用示波器量ECSCI不停的被拉低。Debug Code 40-》45-》41-》40-》45-》41-》45-》进OS,看起来时没有读到电池的状态所以一直在读。
6 k. u9 m1 J- |8 x3 E* O9 P  m& SDevice(BAT0){
( K/ Q1 h% F1 O7 b' C3 X% e8 \( h% b        Method(_STA){+ g: p6 B$ A  t+ J( o1 p" E
                Store(0x0F,Local0)        // Initial state = Absent
; J: f  k8 O$ M( J                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?+ |& c+ y4 W) X: m8 M' X& ~9 n
                        Store(0x40,DBG8)
' b( F: w, m1 u; |/ L1 l                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA000
- C+ R0 J( C$ r' y5 V                                Store(0x41,DBG8)
# j" m! _* a1 M1 {                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
$ S4 M" m3 S- F8 T: R. Q; ^                                        Store(0x42,DBG8)
+ o0 q2 g' c) a5 F                                        Store(0x1f,Local0)        // Battery Present
3 T3 v' c5 {& t7 h0 d  o                                }
6 q% b3 E: t% ~4 l7 L                                Store(0x43,DBG8)
% L& s: |  h/ n0 K1 z* x                                     Release(\MUTX)
7 w- t4 J' }6 B3 K$ k/ @                            }0 @  U( z: z2 |
                  } // End of ECON. E& ]; i2 a0 ]2 B
                Store(0x45,DBG8)$ i. j3 A) E3 y5 p
                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent ). ?/ \' C! g9 v; i) C2 X
        } // End of _STA8 M+ k/ @: p( I$ J6 P) I
}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时    K0 n4 e0 x+ a0 ]1 ~
系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时
$ y0 I' b7 o3 i$ k" O  i9 z$ D$ x加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  
; `: M) k; S8 Z  i" ^* l给你点灵感 呵呵
回复

使用道具 举报

发表于 2010-12-5 18:57:12 | 显示全部楼层

望望

望望,打酱油!这个论坛人怎么这么少啊!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-7-19 12:19 , Processed in 0.038254 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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