RBrightnessKeys.kext星辰云资源搜集到的用于亮度快捷驱动,根据ACPI规范,自动处理没有DSDT补丁的亮度键
需要Lilu 1.2.0或更高版本。
引导参数
-brkeysdbg
启用调试打印(在DEBUG二进制文件中可用)。
特别案例
通常,不需要DSDT补丁。请删除旧的_Qxx
到XQxx
的。
在某些型号上,可能需要添加ACPI补丁_OSI to XOSI
和SSDT-XOSI
。扰流板:在某些旧的ThinkPad型号上,可能需要其他处理。
这是他们的“提高亮度” EC事件的示例。
Method (_Q14, 0, NotSerialized)
{
If (^HKEY.MHKK (0x8000))
{
^HKEY.MHKQ (0x1010) // Vendor-specific event: TP_HKEY_EV_BRGHT_UP
}
If (NBCF) // Whether
{
If (VIGD)
{
Notify (^^^VID.LCD0, 0x86) // Send 0x86 "Increase Brightness" to integrated graphics
}
Else
{
Notify (^^^PEG.VID.LCD0, 0x86) // Send 0x86 "Increase Brightness" to discrete graphics
}
}
Else
{
Local0 = BRLV // Local variable to store current brightness level
If ((Local0 != 0x0F))
{
Local0++
BRLV = Local0
}
If (VIGD)
{
UCMS (0x16) // SMI access for integrated graphics
BRNS ()
}
Else
{
VBRC (Local0) // SMI access for discrete graphics
}
^HKEY.MHKQ (0x6050) // Vendor-specific event: TP_HKEY_EV_BACKLIGHT_CHANGED
}
}
NBCF
默认情况下,当设置为零时,该方法将不会通知图形设备,并尝试直接调整亮度。要覆盖它,请NBCF = 0x01
在SSDT hotpatch中设置,或仅使用一个简单的补丁替换其声明。
- 对于使用较早的iasl编译的DSDT,请替换
Name (NBCF, 0x00)
为Name (NBCF, 0x01)
:
查找:08 4E424346 0A 00
// NameOp "NBCF" BytePrefix "00"
重复:08 4E424346 0A 01
// NameOp "NBCF" BytePrefix "01"
- 对于使用较新的iasl编译的DSDT,请替换
Name (NBCF, Zero)
为Name (NBCF, One)
:
查找:08 4E424346 00
// NameOp "NBCF" ZeroOp
重复:08 4E424346 01
// NameOp "NBCF" OneOp
下载地址
此内容仅限VIP查看
注册登录
升级VIP会员 尊享全站资源下载特权
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)