Author: mav
Date: Tue Nov 19 02:03:10 2019
New Revision: 354840
URL: https://svnweb.freebsd.org/changeset/base/354840

Log:
  Call bus_dma_dmar_set_buswide(9) added in r354830.
  
  PLX NTB sends translated DMA requests not only from itsels, but from all
  slots and functions of its bus.  By default DMAR blocks those additional.
  
  MFC after:    1 week
  Sponsored by: iXsystems, Inc.

Modified:
  head/sys/dev/ntb/ntb_hw/ntb_hw_plx.c

Modified: head/sys/dev/ntb/ntb_hw/ntb_hw_plx.c
==============================================================================
--- head/sys/dev/ntb/ntb_hw/ntb_hw_plx.c        Tue Nov 19 02:00:13 2019        
(r354839)
+++ head/sys/dev/ntb/ntb_hw/ntb_hw_plx.c        Tue Nov 19 02:03:10 2019        
(r354840)
@@ -339,6 +339,12 @@ ntb_plx_attach(device_t dev)
                return (ENXIO);
        }
 
+       /*
+        * The device occupies whole bus.  In translated TLP slot field
+        * keeps LUT index (original bus/slot), function is passed through.
+        */
+       bus_dma_dmar_set_buswide(dev);
+
        /* Identify chip port we are connected to. */
        val = bus_read_4(sc->conf_res, 0x360);
        sc->port = (val >> ((sc->ntx == 0) ? 8 : 16)) & 0x1f;
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to