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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?
% t, s- E& u3 ?  }% H+ S9 P3 w我所知道的:( K# f9 e# u9 t: _+ r
(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;- D2 [8 k% F  i. D0 e0 K) V
(2)BIOS通过SHM到SPI Flash上更新数据;  B* X1 q8 ~* b* |, W
(2)HOST通过PM1端口与EC交互键盘的标准命令;
" c* H# J6 m6 C( H  }接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。
: c! b4 ]5 W8 l( w( x% D
: s% v6 h% y2 o+ p小弟出入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启动进度条。6 P4 k  X) h4 R7 Y; J& C

0 S% S& }2 [4 a6 e/ s: {* F这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;  E: P" p7 P" h# t4 u4 S, Z

! f# u/ `9 z4 b还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.! B: M3 c' ]0 ^- ^7 s8 b
2.调整一下SCI#信号的脉冲宽度试试看.
+ L, d% D6 \% M+ b2 S4 E" N" O) N3.让EC架串口debug抛一些信息出来看看.
; _4 }3 D: {& P: j7 o7 m3 m4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。
) G" A1 D- @# Z) s% @' i1 t或者将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,看起来时没有读到电池的状态所以一直在读。
% E1 I9 l4 E0 j; dDevice(BAT0){% h# V3 i! p5 W& W# p
        Method(_STA){1 x" j: r6 G) s: C" s1 X9 I
                Store(0x0F,Local0)        // Initial state = Absent
: f0 p; W( |/ X; \' D                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?: h) b7 m+ l# G
                        Store(0x40,DBG8)* O4 o9 A- Q. n7 H* V
                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA000
+ V% w) x. x, d. u& a* |                                Store(0x41,DBG8): S! |% [) r" t3 e( Y
                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
  j' w$ e3 C' L! q4 d                                        Store(0x42,DBG8)
! F7 o7 V' D9 U) ]3 K                                        Store(0x1f,Local0)        // Battery Present
) u3 R3 N* C( s- A: _! m1 v# {; D7 L                                }
, r, F4 T3 S, _% ~                                Store(0x43,DBG8)% q* M$ h" \6 E; C
                                     Release(\MUTX)6 v! Y6 A1 Y1 M: r2 a
                            }
# S& C8 n/ x3 _! Q8 \- |                  } // End of ECON
' D+ C5 g) F* ?3 W8 |8 K                Store(0x45,DBG8)
+ z6 w2 ?" X  p* f                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )2 }) H8 X2 R# l7 I7 ]' B" i
        } // End of _STA! w( U" H9 n, B
}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时    p+ I/ C: @0 P$ r
系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时1 [9 J( s# ], Y! X
加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  / k2 ~2 L+ A  `* f) @% N1 }3 T
给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-7-19 13:39 , Processed in 0.067707 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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