sound/ 源码目录与模块索引

sound/ 源码目录与模块索引

源码路径rk3588/kernel-6.1/sound/(约 2800 文件)
内核版本:Linux 6.1(RK3588 / ARM64)
文档目录linuxDoc/sound/


一、顶层 Makefile

1
2
obj-$(CONFIG_SOUND) += soundcore.o      # sound_core.c 旧 OSS 入口
obj-$(CONFIG_SND) += core/ i2c/ drivers/ isa/ pci/ arm/ ... soc/ hda/ usb/ ...
CONFIG 说明
CONFIG_SND 现代 ALSA
CONFIG_SND_SOC ASoC(嵌入式必选)
CONFIG_SND_SOC_ROCKCHIP RK 平台 DAI

二、一级子目录(RK 产品相关度)

目录 相关度 说明
core/ ALSA 核心:card、pcm、control、timer
soc/ 最高 ASoC + soc/rockchip/
soc/codecs/ 外置/内置 Codec(含 rk_codec_digital.c
usb/ USB 声卡
hda/ PC HD Audio(RK 一般无)
pci/isa/ 桌面遗留
drivers/ 杂项声卡驱动
firewire/virtio/ 特殊平台

soc/ 内其它厂商ti/qcom/samsung/sof/ 等(RK 树内保留上游代码)。


三、soc/rockchip/ 文件(49 个)

模块对象 源文件 功能
snd-soc-rockchip-i2s-tdm rockchip_i2s_tdm.c I2S/TDM 主控制器(RK3588 多路)
snd-soc-rockchip-i2s rockchip_i2s.c 旧版 I2S
snd-soc-rockchip-pdm rockchip_pdm.c PDM 数字麦
snd-soc-rockchip-pdm-v2 rockchip_pdm_v2.c PDM v2(match 不含 RK3588)
snd-soc-rockchip-sai rockchip_sai.c 通用 rockchip,sai-v1,需按 DTS 判断
snd-soc-rockchip-spdif rockchip_spdif.c SPDIF 发
snd-soc-rockchip-spdifrx rockchip_spdifrx.c SPDIF 收
snd-soc-rockchip-hdmi rockchip_hdmi.c HDMI 机器驱动
snd-soc-rockchip-multicodecs rockchip_multicodecs.c 多 Codec 板级
snd-soc-rockchip-vad rockchip_vad.c 语音活动检测
snd-soc-rockchip-asrc rockchip_asrc.c 异步采样率转换
snd-soc-rockchip-dlp rockchip_dlp.c 数字环回
snd-soc-rockchip-multi-dais rockchip_multi_dais.c 多 DAI 聚合
未编译遗留文件 rockchip_hdmi_dp.crockchip_cdndp.c 源码存在但未列入本目录 Makefile,不能作为 RK3588 活跃路径
rockchip_utils.c 公共工具

同类未进入 Makefile 的文件还包括 rockchip_hdmi_analog.crockchip_da7219.crockchip_rt5651.crockchip_audio_pwm.c。分析实际运行路径必须同时核对 Makefile/Kconfig,不能只按 .c 文件是否存在判断。


四、ASoC 核心(soc/ 根目录)

文件 作用
soc-core.c 组件/卡注册、PM、链路
soc-dapm.c 动态音频电源管理
soc-dai.c DAI 操作
soc-pcm.c ASoC PCM 中间层
soc-card.c snd_soc_card
soc-link.c DAI link
soc-generic-dmaengine-pcm.c DMAengine PCM

五、RK3588 设备树 compatible(驱动内)

compatible 驱动文件
rockchip,rk3588-i2s-tdm rockchip_i2s_tdm.c
rockchip,rk3588-pdm rockchip_pdm.c
rockchip,rk3588-spdif rockchip_spdif.c
rockchip,rk3588-vad rockchip_vad.c
rockchip,rk3588-codec-digital soc/codecs/rk_codec_digital.c
rockchip,rk3588-spdifrx, rockchip,rk3308-spdifrx DTS 以 fallback 匹配 rockchip_spdifrx.c

rockchip_asrc.c 在本分支仅匹配 RK3506/RK3576;rockchip_pdm_v2.c 仅匹配 RK3506/RK3576/RV1126B,二者都不能当作 RK3588 原生 compatible。

板级 sound 节点 多在 arch/arm64/boot/dts/rockchip/*.dts(i),非 sound/ 目录。


六、已有补充文档

文件 说明
rk3588-kernel-6.1-sound声卡架构分析.md 早期架构速览
rk3588-kernel-6.1-sound-core*.md core 子目录笔记

七、专题对照

主题 文档
ALSA Core 01
ASoC 02
RK DAI 03
RK Machine 04
Codec/USB 05
RK3588 06
PCM 状态机 07
ASoC 绑定/DAI Link 08
DAPM/Control/Jack 09
DMAengine/实时性 10
I2S/TDM 11
数字音频 IP 12
HDMI/DP 13
ALSA 其它接口 14
RK3588 调试调优 15

文章互动

阅读 --

留言

0 条留言

正在加载留言…