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

关于LVDS 与 VGA的切换请教,

[复制链接]
发表于 2009-3-15 10:52:11 | 显示全部楼层 |阅读模式
关于LVDS 与 VGA的切换请教,谢谢' K; j- W( j2 A6 @, B
EC 中拿到了FN+F7,但怎么才能通知北桥把VGA接口打开呢,谢谢.
8 D* U- U) f9 U# Y. I0 Y  m' T是否是BIOS控制呢?
发表于 2009-3-16 11:28:22 | 显示全部楼层
想自己搞明白再做,得看一下ACPI Spec 的Display Switch 相关的,和你所用的芯片的VGA 部分的BIOS PortGuid文档,就知道什么做了.8 m" s+ u* N6 R7 \7 y( m# A& @
想最快的直接的,找一个已经写好的BIOS CODE来参考就行了!
回复

使用道具 举报

 楼主| 发表于 2009-3-20 19:46:42 | 显示全部楼层
多谢,因为我搞EC ,bios基本不参与,我只用发一个SCI EVENT 通知 bios, 由BIOS去控制北桥切换.BIOS中原厂因该有基本的切换代码.
回复

使用道具 举报

发表于 2009-3-25 22:02:45 | 显示全部楼层
只要請BIOS 弟兄幫你 留debug port 80h , 當fn+f7 你定義一個 Q_event (ex: f7h) 經由EC runtime_sci pin to 南橋後, 之後就是 ACPI driver 轉換成 ASL code method 去通知 BIOS 經由此時BIOS 收到 method _QF7 就丟個燈號經由 Debug port 80h method ~~我大概描述一下./ B$ ?9 D1 ^# Y4 F$ K. d7 g
重要是只要能丟出燈號就不是你的問題 ~~ 切換 RGB and LVDS 就是BIOS vs VGA driver 問題了.祝順利喔
回复

使用道具 举报

 楼主| 发表于 2009-3-29 20:42:22 | 显示全部楼层

多谢多谢

Method(_Q52) {                                // Hotkey/ u, o$ n5 ?. c" i6 _; C, d5 q
                Store (SCAN, DBG8). U: V0 k) X2 ?9 x9 _( k* l
                If (\_SB.PCI0.GFX0.IGEF) {        // If on Internal Grapics Display- o& f# c0 f, P& G1 O) W
                        If( LAnd( LGreater( SCAN, 0x3a ), LLess( SCAN, 0x59 ) ) ) {        // Process video keys if F1-F12
& A9 h/ V% `6 }                                If( LEqual( SCAN, 0x40 ) ) {        // Don't process F6
3 _" X. D7 N$ N                                }" w( m. f, H) W
                                else {- A% e  ?0 f& j. S, Q
                                        If( LAnd( LGreater( SCAN, 0x3a ), LLess( SCAN, 0x3F ) ) ) {        // Process video keys if F1-F4
6 r  F) n" Y. H' h% `% f                                                if (LEQUAL(\_SB.PCI0.GFX0.DSEN, 0)){        // WinXP( ]; c$ K9 G) d9 e  @
                                                        Store( Or(SCAN, 0x80), DPB3)# {% D1 @& D+ S0 v$ j: E
                                                        Store( 0x77, DPB2 )  i# V% H) o1 D# p  @0 h
                                                        Sleep (250)
6 O; s, Z. Z  r6 ^% @1 M) h. ]1 |) r                                                        Notify (\_SB.PCI0.GFX0,0x80)
: e! z3 w4 @8 o, y, q1 x                                                }
! ]5 H# W9 W/ x) y$ f                                                else {                                        // Non-XP path) Q& f6 ^( E: I& O* M' `% E
                                                        Store (SCAN, DPB3)
: t2 M9 r# i; i8 c; d) C! z% W/ g, D                                                        Store( 0x77, DPB2 ), k1 N) L" |6 O9 m
                                                        Notify (\_SB.PCI0.GFX0,0x80)* U# x& r% T: J/ x5 k
                                                }
7 e$ \2 u) M. `" k                                        }
% g: g) o! [$ f                                        else {                                                                // Path for keys >F4
& o4 y3 `. `' c) \                                                Store (SCAN, DPB3)
* W: y0 ^! ?+ b! V1 G* i$ |) h& c5 g5 f                                                Store( 0x77, DPB2 )* T( @, S) K  @/ f; D7 i
                                        }
( |1 S" S& y1 b6 X: b/ o, \; J' ^                                }
" x; Q  Q( e, i2 r                        }8 V0 b$ Y4 l7 u0 X
                }
回复

使用道具 举报

发表于 2009-7-17 22:51:50 | 显示全部楼层
Notify (\_SB.PCI0.GFX0,0x80). A; W, w/ Z$ P

" Y+ w% Y0 w! d/ d, H! F1 B- a( a俺有个疑问( F  Y2 H, O3 x& ^& h1 X3 i% Y9 M
- @& {& L4 S) y' V& w
对于DEV, 这个NOTIFICATION在ACPI SPEC里没讲明白哦, 还有的ASL CODE发的是0x81, 0x76之类的, 一直不明白是怎么回事
回复

使用道具 举报

发表于 2009-7-17 22:53:38 | 显示全部楼层
另外, 在NON-ACPI OS下, HOTKEY切换仍然有效, 那看起来走了SMI了, 那又怎么样实现的呢? 第一玩接触这个东东, 嘿嘿~ 惭愧, 老革命问新问题.
回复

使用道具 举报

发表于 2009-7-18 00:10:48 | 显示全部楼层
问题解决了, 呵呵, 居然在ACPI SPEC的附录里
回复

使用道具 举报

发表于 2009-7-18 00:11:40 | 显示全部楼层
不过, SMI下切换还是有点不明白, 没找到MBI SPEC, 哪位兄弟有, 麻烦SHARE一下, 谢!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-23 15:56 , Processed in 0.047398 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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