FreeBSD/sys/dev/isci/scil/scic_sds_controller.c
/**
 * This method will reset the controller hardware.
 *
 * @param[in] this_controller The controller that is to be reset.
 */
This method will reset the controller hardware.
@param[in] this_controller The controller that is to be reset.
This method will reset the controller hardware . @param [ in ] this_controller The controller that is to be reset .
void scic_sds_controller_reset_hardware(
   SCIC_SDS_CONTROLLER_T * this_controller
)
{
   scic_controller_disable_interrupts(this_controller);
   SMU_SMUSRCR_WRITE(this_controller, 0xFFFFFFFF);
   scic_cb_stall_execution(1000);
   SMU_CQGR_WRITE(this_controller, 0x00000000);
   SCU_UFQGP_WRITE(this_controller, 0x00000000);
}
void scic_sds_controller_reset_hardware ( SCIC_SDS_CONTROLLER_T * this_controller ) { scic_controller_disable_interrupts ( this_controller ) ; SMU_SMUSRCR_WRITE ( this_controller , 0xFFFFFFFF ) ; scic_cb_stall_execution ( 1000 ) ; SMU_CQGR_WRITE ( this_controller , 0x00000000 ) ; SCU_UFQGP_WRITE ( this_controller , 0x00000000 ) ; }
This method will reset the controller hardware.
This method will reset the controller hardware .
// Disable interrupts so we dont take any spurious interrupts // Reset the SCU // Delay for 1ms to before clearing the CQP and UFQPR. // The write to the CQGR clears the CQP // The write to the UFQGP clears the UFQPR