> On Nov 10, 2018, at 3:54 PM, John Klos <[email protected]> wrote:
>
> On an Alpha system running NetBSD 8, though, the card isn't recognized
> properly:
>
> ppb1 at pci2 dev 4 function 0: vendor 10b5 product 8112 (rev. 0xaa)
> ppb1: PCI Express capability version 1 <PCI/PCI-X to PCI-E Bridge> x1 @
> 2.5GT/s
> pci3 at ppb1 bus 2
> mfi0 at pci3 dev 0 function 0: vendor 0x1000 product 0x9276
> mfi0: interrupting at dec 6600 irq 36
> mfi0: version
> mfi0: logical drives 0, 0MB RAM, BBU not present
> scsibus1 at mfi0: 64 targets, 8 luns per target
>
> Shortly after this, the console spits out 3000+ messages:
>
> stray 6600 irq 36
This is almost always due to the driver not correctly using the bus_dma API ...
probably one or more missing bus_dmamap_sync() calls -- these would not matter
on amd64 because it (by default, anyway) has a fully-coherent memory model, but
on Alpha, which has relaxed memory ordering, a memory barrier needs to be
issued in the right places to make sure that, for example, a
host-memory-resident mailbox is really up-to-date before ringing the device's
doorbell. bus_dmamap_sync() is the mechanism by which this is accomplished.
-- thorpej