NVMeFix是Apple NVMe存储驱动程序IONVMeFamily的一组修补程序。其目标是改善与非Apple SSD的兼容性。它可以在Apple和非Apple计算机上使用。

实现了以下功能:

  • 自主电源状态转换以减少控制器的空闲功耗。
  • 主机驱动器有功功率状态管理。
  • 某些控制器(VMware,Sumsung PM981)上的超时恐慌的解决方法。

如果有足够的信息提交给Bugtracker,则可以解决与第三方SSD的其他不兼容问题。

不幸的是,某些问题不能仅通过内核端驱动程序来解决。例如,MacBookPro 11,1 EFI包含旧版本的NVMHCI DXE驱动程序,当从启用完整磁盘加密的休眠状态恢复时,该驱动程序会挂起。

安装

NVMeFix至少需要Lilu 1.4.1和至少10.14系统版本。它可能与旧系统兼容,但尚未经过测试。

它可能安装到/Library/Extensions引导加载程序,或由引导加载程序注入。

组态

-nvmefdbg启用详细的DEBUG构建日志记录。

-nvmefoff 禁用kext。

开启APST时,某些SSD行为异常。NVMeFix尝试检测损坏的主板和SSD组合并加以解决。通过Clover注入的IORegistry键或OpenCore提供的NVRAM变量检测主板。

APST表条目指定发生过渡的最小空闲等待时间。最大可接受等待时间为100000微秒,可以通过ps-max-latency-us父PCI设备(例如 IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/RP06@1C,5/IOPP/SSD0@0)的低端8字节属性进行覆盖 。如果设置为0,则将完全禁用APST。

诊断程序

RELEASE build将仅记录有关故障的高级信息。

DEBUG build将另外记录使用的电源状态,详细的错误消息,并尝试从控制器获取APST状态和表格。

APST启用状态将发布到IONVMeController IORegistry条目apst键。

如果主动电源管理初始化成功,NVMePMProxy将使用IOPowerManagement词典在IOPower IORegistry平面中创建一个条目。

例如,可以使用获取有关控制器支持的电源状态的信息smartmontools。例如,在以下输出中,控制器报告5个状态,其中前三个高功率状态将由NVMeFix用于主动电源管理,后两个状态可用于APST,具体取决于ps-max-latency-us

Supported Power States
St Op     Max   Active     Idle   RL RT WL WT  Ent_Lat  Ex_Lat
 0 +     9.00W       -        -    0  0  0  0        0       0
 1 +     4.60W       -        -    1  1  1  1        0       0
 2 +     3.80W       -        -    2  2  2  2        0       0
 3 -   0.0450W       -        -    3  3  3  3     2000    2000
 4 -   0.0040W       -        -    4  4  4  4     6000    8000

IONVMeFamily支持以下调试标志位字段,可通过nvmebootarg或debug.NVMesysctl 进行传递:

1: Log some events via kprintf
2: Detailed event trace via kernel_debug with 0x61500xx debugid
4: PRP-related event trace via kernel_debug with 0x61540xx debugid
8: Force disable LPSR for Apple controllers
16: Perform only PCI initialisation of NVMe controller
32: Ignore initialisation errors
128: Disable LPSR for Apple controllers
512: Disable Unmap feature for IONVMeBlockStorageDevice

IONVMeFamily支持以下其他引导参数:

nand-io-timeoutms: Timeout for NVMe requests in ms, 35 s by default
enable-IO-log: Issue CORE_DEBUG_ENABLE_IOLOG ASP command (for Apple controllers)

v1.0.1

  • 添加对怪胎自动检测的OpenCore支持

,

下载地址

  • 软件版本
  • 大小
  • 更新日期
  • 下载地址
  • 1.0.2
  • 13.8KB
  • 2020-03-01
  • 蓝奏云 密码:7rf2

,