哪些驱动程序处理macOS中的屏幕亮度?

时间:2019-04-27 23:55:46

标签: macos driver iokit kernel-extension

我正在尝试创建一个kext,它将允许我降低最小显示亮度。哪些驱动程序与此有关?这会是I / O Kit驱动程序吗?

这与使用集成的Intel Iris Plus Graphics 640的运行macOS 10.14.4的MacBook Pro 14,1上的内部显示屏有关。

1 个答案:

答案 0 :(得分:2)

控制的驱动程序是“ AppleBacklight.kext”内核扩展。

通常:显示屏背光通常(在MacBook Pro中就是这种情况)由0%至100%的PWM(脉冲宽度调制)信号控制。控制器(可能是GPU或专用IC)根据用户选择的亮度级别发出PWM信号。在某些情况下,这是环境光传感器的原因。

控制器通过将可用的PWM范围划分为多个设置(例如20个独立的步长)进行操作。通常无法获得整个PWM范围,因为背光具有不同的最小和最大允许PWM范围。如果超出该范围,则可能会违反规格,并可能损坏显示屏。

在现代Intel计算机上,PWM范围存储在可通过ACPI(高级配置和电源接口)访问的SSDT(系统服务描述符表)中。这些表通常转储到.aml / .dsl文件中。您将查看例如LMIN和LMAX参数(LMIN / LMAX =背光PWM最小/最大)。

您还可以考虑使用以下示例替换默认的背光内核扩展名:

https://github.com/RehabMan/OS-X-Intel-Backlight

它只能与Hackintoshes一起使用,但它可以控制与您相同的Intel集成GPU。

这是一个不同的内核扩展,它使用上述的ACPI方法控制背光:

https://github.com/RehabMan/OS-X-ACPI-Backlight

同样,它适用于Hackintoshes。

如果您想尝试手动转储和修补SSDT,可以查看此指南:

https://www.tonymacx86.com/threads/guide-patching-laptop-dsdt-ssdts.152573/

再次注意,它打算与Hackintoshes一起使用。

通常,我不建议您尝试更改原始Apple硬件上的最小显示屏亮度。您冒着损坏电路的风险-但当您将亮度降低到最小值以下时,很可能会遇到黑屏。