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

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

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

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.
4 _/ c3 V5 s" s0 f# d2.调整一下SCI#信号的脉冲宽度试试看.
& N# b7 u8 Q! Y& l% J( j! R3.让EC架串口debug抛一些信息出来看看.6 C6 x$ o, U1 G7 ~
4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。# W1 M! f! U1 Z% v8 H' F. T; 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,看起来时没有读到电池的状态所以一直在读。: ?# c4 |# @0 G! m1 B- [% b
Device(BAT0){7 Q6 i9 u6 ]  j2 F6 k
        Method(_STA){
. E- T; x8 ]7 v                Store(0x0F,Local0)        // Initial state = Absent7 \/ T( v& n! w$ B
                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?
: p- S2 v$ f# m; J4 a, ?                        Store(0x40,DBG8)% P3 c- m1 Z& ^! P: k
                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA000" L3 V2 m* N: z" ]+ ~
                                Store(0x41,DBG8)* u! P/ o) w+ f. E
                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
) z* N- t7 T; k! h- T5 \+ G$ k% y                                        Store(0x42,DBG8)
7 `- F5 s2 n) D; u! g                                        Store(0x1f,Local0)        // Battery Present
$ h3 I& e/ O4 o5 ^8 D- T                                }
1 Z+ `2 o9 K# V" O( E6 }& h9 C2 I                                Store(0x43,DBG8)8 a( j8 b4 H3 j: D
                                     Release(\MUTX)
* E) x& s- `' I                            }* b4 o# i6 [6 r6 @/ p2 U: W. X
                  } // End of ECON# {1 n* R8 Q, x  E5 T
                Store(0x45,DBG8)/ x# Z/ x& [- J6 e: {
                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )
5 ^1 m8 t. E' h3 J, F        } // End of _STA, p  L$ `" E) Z* Q9 _
}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  
) ?8 r3 z: `7 Z/ G系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时
& T' p: X! [2 O6 ^7 K2 ?1 d  s加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况    W$ u4 g" @2 W3 D/ v5 m
给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-3-5 00:14 , Processed in 0.032851 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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