如何使用一个设备树覆盖层初始化多个 I2C 声音设备?

如何使用一个设备树覆盖层初始化多个 I2C 声音设备?

我目前正致力于实现一个新的设备树覆盖来初始化两个声音控制器:PCM5142 和 WM8804。使用的板是DACBerry ONE(https://www.osa electronics.com/product/dacberry-one-for-raspberry-pi-1ab-2b-3b/)。

我可以在 I2C 中的地址 0x4c (PCM5142) 和 0x3b (WM8804) 处看到这两个芯片。它们处于软件模式,可以通过 I2C 可访问寄存器进行配置。

我还可以将它们初始化为带有一些设备树覆盖的 ALSA 卡,例如:

通过这些覆盖,我可以使用 PCM5142 或 WM8804,而不是同时使用这两个芯片作为 ALSA 声音接口。应该是可以的(也得到了板子制造商的确认),但是还没有实现。

我的想法是创建一个新的覆盖层,它使用上面提到的两个覆盖层中的两个初始化例程,这为我提供了两个芯片作为 ALSA 卡,但我不确定如何做到这一点。

相关内容