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

关于LVDS 与 VGA的切换请教,

[复制链接]
发表于 2009-3-15 10:52:11 | 显示全部楼层 |阅读模式
关于LVDS 与 VGA的切换请教,谢谢
  o. j& _$ i% Q! L: E& ]EC 中拿到了FN+F7,但怎么才能通知北桥把VGA接口打开呢,谢谢.) `) y- C2 I3 _
是否是BIOS控制呢?
发表于 2009-3-16 11:28:22 | 显示全部楼层
想自己搞明白再做,得看一下ACPI Spec 的Display Switch 相关的,和你所用的芯片的VGA 部分的BIOS PortGuid文档,就知道什么做了.0 v, x2 C+ d/ ~* U6 l9 ^, g; I
想最快的直接的,找一个已经写好的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 ~~我大概描述一下.
1 a& i9 J7 t+ J" f( i重要是只要能丟出燈號就不是你的問題 ~~ 切換 RGB and LVDS 就是BIOS vs VGA driver 問題了.祝順利喔
回复

使用道具 举报

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

多谢多谢

Method(_Q52) {                                // Hotkey
" o- I3 M$ P7 I7 `, T1 L# B6 n                Store (SCAN, DBG8)
- a" ~5 U* ?. I; @                If (\_SB.PCI0.GFX0.IGEF) {        // If on Internal Grapics Display
% l4 O7 Y- O) C                        If( LAnd( LGreater( SCAN, 0x3a ), LLess( SCAN, 0x59 ) ) ) {        // Process video keys if F1-F12
( e  U% x$ |+ ]+ R                                If( LEqual( SCAN, 0x40 ) ) {        // Don't process F68 u  r  b1 l- C! E/ z
                                }" F+ e; T' A" j. Q  \) F) l' ]# }
                                else {
' X- _0 d' {7 S. E! O4 r                                        If( LAnd( LGreater( SCAN, 0x3a ), LLess( SCAN, 0x3F ) ) ) {        // Process video keys if F1-F42 J1 Z# p" k( m* X! ~9 C
                                                if (LEQUAL(\_SB.PCI0.GFX0.DSEN, 0)){        // WinXP: ?; \) N& x9 ~7 H% ~& I$ \
                                                        Store( Or(SCAN, 0x80), DPB3)0 I7 B+ D; }3 {  _. o
                                                        Store( 0x77, DPB2 )
& C) I8 Y- G6 f. v( f( Q; I9 L                                                        Sleep (250)
  G+ l* R# I2 c% p" K' S6 }, m- ]                                                        Notify (\_SB.PCI0.GFX0,0x80)
2 O* N/ k2 `' ]) J. P% M- B                                                }
% o* Q8 e3 y( @! l! |# u                                                else {                                        // Non-XP path8 E$ d! R' O' V  r5 b
                                                        Store (SCAN, DPB3)
4 c6 n/ W9 e( i- b' {+ U                                                        Store( 0x77, DPB2 )" U% Y, I4 V7 U' ]2 X" n
                                                        Notify (\_SB.PCI0.GFX0,0x80)' }# J, }( {7 _
                                                }* S. ^3 I9 S: r- A. f
                                        }
% Z8 o# T6 {1 X" m6 Z7 d) r/ g7 a                                        else {                                                                // Path for keys >F4# g$ I# F' {; K' z' E' q( p+ b
                                                Store (SCAN, DPB3), Q0 |$ X; m# Z" g
                                                Store( 0x77, DPB2 )1 l8 {9 ]* Q: A% z: P/ ~
                                        }
1 S8 I% H+ c% H+ B3 A                                }9 W3 g* H( q3 |  U4 ^
                        }" H, I* j# Q/ b1 z, S8 \- l0 V
                }
回复

使用道具 举报

发表于 2009-7-17 22:51:50 | 显示全部楼层
Notify (\_SB.PCI0.GFX0,0x80). s4 G) a& e1 [( \0 J2 s" f, G; g  E
. @7 E' a& z2 O0 f
俺有个疑问
/ O2 O* O9 _8 X$ ?+ z
; e  B* Z, r) l. h7 a7 e对于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, 2025-3-5 00:11 , Processed in 0.030789 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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