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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?
+ B4 p2 f- }  x3 M5 ^* E) U6 Y我所知道的:) @6 K! w  C. I+ v; q
(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;
& O" a, ~. N( @# S6 C. o+ N(2)BIOS通过SHM到SPI Flash上更新数据;* `; n" e% y/ ?- s: m3 a8 x' `
(2)HOST通过PM1端口与EC交互键盘的标准命令;
7 C3 k& O+ i  o接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。/ G+ W2 p6 B$ c/ J1 Q* R0 Z1 [
7 Y: |; [$ s: c- D$ T9 m/ g
小弟出入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启动进度条。& @: Y; e# b  H/ u
$ ]$ T" W% J6 }! U
这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;
0 Z# f8 c* [6 Z; R. b5 g% a3 W: Z0 F" H- w7 D# h7 K) v
还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.9 E' L  s% I% Y- |" ?0 |* s8 j  I
2.调整一下SCI#信号的脉冲宽度试试看.% j( V3 c( ~, _
3.让EC架串口debug抛一些信息出来看看.
" X$ F, `/ [) B* s4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。
8 c* q( B( [' {或者将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,看起来时没有读到电池的状态所以一直在读。3 Q" P) g. e/ p3 m) _
Device(BAT0){$ |: l/ M3 L/ A' P  X5 k8 o
        Method(_STA){: H' w+ X  @* {3 I+ \/ J% X
                Store(0x0F,Local0)        // Initial state = Absent
/ u$ x& G2 p- b                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?8 i- Y( w! s; z: Z- `
                        Store(0x40,DBG8)8 T+ j! g9 p9 Q6 B* X/ k
                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA000
: x( E! ?0 Q7 \: \                                Store(0x41,DBG8)
3 q# r* C$ |0 u# N# a                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
8 ]. y8 d1 A" }- x- v( S                                        Store(0x42,DBG8)
" ~# o7 z& B& R! I' t                                        Store(0x1f,Local0)        // Battery Present2 M7 k; c7 p+ S
                                }
5 D' I7 ~1 t+ w* c                                Store(0x43,DBG8)
& g: Z& f  V9 U                                     Release(\MUTX)* H3 N4 I; n: B' l* n+ o
                            }- q* I9 U% V4 ~
                  } // End of ECON
3 X& F; l% d# o  j6 M                Store(0x45,DBG8)7 C+ N# @9 W6 [
                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )
* |. q6 R" h0 ?) q! f* k6 p        } // End of _STA7 e- U# k0 Q- Y# Z' r0 i+ v
}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  % k: ~! `2 E+ j0 o. E
系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时8 p$ d+ R0 g: ]3 y6 Y
加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  , ?5 _: l% i$ }+ B+ V( a
给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-4-24 22:41 , Processed in 0.038061 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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