Lines Matching full:node

34  * OCS linux driver remote node callback declarations
42 if (OCS_LOG_ENABLE_SM_TRACE(node->ocs)) \
43 ocs_log_info(node->ocs, "[%s] %-20s\n", node->display_name, ocs_sm_event_name(evt)); \
46 #define node_printf(node, fmt, ...) ocs_log_debug(node->ocs, "[%s] " fmt, node->display_name, ##__V… argument
49 ocs_node_t *node = NULL; \
51 node = ctx->app; \
52 ocs_assert(node, NULL); \
53 ocs = node->ocs; \
56 ocs_strncpy(node->current_state_name, __func__, sizeof(node->current_state_name)); \
58 ocs_strncpy(node->prev_state_name, node->current_state_name, sizeof(node->prev_state_name)); \
59 ocs_strncpy(node->current_state_name, "invalid", sizeof(node->current_state_name)); \
61 node->prev_evt = node->current_evt; \
62 node->current_evt = evt;
69 * @brief Node SM IO Context Callback structure
86 * Unsolicited receive frames are held on the node pending frame list, rather than
89 * @param node pointer to node structure
95 ocs_node_hold_frames(ocs_node_t *node) in ocs_node_hold_frames() argument
97 ocs_assert(node); in ocs_node_hold_frames()
98 node->hold_frames = TRUE; in ocs_node_hold_frames()
104 * Unsolicited receive frames processed rather than being held on the node
107 * @param node pointer to node structure
113 ocs_node_accept_frames(ocs_node_t *node) in ocs_node_accept_frames() argument
115 ocs_assert(node); in ocs_node_accept_frames()
116 node->hold_frames = FALSE; in ocs_node_accept_frames()
124 ocs_node_lock_init(ocs_node_t *node) in ocs_node_lock_init() argument
126 ocs_rlock_init(node->ocs, &node->lock, "node rlock"); in ocs_node_lock_init()
130 ocs_node_lock_free(ocs_node_t *node) in ocs_node_lock_free() argument
132 ocs_rlock_free(&node->lock); in ocs_node_lock_free()
136 ocs_node_lock_try(ocs_node_t *node) in ocs_node_lock_try() argument
138 return ocs_rlock_try(&node->lock); in ocs_node_lock_try()
142 ocs_node_lock(ocs_node_t *node) in ocs_node_lock() argument
144 ocs_rlock_acquire(&node->lock); in ocs_node_lock()
147 ocs_node_unlock(ocs_node_t *node) in ocs_node_unlock() argument
149 ocs_rlock_release(&node->lock); in ocs_node_unlock()
153 * @brief Node initiator/target enable defines
156 * node initiator/target enable are enumerated.
179 static inline ocs_node_enable_e ocs_node_get_enable(ocs_node_t *node) in ocs_node_get_enable() argument
183 if (node->sport->enable_ini) retval |= (1U << 3); in ocs_node_get_enable()
184 if (node->sport->enable_tgt) retval |= (1U << 2); in ocs_node_get_enable()
185 if (node->init) retval |= (1U << 1); in ocs_node_get_enable()
186 if (node->targ) retval |= (1U << 0); in ocs_node_get_enable()
195 extern int32_t ocs_node_attach(ocs_node_t *node);
200 extern int32_t ocs_node_free(ocs_node_t *node);
201 extern void ocs_node_force_free(ocs_node_t *node);
203 extern void ocs_node_update_display_name(ocs_node_t *node);
209 extern void ocs_node_save_sparms(ocs_node_t *node, void *payload);
210 extern void ocs_node_post_event(ocs_node_t *node, ocs_sm_event_t evt, void *arg);
211 extern void ocs_node_transition(ocs_node_t *node, ocs_sm_function_t state, void *data);
214 extern void ocs_node_initiate_cleanup(ocs_node_t *node);
215 extern int ocs_ddump_node(ocs_textbuf_t *textbuf, ocs_node_t *node);
218 extern uint64_t ocs_node_get_wwpn(ocs_node_t *node);
219 extern uint64_t ocs_node_get_wwnn(ocs_node_t *node);
220 extern void ocs_node_abort_all_els(ocs_node_t *node);
222 extern void ocs_node_pause(ocs_node_t *node, ocs_sm_function_t state);
223 extern int32_t ocs_node_resume(ocs_node_t *node);
226 extern int ocs_node_active_ios_empty(ocs_node_t *node);
227 extern void ocs_node_send_ls_io_cleanup(ocs_node_t *node);
229 extern int32_t ocs_node_recv_link_services_frame(ocs_node_t *node, ocs_hw_sequence_t *seq);
230 extern int32_t ocs_node_recv_abts_frame(ocs_node_t *node, ocs_hw_sequence_t *seq);
231 extern int32_t ocs_node_recv_els_frame(ocs_node_t *node, ocs_hw_sequence_t *seq);
232 extern int32_t ocs_node_recv_ct_frame(ocs_node_t *node, ocs_hw_sequence_t *seq);
233 extern int32_t ocs_node_recv_fcp_cmd(ocs_node_t *node, ocs_hw_sequence_t *seq);
234 extern int32_t ocs_node_recv_bls_no_sit(ocs_node_t *node, ocs_hw_sequence_t *seq);