Oh! It's just a particular memory addressed, and that's what is being memory mapped into user land. Then I could just write a value in the kernel land, just as I would from the user land, to the address that is being memory mapped in. I should just read the device spec better and test how to write to that memory with a function that I'll export. On Fri, Nov 4, 2016 at 4:54 PM, Andrey Utkin <andrey_utkin@fastmail.com> wrote:
I've worked on a couple of PCI drivers for Linux, however I haven't studied actual PCI bus protocol and such fundamental details. Also I haven't read your post thoroughly and haven't visited your links. So I can be completely wrong...
But I am very surprised that you want to send interrupts from kernel (to PCI peripheral device as I understand).
It is peripheral device which sends interrupts usually, that's why there's no notion of interrups sending. To initiate some process on the device, which you really want I suppose, usual kernel driver for PCI device just writes to certain register of device.