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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?" y, a# D4 ~/ K7 e+ F
我所知道的:3 n; N% I, V  w6 g; ?
(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;
* ^( U2 T+ H. N0 P/ }& c(2)BIOS通过SHM到SPI Flash上更新数据;! r2 f! K0 f; o4 [
(2)HOST通过PM1端口与EC交互键盘的标准命令;
2 j: {$ b* k5 o* h$ m4 o" P$ ^# l! e接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。* B( d7 i3 v4 {- L% g
+ R2 ^9 G( x0 I8 F9 P! z! u4 R3 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启动进度条。
8 T" J4 P" |& `" j7 w& k
* Y/ Q' T( `: Y# z, o: d这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;2 g/ y& {7 \3 x# k, v8 L
/ W5 y$ x) c4 O3 }- J# w2 G
还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题., ?6 T5 ~1 X4 v" u% q
2.调整一下SCI#信号的脉冲宽度试试看.% _1 {7 O4 S% C) l
3.让EC架串口debug抛一些信息出来看看.
3 W9 l* t8 _( R4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。
, y/ p( I' B1 U% ], g& l& q, ~9 A或者将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,看起来时没有读到电池的状态所以一直在读。! K: K& E" t9 P6 i9 G# _5 }
Device(BAT0){
- i& R$ M6 c# J. t) z( a( i        Method(_STA){
# c0 X$ Z( v( P; U0 H                Store(0x0F,Local0)        // Initial state = Absent
6 F2 t/ C- Q! d  B# |+ V                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?
- g! v$ |3 l, T2 k- |8 J$ K0 }                        Store(0x40,DBG8)2 g/ R2 J. l/ T2 }6 Q
                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA0005 u7 i7 D4 U1 D( m- O. ]# Q
                                Store(0x41,DBG8)
! A( C8 P' ?) o! ~$ v                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
% `1 a& D; N& K                                        Store(0x42,DBG8)5 X0 O4 T4 F) L; {3 h
                                        Store(0x1f,Local0)        // Battery Present% t6 s" |: Q) P; S- b$ S
                                }
/ X" A& f! o% \$ Q8 |                                Store(0x43,DBG8)  a0 p  i) c6 r6 o; Q
                                     Release(\MUTX)
! x( d4 z0 i6 Y" q0 f7 {# f                            }
8 ]; P- Y! l% P1 e& R& Y5 l                  } // End of ECON5 d1 b1 ?! y2 i* |
                Store(0x45,DBG8)# L- q& Y& z8 @7 ]0 s* z
                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )
) q: B! r0 \6 e4 X, c        } // End of _STA) \+ H, X/ D. y2 f2 l$ d1 b
}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  
( l. w* R7 N, u$ o系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时; \# I) k. I6 R5 E. b
加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  
, M0 O3 A+ W  z% C  h% P/ u8 Z给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-5 12:49 , Processed in 0.066666 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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