Linux内核开发团队已将新一轮HID子系统更新合并至正在开发的Linux 7.4内核。此次更新的一大亮点,是加入任天堂Switch 2控制器的初步驱动支持。相关工作由开发者Vicki Pfau代表Valve参与完成,经过16轮补丁修改后,终于进入Linux主线内核。此外,新版本还加入了Pulsar游戏鼠标驱动,并改进了部分AMD处理器、苹果Touch Bar以及华硕ROG Ally掌机的硬件支持。


HID是人机接口设备(Human Interface Device)的缩写,主要负责处理键盘、鼠标、游戏手柄、触控设备等硬件的输入信息。Linux内核中的HID子系统不仅需要识别不同厂商的设备,还必须处理各类设备特有的通信协议。随着游戏掌机和无线控制器越来越普及,完善HID驱动对于提升Linux游戏体验具有重要意义。
此次最受关注的变化,是Linux 7.4首次引入针对任天堂Switch 2控制器的专用驱动。Switch 2的控制器采用了较为特殊的接口设计:按键输入和震动功能主要通过HID主接口处理,而其他通信操作则通过独立的配置接口完成。无论使用USB连接还是蓝牙连接,这种分离式设计都会增加驱动开发的复杂度。
为了解决这一问题,新驱动采用了主从式的分离驱动结构。HID接口作为主驱动,负责处理基本输入和震动相关功能;配置接口则作为辅助驱动,与主接口共享必要的设备资源。这种设计能够适应Switch 2控制器的特殊通信结构,也为后续增加更多功能打下基础。
目前,初步驱动支持Joy-Con 2、Pro Controller 2以及任天堂Switch Online服务中的GameCube控制器的一般输入功能。不过,这并不意味着Switch 2控制器的所有功能已经在Linux下完整可用。
开发者指出,由于Switch 2使用了非标准的配对接口,而Linux内核现有的蓝牙通信机制也存在一定限制,后续仍需要设计内核与用户空间之间的专用通信接口,并在BlueZ蓝牙协议栈中完成相应适配。因此,此次合并主要解决通用HID和USB配置接口驱动问题,蓝牙配对及其他高级功能仍有待继续开发。
值得注意的是,这项工作由Vicki Pfau代表Valve完成。Valve长期推动Linux游戏生态的发展,并通过SteamOS、Steam Deck以及对上游内核和图形驱动的贡献,改善Linux平台的游戏兼容性。此次为任天堂新一代游戏机控制器开发驱动,也体现出相关工作并不局限于Valve自家的硬件产品。
除了任天堂控制器,Linux 7.4还新增了名为hid-pulsar的驱动,用于支持Pulsar品牌的多款游戏鼠标。经过测试的型号包括X2 V2、X2H、X2A和Xlite V3等无线游戏鼠标。新驱动能够读取电池电量、电池电压和充电状态等信息,并支持有线连接,以及通过无线接收器实现1000Hz和4000Hz轮询率的连接模式。
该驱动还兼容采用相同通信协议的部分其他品牌产品,包括Kysona M600、ATK和VXE旗下的R1 SE+、Dragonfly R1 Pro等型号。这意味着,受益于统一的协议支持,部分并非Pulsar品牌的鼠标也可能获得相应的Linux兼容能力。
此次HID更新还为采用AMD Zen 6架构的新款Ryzen SoC扩展了AMD Sensor Fusion Hub(SFH)驱动支持。SFH负责处理部分传感器相关功能,可用于配备相关硬件的设备。新支持将有助于未来搭载新一代AMD处理器的笔记本电脑更好地使用相应传感器能力,但具体功能仍取决于整机硬件配置。
苹果设备方面,Linux 7.4修复了Touch Bar的一个电源管理问题。华硕ROG Ally掌机也获得了电源管理修复。这些改动虽然不像新增游戏手柄驱动那样引人注目,却有助于改善Linux在不同设备上的运行可靠性。
总体而言,Linux 7.4此次HID子系统更新,重点在于扩大游戏控制器和鼠标的兼容范围,同时修复现有硬件的电源管理问题。任天堂Switch 2控制器驱动的合并尤其值得关注,因为它为Linux用户使用新一代任天堂控制器提供了基础支持。不过,目前仍属于初步阶段,蓝牙配对和部分高级功能尚未完成,最终体验还取决于后续内核与用户空间软件的持续完善。

