我正在使用Altera Cyclone V SoC(运行Linux耦合到FPGA的ARM Cortex-A9)为电路板设计软件。 Linux操作系统运行良好,支持板载外设(以太网,SD卡等),我可以从用户空间程序访问FPGA,目前使用的是mmap()。
现在,该板也可以用作SDR(软件定义无线电)平台,所以作为一个噱头,我实现了一个非常简单的FM发射器。这已经很好用,但它只是FPGA内部的静态配置,与操作系统没有真正的连接。
我想要做的是将发射器链接到操作系统,理想情况是它可以用作标准音频输出设备,即声卡。硬件方面很灵活,目前非常简单:
此界面不固定,如有必要,可以很容易地更改。如果合情合理,我还可以将界面更新为类似于现有设备的界面,以便我可以使用其驱动程序。
现在问题是,我应该如何从与Linux的集成开始,即如何获得/构建合适的内核模块。我对内核模块开发很新,所以我真的不知道从哪里开始。 documentation of the Linux sound subsystem肯定会包含很多有用的信息,但我错过了“大图”,例如什么应该进入驱动程序的哪个部分,或者系统的实际接口(ALSA,如果我得到正确的)必须看起来像。
btw:我知道LDD3的书,并且知道内核模块应该如何看起来和工作一般,但我不知道如何构建一个与音频子系统很好地结合的内容。
感谢您提出意见,建议,链接等。
答案 0 :(得分:2)