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

关于LVDS 与 VGA的切换请教,

[复制链接]
发表于 2009-3-15 10:52:11 | 显示全部楼层 |阅读模式
关于LVDS 与 VGA的切换请教,谢谢
8 |( ~  N: ^) J* e- Y9 f9 k! B% ]EC 中拿到了FN+F7,但怎么才能通知北桥把VGA接口打开呢,谢谢." y6 ~) n8 i4 S$ L2 b
是否是BIOS控制呢?
发表于 2009-3-16 11:28:22 | 显示全部楼层
想自己搞明白再做,得看一下ACPI Spec 的Display Switch 相关的,和你所用的芯片的VGA 部分的BIOS PortGuid文档,就知道什么做了.: I$ ~: G; P- R
想最快的直接的,找一个已经写好的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 ~~我大概描述一下.
- w. ?" y- b0 }) s- D1 k重要是只要能丟出燈號就不是你的問題 ~~ 切換 RGB and LVDS 就是BIOS vs VGA driver 問題了.祝順利喔
回复

使用道具 举报

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

多谢多谢

Method(_Q52) {                                // Hotkey
8 V: u2 n* v" |, Z                Store (SCAN, DBG8)
& R5 A7 j& @& e% A! C1 ]  X                If (\_SB.PCI0.GFX0.IGEF) {        // If on Internal Grapics Display
2 s: L' _! }. M  S# K                        If( LAnd( LGreater( SCAN, 0x3a ), LLess( SCAN, 0x59 ) ) ) {        // Process video keys if F1-F12$ |: ^* k2 k# r2 |% L. ^& N9 c5 s
                                If( LEqual( SCAN, 0x40 ) ) {        // Don't process F6
* M) T& f! U. G& w/ L( `4 y+ W                                }
" t8 H' g: r+ O$ N( G; Q3 k                                else {( G) y8 P" J$ c9 W
                                        If( LAnd( LGreater( SCAN, 0x3a ), LLess( SCAN, 0x3F ) ) ) {        // Process video keys if F1-F4! q* A2 W8 |' q: `0 e
                                                if (LEQUAL(\_SB.PCI0.GFX0.DSEN, 0)){        // WinXP
4 J6 e  q3 t4 d: w7 q                                                        Store( Or(SCAN, 0x80), DPB3)
/ u0 G: M( \; S# u                                                        Store( 0x77, DPB2 )' w7 ]( R$ ~# y3 x( v3 b
                                                        Sleep (250)
" t* s, [+ {( n; T# s4 V                                                        Notify (\_SB.PCI0.GFX0,0x80)
. K& \# {. J2 Y( d& W                                                }9 Q$ ^) C: d: x8 L5 Y3 ?+ R' Z6 W
                                                else {                                        // Non-XP path
% j, N: {; ?: l0 X0 p, T                                                        Store (SCAN, DPB3)
3 s' r, ?% u: Z; R8 E- s" k                                                        Store( 0x77, DPB2 )( M: z  G" d3 q' i8 m- J; Q8 r/ t
                                                        Notify (\_SB.PCI0.GFX0,0x80)& Y* t* A$ i  @# j2 x5 S6 D
                                                }, f2 j7 M6 n- ^/ E! q
                                        }
5 V2 p& _& N7 W) `  C: `6 P5 `                                        else {                                                                // Path for keys >F47 s. X: p  Y1 \1 }* n) v
                                                Store (SCAN, DPB3)
6 n) S# p: n! _9 x                                                Store( 0x77, DPB2 )
  y8 A3 g+ \- y9 @$ b" O                                        }& U* g. t4 b. B2 T* K
                                }5 B' f3 s. ?9 i3 r' P: W
                        }9 D4 N% ]$ c% K' V* W+ c, _  z
                }
回复

使用道具 举报

发表于 2009-7-17 22:51:50 | 显示全部楼层
Notify (\_SB.PCI0.GFX0,0x80)
4 o# t5 a7 a* @0 a7 h+ Q/ J0 \% s4 a/ W6 L; E. x' ?
俺有个疑问7 P! X: P3 t0 t3 y, Y/ J. ]
9 y; h; B( n1 N
对于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, 2026-11-3 23:09 , Processed in 0.160743 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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