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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?$ L7 Z( k+ {7 L
我所知道的:
) {4 C$ C& I  y( M: _+ k(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;
5 m/ W1 I! ^) k$ F3 P  D% a(2)BIOS通过SHM到SPI Flash上更新数据;/ U2 \0 u; v* g
(2)HOST通过PM1端口与EC交互键盘的标准命令;
6 N/ B( f2 B1 j% k8 Y% o9 g接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。
# G: {8 A& B+ k: j/ ?( A% f9 s- w- M. G" p' u. _) x# _
小弟出入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启动进度条。% I. H6 I. S3 N7 o

" e) G4 Q) f* n这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;; t+ c2 t2 w' o3 M) E2 V& {
# C+ a+ n$ V) H' w
还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.+ [6 }" n" M2 n  x+ n# u; H0 N
2.调整一下SCI#信号的脉冲宽度试试看.
; s2 S. r0 M4 l# _1 I& J3.让EC架串口debug抛一些信息出来看看.
! V' o0 ^/ Z. W2 `" Q: {4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。
5 x! f. F1 U$ y& w: f4 h, @或者将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,看起来时没有读到电池的状态所以一直在读。
9 {+ c  u- d/ A/ V3 g: QDevice(BAT0){/ Q  s" t; D' r
        Method(_STA){( Z4 t0 J" f: P9 O* s0 \
                Store(0x0F,Local0)        // Initial state = Absent
% _) \4 c/ p6 R: D) ^4 {                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?* j9 ?5 ]4 ?, w2 G4 U, _
                        Store(0x40,DBG8)
! C1 q8 M2 P2 H: u                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA000$ J$ W1 v2 u5 a; k
                                Store(0x41,DBG8); y+ l9 V2 G% K9 b0 g; F$ R8 o( h
                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
/ R1 J$ U) j. {                                        Store(0x42,DBG8)
. {. M* y  O5 L& \9 f2 S6 W                                        Store(0x1f,Local0)        // Battery Present& J# ~' T  f0 N" r- M: e8 I
                                }
. \" t$ y( I+ i8 O- O! h                                Store(0x43,DBG8)
$ D: i9 Y5 W& o6 \                                     Release(\MUTX)
3 ~- y1 C% T. x  f) W                            }
8 x+ X5 A9 V3 }" N                  } // End of ECON% Z5 i# F7 \6 x4 l* H, @
                Store(0x45,DBG8)
( p% t& D* d: @5 y, h# x) t- u  e                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )* M7 v1 r4 H, s/ N$ w# ^
        } // End of _STA# S) A' q% Z$ m$ R4 q/ J. V, c
}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  
, K1 M$ y$ b( G系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时. a! m# R+ j! A0 l: p# ]) c2 g
加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  : J6 f. Y% S- |
给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-18 19:28 , Processed in 0.213092 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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