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

关于LVDS 与 VGA的切换请教,

[复制链接]
发表于 2009-3-15 10:52:11 | 显示全部楼层 |阅读模式
关于LVDS 与 VGA的切换请教,谢谢
0 I/ o, U8 V0 D3 |9 B: E1 @EC 中拿到了FN+F7,但怎么才能通知北桥把VGA接口打开呢,谢谢.
7 i/ h/ l" ~" l* r, [+ E: G是否是BIOS控制呢?
发表于 2009-3-16 11:28:22 | 显示全部楼层
想自己搞明白再做,得看一下ACPI Spec 的Display Switch 相关的,和你所用的芯片的VGA 部分的BIOS PortGuid文档,就知道什么做了.: z; O8 L7 j9 ?4 \* o! P! _
想最快的直接的,找一个已经写好的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 ~~我大概描述一下.( `( d* C( y* f9 w8 w
重要是只要能丟出燈號就不是你的問題 ~~ 切換 RGB and LVDS 就是BIOS vs VGA driver 問題了.祝順利喔
回复

使用道具 举报

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

多谢多谢

Method(_Q52) {                                // Hotkey
- Y! y8 t0 W2 K' }/ ~                Store (SCAN, DBG8)
0 K6 w! |& w5 y4 T8 ^' g' ]                If (\_SB.PCI0.GFX0.IGEF) {        // If on Internal Grapics Display  {6 e2 c8 D' {
                        If( LAnd( LGreater( SCAN, 0x3a ), LLess( SCAN, 0x59 ) ) ) {        // Process video keys if F1-F12
5 R/ V5 Q; y% B: S: P7 V+ M                                If( LEqual( SCAN, 0x40 ) ) {        // Don't process F6. y9 X9 D4 @" q/ m4 c
                                }
' z" n+ I% R! e0 A5 z& x) y4 M                                else {4 ~, @/ O. H* y; {2 l* a
                                        If( LAnd( LGreater( SCAN, 0x3a ), LLess( SCAN, 0x3F ) ) ) {        // Process video keys if F1-F4# ?8 k  E* r* x0 d% T5 y
                                                if (LEQUAL(\_SB.PCI0.GFX0.DSEN, 0)){        // WinXP3 D3 d% ?/ {5 H5 z: W
                                                        Store( Or(SCAN, 0x80), DPB3)
. r4 t/ m  _& a- U                                                        Store( 0x77, DPB2 ). V; `, k) d0 a: L9 S9 q- a
                                                        Sleep (250)
. x6 ~9 a; e9 D; E& x                                                        Notify (\_SB.PCI0.GFX0,0x80)
5 o( H& i/ n9 O; |/ K8 \                                                }. Q! Z" t- D2 B
                                                else {                                        // Non-XP path
2 ~0 D/ A) _: L' {0 r& `0 j                                                        Store (SCAN, DPB3)
( ?# H% j* D" R( Z) `5 T1 |                                                        Store( 0x77, DPB2 )
2 }6 _" `5 K* r- T                                                        Notify (\_SB.PCI0.GFX0,0x80)
& x+ i' ^. G3 F* e                                                }: S' s1 d* d1 a1 I# ^# V
                                        }
" {4 v! u1 z5 f8 C                                        else {                                                                // Path for keys >F4
! {8 F7 i' K/ H1 H                                                Store (SCAN, DPB3)* f+ {) g" h. z6 u
                                                Store( 0x77, DPB2 )
  b! }' w1 C8 U# p* L, D8 L, G                                        }
, C7 `6 S" v% \+ y1 H6 y; ]- a                                }
) N# B0 X4 g! d; j, o: J# K                        }
4 ~/ t9 Q, R8 T1 w4 M8 W                }
回复

使用道具 举报

发表于 2009-7-17 22:51:50 | 显示全部楼层
Notify (\_SB.PCI0.GFX0,0x80)
. J  B  K' J& W2 v9 X+ w# u" ~& s- i' W2 x
俺有个疑问, y+ @0 g8 S+ T/ s4 ^; y- z! c

+ X/ Q: B. m. c$ U7 t9 W; @6 ]" O对于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-6-8 08:33 , Processed in 0.068478 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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