| James Bottomley | d6159c1 | 2006-03-27 16:45:34 -0600 | [diff] [blame] | 1 | #ifndef _SCSI_SAS_INTERNAL_H | 
|  | 2 | #define _SCSI_SAS_INTERNAL_H | 
|  | 3 |  | 
|  | 4 | #define SAS_HOST_ATTRS		0 | 
| James Bottomley | 65c92b0 | 2006-06-28 12:22:50 -0400 | [diff] [blame] | 5 | #define SAS_PHY_ATTRS		17 | 
|  | 6 | #define SAS_PORT_ATTRS		1 | 
| James Bottomley | d6159c1 | 2006-03-27 16:45:34 -0600 | [diff] [blame] | 7 | #define SAS_RPORT_ATTRS		7 | 
|  | 8 | #define SAS_END_DEV_ATTRS	3 | 
|  | 9 | #define SAS_EXPANDER_ATTRS	7 | 
|  | 10 |  | 
|  | 11 | struct sas_internal { | 
|  | 12 | struct scsi_transport_template t; | 
|  | 13 | struct sas_function_template *f; | 
|  | 14 | struct sas_domain_function_template *dft; | 
|  | 15 |  | 
| Tony Jones | ee959b0 | 2008-02-22 00:13:36 +0100 | [diff] [blame] | 16 | struct device_attribute private_host_attrs[SAS_HOST_ATTRS]; | 
|  | 17 | struct device_attribute private_phy_attrs[SAS_PHY_ATTRS]; | 
|  | 18 | struct device_attribute private_port_attrs[SAS_PORT_ATTRS]; | 
|  | 19 | struct device_attribute private_rphy_attrs[SAS_RPORT_ATTRS]; | 
|  | 20 | struct device_attribute private_end_dev_attrs[SAS_END_DEV_ATTRS]; | 
|  | 21 | struct device_attribute private_expander_attrs[SAS_EXPANDER_ATTRS]; | 
| James Bottomley | d6159c1 | 2006-03-27 16:45:34 -0600 | [diff] [blame] | 22 |  | 
|  | 23 | struct transport_container phy_attr_cont; | 
| James Bottomley | 65c92b0 | 2006-06-28 12:22:50 -0400 | [diff] [blame] | 24 | struct transport_container port_attr_cont; | 
| James Bottomley | d6159c1 | 2006-03-27 16:45:34 -0600 | [diff] [blame] | 25 | struct transport_container rphy_attr_cont; | 
|  | 26 | struct transport_container end_dev_attr_cont; | 
|  | 27 | struct transport_container expander_attr_cont; | 
|  | 28 |  | 
|  | 29 | /* | 
|  | 30 | * The array of null terminated pointers to attributes | 
|  | 31 | * needed by scsi_sysfs.c | 
|  | 32 | */ | 
| Tony Jones | ee959b0 | 2008-02-22 00:13:36 +0100 | [diff] [blame] | 33 | struct device_attribute *host_attrs[SAS_HOST_ATTRS + 1]; | 
|  | 34 | struct device_attribute *phy_attrs[SAS_PHY_ATTRS + 1]; | 
|  | 35 | struct device_attribute *port_attrs[SAS_PORT_ATTRS + 1]; | 
|  | 36 | struct device_attribute *rphy_attrs[SAS_RPORT_ATTRS + 1]; | 
|  | 37 | struct device_attribute *end_dev_attrs[SAS_END_DEV_ATTRS + 1]; | 
|  | 38 | struct device_attribute *expander_attrs[SAS_EXPANDER_ATTRS + 1]; | 
| James Bottomley | d6159c1 | 2006-03-27 16:45:34 -0600 | [diff] [blame] | 39 | }; | 
|  | 40 | #define to_sas_internal(tmpl)	container_of(tmpl, struct sas_internal, t) | 
|  | 41 |  | 
|  | 42 | #endif |