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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?
9 q4 i) {! ^1 N" L我所知道的:9 W* l+ ?9 D/ k# _9 C2 S
(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;
. k1 G7 T# ]9 i1 Z% a# S$ k(2)BIOS通过SHM到SPI Flash上更新数据;$ v8 c% K  x/ k1 X5 N0 y
(2)HOST通过PM1端口与EC交互键盘的标准命令;2 T  f+ x- v5 M0 _6 [
接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。
4 \- u) r2 y' ]5 K8 z; \1 u' R4 T+ o$ a& [$ \  x7 _
小弟出入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启动进度条。
1 `) S: R* [; Q+ ~! S, I& ?# E8 z7 V$ t
这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;: D& w- F/ c, |, k( |

: @8 {/ c7 e2 c. Q, y9 Y3 G! h4 J还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.  `$ f; D0 f. F( y
2.调整一下SCI#信号的脉冲宽度试试看.
+ t# g! `  ?5 L& B5 G% e3.让EC架串口debug抛一些信息出来看看.
# P) U2 x0 M" o0 i4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。) ^- }: T1 z1 i1 `: g
或者将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,看起来时没有读到电池的状态所以一直在读。/ f7 I: _$ o* |/ d" V& }2 Q
Device(BAT0){
+ F/ N; K* L. k; U& v. u  l( g& s8 G        Method(_STA){
& H. v5 O6 l& M2 [2 s1 ?                Store(0x0F,Local0)        // Initial state = Absent# r  x7 A' t$ V# t$ i& }
                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?% j0 [2 ^- o" y- F$ h
                        Store(0x40,DBG8)
. E, e8 l" [  h' w9 C) C3 p                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA000
+ ^* v! F$ O: J3 W6 P( O3 v& k0 D                                Store(0x41,DBG8)# g& I# D8 O0 d6 g
                                If(\_SB.PCI0.SBRG.H_EC.BPRS){+ g/ R! i7 [8 g$ ]) n
                                        Store(0x42,DBG8)
9 j+ l4 S9 X  X5 p- a                                        Store(0x1f,Local0)        // Battery Present
" k3 N( u1 j$ w6 C                                }
4 ^; o- a& Q3 c/ Y% ?& b                                Store(0x43,DBG8)6 Z4 }  v; D! A6 Z7 h- w" r
                                     Release(\MUTX)' `- W$ r: u, H' c. b
                            }
1 s2 q4 R. w$ ]( Z3 h                  } // End of ECON# `& M4 p& |& \! [
                Store(0x45,DBG8)
8 ?/ I! U: a/ ?1 c                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )
- [% T& i& E9 e( D        } // End of _STA$ k/ v8 I4 q0 [5 j$ i7 X* {# P
}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  + ^' J: L7 h1 C% V- @+ g
系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时6 }1 ?+ z8 ?& d4 W' F1 y9 F
加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  * B4 w, j% {5 o/ }, w; E$ a& l/ ]' G
给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-18 20:56 , Processed in 0.079323 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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