• Dan Williams's avatar
    isci: merge remote_device substates into a single state machine · ab2e8f7d
    Dan Williams authored
    A substate is just a state, so uplevel the smp and stp device substates.
    Three tricks at work here:
    
    1/ scic_sds_remote_device_ready_state_enter: needs to know the the device type
       so it can immediately transition to a stp or smp ready substate.
    
    2/ scic_sds_remote_device_ready_state_exit: needs to know the device type. In
       the ssp case the device is no longer ready, in the stp, and smp case we have
       simply exited to a ready "substate".
    
    3/ scic_sds_remote_device_resume_complete_handler: The one location
       where we directly check the current state against
       SCI_BASE_REMOTE_DEVICE_STATE_READY needed to comprehend the possible ready
       substates.
    Reported-by: default avatarChristoph Hellwig <hch@lst.de>
    Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
    ab2e8f7d
remote_device.c 86.6 KB