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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?/ b6 R9 @  D( C
我所知道的:
$ N3 a. c& ]2 S# c8 [# F/ n(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;
9 t$ T' g0 o. b- a6 W(2)BIOS通过SHM到SPI Flash上更新数据;- `: s! d% ?+ J& @( z* ^
(2)HOST通过PM1端口与EC交互键盘的标准命令;
: L, Y3 ]4 |* L6 {# b4 [& m接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。* K8 e' p* s" p! z; u9 M) f5 ~

' w" a$ e5 L9 t" m+ L. {4 c" e' H小弟出入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启动进度条。
, r& f  V$ N% |; D' c
. e1 a. w% Z, u1 Y9 I2 _5 o这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;
( F/ s: d) i# G% p  r3 ]7 f3 D* i3 d
/ R* {" g. I+ v0 v  |8 N还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.
9 F& T+ L& \1 A: _1 q( X3 o2.调整一下SCI#信号的脉冲宽度试试看.5 q8 ?% N; |4 n: @
3.让EC架串口debug抛一些信息出来看看.
7 O) u  i9 h0 h' i4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。6 g0 |2 M" h, @. O4 J
或者将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,看起来时没有读到电池的状态所以一直在读。4 c8 M4 Z2 C, F  Y5 E# t5 F
Device(BAT0){
8 |2 r( }/ p6 b1 h8 }. n        Method(_STA){
9 n/ l4 k7 I  d$ c' p% h                Store(0x0F,Local0)        // Initial state = Absent
- c0 o# T4 T7 _3 {5 q                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?; e4 a+ e5 z' k& p! c1 i9 r
                        Store(0x40,DBG8)
: J5 l/ K" ]2 n0 L/ N! D                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA000
3 [; l7 n0 l$ r                                Store(0x41,DBG8)' ^# v( h/ F1 \% M: Z8 |6 g& g
                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
4 ~2 \1 n& J! Q! t, M                                        Store(0x42,DBG8)- S# f3 ]) ~9 q  _1 V9 J
                                        Store(0x1f,Local0)        // Battery Present
' v2 S" E; g7 W( _! B* S. v                                }3 j) c& {3 [' l6 |/ T
                                Store(0x43,DBG8)
9 O+ h8 p8 t; I- Z. ~3 b/ C6 Z                                     Release(\MUTX)) Q  h/ g& y8 ~+ p: C
                            }. W1 x* J1 u& V& B( x4 J( b
                  } // End of ECON/ K3 {3 f. y, |" x5 L  z
                Store(0x45,DBG8)
" y( \4 {! j& F                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )
: F& Y. m# L/ c$ d$ ^. E: k        } // End of _STA) h. z5 @9 [# s0 B9 R
}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  
  v- X* k% O8 l2 l7 g6 }/ a! i0 Q) Z) J6 w2 w系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时
! `( ~9 K6 W8 g- m4 \" O加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  ) e+ f- ~0 _5 t8 T
给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-17 10:43 , Processed in 0.088680 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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