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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?, f- u& v8 j: g
我所知道的:3 ~$ p$ L/ M/ Z& @5 `
(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;7 e8 s! N4 m+ d, p4 ^0 _" y
(2)BIOS通过SHM到SPI Flash上更新数据;
# [2 w* \9 i3 b  Y+ C(2)HOST通过PM1端口与EC交互键盘的标准命令;. H- q" ]$ e$ Z# O. {# v9 J. j
接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。; w  t: [8 e0 f/ Z' B6 @5 I
) m$ K  C" q4 B% Y; u$ s7 L
小弟出入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启动进度条。! ?/ f9 B$ ?7 C& A8 A

# ^" Z* @( R# A1 V3 l这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;
9 k1 c7 z7 D! h8 t6 k. j6 F. }- c9 i7 [2 n
还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.3 d9 s/ m' O7 A! y
2.调整一下SCI#信号的脉冲宽度试试看.
+ R" L. m. ?7 i6 C0 q' e7 c, [$ c3 a3.让EC架串口debug抛一些信息出来看看.9 j1 k  ~1 P: }5 S7 ~0 Y2 K% |9 K
4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。
! D3 b2 y, F) h( w1 _- o或者将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,看起来时没有读到电池的状态所以一直在读。! }) e5 _% `" k0 w: C. D1 R3 [: }
Device(BAT0){
1 b5 {! [+ q# V$ ?3 \        Method(_STA){
5 R5 z( h+ Z  P- T7 X& D' _                Store(0x0F,Local0)        // Initial state = Absent
7 T2 j0 o% k, ?+ z0 U                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?
# W: V. K  T; V% V7 Y                        Store(0x40,DBG8)4 d! p3 O' H) I& I0 n  [) @
                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA0000 [8 N! }  a3 |: P: ]
                                Store(0x41,DBG8)
/ g$ ]" l$ G1 Q" I0 t% k% k- b                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
- L( ^) H( A0 }$ B8 n                                        Store(0x42,DBG8)0 B  n" s  W& l8 W
                                        Store(0x1f,Local0)        // Battery Present
0 ]  K7 h1 h% C7 k9 i                                }
1 H& s' [7 V. h  x; i                                Store(0x43,DBG8): O  i% F' M' e8 s1 F8 `
                                     Release(\MUTX)9 w& k$ w' Y* z8 P1 z8 o' E+ W
                            }
- B( V) q. z% A                  } // End of ECON; {) p* H' D" V6 I: O0 O
                Store(0x45,DBG8)
  x: Q3 C9 o; \; P                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )5 J1 ]* ~4 E) L) {, j
        } // End of _STA
& `- i2 W7 V4 }  K( U5 s& A}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  ; j/ _# S) F0 J
系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时
$ U6 U2 Z; L& Z) E8 {& I6 n加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  
. n7 M( ^4 \0 o6 J3 o7 j( U' _给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-6-8 07:10 , Processed in 1.183986 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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