)
/**
- * scic_sds_remote_device_get_port_index() -
- *
- * This macro returns the port index for the devices owning port
- */
-#define scic_sds_remote_device_get_port_index(sci_dev) \
- (scic_sds_port_get_index(scic_sds_remote_device_get_port(sci_dev)))
-
-/**
* scic_sds_remote_device_get_index() -
*
* This macro returns the remote node index for this device object
#define scic_sds_remote_device_build_command_context(device, command) \
((command) \
| (scic_sds_remote_device_get_controller_peg((device)) << SCU_CONTEXT_COMMAND_PROTOCOL_ENGINE_GROUP_SHIFT) \
- | (scic_sds_remote_device_get_port_index((device)) << SCU_CONTEXT_COMMAND_LOGICAL_PORT_SHIFT) \
+ | ((device)->owning_port->physical_port_index << SCU_CONTEXT_COMMAND_LOGICAL_PORT_SHIFT) \
| (scic_sds_remote_device_get_index((device))) \
)
{
struct scic_sds_remote_device *sci_dev = rnc_to_dev(sci_rnc);
struct domain_device *dev = sci_dev_to_domain(sci_dev);
+ int rni = sci_rnc->remote_node_index;
union scu_remote_node_context *rnc;
struct scic_sds_controller *scic;
__le64 sas_addr;
scic = scic_sds_remote_device_get_controller(sci_dev);
-
- rnc = scic_sds_controller_get_remote_node_context_buffer(
- scic, sci_rnc->remote_node_index);
+ rnc = scic_sds_controller_get_remote_node_context_buffer(scic, rni);
memset(rnc, 0, sizeof(union scu_remote_node_context)
* scic_sds_remote_device_node_count(sci_dev));
- rnc->ssp.remote_node_index = sci_rnc->remote_node_index;
+ rnc->ssp.remote_node_index = rni;
rnc->ssp.remote_node_port_width = sci_dev->device_port_width;
- rnc->ssp.logical_port_index =
- scic_sds_remote_device_get_port_index(sci_dev);
+ rnc->ssp.logical_port_index = sci_dev->owning_port->physical_port_index;
/* sas address is __be64, context ram format is __le64 */
sas_addr = cpu_to_le64(SAS_ADDR(dev->sas_addr));