On Fri, Sep 28, 2012 at 04:06:32AM +0200, Mark Kettenis wrote:
> > Date: Mon, 24 Sep 2012 03:49:41 -0400
> > From: Brad Smith <b...@comstyle.com>
> > 
> > I've always wondered why this workaround was not removed once MSI
> > support was added. This was added before we had MSI support to
> > workaround some Intel azalia(4) being setup by the BIOS as far
> > as I know to use MSI and thus interrupts on system that were
> > affected by this did not work at all for azalia(4).
> 
> Because there still are conditions under which we would not be able to
> use MSI.

I had 6 people reply off list indicating their Intel azalia controllers
didn't seem to have any regressions with the previous diff applied.

Can you expand upon this and explain what you mean. What are these
conditions? It would be nice to mention what those conditions are
within the comment.

> Perhaps we should change the generic PCI code to explicitly disable
> MSIs if they are turned on.  But until we do that, this workaround
> needs to stay in place.

Since MSI is being disabled for the Intel azalia controller and the
datasheet does confirm that is what this code is doing shouldn't
we be telling the PCI layer MSI is disabled too like so? It doesn't
make sense to have MSI disabled for the controller and then the
PCI layer still thinking MSI should be used.


Index: azalia.c
===================================================================
RCS file: /home/cvs/src/sys/dev/pci/azalia.c,v
retrieving revision 1.201
diff -u -p -r1.201 azalia.c
--- azalia.c    12 Aug 2012 19:32:22 -0000      1.201
+++ azalia.c    28 Sep 2012 02:17:31 -0000
@@ -515,6 +515,7 @@ azalia_pci_attach(struct device *parent,
 
        /* disable MSI, use INTx instead */
        if (PCI_VENDOR(sc->pciid) == PCI_VENDOR_INTEL) {
+               pa->pa_flags &= ~PCI_FLAGS_MSI_ENABLED;
                reg = azalia_pci_read(sc->pc, sc->tag, ICH_PCI_MMC);
                reg &= ~(ICH_PCI_MMC_ME);
                azalia_pci_write(sc->pc, sc->tag, ICH_PCI_MMC, reg);

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

Reply via email to