我正在研究 fpga 驱动程序代码,它将在低级别向 FPGA 设备写入一些值。在用户空间的顶层值被写入/dev/fpga,现在我想这是驱动程序如何从用户空间获取其值的逻辑,并且用户空间中的公开文件是“/dev/fpga”。但是现在这个值实际上是如何从 fpga 到达 device 的,必须维护一些回调。
但我真的无法弄清楚它实际上是如何发生的,有没有标准的方法?
任何人都可以帮我找出这个用户空间到内核空间的链接。
我正在研究 fpga 驱动程序代码,它将在低级别向 FPGA 设备写入一些值。在用户空间的顶层值被写入/dev/fpga,现在我想这是驱动程序如何从用户空间获取其值的逻辑,并且用户空间中的公开文件是“/dev/fpga”。但是现在这个值实际上是如何从 fpga 到达 device 的,必须维护一些回调。
但我真的无法弄清楚它实际上是如何发生的,有没有标准的方法?
任何人都可以帮我找出这个用户空间到内核空间的链接。
它可能是一个字符设备。您可以在内核模块中创建一个,当内核打开时,您的回调函数将在内核中被调用,写入一些内容等。请参阅:
http://linux.die.net/lkmpg/x569.html
了解它的工作原理和示例代码。