FreeBSD/sys/dev/isci/scil/scic_sds_remote_device.c
/**
 * This method is the default unsolicited frame handler.  It logs a warning,
 * releases the frame and returns a failure.
 *
 * @param[in] device The SCI_BASE_REMOTE_DEVICE which is then cast into a
 *       SCIC_SDS_REMOTE_DEVICE.
 * @param[in] frame_index The frame index for which the SCIC_SDS_CONTROLLER
 *       wants this device object to process.
 *
 * @return SCI_STATUS
 * @retval SCI_FAILURE_INVALID_STATE
 */
This method is the default unsolicited frame handler.  It logs a warning,
releases the frame and returns a failure.

@param[in] device The SCI_BASE_REMOTE_DEVICE which is then cast into a
SCIC_SDS_REMOTE_DEVICE.
@param[in] frame_index The frame index for which the SCIC_SDS_CONTROLLER
wants this device object to process.


This method is the default unsolicited frame handler . It logs a warning releases the frame and returns a failure . @param [ in ] device The SCI_BASE_REMOTE_DEVICE which is then cast into a SCIC_SDS_REMOTE_DEVICE . @param [ in ] frame_index The frame index for which the SCIC_SDS_CONTROLLER wants this device object to process .
SCI_STATUS scic_sds_remote_device_default_frame_handler(
   SCIC_SDS_REMOTE_DEVICE_T *this_device,
   U32                       frame_index
)
{
   SCIC_LOG_WARNING((
      sci_base_object_get_logger(this_device),
      SCIC_LOG_OBJECT_SSP_REMOTE_TARGET |
      SCIC_LOG_OBJECT_SMP_REMOTE_TARGET |
      SCIC_LOG_OBJECT_STP_REMOTE_TARGET,
      "SCIC Remote Device requested to handle frame %x while in wrong state %d\n",
      frame_index,
      sci_base_state_machine_get_state(&this_device->parent.state_machine)
   ));
   scic_sds_controller_release_frame(
      scic_sds_remote_device_get_controller(this_device), frame_index
   );
   return SCI_FAILURE_INVALID_STATE;
}
SCI_STATUS scic_sds_remote_device_default_frame_handler ( SCIC_SDS_REMOTE_DEVICE_T * this_device , U32 frame_index ) { SCIC_LOG_WARNING ( ( sci_base_object_get_logger ( this_device ) , SCIC_LOG_OBJECT_SSP_REMOTE_TARGET | SCIC_LOG_OBJECT_SMP_REMOTE_TARGET | SCIC_LOG_OBJECT_STP_REMOTE_TARGET , " \n " , frame_index , sci_base_state_machine_get_state ( & this_device -> parent . state_machine ) ) ) ; scic_sds_controller_release_frame ( scic_sds_remote_device_get_controller ( this_device ) , frame_index ) ; return SCI_FAILURE_INVALID_STATE ; }
This method is the default unsolicited frame handler.
This method is the default unsolicited frame handler .
// Return the frame back to the controller