#include <scsi/sas_ata.h>
#include "host.h"
#include "isci.h"
#include "remote_device.h"
#include "remote_node_context.h"
#include "scu_event_codes.h"
#include "scu_task_context.h"
#undef C
#define C …
const char *rnc_state_name(enum scis_sds_remote_node_context_states state)
{ … }
#undef C
bool sci_remote_node_context_is_ready(
struct sci_remote_node_context *sci_rnc)
{ … }
bool sci_remote_node_context_is_suspended(struct sci_remote_node_context *sci_rnc)
{ … }
static union scu_remote_node_context *sci_rnc_by_id(struct isci_host *ihost, u16 id)
{ … }
static void sci_remote_node_context_construct_buffer(struct sci_remote_node_context *sci_rnc)
{ … }
static void sci_remote_node_context_setup_to_resume(
struct sci_remote_node_context *sci_rnc,
scics_sds_remote_node_context_callback callback,
void *callback_parameter,
enum sci_remote_node_context_destination_state dest_param)
{ … }
static void sci_remote_node_context_setup_to_destroy(
struct sci_remote_node_context *sci_rnc,
scics_sds_remote_node_context_callback callback,
void *callback_parameter)
{ … }
static void sci_remote_node_context_notify_user(
struct sci_remote_node_context *rnc)
{ … }
static void sci_remote_node_context_continue_state_transitions(struct sci_remote_node_context *rnc)
{ … }
static void sci_remote_node_context_validate_context_buffer(struct sci_remote_node_context *sci_rnc)
{ … }
static void sci_remote_node_context_invalidate_context_buffer(struct sci_remote_node_context *sci_rnc)
{ … }
static void sci_remote_node_context_initial_state_enter(struct sci_base_state_machine *sm)
{ … }
static void sci_remote_node_context_posting_state_enter(struct sci_base_state_machine *sm)
{ … }
static void sci_remote_node_context_invalidating_state_enter(struct sci_base_state_machine *sm)
{ … }
static void sci_remote_node_context_resuming_state_enter(struct sci_base_state_machine *sm)
{ … }
static void sci_remote_node_context_ready_state_enter(struct sci_base_state_machine *sm)
{ … }
static void sci_remote_node_context_tx_suspended_state_enter(struct sci_base_state_machine *sm)
{ … }
static void sci_remote_node_context_tx_rx_suspended_state_enter(struct sci_base_state_machine *sm)
{ … }
static void sci_remote_node_context_await_suspend_state_exit(
struct sci_base_state_machine *sm)
{ … }
static const struct sci_base_state sci_remote_node_context_state_table[] = …;
void sci_remote_node_context_construct(struct sci_remote_node_context *rnc,
u16 remote_node_index)
{ … }
enum sci_status sci_remote_node_context_event_handler(struct sci_remote_node_context *sci_rnc,
u32 event_code)
{ … }
enum sci_status sci_remote_node_context_destruct(struct sci_remote_node_context *sci_rnc,
scics_sds_remote_node_context_callback cb_fn,
void *cb_p)
{ … }
enum sci_status sci_remote_node_context_suspend(
struct sci_remote_node_context *sci_rnc,
enum sci_remote_node_suspension_reasons suspend_reason,
u32 suspend_type)
{ … }
enum sci_status sci_remote_node_context_resume(struct sci_remote_node_context *sci_rnc,
scics_sds_remote_node_context_callback cb_fn,
void *cb_p)
{ … }
enum sci_status sci_remote_node_context_start_io(struct sci_remote_node_context *sci_rnc,
struct isci_request *ireq)
{ … }
enum sci_status sci_remote_node_context_start_task(
struct sci_remote_node_context *sci_rnc,
struct isci_request *ireq,
scics_sds_remote_node_context_callback cb_fn,
void *cb_p)
{ … }
int sci_remote_node_context_is_safe_to_abort(
struct sci_remote_node_context *sci_rnc)
{ … }