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

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

[复制链接]
发表于 2010-1-11 15:00:05 | 显示全部楼层 |阅读模式
请问各位老大,在S5->S0状态过程中 EC与BIOS之间都需要进行什么动作?
* m- g0 H+ d4 Z* B/ x: i我所知道的:: R. g6 [" `  L$ W) x# L, ]  _
(1)在按Power button后,EC跑上电时序,需要SCH与CPU给相应的反馈信号;7 H) R! w" G; b  Y
(2)BIOS通过SHM到SPI Flash上更新数据;
) A; \) r1 S% O6 n(2)HOST通过PM1端口与EC交互键盘的标准命令;& x. N# B3 X; H1 x: g
接下来到XP启动阶段BIOS还需要EC配合什么动作?希望各位兄弟指点迷津啊,目前我们的EC & BIOS配合无法正常进入XP系统,只能够在LCD上显示Windows启动进度条。) J0 I' @# p/ W2 H3 P- X. g
! M. \7 ~3 D. q8 K6 v. d; a. t
小弟出入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启动进度条。
. z6 a4 j% n9 [; O% i
! L6 D- s+ H* O这种问题一般去查几个地方,一个是ACPI mode enable,看你的BIOS code 里面是不是会透过PM1下cmd给ec;
1 @3 e; e8 v7 C) G3 T) x) Q$ I% e
9 `; [% g- U- E- Q' l/ g还有就是xp会访问EC.asl 里面op region里面的东西,这个就要EC 返回正确的状态,不对或者是没相应的话xp启动就会牛慢。
回复

使用道具 举报

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

回复 1# tequlia 的帖子

1.请检查EC ASL code SCI pin 配置是否有问题.: @8 c0 ^: d/ {" a
2.调整一下SCI#信号的脉冲宽度试试看.
: i5 F) P+ c$ g9 E# e3 ~3.让EC架串口debug抛一些信息出来看看.
6 c$ ^1 X6 J4 P0 M& n& ^% m$ z4.将EC asl code中有关EC ram space,Battery,AC,Lid..等device的状态不去读EC ram,直接回状态。" t% ?* f5 f/ o+ X) _* 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,看起来时没有读到电池的状态所以一直在读。
- Q  u5 d& B6 H3 D& Z; qDevice(BAT0){+ _2 N' k* g, r/ `+ c0 ?5 i' ~
        Method(_STA){, @# p1 O1 }  w8 H
                Store(0x0F,Local0)        // Initial state = Absent/ _; r! A% j, m
                  If(\_SB.PCI0.SBRG.H_EC.ECON){                        // EC driver ready ?5 B- O$ `$ h7 d' i2 `, l/ }
                        Store(0x40,DBG8)
& s4 L. o2 a7 E) R9 b                        If(LEqual(Acquire(\MUTX, 0xA000),0x0)){        //tony change to 0xA000
' I1 O1 L7 j$ s3 g                                Store(0x41,DBG8)
- x9 _9 G% @* y+ j) q: c5 h                                If(\_SB.PCI0.SBRG.H_EC.BPRS){
% m8 _! _  w/ b- g                                        Store(0x42,DBG8)1 B! j0 |% {0 m8 C9 G% h
                                        Store(0x1f,Local0)        // Battery Present
$ z) m% \1 {' _6 _% A/ {                                }
2 _; j+ n$ q: g+ i4 N                                Store(0x43,DBG8)' q% f0 D8 h6 e: p8 D# f
                                     Release(\MUTX)! j' N1 d* {1 I; G3 P7 c
                            }4 E+ f8 L1 f5 G
                  } // End of ECON
9 j6 [: g+ j- P! X3 K( j% a                Store(0x45,DBG8)5 J5 M/ e, {% g( [2 D$ L  N
                Return(Local0)        // Return Battery Status// ( 1F=Present / 0F=Absent )0 q2 |. T0 O, }( V1 k% ?' c
        } // End of _STA
! n* g- l: z9 h' X6 w9 r, D5 c5 l}
回复

使用道具 举报

发表于 2010-12-5 12:20:39 | 显示全部楼层
我碰到同样的问题 用的是win7的系统  在开机时在带电池的情况系反复插拔适配器时  / C/ m; F) W1 h# r( b2 W4 ~
系统进入的超慢  sci的时间宽度来回的调也不行 最后解决的方法是在sci命令发出时! o* \3 a) H0 K# Q
加个限制条件 if(os_apci_mode)  这时就不会出现系统慢的情况  . i2 O: Q) A$ F( Q
给你点灵感 呵呵
回复

使用道具 举报

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

望望

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-18 19:31 , Processed in 0.068639 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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