最新公告
  • 限时8元开通会员,全站免费下载立即加入我们
  • 黑苹果USB注入:USB-Inject-All 0.7.6 Sniki

    黑苹果USB注入:USB-Inject-All 0.7.6 Sniki 最后编辑:2021-10-23
    苹果镜像: 苹果教程 黑苹果资源 安装指导 环境配置MAC软件最新资源

    0.7.6 版本分支由@Sniki维护并发布,并不是上一版作者 Rehabman,如果遇到问题,可退回 0.7.1 版

    OS-X-USB-Inject-All 是一款用于黑苹果 macOS 的 USB 驱动程序。在macOS 10.11+中,Apple改变了USB驱动程序的工作方式。在没有端口注入器的情况下,驱动程序使用ACPI获取有关哪些端口处于活动状态的信息,但是通常情况下,这些信息是错误的。如果使用端口注入器(port Injector),就像Apple在自己的Mac上一样,就可以避免动手校正DSDT。但是,为了创建这样的注入器,您必须首先确定实际使用的端口。为此需要注入所有端口,以便可以测试计算机上的所有端口,以确定哪些端口与每个可用端口地址相对应。无法测试已禁用的端口。

    以上就是这个驱动的主要用途。此驱动会尝试为每个控制器以及集线器注入所有端口。您可以(临时)使用此驱动启用所有端口,以便确定哪些端口确实需要在最终注入器中。需要注意的是,驱动仅注入EH01.PRT1和EH02.PRT1上的(潜在)集线器,如果需要其他集线器则需要手动修改。截至目前,还没有内部集线器连接到其他端口的案例。驱动会根据特定的USB控制器芯片组自动确定端口及其地址。

    • EH01: 8-USB2 ports PR11-PR18.
    • EH02: 6-USB2 ports PR21-PR28.
    • EH01 hub: 8-USB2 ports HP11-HP18.
    • EH02 hub: 8-USB2 ports HP21-HP28.
    • XHC, 7-series chipset (8086:1e31): 4-USB2 ports HS01-HS04, 4-USB3 ports SS01-SS04.
    • XHC, 8/9-series chipset (8086:9xxx): 9-USB2 ports HS01-HS09, 6-USB3 ports SS01-SS06.
    • XHC, 8/9-series chipset (8086:8xxx): 14-USB2 ports HS01-HS14, 6-USB3 ports SS01-SS06.
    • XHC, 8/9-series chipset (8086:9cb1): 11-USB ports HS01-HS11, 4-USB3 ports SS01-SS04.
    • XHC, 100-series chipset (8086:a12f): 14-USB2 ports HS01-HS14, 10-USB3 ports SS01-SS10, plus USR1/USR2)
    • XHC, 100-series chipset (8086:9d2f): 10-USB2 ports HS01-HS10, 6-USB3 ports SS01-SS06, plus USR1/USR2)
    • XHC, 200-series/300-series chipset, etc.

    截止目前,USBInjectAll.kext 仅适用于 macOS 10.11 及以上版本,且仅支持英特尔控制器。驱动中已包含最常用的SMBIOS ID。如果没有自定义配置,则不推荐长期使用此驱动程序。最好创建一个仅包含目标计算机上活动端口的定制注入器,或者创建一个SSDT来定制由USBInjectAll.kext完成的端口注入。

    如果您有英特尔100系列主板,那么XHCI上最多可以有26个端口,因此您应该相应地增加限制:

    描述: 修改AppleUSBXHCIPCI的15个端口限制到26个
    名称: AppleUSBXHCIPCI
    查找: <83bd8cfe ffff10>
    替换: <83bd8cfe ffff1b>

    您可以从签入该项目的文件config_patches.plist中复制/粘贴补丁程序,其中还包含重命名EHC1-> EH01和EHC2-> EH02所需的DSDT补丁,这对于避免此驱动与SMBIOS本地驱动中的任何内置端口注入器之间发生冲突非常重要。注意:不要在没有定制设置的情况下长期使用本驱动,可能会产生问题。如果XHC上的端口超过15个,则应使用FakePCIID_XHCIMux将这些USB3端口的USB2组件路由到EHCI。如果通过XHC路由多达8个USB2端口,则很容易保持在限制之下。此驱动在安装场景中可能会有所帮助,它能在在Clover EFI / Clover / kexts 中运行。

     

    定制注入属性

    提供了两种机制来定制此驱动执行的注入。内核标识符“uia_exclude”可用于消除通常会注入的端口。“uia_exclude”需要一个字符串,该字符串具有多个以逗号分隔的端口标识符。

    例如,在没有FakePCIID_XHCIMux的联想u430上,蓝牙在XHC的HS06位置。触摸屏位于HS01。可以通过使用内核标识符“uia_exclude = HS01”引导或使用“uia_exclude = HS06”禁用蓝牙引导来禁用触摸屏。要同时禁用这两个功能,则使用“uia_exclude = HS01,HS06”。如果使用FakePCIID_XHCIMux,触摸屏则位于EH01的USB端口1上的集线器上。要禁用此集线器端口,使用“uia_exclude = HP11”。您可以轻松查看哪些设备连接到了哪些端口。USBInjectAll.kext注入的每个端口标识符都是唯一的,因此您可以轻松识别每个端口标识符。

    另外还有一些其他标识符:

    • 标识符 -uia_exclude_hs:排除所有HSxx端口;
    • 标识符 -uia_exclude_ss:排除所有SSxx端口
    • 标识符 -uia_exclude_xhc:禁用XHC上的注入
    • 标识符 -uia_include:即使正常情况下也会排除某些端口。例如:-uia_exclude_hs uia_include = HS01(保留HS01但排除其他HSxx)
    • 但是排除端口并不能提供需要的灵活性。可以通过ACPI配置Info.plist中ConfigurationData的所有数据。
    • 例如,如果我们只想在XHC上为8086_8xxx芯片组启用SS01:
    DefinitionBlock ("", "SSDT", 1, "hack", "UIAC", 0)
    {
        Device(UIAC)
        {
            Name(_HID, "UIA00000")
    
            // override XHC configuration to have only one port
            Name(RMCF, Package()
            {
                "8086_8xxx", Package()
                {
                    "port-count", Buffer() { 0xa, 0, 0, 0 },
                    "ports", Package()
                    {
                        "SS01", Package()
                        {
                            "UsbConnector", 3,
                            "port", Buffer() { 0xa, 0, 0, 0 },
                        }
                    }
                }
            })
        }
    }

    SSDT-UIAC.dsl中也提供了一个示例,通过这种机制可以更改为每种类型的设备注入的所有数据。

    SSDT-UIAC-ALL.dsl包含与Info.plist中相同的数据,您可以将其用作模板,以针对计算机上的特定USB配置建立自己的自定义SSDT,删除不需要的端口,或更改UsbConnector或portType以匹配您自己的USB硬件配置,包括所有XHC标识符(vendor_device),因此您可能应该从删除不适用于您的XHC设备的配置开始,仅保留设备的配置。您可以在XHC节点下的IORegistryExplorer中看到您的设备ID(供应商ID和设备ID)。

    注意:此驱动默认您已重命名为EHC1-> EH01和EHC2-> EH02。它还默认您的XHCI控制器名为XHC或XHCI(重命名前为XHC1)。这些名称EH01 / EH02 / XHC最好避免与Apple计算机的内置端口注入器冲突。某些Intel xHCI控制器本身不受支持,需要注入器。对于这些系统,请安装XHCI-unsupported.kext。本地支持取决于版本,您可以在/System/Library/Extensions/IOUSBHostFamily.kext/Contents/Plugins/AppleUSBXHCIPCI.kext/Contents/Info.plist中查看,以确认xHCI是否受支持。

    需要XHCI-unsupported.kext的典型xHCI:

    • X99系列芯片组XHC控制器,8086:8d31
    • 200系列芯片组XHC控制器,8086:a2af(取决于macOS版本)
    • 300系列芯片组XHC控制器,8086:a36d或8086:9ded

    猜你在找

    欢迎来到黑苹果乐园,助力于黑粉用上黑苹果。
    黑苹果乐园 » 黑苹果USB注入:USB-Inject-All 0.7.6 Sniki

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    站壳网
    一个高级程序员模板开发平台

    发表评论

    Hi, 如果你对这款模板有疑问,可以跟我联系哦!

    联系作者
    • 424会员总数(位)
    • 347资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 572稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情
    IP Blocking Protection is enabled by IP Address Blocker from LionScripts.com.