返回上一页  首页 | cnbeta报时: 12:20:07
Linux Kernel开始补齐苹果M设备的雷电支持 M1/M2/M3率先支持USB4协议
发布日期:2026-09-01 12:09:30  稿源:蓝点网

得益于 Asahi Linux 项目的开发者进行的工作,Linux Kernel 即将实现在搭载 M1/M2/M3 芯片的设备上支持 USB4 协议。这套功能此前已经存在于 Asahi Linux 维护的下游代码中,此次提交的意义主要是推动相关驱动程序正式进入 Linux 主线。

苹果的 USB4 架构与普通 PC 不同:

苹果在搭载 M 芯片的设备中提供的 USB4 协议与普通 PC 不同,苹果每个 USB4 Type-C 接口都包含名为 ACIO 的硬件模块,该模块集成 Cortex-M3 协处理器、USB4 主机路由、原生主机控制面以及 DART IOMMU 等。

这些硬件并不会持续暴露给主处理器,主处理器只有在 ACIO 协处理器运行后才能通过 16MiB MMIO 窗口访问内部设备,因此驱动程序需要根据接口连接状态为 ACIO 模块通电、启动 RTKit 协处理器,再动态创建 DART 和 NHI 设备。

当接口断开后又必须按照相反顺序销毁设备并断电,这也是搭载 M 芯片的苹果设备长期以来难以获得 Linux 上游支持的主要原因。

NHI 驱动需要大量苹果专用处理:

Asahi Linux 工程师提交的补丁新增超过 1000 行苹果雷电协议的驱动代码,同时补丁也修改 Linux Kernel 现有的雷电核心。苹果 NHI 使每个 Ring 有独立的一个中断设计,其寄存器布局、Ring 配置和终端处理方式均与通用 USB4 控制器不同。

在 M3 中苹果实施更严格的管理,为不同的 TX/RX Ring 提供多达 24 个 IOMMU 条目,用于增强不同数据通道之间的隔离。苹果硬件也没有实现 Linux 现有 USB4 代码预期的部分 USB3 带宽分配寄存器,所以 Asahi Linux 工程师提交的补丁还专门加入 Quirk 绕过相关流程。

目前还不算是完整雷电支持:

首批代码目前只支持 XDomain 主机间连接以及 USB3-over-USB4 隧道,PCIe 设备隧道和 DP 视频隧道尚未完成。因此雷电扩展坞、外接显卡、高速 PCIe 设备以及通过雷电协议连接显示器等场景,目前仍不能保证正常工作。

Asahi Linux 工程师提交的补丁目前已经在 M1/M2/M3 平台进行开发和测试,不过当前处在 Linux 内核邮件列表审查阶段,尚未正式合并到 Linux 内核中。

查看网友评论   返回完整版观看

返回上一页  首页 | cnbeta报时: 12:20:07

文字版  标准版  电脑端

© 2003-2026