我正在对android内核中的输入设备驱动程序进行一些编辑。内核开发新手:内核中的“虚拟”输入驱动程序?
该器件的键位和evbits有效范围有限。我想要做的是创建一个与任何物理设备无关的新的/ dev/input事件节点,启用更多的keybits和evbits,以便我可以将实际的输入信号从物理驱动程序发送到用户空间,用户空间我听他们和收到我可以注入输入事件到写入其事件节点的“虚拟”驱动程序。
linux/android内核提供这样的选项吗?我应该遵循哪条路?除此之外还有其他选择吗?
作为第二种选择,我可以在同一个驱动程序中创建两个输入节点并仅将input_reports发送到“物理”节点吗?
不当然我明白。如果物理驱动程序不支持某些键位,您将如何计划在用户空间中接收不受支持的键? – msh 2013-05-20 16:02:18
@msh我基本上需要两个设备,一个绑定到一个有限的可用密钥集的真实设备:我会通过input_report_key将它们从内核空间发送到用户空间。第二个“虚拟”设备不应该绑定到任何真实设备,并且应该有更广泛的可用键位,然后在用户空间中,我想倾听来自真实设备的键输入并注入,将数据写入输入事件节点,到虚拟设备。 – Vektor88 2013-05-21 13:32:51