isci: reset hardware at init
authorDan Williams <dan.j.williams@intel.com>
Thu, 24 Mar 2011 00:31:27 +0000 (17:31 -0700)
committerDan Williams <dan.j.williams@intel.com>
Sun, 3 Jul 2011 10:55:30 +0000 (03:55 -0700)
Don't assume the hardware is in a known state at init.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/scsi/isci/core/scic_sds_controller.c

index 180bb1e69012486ced77e8635a8cecbaa4591b7a..799a04bc09383f7820f616f5aed2903bec2ab84f 100644 (file)
@@ -2116,7 +2116,7 @@ enum sci_status scic_controller_construct(struct scic_sds_controller *controller
        /* Initialize the User and OEM parameters to default values. */
        scic_sds_controller_set_default_config_parameters(controller);
 
-       return SCI_SUCCESS;
+       return scic_controller_reset(controller);
 }
 
 /* --------------------------------------------------------------------------- */
@@ -3562,6 +3562,7 @@ const struct scic_sds_controller_state_handler scic_sds_controller_state_handler
                .terminate_request = scic_sds_controller_default_request_handler,
        },
        [SCI_BASE_CONTROLLER_STATE_RESET] = {
+               .base.reset        = scic_sds_controller_general_reset_handler,
                .base.initialize   = scic_sds_controller_reset_state_initialize_handler,
                .base.start_io     = scic_sds_controller_default_start_operation_handler,
                .base.complete_io  = scic_sds_controller_default_request_handler,