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

关于LVDS 与 VGA的切换请教,

[复制链接]
发表于 2009-3-15 10:52:11 | 显示全部楼层 |阅读模式
关于LVDS 与 VGA的切换请教,谢谢, G' i2 a% q; L+ l8 g4 n- x. N2 @6 T
EC 中拿到了FN+F7,但怎么才能通知北桥把VGA接口打开呢,谢谢." }) {& y/ \7 N3 O% Z1 {1 f: O
是否是BIOS控制呢?
发表于 2009-3-16 11:28:22 | 显示全部楼层
想自己搞明白再做,得看一下ACPI Spec 的Display Switch 相关的,和你所用的芯片的VGA 部分的BIOS PortGuid文档,就知道什么做了.8 _8 y1 U. E9 Z- d8 j- Z- ?, m
想最快的直接的,找一个已经写好的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 ~~我大概描述一下.
: p5 d6 g; S! D2 d% [! s6 {重要是只要能丟出燈號就不是你的問題 ~~ 切換 RGB and LVDS 就是BIOS vs VGA driver 問題了.祝順利喔
回复

使用道具 举报

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

多谢多谢

Method(_Q52) {                                // Hotkey& ~* F. P' S2 I+ ?/ a
                Store (SCAN, DBG8)2 z8 S7 t- u" @9 p/ J
                If (\_SB.PCI0.GFX0.IGEF) {        // If on Internal Grapics Display9 {' N  s# N# w( T
                        If( LAnd( LGreater( SCAN, 0x3a ), LLess( SCAN, 0x59 ) ) ) {        // Process video keys if F1-F12
" c1 r% W7 _* h4 L) T% }                                If( LEqual( SCAN, 0x40 ) ) {        // Don't process F6
* Q+ }" X$ Q/ P3 ^9 G$ K5 v                                }
+ s, d# Z( B, z) m. n                                else {: V1 ]- h6 y  S$ S, W2 S$ o& p2 `7 [
                                        If( LAnd( LGreater( SCAN, 0x3a ), LLess( SCAN, 0x3F ) ) ) {        // Process video keys if F1-F4
+ p, J3 V! x6 R5 s7 W/ I2 `; z4 s                                                if (LEQUAL(\_SB.PCI0.GFX0.DSEN, 0)){        // WinXP+ A( W. q% A; X) g3 o( m+ B
                                                        Store( Or(SCAN, 0x80), DPB3)' }) C5 i  ?* ]
                                                        Store( 0x77, DPB2 ), E' l2 h+ S, t
                                                        Sleep (250)
+ ~0 S- @/ r0 W# }8 o9 H                                                        Notify (\_SB.PCI0.GFX0,0x80)
! t4 u  k% t4 o                                                }
9 W9 h( @4 l. c# ]                                                else {                                        // Non-XP path* X7 y$ n, g) S; G
                                                        Store (SCAN, DPB3)0 D$ v) v- b2 j6 t5 k  U
                                                        Store( 0x77, DPB2 )
) H! |% Y+ c3 N7 d* c% K                                                        Notify (\_SB.PCI0.GFX0,0x80)
2 s+ N$ \2 \( H9 A. z) F- `                                                }7 S% s% g+ ~) M' F. `$ i8 Z+ r" U
                                        }
7 [) B" P% J7 F                                        else {                                                                // Path for keys >F4
2 W7 k" I! ?: m+ g4 X                                                Store (SCAN, DPB3)9 G6 k$ ?% F, i0 D
                                                Store( 0x77, DPB2 )+ y' Z5 I- e0 L$ y) W* F
                                        }
8 M2 p" s% X( \* Z! X! C/ j                                }
8 v0 z6 @8 d! _# [. t  _( q                        }
5 F& D; ]0 e2 m& q6 t                }
回复

使用道具 举报

发表于 2009-7-17 22:51:50 | 显示全部楼层
Notify (\_SB.PCI0.GFX0,0x80)# f8 g2 U. X/ }* {: X8 z* O8 p
/ v0 R  r" N1 c; L1 ]. r& \
俺有个疑问
# A, L* U7 A  ^7 h' y4 `5 I2 k* T! }. U5 o; 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, 2026-6-29 05:49 , Processed in 0.082583 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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