Linux: WM8753 驱动程序不是为 Pi 构建的

创建于 2016-01-27  ·  6评论  ·  资料来源: raspberrypi/linux

我试图让 WM8753 声音芯片通过 i2c 与 Pi 一起工作,但我无法让 WM8753 通过 i2c 总线响应,尽管它已在地址上注册。 我被指示在这里要求将 WM8753 驱动程序包含在内核中,您能帮忙吗?

最有用的评论

您是否尝试过将 WM8753 连接到 Windows? 如果有任何形式的驱动程序可用,我会感到非常惊讶,无论如何,I2S 和 I2C 接口在 PC 上并不常见 - USB、PCIe 或 Firewire 是首选,并且更容易处理。 除了 USB,这些接口在 SBC 上不太常见。

添加模块会增加每个人的内核分布的大小,并且某些模块还会有性能损失。 这就是为什么在默认情况下构建模块之前有一个普遍的要求来证明某些东西是有效的。 完整的说明可供您使用修改后的配置构建自己的内核,因此您并不依赖于默认构建中的内核。

BTW 你注意到https://www.cirrus.com/en/products/eol/detail/EOL421.html 了吗?

WM8753
停产日期:7/31/2017

在一年内即将停产的东西上开发新产品可能不是一个很好的计划。 我没有与它们列为替代品的 WM8750 和 WM8758 进行比较。

所有6条评论

@KevinStartup你的问题解决了吗? 如果是这样,请关闭此问题。 谢谢。

我们开发了一个定制的 i2c/i2s 驱动程序来支持这个芯片。 这是一种工作,但需要更多的关注。 正如你所看到的,我完全没有从这个网站得到任何帮助!

@KevinStartup你到底要什么? CONFIG_SND_SOC_WM8753=m要添加到默认 RPi 配置中,因此编解码器驱动程序构建为模块?

如果您需要有关 ASoC 机器驱动程序的帮助,请向我们展示您已经拥有的“可以正常工作”的代码,并告诉我们哪些实际上不起作用,人们可能会提供建议或帮助。

@DigitalDreamtime
我想我的建议是,系统中实际包含的所有编解码器都能够加载并配置到内核中。 wm8753 以及许多其他声音芯片都存在编解码器,但需要做很多工作才能使这些在带有 ASoC 和 ALSA 的 unix 内核中工作。 我们实际上委托另一家公司拼凑一个加载器并将驱动程序配置为内核中的一个模块,以便它可以被加载。 目前它可以工作,但是当 ALSA 用于我们的声音软件正在使用的“内存映射”模式时,它会失败,因此它仍然需要更多的工作。 细节很复杂,超出了我自己的能力,如果有人感兴趣,我可以在此处发布我们正在使用的代码,但实际上要测试它并使用它,您需要通过 i2c 将 Pi 连接到 wm8753 芯片。
我想我在这里的总体建议是尝试在 Pi 中获得更多的声音芯片支持。 它有可用的编解码器,但让它们工作很困难。 这是我认为可以更好地开发 Pi 的地方之一。 Windows 几乎支持您现在能想到的任何声卡,但对 Pi 的硬件支持有限且复杂。 我只是觉得转向一个更简单的系统将 Pi 与不同的音频和视频设备集成会很好。 我们还有一个定制的 LCD 屏幕与我们的 Pi 一起工作,这很棘手,但至少更容易配置,因为只有设备树需要修改和 config.txt 中的几行。
从用户的角度来看,似乎已经完成了一半的工作来支持各种声音芯片和显示器,但最终的用户配置非常棘手,需要专业知识。 我只是个人认为这是一个可以改进的领域。
如果有人希望拥有 wm8753 开发代码并想查看它,请告诉我,我可以发布它。
欢呼
凯文

您是否尝试过将 WM8753 连接到 Windows? 如果有任何形式的驱动程序可用,我会感到非常惊讶,无论如何,I2S 和 I2C 接口在 PC 上并不常见 - USB、PCIe 或 Firewire 是首选,并且更容易处理。 除了 USB,这些接口在 SBC 上不太常见。

添加模块会增加每个人的内核分布的大小,并且某些模块还会有性能损失。 这就是为什么在默认情况下构建模块之前有一个普遍的要求来证明某些东西是有效的。 完整的说明可供您使用修改后的配置构建自己的内核,因此您并不依赖于默认构建中的内核。

BTW 你注意到https://www.cirrus.com/en/products/eol/detail/EOL421.html 了吗?

WM8753
停产日期:7/31/2017

在一年内即将停产的东西上开发新产品可能不是一个很好的计划。 我没有与它们列为替代品的 WM8750 和 WM8758 进行比较。

@6by9
感谢 EOL 链接,这非常有用,我已将其发送给决定使用该芯片的人。 它主要用于与我们的软件向后兼容,以免我们不得不重新编码很多东西,因为我们使用该芯片的大量音频输入和输出,这些都已编码到我们的 PCB 和软件应用程序中,因此决定我们我会继续使用它而不是重新调整 PCB 和应用软件来应对(不是我的决定,为了记录,我反对它,但那是另一回事)

我同意,我也认为 USB 是前进的方向,我接受您的观点,即 wm8753 可能无法在 PC 上运行,并且大多数其他通过 i2c 的东西也无法运行! 我们已经以巨大的成本坚持了这一点,只有时间才能证明它是否可以节省我们在最终 PCB 和应用程序开发中的工作,但看起来可能是时候为金库购买大量 WM8753 了!

我们着眼于使用一种较新的芯片,特别是加载在他们的音频板 (WM5102) 上的 Cirrus Logic 芯片,但不幸的是,该芯片太小而无法由我们的制造机器安装,因此我们不得不使用较旧的芯片。 这真的很遗憾,因为 Cirrus 已经完成了在 Pi 上对其进行配置的所有工作。

我想你是对的,我们不能指望支持现有的每一个硬件,并且有机制让它工作——这真的很难! 无论如何,这对我来说太难了,我们不得不找一个大脑更大的人来试一试。

不过感谢您的参与,至少能得到回应是件好事。 我将关闭此线程以整理 Ruffio :)

祝你晚安
凯文

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

incyi picture incyi  ·  9评论

ensarkarabudak picture ensarkarabudak  ·  7评论

dkerr64 picture dkerr64  ·  7评论

unkissedfrog picture unkissedfrog  ·  9评论

thomasklingbeil picture thomasklingbeil  ·  4评论