Print this page
4018 mpt_sas: allow physical topology enumeration in libtopo
4019 mpt_sas: expose LED controls to libtopo
Reviewed by: Keith Wesolowski <keith.wesolowski@joyent.com>
Reviewed by: Hans Rosenfeld <hans.rosenfeld@nexenta.com>
Reviewed by: Albert Lee <trisk@nexenta.com>
Approved by: Albert Lee <trisk@nexenta.com>


   4  * The contents of this file are subject to the terms of the
   5  * Common Development and Distribution License (the "License").
   6  * You may not use this file except in compliance with the License.
   7  *
   8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.

  24  */
  25 
  26 #ifndef _TOPO_HC_H
  27 #define _TOPO_HC_H
  28 
  29 #ifdef  __cplusplus
  30 extern "C" {
  31 #endif
  32 
  33 /*
  34  * Allowable hardware component names for hc FMRIs
  35  */
  36 #define BANK            "bank"
  37 #define BAY             "bay"
  38 #define BLADE           "blade"
  39 #define BRANCH          "branch"
  40 #define CMP             "CMP"
  41 #define CENTERPLANE     "centerplane"
  42 #define CHASSIS         "chassis"
  43 #define CHIP            "chip"


  98 #define TOPO_PGROUP_IO          "io"
  99 #define TOPO_IO_DEVTYPE         "devtype"
 100 #define TOPO_IO_DRIVER          "driver"
 101 #define TOPO_IO_MODULE          "module"
 102 #define TOPO_IO_DEV             "dev"
 103 #define TOPO_IO_DEVID           "devid"
 104 #define TOPO_IO_DEV_PATH        "devfs-path"
 105 #define TOPO_IO_AP_PATH         "ap-path"
 106 #define TOPO_IO_PHYS_PATH       "phys-path"
 107 
 108 #define TOPO_PGROUP_PCI         "pci"
 109 #define TOPO_PCI_VENDID         "vendor-id"
 110 #define TOPO_PCI_DEVID          "device-id"
 111 #define TOPO_PCI_EXCAP          "extended-capabilities"
 112 #define TOPO_PCI_BDF            "BDF"
 113 #define TOPO_PCI_CLASS          "class-code"
 114 #define TOPO_PCI_AADDR          "assigned-addresses"
 115 
 116 #define TOPO_PGROUP_BINDING     "binding"
 117 #define TOPO_BINDING_OCCUPANT   "occupant-path"




 118 
 119 #define TOPO_PGROUP_STORAGE     "storage"
 120 #define TOPO_STORAGE_INITIATOR_PORT     "initiator-port"
 121 #define TOPO_STORAGE_INITIATOR_PORT_PM  "initiator-port-pm"
 122 #define TOPO_STORAGE_TARGET_PORT        "target-port"
 123 #define TOPO_STORAGE_TARGET_PORT_L0ID   "target-port-l0id"
 124 #define TOPO_STORAGE_TARGET_PORT_L0IDS  "target-port-l0ids"
 125 #define TOPO_STORAGE_ATTACHED_PORT      "attached-port"
 126 #define TOPO_STORAGE_TARGET_PORT_PM     "target-port-pm"
 127 #define TOPO_STORAGE_ATTACHED_PORT_PM   "attached-port-pm"
 128 #define TOPO_STORAGE_DEVID              "devid"
 129 #define TOPO_STORAGE_LUN64              "lun64"
 130 #define TOPO_STORAGE_DEVICE_TYPE        "inquiry-device-type"
 131 #define TOPO_STORAGE_MANUFACTURER       "manufacturer"
 132 #define TOPO_STORAGE_MODEL              "model"
 133 #define TOPO_STORAGE_FIRMWARE_REV       "firmware-revision"
 134 #define TOPO_STORAGE_SAS_PHY_MASK       "receptacle-pm"
 135 #define TOPO_STORAGE_SAS_CONNECTOR_TYPE "sas-connector-type"
 136 
 137 #define TOPO_PGROUP_SES         "ses"




   4  * The contents of this file are subject to the terms of the
   5  * Common Development and Distribution License (the "License").
   6  * You may not use this file except in compliance with the License.
   7  *
   8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
  24  * Copyright (c) 2013, Joyent, Inc. All rights reserved.
  25  */
  26 
  27 #ifndef _TOPO_HC_H
  28 #define _TOPO_HC_H
  29 
  30 #ifdef  __cplusplus
  31 extern "C" {
  32 #endif
  33 
  34 /*
  35  * Allowable hardware component names for hc FMRIs
  36  */
  37 #define BANK            "bank"
  38 #define BAY             "bay"
  39 #define BLADE           "blade"
  40 #define BRANCH          "branch"
  41 #define CMP             "CMP"
  42 #define CENTERPLANE     "centerplane"
  43 #define CHASSIS         "chassis"
  44 #define CHIP            "chip"


  99 #define TOPO_PGROUP_IO          "io"
 100 #define TOPO_IO_DEVTYPE         "devtype"
 101 #define TOPO_IO_DRIVER          "driver"
 102 #define TOPO_IO_MODULE          "module"
 103 #define TOPO_IO_DEV             "dev"
 104 #define TOPO_IO_DEVID           "devid"
 105 #define TOPO_IO_DEV_PATH        "devfs-path"
 106 #define TOPO_IO_AP_PATH         "ap-path"
 107 #define TOPO_IO_PHYS_PATH       "phys-path"
 108 
 109 #define TOPO_PGROUP_PCI         "pci"
 110 #define TOPO_PCI_VENDID         "vendor-id"
 111 #define TOPO_PCI_DEVID          "device-id"
 112 #define TOPO_PCI_EXCAP          "extended-capabilities"
 113 #define TOPO_PCI_BDF            "BDF"
 114 #define TOPO_PCI_CLASS          "class-code"
 115 #define TOPO_PCI_AADDR          "assigned-addresses"
 116 
 117 #define TOPO_PGROUP_BINDING     "binding"
 118 #define TOPO_BINDING_OCCUPANT   "occupant-path"
 119 #define TOPO_BINDING_DRIVER     "driver"
 120 #define TOPO_BINDING_DEVCTL     "devctl"
 121 #define TOPO_BINDING_ENCLOSURE  "enclosure"
 122 #define TOPO_BINDING_SLOT       "slot"
 123 
 124 #define TOPO_PGROUP_STORAGE     "storage"
 125 #define TOPO_STORAGE_INITIATOR_PORT     "initiator-port"
 126 #define TOPO_STORAGE_INITIATOR_PORT_PM  "initiator-port-pm"
 127 #define TOPO_STORAGE_TARGET_PORT        "target-port"
 128 #define TOPO_STORAGE_TARGET_PORT_L0ID   "target-port-l0id"
 129 #define TOPO_STORAGE_TARGET_PORT_L0IDS  "target-port-l0ids"
 130 #define TOPO_STORAGE_ATTACHED_PORT      "attached-port"
 131 #define TOPO_STORAGE_TARGET_PORT_PM     "target-port-pm"
 132 #define TOPO_STORAGE_ATTACHED_PORT_PM   "attached-port-pm"
 133 #define TOPO_STORAGE_DEVID              "devid"
 134 #define TOPO_STORAGE_LUN64              "lun64"
 135 #define TOPO_STORAGE_DEVICE_TYPE        "inquiry-device-type"
 136 #define TOPO_STORAGE_MANUFACTURER       "manufacturer"
 137 #define TOPO_STORAGE_MODEL              "model"
 138 #define TOPO_STORAGE_FIRMWARE_REV       "firmware-revision"
 139 #define TOPO_STORAGE_SAS_PHY_MASK       "receptacle-pm"
 140 #define TOPO_STORAGE_SAS_CONNECTOR_TYPE "sas-connector-type"
 141 
 142 #define TOPO_PGROUP_SES         "ses"