Commit f7d36e18 authored by Dan Williams's avatar Dan Williams

isci: kill a callback cast

Callbacks are already type unsafe, obfuscating things further by casting the
callback routine is less safe because now function argument number changes
will not be caught by the compiler.
Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
parent 27d42e3e
...@@ -583,19 +583,20 @@ void scic_sds_remote_device_start_request( ...@@ -583,19 +583,20 @@ void scic_sds_remote_device_start_request(
* serves as a callback when RNC gets resumed during a task management * serves as a callback when RNC gets resumed during a task management
* sequence. none * sequence. none
*/ */
void scic_sds_remote_device_continue_request( void scic_sds_remote_device_continue_request(void *dev)
struct scic_sds_remote_device *this_device)
{ {
struct scic_sds_remote_device *sci_dev = dev;
struct scic_sds_request *sci_req = sci_dev->working_request;
/* we need to check if this request is still valid to continue. */ /* we need to check if this request is still valid to continue. */
if (this_device->working_request != NULL) { if (sci_req) {
struct scic_sds_request *this_request = this_device->working_request; struct scic_sds_controller *scic = sci_req->owning_controller;
struct scic_sds_controller *scic = this_request->owning_controller;
u32 state = scic->parent.state_machine.current_state_id; u32 state = scic->parent.state_machine.current_state_id;
sci_base_controller_request_handler_t continue_io; sci_base_controller_request_handler_t continue_io;
continue_io = scic_sds_controller_state_handler_table[state].base.continue_io; continue_io = scic_sds_controller_state_handler_table[state].base.continue_io;
continue_io(&scic->parent, &this_request->target_device->parent, continue_io(&scic->parent, &sci_req->target_device->parent,
&this_request->parent); &sci_req->parent);
} }
} }
......
...@@ -509,8 +509,7 @@ void scic_sds_remote_device_start_request( ...@@ -509,8 +509,7 @@ void scic_sds_remote_device_start_request(
struct scic_sds_request *the_request, struct scic_sds_request *the_request,
enum sci_status status); enum sci_status status);
void scic_sds_remote_device_continue_request( void scic_sds_remote_device_continue_request(void *sci_dev);
struct scic_sds_remote_device *this_device);
enum sci_status scic_sds_remote_device_default_start_handler( enum sci_status scic_sds_remote_device_default_start_handler(
struct sci_base_remote_device *this_device); struct sci_base_remote_device *this_device);
......
...@@ -188,7 +188,6 @@ static enum sci_status scic_sds_stp_remote_device_ready_substate_start_request_h ...@@ -188,7 +188,6 @@ static enum sci_status scic_sds_stp_remote_device_ready_substate_start_request_h
scic_sds_remote_node_context_resume( scic_sds_remote_node_context_resume(
this_device->rnc, this_device->rnc,
(scics_sds_remote_node_context_callback)
scic_sds_remote_device_continue_request, scic_sds_remote_device_continue_request,
this_device); this_device);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment