设备:MagicBook Pro 16 2026 338H 白色款
系统:Fedora 44,内核升级到 7.0.1
现象:- 进入系统后,内建键盘和触控板均异常
- 键盘通过内核参数 i8042.dumbkbd 可部分恢复使用
- 触控板始终无法恢复
初步定位:- 使用dmesg查看内核日志发现如下报错:
- [ 0.196132] ACPI Error: No pointer back to namespace node in package (____ptrval____) (20251212/dsargs-301)
- [ 0.196138] ACPI Error: AE_AML_INTERNAL, While resolving operands for [Index] (20251212/dswexec-433)
- [ 0.196150] ACPI Error: Aborting method \_SB.GINF due to previous error (AE_AML_INTERNAL) (20251212/psparse-529)
- [ 0.196162] ACPI Error: Aborting method \_SB.GNUM due to previous error (AE_AML_INTERNAL) (20251212/psparse-529)
- [ 0.196167] ACPI Error: Aborting method \ due to previous error (AE_AML_INTERNAL) (20251212/psparse-529)
- [ 0.196174] ACPI Error: Invalid zero thread count in method (20251212/dsmethod-786)
- [ 0.196177] ACPI Error: Invalid OwnerId: 0x000 (20251212/utownerid-156)
- [ 0.196274] ACPI Error: AE_AML_INTERNAL, (SSDT:I2C_DEVT) while loading table (20251212/tbxfload-189)
- [ 0.205063] ACPI Error: 1 table load failures, 30 successful (20251212/tbxfload-208)
- ACPI 反编译分析结果:
- 在 I2C_DEVT 对应反编译表中存在设备 TPD0,见 ssdt27.dsl:507
- 该设备 _HID 为 PNP0C50,属于标准 I2C HID 设备,见 ssdt27.dsl:552
- 同表中存在调试字符串 I2c Touch Pad On/Off Method,见 ssdt27.dsl:1059, ssdt27.dsl:1065
- 同时还存在另一独立设备路径 Touch Panel,用于触摸屏而非触控板,见 ssdt27.dsl:700, ssdt27.dsl:1082
- 因此可以确认 TPD0 对应的是I2C 触控板
初步结论:- 固件中的 SSDT:I2C_DEVT 表存在加载/解析异常
- 触控板未能被系统正常枚举,疑似与该 ACPI 表错误直接相关
希望获得的帮助- 是否已有可修复该问题的 BIOS/EC 更新版本?
- 是否可以提供 beta BIOS 或提交给 BIOS/ACPI 团队排查?
- Linux 侧是否存在临时绕过方案,例如 acpi_osi 参数、DSDT/SSDT override 或针对该机型的 quirk?
我尝试过导出并反编译 ACPI 表,但反编译结果并非固件原始源码,可能存在信息丢失。当前错误又发生在 AML 表加载/方法执行阶段,涉及 package、namespace 和运行期对象解析,单靠反编译文本难以可靠定位。 |