summaryrefslogtreecommitdiff
path: root/usr/src/lib/scsi
diff options
context:
space:
mode:
authoreschrock <none@none>2008-08-01 18:36:31 -0700
committereschrock <none@none>2008-08-01 18:36:31 -0700
commitd91236fe104c7ea63142e053b22a39c8a30d304b (patch)
tree27c48e7eefd07ea66ca47f155348ab7bc426f2d4 /usr/src/lib/scsi
parent4b0b31113087116190d06f9dcea72c8c2e59f8d2 (diff)
downloadillumos-joyent-d91236fe104c7ea63142e053b22a39c8a30d304b.tar.gz
PSARC 2008/485 SES Sensors and Enumerator
6720433 SES enumerator should provide controller revision information 6720435 SES enumerator should prefer description over class-description 6720452 SES enumerator should support indicators and sensors 6722807 SES enumerator should work with internal enclosures 6722809 want a way to identify enclosures as internal 6722811 SES enumerator should prefer elements with known status 6723603 x86 xmlgen topo scripts should make use of propmap 6732875 typo in fan-hc-topology.xmlgen 6732879 broken logic in pad_process() --HG-- rename : usr/src/lib/fm/topo/maps/SUNW,Sun-Fire-X4200-M2/Sun-Fire-X4200-M2-hc-topology.xmlgen => usr/src/lib/fm/topo/maps/SUNW,Sun-Fire-X4200-M2/Sun-Fire-X4200-M2-disk-hc-topology.xmlgen rename : usr/src/lib/fm/topo/maps/SUNW,Sun-Fire-X4200-Server/Sun-Fire-X4200-Server-hc-topology.xmlgen => usr/src/lib/fm/topo/maps/SUNW,Sun-Fire-X4200-Server/Sun-Fire-X4200-Server-disk-hc-topology.xmlgen rename : usr/src/lib/fm/topo/maps/SUNW,Sun-Fire-X4500/Sun-Fire-X4500-hc-topology.xmlgen => usr/src/lib/fm/topo/maps/SUNW,Sun-Fire-X4500/Sun-Fire-X4500-disk-hc-topology.xmlgen rename : usr/src/lib/fm/topo/maps/SUNW,Sun-Fire-X4540/Sun-Fire-X4540-hc-topology.xmlgen => usr/src/lib/fm/topo/maps/SUNW,Sun-Fire-X4540/Sun-Fire-X4540-disk-hc-topology.xmlgen
Diffstat (limited to 'usr/src/lib/scsi')
-rw-r--r--usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/Makefile32
-rw-r--r--usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/Makefile.com35
-rw-r--r--usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/amd64/Makefile33
-rw-r--r--usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/common/lsilogic.c65
-rw-r--r--usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/i386/Makefile32
-rw-r--r--usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/sparc/Makefile32
-rw-r--r--usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/sparcv9/Makefile33
-rw-r--r--usr/src/lib/scsi/plugins/ses/Makefile1
-rw-r--r--usr/src/lib/scsi/plugins/ses/libses/common/libses.h7
9 files changed, 270 insertions, 0 deletions
diff --git a/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/Makefile b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/Makefile
new file mode 100644
index 0000000000..b39b55f14b
--- /dev/null
+++ b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/Makefile
@@ -0,0 +1,32 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+#ident "%Z%%M% %I% %E% SMI"
+
+HDRS =
+HDRDIR = common
+PLUGINTYPE = vendor
+
+include ../Makefile.plugin
diff --git a/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/Makefile.com b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/Makefile.com
new file mode 100644
index 0000000000..12b1a6a086
--- /dev/null
+++ b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/Makefile.com
@@ -0,0 +1,35 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+#ident "%Z%%M% %I% %E% SMI"
+
+
+MODULE = LSILOGIC-SASX28-A.0
+SRCS = lsilogic.c
+SRCDIR = ../common
+PLUGINTYPE = vendor
+ALIASES =
+
+include ../../Makefile.lib
diff --git a/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/amd64/Makefile b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/amd64/Makefile
new file mode 100644
index 0000000000..7a0a57a3a2
--- /dev/null
+++ b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/amd64/Makefile
@@ -0,0 +1,33 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+#ident "%Z%%M% %I% %E% SMI"
+
+include ../Makefile.com
+include $(SRC)/Makefile.master.64
+
+install: all $(ROOTPROG64) $(ROOTALIASES64)
+
+include ../../Makefile.targ
diff --git a/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/common/lsilogic.c b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/common/lsilogic.c
new file mode 100644
index 0000000000..1f4a278996
--- /dev/null
+++ b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/common/lsilogic.c
@@ -0,0 +1,65 @@
+/*
+ * CDDL HEADER START
+ *
+ * The contents of this file are subject to the terms of the
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
+ *
+ * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+ * or http://www.opensolaris.org/os/licensing.
+ * See the License for the specific language governing permissions
+ * and limitations under the License.
+ *
+ * When distributing Covered Code, include this CDDL HEADER in each
+ * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+ * If applicable, add the following below this CDDL HEADER, with the
+ * fields enclosed by brackets "[]" replaced with your own identifying
+ * information: Portions Copyright [yyyy] [name of copyright owner]
+ *
+ * CDDL HEADER END
+ */
+
+/*
+ * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Use is subject to license terms.
+ */
+
+#pragma ident "%Z%%M% %I% %E% SMI"
+
+/*
+ * This module represents the expander on the disk backplane for the X4240 and
+ * other Sun platforms. Its purpose is to set a property indicating this is an
+ * internal enclosure.
+ */
+
+#include <scsi/libses.h>
+#include <scsi/libses_plugin.h>
+
+/*ARGSUSED*/
+static int
+lsilogic_parse_node(ses_plugin_t *sp, ses_node_t *np)
+{
+ int nverr;
+ nvlist_t *props;
+
+ if (ses_node_type(np) != SES_NODE_ENCLOSURE)
+ return (0);
+
+ props = ses_node_props(np);
+
+ SES_NV_ADD(boolean_value, nverr, props, LIBSES_EN_PROP_INTERNAL,
+ B_TRUE);
+
+ return (0);
+}
+
+int
+_ses_init(ses_plugin_t *sp)
+{
+ ses_plugin_config_t config = {
+ .spc_node_parse = lsilogic_parse_node
+ };
+
+ return (ses_plugin_register(sp, LIBSES_PLUGIN_VERSION,
+ &config) != 0);
+}
diff --git a/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/i386/Makefile b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/i386/Makefile
new file mode 100644
index 0000000000..1fe3337bbb
--- /dev/null
+++ b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/i386/Makefile
@@ -0,0 +1,32 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+#ident "%Z%%M% %I% %E% SMI"
+
+include ../Makefile.com
+
+install: all $(ROOTPROG) $(ROOTALIASES)
+
+include ../../Makefile.targ
diff --git a/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/sparc/Makefile b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/sparc/Makefile
new file mode 100644
index 0000000000..1fe3337bbb
--- /dev/null
+++ b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/sparc/Makefile
@@ -0,0 +1,32 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+#ident "%Z%%M% %I% %E% SMI"
+
+include ../Makefile.com
+
+install: all $(ROOTPROG) $(ROOTALIASES)
+
+include ../../Makefile.targ
diff --git a/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/sparcv9/Makefile b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/sparcv9/Makefile
new file mode 100644
index 0000000000..7a0a57a3a2
--- /dev/null
+++ b/usr/src/lib/scsi/plugins/ses/LSILOGIC-SASX28-A.0/sparcv9/Makefile
@@ -0,0 +1,33 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+#ident "%Z%%M% %I% %E% SMI"
+
+include ../Makefile.com
+include $(SRC)/Makefile.master.64
+
+install: all $(ROOTPROG64) $(ROOTALIASES64)
+
+include ../../Makefile.targ
diff --git a/usr/src/lib/scsi/plugins/ses/Makefile b/usr/src/lib/scsi/plugins/ses/Makefile
index 37517fbc40..17ba284d5d 100644
--- a/usr/src/lib/scsi/plugins/ses/Makefile
+++ b/usr/src/lib/scsi/plugins/ses/Makefile
@@ -28,6 +28,7 @@
SUBDIRS = \
libses \
ses2 \
+ LSILOGIC-SASX28-A.0 \
SUN-Storage-J4400 \
SUN-Storage-J4500
diff --git a/usr/src/lib/scsi/plugins/ses/libses/common/libses.h b/usr/src/lib/scsi/plugins/ses/libses/common/libses.h
index 081bb94e5e..0895550d4d 100644
--- a/usr/src/lib/scsi/plugins/ses/libses/common/libses.h
+++ b/usr/src/lib/scsi/plugins/ses/libses/common/libses.h
@@ -65,6 +65,13 @@ extern "C" {
*/
#define LIBSES_EN_PROP_CSN "libses-chassis-serial"
+/*
+ * This boolean property identifies a chassis as internal, where the connected
+ * elements are part of a single system chassis and not an external enclosure.
+ * This is used on platforms with a disk backplane that exports a SES target.
+ */
+#define LIBSES_EN_PROP_INTERNAL "libses-internal"
+
#ifdef __cplusplus
}
#endif