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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?6 T. ?/ e6 f. j
我所知道的:
4 D- d( m- O- \& u/ h(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;- W4 }. M  `8 T9 D0 n
(2)BIOS通过SHM到SPI Flash上更新数据;: h" f2 v, M6 i# S7 {
(2)HOST通过PM1端口与EC交互键盘的标准命令;! u2 \& r( }* R' X+ [+ T
接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。
: L3 I, F- p7 I% [- {. i6 e7 w" `1 C4 k. N
小弟出入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启动进度条。
4 \: t+ D' R! Q* U; K- u0 b0 _! @1 [1 i& S
这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;4 @, q' i  r3 B  ~; ?
/ M% D- ^: a* s2 O
还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.4 x. i6 j5 O* R( T; J
2.调整一下SCI#信号的脉冲宽度试试看.
6 R1 r3 {/ v+ l# Y. R& x3.让EC架串口debug抛一些信息出来看看.
# ~! U- d. K% z8 K' j4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。! g; y) Y* A1 [3 B% W5 n# S4 M) k
或者将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,看起来时没有读到电池的状态所以一直在读。
# |' N  ~9 j+ A5 i9 u8 vDevice(BAT0){
* |  B3 i1 H. ^, L! ~3 f0 U2 G        Method(_STA){# l1 O* v: F4 R
                Store(0x0F,Local0)        // Initial state = Absent
* x  G2 e' _" C0 r' T                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?
% V: l0 U2 u# |. Q/ N$ q4 d                        Store(0x40,DBG8)1 S4 `" z/ E; f, R: `2 c
                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA000/ p* j6 B! |: U7 {# ~; N
                                Store(0x41,DBG8)
' Q& B8 c: m: W' ?                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
( m0 ~% X1 l* Z! A* j8 K                                        Store(0x42,DBG8)
  {8 V( d8 K- |6 P* _* ^) n                                        Store(0x1f,Local0)        // Battery Present
2 t6 j: \# L6 D& b7 K                                }
" O+ J& H8 K& F; P. i                                Store(0x43,DBG8)2 Z2 k* j& }$ S! R
                                     Release(\MUTX)
! \+ Q7 U8 u* ^4 W5 g                            }( S" {, v) N2 b: _: ^5 R# v8 j
                  } // End of ECON$ Q9 b4 U& y! K7 Q/ @/ x0 z+ @1 h
                Store(0x45,DBG8)
2 |" b! T9 w, }0 y                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )
0 ]/ {, h+ {4 k        } // End of _STA- ~6 P3 }4 k0 f, o* v; n6 t5 ?
}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  1 h4 E) B9 K  S3 |/ I+ L/ y
系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时
( M) j2 j$ _$ |" ?& B- [# u加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  # K; V8 L5 S; y- w4 j! t+ g* j
给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-8-11 16:06 , Processed in 0.048451 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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