[SCSI] expose sas internal class for the domain transport
authorJames Bottomley <James.Bottomley@steeleye.com>
Mon, 27 Mar 2006 22:45:34 +0000 (16:45 -0600)
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>
Thu, 13 Apr 2006 15:13:27 +0000 (10:13 -0500)
necessary to make the domain class use the internal structures

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/scsi_sas_internal.h [new file with mode: 0644]
drivers/scsi/scsi_transport_sas.c

diff --git a/drivers/scsi/scsi_sas_internal.h b/drivers/scsi/scsi_sas_internal.h
new file mode 100644 (file)
index 0000000..d76e6e3
--- /dev/null
@@ -0,0 +1,38 @@
+#ifndef _SCSI_SAS_INTERNAL_H
+#define _SCSI_SAS_INTERNAL_H
+
+#define SAS_HOST_ATTRS         0
+#define SAS_PORT_ATTRS         17
+#define SAS_RPORT_ATTRS                7
+#define SAS_END_DEV_ATTRS      3
+#define SAS_EXPANDER_ATTRS     7
+
+struct sas_internal {
+       struct scsi_transport_template t;
+       struct sas_function_template *f;
+       struct sas_domain_function_template *dft;
+
+       struct class_device_attribute private_host_attrs[SAS_HOST_ATTRS];
+       struct class_device_attribute private_phy_attrs[SAS_PORT_ATTRS];
+       struct class_device_attribute private_rphy_attrs[SAS_RPORT_ATTRS];
+       struct class_device_attribute private_end_dev_attrs[SAS_END_DEV_ATTRS];
+       struct class_device_attribute private_expander_attrs[SAS_EXPANDER_ATTRS];
+
+       struct transport_container phy_attr_cont;
+       struct transport_container rphy_attr_cont;
+       struct transport_container end_dev_attr_cont;
+       struct transport_container expander_attr_cont;
+
+       /*
+        * The array of null terminated pointers to attributes
+        * needed by scsi_sysfs.c
+        */
+       struct class_device_attribute *host_attrs[SAS_HOST_ATTRS + 1];
+       struct class_device_attribute *phy_attrs[SAS_PORT_ATTRS + 1];
+       struct class_device_attribute *rphy_attrs[SAS_RPORT_ATTRS + 1];
+       struct class_device_attribute *end_dev_attrs[SAS_END_DEV_ATTRS + 1];
+       struct class_device_attribute *expander_attrs[SAS_EXPANDER_ATTRS + 1];
+};
+#define to_sas_internal(tmpl)  container_of(tmpl, struct sas_internal, t)
+
+#endif
index f6f7fec..2c96fc5 100644 (file)
 #include <scsi/scsi_transport.h>
 #include <scsi/scsi_transport_sas.h>
 
-
-#define SAS_HOST_ATTRS         0
-#define SAS_PORT_ATTRS         17
-#define SAS_RPORT_ATTRS                7
-#define SAS_END_DEV_ATTRS      3
-#define SAS_EXPANDER_ATTRS     7
-
-struct sas_internal {
-       struct scsi_transport_template t;
-       struct sas_function_template *f;
-
-       struct class_device_attribute private_host_attrs[SAS_HOST_ATTRS];
-       struct class_device_attribute private_phy_attrs[SAS_PORT_ATTRS];
-       struct class_device_attribute private_rphy_attrs[SAS_RPORT_ATTRS];
-       struct class_device_attribute private_end_dev_attrs[SAS_END_DEV_ATTRS];
-       struct class_device_attribute private_expander_attrs[SAS_EXPANDER_ATTRS];
-
-       struct transport_container phy_attr_cont;
-       struct transport_container rphy_attr_cont;
-       struct transport_container end_dev_attr_cont;
-       struct transport_container expander_attr_cont;
-
-       /*
-        * The array of null terminated pointers to attributes
-        * needed by scsi_sysfs.c
-        */
-       struct class_device_attribute *host_attrs[SAS_HOST_ATTRS + 1];
-       struct class_device_attribute *phy_attrs[SAS_PORT_ATTRS + 1];
-       struct class_device_attribute *rphy_attrs[SAS_RPORT_ATTRS + 1];
-       struct class_device_attribute *end_dev_attrs[SAS_END_DEV_ATTRS + 1];
-       struct class_device_attribute *expander_attrs[SAS_EXPANDER_ATTRS + 1];
-};
-#define to_sas_internal(tmpl)  container_of(tmpl, struct sas_internal, t)
-
+#include "scsi_sas_internal.h"
 struct sas_host_attrs {
        struct list_head rphy_list;
        struct mutex lock;