Author: jhibbits
Date: Sat May 19 04:01:15 2018
New Revision: 333836
URL: https://svnweb.freebsd.org/changeset/base/333836

Log:
  powerpc64: Add OPAL definitions
  
  Summary:
  Add additional OPAL PCI definitions and expand the code to use them in order 
to
  ease the OPAL interface process for new comers.
  
  These definitions came directly from the OPAL code and they are the same for
  both PHB3 (POWER8) and PHB4 (POWER9).
  
  Submitted by: Breno Leitao
  Differential Revision: https://reviews.freebsd.org/D15432

Modified:
  head/sys/powerpc/powernv/opal.h
  head/sys/powerpc/powernv/opal_pci.c

Modified: head/sys/powerpc/powernv/opal.h
==============================================================================
--- head/sys/powerpc/powernv/opal.h     Sat May 19 03:58:40 2018        
(r333835)
+++ head/sys/powerpc/powernv/opal.h     Sat May 19 04:01:15 2018        
(r333836)
@@ -79,6 +79,20 @@ int opal_call(uint64_t token, ...);
 #define        OPAL_UNMAP_PE                   0
 #define OPAL_MAP_PE                    1
 
+#define        OPAL_PCI_BUS_ANY                0
+#define        OPAL_PCI_BUS_3BITS              2
+#define        OPAL_PCI_BUS_4BITS              3
+#define        OPAL_PCI_BUS_5BITS              4
+#define        OPAL_PCI_BUS_6BITS              5
+#define        OPAL_PCI_BUS_7BITS              6
+#define        OPAL_PCI_BUS_ALL                7 /* Match bus number exactly */
+
+#define        OPAL_IGNORE_RID_DEVICE_NUMBER   0
+#define        OPAL_COMPARE_RID_DEVICE_NUMBER  1
+
+#define        OPAL_IGNORE_RID_FUNC_NUMBER     0
+#define        OPAL_COMPARE_RID_FUNC_NUMBER    1
+
 #define        OPAL_SUCCESS                    0
 #define        OPAL_PARAMETER                  -1
 #define        OPAL_BUSY                       -2

Modified: head/sys/powerpc/powernv/opal_pci.c
==============================================================================
--- head/sys/powerpc/powernv/opal_pci.c Sat May 19 03:58:40 2018        
(r333835)
+++ head/sys/powerpc/powernv/opal_pci.c Sat May 19 04:01:15 2018        
(r333836)
@@ -254,8 +254,8 @@ opalpci_attach(device_t dev)
         * such time as we start wanting to do things like bhyve.
         */
        err = opal_call(OPAL_PCI_SET_PE, sc->phb_id, OPAL_PCI_DEFAULT_PE,
-           0, 0, 0, 0, /* All devices */
-           OPAL_MAP_PE);
+           0, OPAL_PCI_BUS_ANY, OPAL_IGNORE_RID_DEVICE_NUMBER,
+           OPAL_IGNORE_RID_FUNC_NUMBER, OPAL_MAP_PE);
        if (err != 0) {
                device_printf(dev, "PE mapping failed: %d\n", err);
                return (ENXIO);
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to