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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?
, W# A" Z5 R: I7 E! q6 |我所知道的:
: U2 }8 Q0 Z: h; B- g" m# R(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;
$ ?+ x% M- V7 ]! p  k% Y# O$ J6 ](2)BIOS通过SHM到SPI Flash上更新数据;$ q9 J2 W. t& q9 H% w1 S; {
(2)HOST通过PM1端口与EC交互键盘的标准命令;
* v) \6 c3 j& N% ^" |; l接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。" a$ e: `5 E+ q( n* @( B
8 J' T- }4 E) _# c: Y( b; W2 [( C
小弟出入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启动进度条。. m7 d" u$ ~/ `
- ^& C/ z  V0 V- `! q3 h
这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;5 u. r( L- M1 K4 y

& t3 S2 l2 V3 O1 i+ t  c还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.
6 e5 H9 n/ F' `: n4 t; h2.调整一下SCI#信号的脉冲宽度试试看.
9 _. d3 S! l6 v7 I9 r" v$ |3.让EC架串口debug抛一些信息出来看看.; e; P8 @! U3 K; a- Q5 t
4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。
" M" N! g) ~6 a. S2 w5 s( p; l  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,看起来时没有读到电池的状态所以一直在读。
6 b- O% \! k2 `8 M% J# ?8 ?Device(BAT0){
$ X4 ]& m; E$ M8 {- I2 s+ ?        Method(_STA){2 i# C# R2 a$ e; s0 r
                Store(0x0F,Local0)        // Initial state = Absent" W5 ~: J: W* \& U8 c
                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?' F& @3 D3 L4 `" J( s6 W, j$ [0 q
                        Store(0x40,DBG8)
. N+ W- b# o% f                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA0000 y9 U3 S# r" L9 d9 i9 B/ o
                                Store(0x41,DBG8)
" r8 n+ |1 y: x" K* v: {                                If(\_SB.PCI0.SBRG.H_EC.BPRS){: p+ R: s8 T0 [6 c) ^/ B
                                        Store(0x42,DBG8)
( t) j- g: ]! O                                        Store(0x1f,Local0)        // Battery Present, l% O0 O; ?7 I) s# G3 X
                                }
. l9 e7 c  Q. X9 |& V# g" ]2 K                                Store(0x43,DBG8)2 S+ a% k7 {1 a/ r5 ]
                                     Release(\MUTX)
* O% m: |# [" _& R                            }
- r1 y! N- N) g; y" Y9 D0 G8 h4 }8 G                  } // End of ECON9 F1 z# [3 z" V, J
                Store(0x45,DBG8)# k% C5 S7 p# A4 a. K" x; y
                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )' q$ [9 J- M: |8 R- B
        } // End of _STA
* Z' ~' }9 r* z; R; w" X}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  
+ ~' z( D3 k9 Z5 Y系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时
0 v, \) f# \4 v" A  z' ?: _加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  
- b# ]/ ~" D) @( J8 {! B/ F给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-15 05:19 , Processed in 0.523492 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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