Lines Matching defs:this_phy

95  * @param[in] this_phy
102 SCIC_SDS_PHY_T *this_phy,
109 sci_base_object_get_logger(this_phy),
111 "scic_sds_phy_link_layer_initialization(this_phy:0x%x, link_layer_registers:0x%x)\n",
112 this_phy, transport_layer_registers
115 this_phy->transport_layer_registers = transport_layer_registers;
117 SCU_STPTLDARNI_WRITE(this_phy, SCIC_SDS_REMOTE_NODE_CONTEXT_INVALID_INDEX);
120 tl_control = SCU_TLCR_READ(this_phy);
122 SCU_TLCR_WRITE(this_phy, tl_control);
130 * @param[in] this_phy
137 SCIC_SDS_PHY_T *this_phy,
150 sci_base_object_get_logger(this_phy),
152 "scic_sds_phy_link_layer_initialization(this_phy:0x%x, link_layer_registers:0x%x)\n",
153 this_phy, link_layer_registers
156 this_phy->link_layer_registers = link_layer_registers;
162 this_phy,
171 SCU_SAS_TIDNH_WRITE(this_phy, 0xFEDCBA98);
172 SCU_SAS_TIDNL_WRITE(this_phy, this_phy->phy_index);
176 this_phy,
177 this_phy->owning_port->owning_controller->oem_parameters.sds1.phys[
178 this_phy->phy_index].sas_address.sci_format.high
181 this_phy,
182 this_phy->owning_port->owning_controller->oem_parameters.sds1.phys[
183 this_phy->phy_index].sas_address.sci_format.low
187 SCU_SAS_TIPID_WRITE(this_phy, 0x00000000);
188 SCU_SAS_TIPID_WRITE(this_phy, SCU_SAS_TIPID_GEN_VALUE(ID, this_phy->phy_index));
191 phy_configuration = SCU_SAS_PCFG_READ(this_phy);
195 SCU_SAS_PCFG_WRITE(this_phy, phy_configuration);
212 header_version = this_phy->owning_port->owning_controller->
216 this_phy->owning_port->owning_controller->oem_parameters.sds1.controller.ssc_sata_tx_spread_level;
218 this_phy->owning_port->owning_controller->oem_parameters.sds1.controller.ssc_sas_tx_spread_level;
220 this_phy->owning_port->owning_controller->oem_parameters.sds1.controller.ssc_sas_tx_type;
254 this_phy->owning_port->owning_controller,
255 scu_afe_xcvr[this_phy->phy_index].
259 this_phy->owning_port->owning_controller,
260 scu_afe_xcvr[this_phy->phy_index].afe_xcvr_control0,
264 this_phy->owning_port->owning_controller,
265 scu_afe_xcvr[this_phy->phy_index].
269 this_phy->owning_port->owning_controller,
270 scu_afe_xcvr[this_phy->phy_index].afe_tx_ssc_control,
280 this_phy->owning_port->owning_controller,
281 scu_afe_xcvr[this_phy->phy_index].
285 this_phy->owning_port->owning_controller,
286 scu_afe_xcvr[this_phy->phy_index].afe_tx_ssc_control,
290 this_phy,
294 this_phy,
315 SCU_SAS_PHYCAP_WRITE(this_phy, phy_capabilities.u.all);
319 this_phy,
322 this_phy->owning_port->owning_controller->user_parameters.sds1.
323 phys[this_phy->phy_index].notify_enable_spin_up_insertion_frequency
330 this_phy->owning_port->owning_controller->user_parameters.sds1.
331 phys[this_phy->phy_index].in_connection_align_insertion_frequency
336 this_phy->owning_port->owning_controller->user_parameters.sds1.
337 phys[this_phy->phy_index].align_insertion_frequency
340 SCU_SAS_CLKSM_WRITE ( this_phy, clksm_value);
345 scu_link_layer_register_write(this_phy, afe_lookup_table_control, 0x02108421);
348 (this_phy->owning_port->owning_controller->pci_revision == SCIC_SDS_PCI_REVISION_C0)
349 || (this_phy->owning_port->owning_controller->pci_revision == SCIC_SDS_PCI_REVISION_C1)
352 scu_link_layer_register_write(this_phy, afe_lookup_table_control, 0x04210400);
353 scu_link_layer_register_write(this_phy, sas_primitive_timeout, 0x20A7C05);
357 scu_link_layer_register_write(this_phy, afe_lookup_table_control, 0x02108421);
361 scu_link_layer_register_write(this_phy, afe_lookup_table_control, 0x0e739ce7);
366 (U8) this_phy->owning_port->owning_controller->
378 if (this_phy->owning_port->owning_controller->user_parameters.sds1.
379 phys[this_phy->phy_index].max_speed_generation == SCIC_SDS_PARM_GEN3_SPEED)
385 else if (this_phy->owning_port->owning_controller->user_parameters.sds1.
386 phys[this_phy->phy_index].max_speed_generation == SCIC_SDS_PARM_GEN2_SPEED)
406 this_phy, link_layer_control, link_layer_control
410 this_phy,
422 this_phy, phy_timer_timeout_values, phy_timer_timeout_values
431 this_phy,
439 this_phy, link_layer_hang_detection_timeout, 0x00000000
444 scic_sds_phy_get_base_state_machine(this_phy),
462 SCIC_SDS_PHY_T * this_phy = (SCIC_SDS_PHY_T *)cookie;
465 sci_base_object_get_logger(this_phy),
468 this_phy
472 scic_sds_phy_get_starting_substate_machine(this_phy));
475 scic_sds_phy_get_base_state_machine(this_phy),
519 SCIC_SDS_PHY_T *this_phy
523 &this_phy->parent.state_machine_logger,
524 &this_phy->parent.state_machine,
525 &this_phy->parent.parent,
532 &this_phy->starting_substate_machine_logger,
533 &this_phy->starting_substate_machine,
534 &this_phy->parent.parent,
554 SCIC_SDS_PHY_T *this_phy;
562 this_phy = (SCIC_SDS_PHY_T *)the_state_machine->state_machine_owner;
564 if (the_state_machine == &this_phy->parent.state_machine)
568 else if (the_state_machine == &this_phy->starting_substate_machine)
578 sci_base_state_machine_get_state(&this_phy->parent.state_machine);
580 sci_base_state_machine_get_state(&this_phy->starting_substate_machine);
582 this_phy->state_record.state_transition_table[
583 this_phy->state_record.index++] = ( (transition_requestor << 24)
587 this_phy->state_record.index =
588 this_phy->state_record.index & (MAX_STATE_TRANSITION_RECORD - 1);
601 * @param this_phy The phy which is being initialized.
604 SCIC_SDS_PHY_T *this_phy
607 this_phy->state_record.index = 0;
610 &this_phy->state_record.base_state_observer,
612 &this_phy->parent.state_machine.parent
616 &this_phy->state_record.starting_state_observer,
618 &this_phy->starting_substate_machine.parent
626 * @param[in] this_phy
633 SCIC_SDS_PHY_T *this_phy,
641 &this_phy->parent,
647 this_phy->owning_port = owning_port;
648 this_phy->phy_index = phy_index;
649 this_phy->bcn_received_while_port_unassigned = FALSE;
650 this_phy->protocol = SCIC_SDS_PHY_PROTOCOL_UNKNOWN;
651 this_phy->link_layer_registers = NULL;
652 this_phy->max_negotiated_speed = SCI_SAS_NO_LINK_RATE;
653 this_phy->sata_timeout_timer = NULL;
656 memset(&this_phy->phy_type, 0, sizeof(this_phy->phy_type));
659 memset(this_phy->error_counter, 0, sizeof(this_phy->error_counter));
663 &this_phy->starting_substate_machine,
664 &this_phy->parent.parent,
670 scic_sds_phy_initialize_state_logging(this_phy);
674 scic_sds_phy_initialize_state_recording(this_phy);
683 * @param[in] this_phy This parameter specifies the phy for which to
694 SCIC_SDS_PHY_T *this_phy
698 sci_base_object_get_logger(this_phy),
701 this_phy
704 if (scic_sds_port_get_index(this_phy->owning_port) == SCIC_SDS_DUMMY_PORT)
707 return this_phy->owning_port;
713 * @param[in, out] this_phy This parameter specifies the phy for which
718 SCIC_SDS_PHY_T * this_phy,
722 this_phy->owning_port = the_port;
724 if (this_phy->bcn_received_while_port_unassigned)
726 this_phy->bcn_received_while_port_unassigned = FALSE;
727 scic_sds_port_broadcast_change_received(this_phy->owning_port, this_phy);
734 * @param[in] this_phy
740 SCIC_SDS_PHY_T *this_phy,
746 sci_base_object_get_logger(this_phy),
748 "scic_sds_phy_initialize(this_phy:0x%x, link_layer_registers:0x%x)\n",
749 this_phy, link_layer_registers
753 scic_sds_phy_transport_layer_initialization(this_phy, transport_layer_registers);
756 scic_sds_phy_link_layer_initialization(this_phy, link_layer_registers);
761 scic_sds_phy_get_base_state_machine(this_phy),
771 * @param[in] this_phy The phy for which the direct attached device id is to
778 SCIC_SDS_PHY_T * this_phy,
784 SCU_STPTLDARNI_WRITE(this_phy, device_id);
788 tl_control = SCU_TLCR_READ(this_phy);
790 SCU_TLCR_WRITE(this_phy, tl_control);
797 * @param[in,out] this_phy The phy object to be suspended.
802 SCIC_SDS_PHY_T * this_phy
807 scu_sas_pcfg_value = SCU_SAS_PCFG_READ(this_phy);
809 SCU_SAS_PCFG_WRITE(this_phy, scu_sas_pcfg_value);
812 this_phy, SCIC_SDS_REMOTE_NODE_CONTEXT_INVALID_INDEX
820 * @param[in,out] this_phy The phy object to resume.
825 SCIC_SDS_PHY_T * this_phy
830 scu_sas_pcfg_value = SCU_SAS_PCFG_READ(this_phy);
834 SCU_SAS_PCFG_WRITE(this_phy, scu_sas_pcfg_value);
840 * @param[in] this_phy This parameter specifies the phy for which
848 SCIC_SDS_PHY_T *this_phy,
853 sci_base_object_get_logger(this_phy),
855 "scic_sds_phy_get_sas_address(this_phy:0x%x, sas_address:0x%x)\n",
856 this_phy, sas_address
859 sas_address->high = SCU_SAS_TISSAH_READ(this_phy);
860 sas_address->low = SCU_SAS_TISSAL_READ(this_phy);
867 * @param[in] this_phy This parameter specifies the phy for which
875 SCIC_SDS_PHY_T *this_phy,
880 sci_base_object_get_logger(this_phy),
883 this_phy, sas_address
887 = this_phy->phy_type.sas.identify_address_frame_buffer.sas_address.high;
889 = this_phy->phy_type.sas.identify_address_frame_buffer.sas_address.low;
896 * @param[in] this_phy
900 SCIC_SDS_PHY_T *this_phy,
904 U32 tiid_value = SCU_SAS_TIID_READ(this_phy);
927 sci_base_object_get_logger(this_phy),
929 "scic_sds_phy_get_protocols(this_phy:0x%x, protocols:0x%x)\n",
930 this_phy, protocols->u.all
942 * @param[in] this_phy The parameter is the phy object for which the attached
948 SCIC_SDS_PHY_T *this_phy,
953 sci_base_object_get_logger(this_phy),
955 "scic_sds_phy_get_attached_phy_protocols(this_phy:0x%x, protocols:0x%x[0x%x])\n",
956 this_phy, protocols, protocols->u.all
961 if (this_phy->protocol == SCIC_SDS_PHY_PROTOCOL_SAS)
964 this_phy->phy_type.sas.identify_address_frame_buffer.protocols.u.all;
966 else if (this_phy->protocol == SCIC_SDS_PHY_PROTOCOL_SATA)
978 * @param[in] this_phy This parameter specifies the phy whose resource is to
983 SCIC_SDS_PHY_T * this_phy
987 sci_base_object_get_logger(this_phy),
990 controller, this_phy
994 if (this_phy->sata_timeout_timer != NULL)
996 scic_cb_timer_destroy(controller, this_phy->sata_timeout_timer);
997 this_phy->sata_timeout_timer = NULL;
1011 * @param[in] this_phy
1016 SCIC_SDS_PHY_T * this_phy
1020 sci_base_object_get_logger(this_phy),
1022 "scic_sds_phy_reset(this_phy:0x%08x)\n",
1023 this_phy
1026 return this_phy->state_handlers->parent.reset_handler(
1027 &this_phy->parent
1034 * @param[in] this_phy
1040 SCIC_SDS_PHY_T *this_phy,
1045 sci_base_object_get_logger(this_phy),
1047 "scic_sds_phy_event_handler(this_phy:0x%08x, event_code:%x)\n",
1048 this_phy, event_code
1051 return this_phy->state_handlers->event_handler(this_phy, event_code);
1057 * @param[in] this_phy
1063 SCIC_SDS_PHY_T *this_phy,
1068 sci_base_object_get_logger(this_phy),
1070 "scic_sds_phy_frame_handler(this_phy:0x%08x, frame_index:%d)\n",
1071 this_phy, frame_index
1074 return this_phy->state_handlers->frame_handler(this_phy, frame_index);
1080 * @param[in] this_phy
1085 SCIC_SDS_PHY_T *this_phy
1089 sci_base_object_get_logger(this_phy),
1091 "scic_sds_phy_consume_power_handler(this_phy:0x%08x)\n",
1092 this_phy
1095 return this_phy->state_handlers->consume_power_handler(this_phy);
1107 SCIC_SDS_PHY_T *this_phy;
1110 this_phy = (SCIC_SDS_PHY_T *)phy;
1113 sci_base_object_get_logger(this_phy),
1116 this_phy, properties
1128 this_phy->owning_port->owning_controller->user_parameters.sds1.
1129 phys[this_phy->phy_index].max_speed_generation;
1131 properties->negotiated_link_rate = this_phy->max_negotiated_speed;
1140 properties->index = this_phy->phy_index;
1141 properties->owning_port = scic_sds_phy_get_port(this_phy);
1143 scic_sds_phy_get_protocols(this_phy, &properties->transmit_iaf.protocols);
1146 this_phy->owning_port->owning_controller->oem_parameters.sds1.
1147 phys[this_phy->phy_index].sas_address.sci_format.high;
1150 this_phy->owning_port->owning_controller->oem_parameters.sds1.
1151 phys[this_phy->phy_index].sas_address.sci_format.low;
1163 SCIC_SDS_PHY_T *this_phy;
1164 this_phy = (SCIC_SDS_PHY_T *)phy;
1167 sci_base_object_get_logger(this_phy),
1170 this_phy, properties
1173 if (this_phy->protocol == SCIC_SDS_PHY_PROTOCOL_SAS)
1177 &this_phy->phy_type.sas.identify_address_frame_buffer,
1182 = SCU_SAS_RECPHYCAP_READ(this_phy);
1197 SCIC_SDS_PHY_T *this_phy;
1198 this_phy = (SCIC_SDS_PHY_T *)phy;
1201 sci_base_object_get_logger(this_phy),
1204 this_phy, properties
1207 if (this_phy->protocol == SCIC_SDS_PHY_PROTOCOL_SATA)
1211 &this_phy->phy_type.sata.signature_fis_buffer,
1232 SCIC_SDS_PHY_T *this_phy;
1233 this_phy = (SCIC_SDS_PHY_T *)phy;
1236 sci_base_object_get_logger(this_phy),
1239 this_phy
1258 SCIC_SDS_PHY_T *this_phy;
1260 this_phy = (SCIC_SDS_PHY_T *)phy;
1263 sci_base_object_get_logger(this_phy),
1266 this_phy, counter_id
1273 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1275 SCU_SAS_ECENCR_WRITE(this_phy, control);
1280 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1282 SCU_SAS_ECENCR_WRITE(this_phy, control);
1287 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1289 SCU_SAS_ECENCR_WRITE(this_phy, control);
1294 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1296 SCU_SAS_ECENCR_WRITE(this_phy, control);
1301 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1303 SCU_SAS_ECENCR_WRITE(this_phy, control);
1308 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1310 SCU_SAS_ECENCR_WRITE(this_phy, control);
1345 SCIC_SDS_PHY_T *this_phy;
1348 this_phy = (SCIC_SDS_PHY_T *)phy;
1351 sci_base_object_get_logger(this_phy),
1354 this_phy, counter_id
1361 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1363 SCU_SAS_ECENCR_WRITE(this_phy, control);
1368 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1370 SCU_SAS_ECENCR_WRITE(this_phy, control);
1375 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1377 SCU_SAS_ECENCR_WRITE(this_phy, control);
1382 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1384 SCU_SAS_ECENCR_WRITE(this_phy, control);
1389 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1391 SCU_SAS_ECENCR_WRITE(this_phy, control);
1396 U32 control = SCU_SAS_ECENCR_READ(this_phy);
1398 SCU_SAS_ECENCR_WRITE(this_phy, control);
1429 SCIC_SDS_PHY_T *this_phy;
1431 this_phy = (SCIC_SDS_PHY_T *)phy;
1434 sci_base_object_get_logger(this_phy),
1437 this_phy, counter_id
1443 *data = scu_link_layer_register_read(this_phy, received_frame_count);
1446 *data = scu_link_layer_register_read(this_phy, transmit_frame_count);
1449 *data = scu_link_layer_register_read(this_phy, received_dword_count);
1452 *data = scu_link_layer_register_read(this_phy, transmit_dword_count);
1455 *data = scu_link_layer_register_read(this_phy, loss_of_sync_error_count);
1458 *data = scu_link_layer_register_read(this_phy, running_disparity_error_count);
1461 *data = scu_link_layer_register_read(this_phy, received_frame_crc_error_count);
1464 *data = this_phy->error_counter[SCU_ERR_CNT_RX_DONE_ACK_NAK_TIMEOUT_INDEX];
1467 *data = this_phy->error_counter[SCU_ERR_CNT_TX_DONE_ACK_NAK_TIMEOUT_INDEX];
1470 *data = this_phy->error_counter[SCU_ERR_CNT_INACTIVITY_TIMER_EXPIRED_INDEX];
1473 *data = this_phy->error_counter[SCU_ERR_CNT_RX_DONE_CREDIT_TIMEOUT_INDEX];
1476 *data = this_phy->error_counter[SCU_ERR_CNT_TX_DONE_CREDIT_TIMEOUT_INDEX];
1479 *data = this_phy->error_counter[SCU_ERR_CNT_RX_CREDIT_BLOCKED_RECEIVED_INDEX];
1482 *data = scu_link_layer_register_read(this_phy, received_short_frame_count);
1485 *data = scu_link_layer_register_read(this_phy, received_frame_without_credit_count);
1488 *data = scu_link_layer_register_read(this_phy, received_frame_after_done_count);
1491 *data = scu_link_layer_register_read(this_phy, phy_reset_problem_count);
1508 SCIC_SDS_PHY_T *this_phy;
1510 this_phy = (SCIC_SDS_PHY_T *)phy;
1513 sci_base_object_get_logger(this_phy),
1516 this_phy, counter_id
1522 scu_link_layer_register_write(this_phy, received_frame_count, 0);
1525 scu_link_layer_register_write(this_phy, transmit_frame_count, 0);
1528 scu_link_layer_register_write(this_phy, received_dword_count, 0);
1531 scu_link_layer_register_write(this_phy, transmit_dword_count, 0);
1534 scu_link_layer_register_write(this_phy, loss_of_sync_error_count, 0);
1537 scu_link_layer_register_write(this_phy, running_disparity_error_count, 0);
1540 scu_link_layer_register_write(this_phy, received_frame_crc_error_count, 0);
1543 this_phy->error_counter[SCU_ERR_CNT_RX_DONE_ACK_NAK_TIMEOUT_INDEX] = 0;
1546 this_phy->error_counter[SCU_ERR_CNT_TX_DONE_ACK_NAK_TIMEOUT_INDEX] = 0;
1549 this_phy->error_counter[SCU_ERR_CNT_INACTIVITY_TIMER_EXPIRED_INDEX] = 0;
1552 this_phy->error_counter[SCU_ERR_CNT_RX_DONE_CREDIT_TIMEOUT_INDEX] = 0;
1555 this_phy->error_counter[SCU_ERR_CNT_TX_DONE_CREDIT_TIMEOUT_INDEX] = 0;
1558 this_phy->error_counter[SCU_ERR_CNT_RX_CREDIT_BLOCKED_RECEIVED_INDEX] = 0;
1561 scu_link_layer_register_write(this_phy, received_short_frame_count, 0);
1564 scu_link_layer_register_write(this_phy, received_frame_without_credit_count, 0);
1567 scu_link_layer_register_write(this_phy, received_frame_after_done_count, 0);
1570 scu_link_layer_register_write(this_phy, phy_reset_problem_count, 0);
1585 SCIC_SDS_PHY_T *this_phy;
1586 this_phy = (SCIC_SDS_PHY_T *)phy;
1589 sci_base_object_get_logger(this_phy),
1591 "scic_phy_stop(this_phy:0x%x)\n",
1592 this_phy
1595 return this_phy->state_handlers->parent.stop_handler(&this_phy->parent);
1602 SCIC_SDS_PHY_T *this_phy;
1603 this_phy = (SCIC_SDS_PHY_T *)phy;
1606 sci_base_object_get_logger(this_phy),
1608 "scic_phy_start(this_phy:0x%x)\n",
1609 this_phy
1612 return this_phy->state_handlers->parent.start_handler(&this_phy->parent);
1637 SCIC_SDS_PHY_T *this_phy;
1638 this_phy = (SCIC_SDS_PHY_T *)phy;
1641 sci_base_object_get_logger(this_phy),
1644 this_phy,
1645 sci_base_state_machine_get_state(&this_phy->parent.state_machine)
1666 SCIC_SDS_PHY_T *this_phy;
1667 this_phy = (SCIC_SDS_PHY_T *)phy;
1670 sci_base_object_get_logger(this_phy),
1673 this_phy,
1674 sci_base_state_machine_get_state(&this_phy->parent.state_machine)
1694 SCIC_SDS_PHY_T *this_phy;
1695 this_phy = (SCIC_SDS_PHY_T *)phy;
1698 sci_base_object_get_logger(this_phy),
1701 this_phy,
1702 sci_base_state_machine_get_state(&this_phy->parent.state_machine)
1722 SCIC_SDS_PHY_T *this_phy;
1723 this_phy = (SCIC_SDS_PHY_T *)phy;
1727 sci_base_object_get_logger(this_phy),
1730 this_phy,
1731 sci_base_state_machine_get_state(&this_phy->parent.state_machine)
1750 SCIC_SDS_PHY_T *this_phy,
1755 sci_base_object_get_logger(this_phy),
1758 this_phy, frame_index,
1759 sci_base_state_machine_get_state(&this_phy->parent.state_machine)
1763 scic_sds_phy_get_controller(this_phy), frame_index);
1781 SCIC_SDS_PHY_T *this_phy,
1786 sci_base_object_get_logger(this_phy),
1789 this_phy, event_code,
1790 sci_base_state_machine_get_state(&this_phy->parent.state_machine)
1807 SCIC_SDS_PHY_T *this_phy
1811 sci_base_object_get_logger(this_phy),
1814 this_phy,
1815 sci_base_state_machine_get_state(&this_phy->parent.state_machine)
1842 SCIC_SDS_PHY_T *this_phy;
1843 this_phy = (SCIC_SDS_PHY_T *)phy;
1848 this_phy->sata_timeout_timer = scic_cb_timer_create(
1849 scic_sds_phy_get_controller(this_phy),
1851 this_phy
1854 if (this_phy->sata_timeout_timer != NULL)
1857 scic_sds_phy_get_base_state_machine(this_phy),
1883 SCIC_SDS_PHY_T *this_phy;
1884 this_phy = (SCIC_SDS_PHY_T *)phy;
1916 SCIC_SDS_PHY_T *this_phy;
1917 this_phy = (SCIC_SDS_PHY_T *)phy;
1920 scic_sds_phy_get_base_state_machine(this_phy),
1925 scic_sds_phy_get_controller(this_phy),
1926 scic_sds_phy_get_port(this_phy),
1927 this_phy
1949 SCIC_SDS_PHY_T * this_phy;
1950 this_phy = (SCIC_SDS_PHY_T *)phy;
1953 scic_sds_phy_get_base_state_machine(this_phy),
1978 SCIC_SDS_PHY_T *this_phy,
1989 scic_sds_phy_get_base_state_machine(this_phy),
1998 if (scic_sds_phy_get_port(this_phy) != SCI_INVALID_HANDLE)
1999 scic_sds_port_broadcast_change_received(this_phy->owning_port, this_phy);
2001 this_phy->bcn_received_while_port_unassigned = TRUE;
2014 this_phy->error_counter[error_counter_index]++;
2021 sci_base_object_get_logger(this_phy),
2024 this_phy, event_code
2038 * @param[in] this_phy This is the SCIC_SDS_PHY object which is receiving the
2047 SCIC_SDS_PHY_T *this_phy,
2058 scic_sds_phy_get_base_state_machine(this_phy),
2067 sci_base_object_get_logger(this_phy),
2070 this_phy, event_code
2168 * @param[in] this_phy This is the SCIC_SDS_PHY object to stop.
2174 SCIC_SDS_PHY_T *this_phy
2181 scu_sas_pcfg_value = SCU_SAS_PCFG_READ(this_phy);
2187 SCU_SAS_PCFG_WRITE(this_phy, scu_sas_pcfg_value);
2190 enable_spinup_value = SCU_SAS_ENSPINUP_READ(this_phy);
2192 SCU_SAS_ENSPINUP_WRITE(this_phy, enable_spinup_value);
2199 * @param[in] this_phy This is the SCIC_SDS_PHY object on which to start the
2204 SCIC_SDS_PHY_T *this_phy
2210 scu_sas_pcfg_value = SCU_SAS_PCFG_READ(this_phy);
2213 SCU_SAS_PCFG_WRITE(this_phy, scu_sas_pcfg_value);
2214 SCU_SAS_PCFG_READ(this_phy);
2218 scu_sas_pcfg_value = SCU_SAS_PCFG_READ(this_phy);
2220 SCU_SAS_PCFG_WRITE(this_phy, scu_sas_pcfg_value);
2221 SCU_SAS_PCFG_READ(this_phy);
2231 * @param[in] this_phy
2235 SCIC_SDS_PHY_T *this_phy
2242 phy_configuration_value = SCU_SAS_PCFG_READ(this_phy);
2245 SCU_SAS_PCFG_WRITE(this_phy, phy_configuration_value);
2250 SCU_SAS_PCFG_WRITE(this_phy, phy_configuration_value);
2273 SCIC_SDS_PHY_T *this_phy;
2274 this_phy = (SCIC_SDS_PHY_T *)object;
2276 scic_sds_phy_set_base_state_handlers(this_phy, SCI_BASE_PHY_STATE_INITIAL);
2296 SCIC_SDS_PHY_T *this_phy;
2297 this_phy = (SCIC_SDS_PHY_T *)object;
2300 scic_sds_phy_set_base_state_handlers(this_phy, SCI_BASE_PHY_STATE_STOPPED);
2302 if (this_phy->sata_timeout_timer != NULL)
2305 scic_sds_phy_get_controller(this_phy),
2306 this_phy->sata_timeout_timer
2309 this_phy->sata_timeout_timer = NULL;
2312 scu_link_layer_stop_protocol_engine(this_phy);
2335 SCIC_SDS_PHY_T *this_phy;
2336 this_phy = (SCIC_SDS_PHY_T *)object;
2338 scic_sds_phy_set_base_state_handlers(this_phy, SCI_BASE_PHY_STATE_STARTING);
2340 scu_link_layer_stop_protocol_engine(this_phy);
2341 scu_link_layer_start_oob(this_phy);
2344 this_phy->protocol = SCIC_SDS_PHY_PROTOCOL_UNKNOWN;
2345 this_phy->bcn_received_while_port_unassigned = FALSE;
2348 sci_base_state_machine_start(&this_phy->starting_substate_machine);
2350 if (this_phy->parent.state_machine.previous_state_id
2354 scic_sds_phy_get_controller(this_phy),
2355 scic_sds_phy_get_port(this_phy),
2356 this_phy
2380 SCIC_SDS_PHY_T *this_phy;
2381 this_phy = (SCIC_SDS_PHY_T *)object;
2383 scic_sds_phy_set_base_state_handlers(this_phy, SCI_BASE_PHY_STATE_READY);
2386 scic_sds_phy_get_controller(this_phy),
2387 scic_sds_phy_get_port(this_phy),
2388 this_phy
2407 SCIC_SDS_PHY_T *this_phy;
2408 this_phy = (SCIC_SDS_PHY_T *)object;
2410 scic_sds_phy_suspend(this_phy);
2429 SCIC_SDS_PHY_T * this_phy;
2430 this_phy = (SCIC_SDS_PHY_T *)object;
2432 scic_sds_phy_set_base_state_handlers(this_phy, SCI_BASE_PHY_STATE_RESETTING);
2437 scic_sds_port_deactivate_phy(this_phy->owning_port, this_phy, FALSE);
2439 if (this_phy->protocol == SCIC_SDS_PHY_PROTOCOL_SAS)
2441 scu_link_layer_tx_hard_reset(this_phy);
2448 &this_phy->parent.state_machine,
2470 SCIC_SDS_PHY_T *this_phy;
2471 this_phy = (SCIC_SDS_PHY_T *)object;
2473 scic_sds_phy_set_base_state_handlers(this_phy, SCI_BASE_PHY_STATE_FINAL);
2528 * @param[in] this_phy The phy object that received SAS PHY DETECTED.
2534 SCIC_SDS_PHY_T * this_phy
2539 phy_control = SCU_SAS_PCFG_READ(this_phy);
2541 SCU_SAS_PCFG_WRITE(this_phy, phy_control);
2544 &this_phy->starting_substate_machine,
2548 this_phy->protocol = SCIC_SDS_PHY_PROTOCOL_SAS;
2557 * @param[in] this_phy The phy object that received a SATA SPINUP HOLD event
2563 SCIC_SDS_PHY_T * this_phy
2567 &this_phy->starting_substate_machine,
2571 this_phy->protocol = SCIC_SDS_PHY_PROTOCOL_SATA;
2578 * @param[in,out] this_phy This parameter specifies the phy object for which
2589 SCIC_SDS_PHY_T * this_phy,
2594 this_phy->max_negotiated_speed = max_link_rate;
2597 scic_sds_phy_get_starting_substate_machine(this_phy), next_state
2605 * @param[in] this_phy The SCIC_SDS_PHY object to restart.
2610 SCIC_SDS_PHY_T *this_phy
2615 scic_sds_phy_get_starting_substate_machine(this_phy)
2620 scic_sds_phy_get_base_state_machine(this_phy),
2635 SCIC_SDS_PHY_T *this_phy;
2636 this_phy = (SCIC_SDS_PHY_T *)phy;
2639 &this_phy->starting_substate_machine
2672 SCIC_SDS_PHY_T *this_phy,
2681 scic_sds_phy_start_sas_link_training(this_phy);
2682 this_phy->is_in_link_training = TRUE;
2686 scic_sds_phy_start_sata_link_training(this_phy);
2687 this_phy->is_in_link_training = TRUE;
2692 sci_base_object_get_logger(this_phy),
2726 SCIC_SDS_PHY_T *this_phy,
2742 this_phy, SCI_SAS_150_GB, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_IAF_UF
2749 this_phy, SCI_SAS_300_GB, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_IAF_UF
2756 this_phy, SCI_SAS_600_GB, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_IAF_UF
2763 scic_sds_phy_start_sata_link_training(this_phy);
2768 scic_sds_phy_restart_starting_state(this_phy);
2773 sci_base_object_get_logger(this_phy),
2807 SCIC_SDS_PHY_T *this_phy,
2817 scic_sds_phy_start_sas_link_training(this_phy);
2823 scic_sds_phy_start_sata_link_training(this_phy);
2830 scic_sds_phy_restart_starting_state(this_phy);
2835 sci_base_object_get_logger(this_phy),
2865 SCIC_SDS_PHY_T *this_phy,
2875 scic_sds_phy_restart_starting_state(this_phy);
2880 sci_base_object_get_logger(this_phy),
2911 SCIC_SDS_PHY_T *this_phy,
2921 scic_sds_phy_restart_starting_state(this_phy);
2931 scic_sds_phy_start_sas_link_training(this_phy);
2936 sci_base_object_get_logger(this_phy),
2968 SCIC_SDS_PHY_T *this_phy,
2978 scic_sds_phy_restart_starting_state(this_phy);
2987 this_phy->protocol = SCIC_SDS_PHY_PROTOCOL_SATA;
2991 scic_sds_phy_get_starting_substate_machine(this_phy),
2999 scic_sds_phy_start_sas_link_training(this_phy);
3004 sci_base_object_get_logger(this_phy),
3038 SCIC_SDS_PHY_T *this_phy,
3054 this_phy,
3063 this_phy,
3072 this_phy,
3080 scic_sds_phy_restart_starting_state(this_phy);
3086 scic_sds_phy_start_sas_link_training(this_phy);
3091 sci_base_object_get_logger(this_phy),
3125 SCIC_SDS_PHY_T *this_phy,
3136 scic_sds_phy_get_starting_substate_machine(this_phy),
3143 scic_sds_phy_restart_starting_state(this_phy);
3148 sci_base_object_get_logger(this_phy),
3187 SCIC_SDS_PHY_T *this_phy,
3196 &(scic_sds_phy_get_controller(this_phy)->uf_control),
3219 &this_phy->phy_type.sas.identify_address_frame_buffer,
3229 scic_sds_phy_get_starting_substate_machine(this_phy),
3237 scic_sds_phy_get_starting_substate_machine(this_phy),
3247 sci_base_object_get_logger(this_phy),
3256 scic_sds_phy_get_controller(this_phy), frame_index
3284 SCIC_SDS_PHY_T *this_phy,
3294 &(scic_sds_phy_get_controller(this_phy)->uf_control),
3311 &(scic_sds_phy_get_controller(this_phy)->uf_control),
3317 &this_phy->phy_type.sata.signature_fis_buffer,
3324 scic_sds_phy_get_starting_substate_machine(this_phy),
3333 sci_base_object_get_logger(this_phy),
3342 scic_sds_phy_get_controller(this_phy), frame_index
3367 SCIC_SDS_PHY_T *this_phy
3372 enable_spinup = SCU_SAS_ENSPINUP_READ(this_phy);
3374 SCU_SAS_ENSPINUP_WRITE(this_phy, enable_spinup);
3378 scic_sds_phy_get_starting_substate_machine(this_phy),
3399 SCIC_SDS_PHY_T *this_phy
3405 scu_sas_pcfg_value = SCU_SAS_PCFG_READ(this_phy);
3409 SCU_SAS_PCFG_WRITE(this_phy, scu_sas_pcfg_value);
3414 SCU_SAS_PCFG_WRITE(this_phy, scu_sas_pcfg_value);
3418 scic_sds_phy_get_starting_substate_machine(this_phy),
3582 SCIC_SDS_PHY_T *this_phy;
3583 this_phy = (SCIC_SDS_PHY_T *)object;
3586 this_phy, SCIC_SDS_PHY_STARTING_SUBSTATE_INITIAL);
3590 scic_sds_phy_get_starting_substate_machine(this_phy),
3610 SCIC_SDS_PHY_T *this_phy;
3611 this_phy = (SCIC_SDS_PHY_T *)object;
3614 this_phy, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_OSSP_EN
3633 SCIC_SDS_PHY_T *this_phy;
3634 this_phy = (SCIC_SDS_PHY_T *)object;
3637 this_phy, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_SAS_SPEED_EN
3656 SCIC_SDS_PHY_T *this_phy;
3657 this_phy = (SCIC_SDS_PHY_T *)object;
3660 this_phy, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_IAF_UF
3680 SCIC_SDS_PHY_T *this_phy;
3681 this_phy = (SCIC_SDS_PHY_T *)object;
3684 this_phy, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_SAS_POWER
3688 scic_sds_phy_get_controller(this_phy),
3689 this_phy
3708 SCIC_SDS_PHY_T *this_phy;
3709 this_phy = (SCIC_SDS_PHY_T *)object;
3712 scic_sds_phy_get_controller(this_phy), this_phy
3732 SCIC_SDS_PHY_T *this_phy;
3733 this_phy = (SCIC_SDS_PHY_T *)object;
3736 this_phy, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_SATA_POWER
3740 scic_sds_phy_get_controller(this_phy),
3741 this_phy
3760 SCIC_SDS_PHY_T *this_phy;
3761 this_phy = (SCIC_SDS_PHY_T *)object;
3764 scic_sds_phy_get_controller(this_phy),
3765 this_phy
3784 SCIC_SDS_PHY_T *this_phy;
3785 this_phy = (SCIC_SDS_PHY_T *)object;
3788 this_phy, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_SATA_PHY_EN
3792 scic_sds_phy_get_controller(this_phy),
3793 this_phy->sata_timeout_timer,
3814 SCIC_SDS_PHY_T *this_phy;
3815 this_phy = (SCIC_SDS_PHY_T *)object;
3818 scic_sds_phy_get_controller(this_phy),
3819 this_phy->sata_timeout_timer
3838 SCIC_SDS_PHY_T *this_phy;
3839 this_phy = (SCIC_SDS_PHY_T *)object;
3842 this_phy, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_SATA_SPEED_EN
3846 scic_sds_phy_get_controller(this_phy),
3847 this_phy->sata_timeout_timer,
3868 SCIC_SDS_PHY_T *this_phy;
3869 this_phy = (SCIC_SDS_PHY_T *)object;
3872 scic_sds_phy_get_controller(this_phy),
3873 this_phy->sata_timeout_timer
3894 SCIC_SDS_PHY_T * this_phy;
3896 this_phy = (SCIC_SDS_PHY_T *)object;
3899 this_phy, SCIC_SDS_PHY_STARTING_SUBSTATE_AWAIT_SIG_FIS_UF
3903 this_phy->owning_port,
3904 this_phy
3912 scic_sds_phy_resume(this_phy);
3915 scic_sds_phy_get_controller(this_phy),
3916 this_phy->sata_timeout_timer,
3922 this_phy->is_in_link_training = FALSE;
3941 SCIC_SDS_PHY_T *this_phy;
3942 this_phy = (SCIC_SDS_PHY_T *)object;
3945 scic_sds_phy_get_controller(this_phy),
3946 this_phy->sata_timeout_timer
3966 SCIC_SDS_PHY_T *this_phy;
3967 this_phy = (SCIC_SDS_PHY_T *)object;
3970 this_phy, SCIC_SDS_PHY_STARTING_SUBSTATE_FINAL
3976 scic_sds_phy_get_base_state_machine(this_phy),