On 26 August 2015 at 23:15, Peter Crosthwaite
<[email protected]> wrote:
> On Wed, Aug 26, 2015 at 2:46 PM, John Snow <[email protected]> wrote:
>> For the uninitiated, how does MSI work with Sysbus?
>
> No such thing :) Interrupts in Sysbus shouldn't really exist and those
> that do are just a thin wrapper around raw pins. The short answer is
> MSI is a PCI specific concept and sysbus is an alternative to PCI.

My preferred way to think about this is that the 'sysbus' device
is the raw "whatever-it-is chip" (uart, usb controller, whatever),
and you can wire that chip up directly on a board (sysbus), or wire
it up to a pci bus. (Yeah, in practice the PCI functionality is
probably on the same bit of silicon, but as a model it works
more or less.)

You can see something similar going on in our uart models:
we have a pci-serial, an isa-serial and some embedded UARTs
which all use the same core serial code but present a different
interface to the rest of the system.


> What I would be interested in, is it possible to push all MSI code up
> to the PCI core to completely remove the need for all PCIisms in AHCI?
> This seems to be the only thing that is PCI specific.

Possibly it might have to live in a pci-ahci wrapper class,
but it ought to be possible to keep it out of the common
ahci code I hope.

-- PMM

Reply via email to