案例
ThinkPad IMX471:为 Linux 恢复相机调校信息
从 Intel Windows 驱动包中恢复选定的相机调校结构,用于修复一个 ThinkPad 型号在 Linux 下的图像采集。公开的 CPFF/AIQB 解析器、内核补丁及 libcamera 修改,配有作者报告的 Claude 辅助调查和有限范围的前后测量。
使用条件与局限
- 所审阅目标是 Lenovo ThinkPad X1 Carbon Gen 14(Aura Edition),采用 Intel IPU7 后端的 Sony IMX471 传感器。作者测试了 Fedora 44 内核 7.2.8 和 libcamera 0.7.1 回移补丁。发布的内核包省略 BTF/调试信息,被描述为测试内核,并非日常使用推荐。
- Python 3 分析工具使用 NumPy,并假定输入为 1928x1088 RG10 流、每行跨度 3904 字节。部分脚本写入了作者的本地目录布局,需要调整路径。重做调校分析需另行提供相应厂商驱动包数据或设备采集记录;这些是独立输入,并非项目恢复出的原始驱动源码。
- 作者在受控弱光比较中等待 400 帧以使算法收敛,报告画面亮度由 31.1 升至 90.9。测试记录描述了受影响设备上的裁剪区域查询、彩条和模拟增益检查。v4l2-compliance 在裁剪修复前后均为 46/46 通过,因此该通过数本身未检测出缺陷。本合集未复现这些测量。
- 工作在既有 Linux 驱动和软件 ISP 上增加三项内核修复,以及镜头阴影校正和白平衡统计修改。弱光下蓝色仍约不足 17%,18.8 ms 的曝光上限尚未在此修复,第二个红外相机不在范围内。项目不恢复完整 Windows 驱动、不仿真整台笔记本,也不确立跨相机型号兼容性。
- 注明日期的调查包含已更正和撤回的假设,不能用较早的中间结论替代最终 README 与测试记录。补丁说明将 Claude 辅助和硬件检查归于作者;后续博客报告的是提交/审阅活动,并非已核实的上游合并。不确立 REA 使用。
- 固定版本没有顶层项目许可证。补丁中新添的 libcamera 实现文件声明 LGPL-2.1-or-later,调校数据部分声明 CC0-1.0;这些是组件声明,不是覆盖全部脚本或厂商派生输入的统一许可。既有内核/libcamera 代码和厂商材料仍适用各自条款。
关于此条目
- 类型
- 案例
- 类别
- 独立重建案例
- 关联
- 独立重建项目
- 目标
- 固件
来源复核于
说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。
一手来源
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/README.md
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/findings/WINDOWS-DRIVER.md
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/findings/TESTING.md
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/kernel/README.md
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/libcamera/README.md
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/kernel/patches/0000-cover-letter.patch
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/libcamera/patches/libcamera-lsc-0.7.1.patch
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/tools/aiqb.py
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/tools/gen-tuning.py
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/rpms/README.md
- https://blogs.gnome.org/uraeus/2026/10/15/aiandreverseengineerhardware/
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/tools/README.md
- https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/tools/raw.py