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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?+ A9 j- J& n$ n( v0 W# T0 v
我所知道的:
% {# l, \3 J9 X(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;
6 |: C5 |: ?. O8 e  a/ a3 N- j(2)BIOS通过SHM到SPI Flash上更新数据;
  f. H' S3 ^7 Q( R. m7 c(2)HOST通过PM1端口与EC交互键盘的标准命令;/ }: H" V& h' l' a; F
接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。3 |. v# T4 K! k; l; ^
/ m0 `9 ?- v: {: n* t8 @7 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启动进度条。
& m9 D# t5 K2 c- F/ k% b# Q: T* f- c) U' l% J* j( ?
这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;9 z4 `' S9 \1 P: r3 `8 v

4 G! ?0 t6 ?) ], `还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.
  r5 H- E. T0 |8 a) u2.调整一下SCI#信号的脉冲宽度试试看.( J5 t- `) H7 }' ?
3.让EC架串口debug抛一些信息出来看看.
3 J3 \& A) a% F) _0 S0 Y: ?4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。
( o- J3 u3 f' i# p, {或者将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! y9 L; v0 r  @6 {. h! A
Device(BAT0){
5 V1 D% N% T$ g9 ]5 x, ~        Method(_STA){( n% p0 s- b0 I
                Store(0x0F,Local0)        // Initial state = Absent/ ?3 M. m' H- r* Z7 j( s3 R
                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?' H  W6 I& c6 f: ?
                        Store(0x40,DBG8)5 U* L$ Z/ b! P2 ]7 P6 C
                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA0005 W+ f5 M7 o; ^' C+ H
                                Store(0x41,DBG8)- u2 I+ J8 y0 u5 u; f
                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
1 _8 @3 W( h1 Q' ^4 S$ G( Y                                        Store(0x42,DBG8)
/ [! q: l& o3 l9 X8 R* ^) {0 i2 v( i                                        Store(0x1f,Local0)        // Battery Present
- q8 B, K$ ~" T! F5 D                                }) n( X; J, P& N4 s& N8 ]. n+ ~3 y
                                Store(0x43,DBG8)
6 l# D2 F3 k# Y# j7 Y                                     Release(\MUTX)
  S4 e9 d9 X0 V+ ^                            }
* l! R* k3 T- O4 P                  } // End of ECON
4 g0 S" z7 ]* D                Store(0x45,DBG8)
: ^) W6 @2 A7 a+ S4 Z. A/ I, B                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )
- i* T& h  S& D        } // End of _STA- o6 a# d6 q3 ~3 Y
}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  
; ]* L, @- x( M# s8 c; q4 B系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时
0 N9 ~$ O) o% [- w加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  6 ^( c9 [. E: Z4 H3 @
给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-22 02:30 , Processed in 0.030867 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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