Is it possible to create a kernel object like KEVENT that will react to some change in physical memory if pointed to it correctly. We have a MMIO region of physical memory from the PCIe device, that will occupy regions between x and y, that contains structured data.
If that PCI device placed into phys mem x[0x100] a byte that if set to 1, signalling structure data between 0-0x100 is ready, otherwise wait.
Now the simplest solution would be polling but that is not clean. So can I create some type of kernel event which has some signal field which I could place on x[0x100], and the hardware can set that byte in physical mem.
- So for test one a simple way for hardware memory map to sync with a kernel driver.
- And for test two, if I wanted the driver to trigger immediately, would I consider some interrupt generated from the PCI device, or what are your thoughts for signalling? I don’t know all the details about there hardware device and what they can support just yet.