diff options
| author | eschrock <none@none> | 2008-08-01 18:36:31 -0700 |
|---|---|---|
| committer | eschrock <none@none> | 2008-08-01 18:36:31 -0700 |
| commit | d91236fe104c7ea63142e053b22a39c8a30d304b (patch) | |
| tree | 27c48e7eefd07ea66ca47f155348ab7bc426f2d4 /usr/src/lib/scsi | |
| parent | 4b0b31113087116190d06f9dcea72c8c2e59f8d2 (diff) | |
| download | illumos-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')
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 |
