Add work handoff doc, Ubuntu HWE build scripts, and repair plan

- docs/WORK_PROGRESS.md: progress, ChromeOS and Ubuntu kernel source URLs/commands
- scripts: ubuntu-hwe-617-build.sh and deps list for kernel packaging
- patches: experimental HDMI note (DO NOT apply on 6.17)
- audio_topology: REPAIR_Plan_Audio.md; README links
- README: links to handoff and build helpers

Made-with: Cursor
This commit is contained in:
jack
2026-04-02 07:22:12 +08:00
parent b5193a7f77
commit c16b8c2b6c
7 changed files with 383 additions and 24 deletions

View File

@@ -0,0 +1,118 @@
# Chromebox 10 代Kaisa声音驱动修复方案
Coreboot 刷机后Linux 与 Windows 的音频问题**表现相反**,需**分平台**处理。本文给出目标、原因概要、推荐执行顺序;细节与命令见各专项文档。
**对比分析**[ANALYSIS_Audio.md](ANALYSIS_Audio.md)
---
## 目标状态
| 平台 | HDMI | 3.5mm | 插拔提示 |
| ------------- | ---- | ----- | ---- |
| **目标** | 有 | 有 | 有 |
| Linux当前典型 | 无 | 有 | 有 |
| Windows当前典型 | 有 | 无 | 无 |
---
## 一、Linux修复思路
### 1.1 问题拆分
| 输出 | 现象 | 主要方向 |
| --------- | ----------------------------------------------------- | -------------------------------------------- |
| **3.5mm** | 一般已有声 | 保持默认输出为模拟/耳机;勿误用打不开的 HDMI 为默认 |
| **HDMI** | `STREAM_PCM_PARAMS` IPC 失败(约 -5SOF + DisplayPort 路径 | **内核 / SOF 驱动** 与 6.x 行为;同机 ChromeOS 5.15 正常 |
### 1.2 推荐顺序(由易到难)
1. **确认物理口与 ALSA 设备**
`aplay -L`,用 `speaker-test -D plughw:卡号,设备号` 逐个试 HDMIpcm2/3/4 与物理 HDMI1/2/3 对应关系以实测为准)。
2. **用 5.15 内核验证是否为 6.x 回归(优先)**
Ubuntu 22.04 **较早点版本** Live ISO建议 [old-releases](https://old-releases.ubuntu.com/releases/22.04/) 的 22.04.1 / 22.04.2,避免 22.04.5 自带 HWE 6.x「试用」后测 HDMI。
若 5.15 上 HDMI 正常 → 本机可考虑安装/长期运行 **5.15 LTS** 内核或等待上游修复。
详见 [ANALYSIS_Audio.md](ANALYSIS_Audio.md) 第六节。
3. **固件实验(预期有限)**
用 intel-signed 覆盖 community 的 `sof-cnl.ri.zst` **在本项目已实测不能单独恢复 HDMI**;若仍要试参数/路径,见 [OPERATION_Force_Intel_Signed_Firmware.md](OPERATION_Force_Intel_Signed_Firmware.md),并注意回退清单。
4. **自行维护内核(进阶 / 目前最小补丁候选)**
当前对照 ChromeOS 5.15 与 Ubuntu HWE 6.17 源码时,发现 iDisp HDMI 的 BE link 配置存在一个很可疑差异:
Ubuntu 6.17 的 `sound/soc/intel/boards/sof_board_helpers.c` 中 iDisp HDMI link 使用 `playback_only`,而同文件中其他 BE link 使用 `dpcm_*`ChromeOS 5.15 也使用 `dpcm_playback`
仓库内提供了一个“最小实验补丁”用于验证该差异是否与 `STREAM_PCM_PARAMS ipc failed (-5)` 相关:
- `patches/ubuntu-hwe-6.17/0001-ASoC-intel-sof-fix-idisp-hdmi-dpcm-playback.patch`
应用与编译(在你已拉取的 `~/kernel-src/linux-hwe-6.17-6.17.0/` 下执行):
```bash
cd ~/kernel-src/linux-hwe-6.17-6.17.0
patch -p1 < /home/jack/chromebox_10th_audio_driver/patches/ubuntu-hwe-6.17/0001-ASoC-intel-sof-fix-idisp-hdmi-dpcm-playback.patch
# Ubuntu 源码的构建方式很多,这里只给“验证用”的最小提示:
# 1) 用你当前系统的配置作为起点:/boot/config-$(uname -r)
# 2) 保持 CONFIG_SND_SOC_SOF_* 与显卡音频相关选项一致
# 3) 编译并安装内核/模块后重启,再复测 HDMI
```
若此补丁能让 HDMI 打开(或错误码/日志明显变化),下一步就能进一步收敛为上游可接受的修复(或定位到更精确的回归提交)。
5. **自行维护内核(进阶 / 回归定位)**
在 v5.15 与当前内核之间对 `sound/soc/sof/``sound/soc/intel/boards/`**git bisect**,定位回归后 revert 或打最小补丁;适合能自行编译内核的维护者。
5. **上游协同**
向 [thesofproject/sof](https://github.com/thesofproject/sof) / alsa-devel 反馈机型Google Kaisa、内核版本、dmesg 中 IPC 错误、ChromeOS 对照正常。
### 1.3 若「原来有声现在无声」
见 [ANALYSIS_Audio.md](ANALYSIS_Audio.md) **第八节**;固件实验后务必按 [OPERATION_Force_Intel_Signed_Firmware.md](OPERATION_Force_Intel_Signed_Firmware.md) **回退检查清单** 恢复。
---
## 二、Windows修复思路
### 2.1 问题拆分
| 输出 | 现象 | 主要方向 |
| --------- | --------------------------------------------------- | --------------------------------------------------- |
| **HDMI** | 通常正常(英特尔显示器音频) | 一般无需改动 |
| **3.5mm** | Realtek ALC5682 I2S 显示 OK 但无声CoolStar SOF 常为 Error | **CoolStar / Chrultrabook 成套驱动**,非桌面机通用 Realtek 安装包 |
### 2.2 推荐顺序
1. **先消除「CoolStar SOF Audio (WDM)」设备管理器中的 Error**
按 CoolStar 包内说明与机型Kaisa/puff重装或更新记录错误码便于论坛检索。
2. **再安装/更新「Realtek ALC5682 I2S Audio」**
使用 CoolStar 提供的 INF避免第三方「万能 Realtek」覆盖。
3. **系统声音**
默认播放设备选 **耳机/模拟**,不要只选显示器音频。
4. **仍无声**
Chrultrabook 论坛搜机型 + ALC5682 + headphone插拔提示属进阶README W4见专项文档。
### 2.3 专项文档
全流程步骤:[OPERATION_Windows_Audio.md](OPERATION_Windows_Audio.md)
---
## 三、采集与回归对比
- **Linux**`collect_linux_audio_topology.sh``collected/`
- **Windows**`collect_windows_audio_topology.ps1``collected/`
- 修复前后各采一份,便于对比 dmesg、设备与驱动版本。
---
## 四、文档索引
| 文档 | 内容 |
| ------------------------------------------------------------------------------------ | -------------------------- |
| [ANALYSIS_Audio.md](ANALYSIS_Audio.md) | 三平台对比、原因分析、Live CD、第八节无声排查 |
| [OPERATION_Force_Intel_Signed_Firmware.md](OPERATION_Force_Intel_Signed_Firmware.md) | Linux SOF 固件路径与回退 |
| [OPERATION_Windows_Audio.md](OPERATION_Windows_Audio.md) | Windows CoolStar / ALC5682 |
| [README.md](../README.md) | 仓库任务列表 |