Lines Matching full:ocs

37 #include "ocs.h"
71 * @param arg Pointer to the OCS context.
81 ocs_t *ocs = arg; in ocs_port_cb() local
86 ocs_log_debug(ocs, "OCS_HW_PORT_ALLOC_OK\n"); in ocs_port_cb()
90 ocs_log_debug(ocs, "OCS_HW_PORT_ALLOC_FAIL\n"); in ocs_port_cb()
94 ocs_log_debug(ocs, "OCS_HW_PORT_ATTACH_OK\n"); in ocs_port_cb()
98 ocs_log_debug(ocs, "OCS_HW_PORT_ATTACH_FAIL\n"); in ocs_port_cb()
102 ocs_log_debug(ocs, "OCS_HW_PORT_FREE_OK\n"); in ocs_port_cb()
106 ocs_log_debug(ocs, "OCS_HW_PORT_FREE_FAIL\n"); in ocs_port_cb()
110 ocs_log_test(ocs, "unknown event %#x\n", event); in ocs_port_cb()
139 if (domain->ocs->ctrlmask & OCS_CTRLMASK_INHIBIT_INITIATOR) { in ocs_sport_alloc()
147 ocs_log_test(domain->ocs, "Failed: SPORT %016llx %016llx already allocated\n", in ocs_sport_alloc()
153 sport = ocs_malloc(domain->ocs, sizeof(*sport), OCS_M_NOWAIT | OCS_M_ZERO); in ocs_sport_alloc()
155 sport->ocs = domain->ocs; in ocs_sport_alloc()
158 sport->lookup = spv_new(domain->ocs); in ocs_sport_alloc()
165 sport->enable_rscn = (sport->enable_ini || (sport->enable_tgt && enable_target_rscn(sport->ocs))); in ocs_sport_alloc()
179 ocs_lock_init(sport->ocs, &sport->node_group_lock, "node_group_lock[%d]", sport->instance_index); in ocs_sport_alloc()
193 ocs_log_debug(domain->ocs, "[%s] allocate sport\n", sport->display_name); in ocs_sport_alloc()
220 ocs_log_debug(domain->ocs, "[%s] free sport\n", sport->display_name); in ocs_sport_free()
264 ocs_free(sport->ocs, sport, sizeof(*sport)); in ocs_sport_free()
349 ocs_log_test(domain->ocs, "assertion failed: domain->lookup is not valid\n"); in ocs_sport_find()
420 ocs_log_debug(sport->ocs, "[%s] attach sport: fc_id x%06x\n", sport->display_name, fc_id); in ocs_sport_attach()
422 rc = ocs_hw_port_attach(&sport->ocs->hw, sport, fc_id); in ocs_sport_attach()
424 ocs_log_err(sport->ocs, "ocs_hw_port_attach failed: %d\n", rc); in ocs_sport_attach()
436 ocs_t *ocs = NULL; \
444 ocs = sport->ocs; \
445 ocs_assert(ocs, NULL);
452 if (OCS_LOG_ENABLE_DOMAIN_SM_TRACE(ocs)) \
453 ocs_log_debug(ocs, "[%s] %-20s\n", sport->display_name, ocs_sm_event_name(evt)); \
507 if (ocs_hw_port_free(&ocs->hw, sport)) { in __ocs_sport_common()
508 ocs_log_test(sport->ocs, "ocs_hw_port_free failed\n"); in __ocs_sport_common()
523 if (sport->ocs->hw.link.status == SLI_LINK_STATUS_DOWN) { in __ocs_sport_common()
526 ocs_log_debug(ocs,"[%s] sport shutdown vport,sending logo to node\n", in __ocs_sport_common()
548 …ocs_log_test(sport->ocs, "[%s] %-20s %-20s not handled\n", sport->display_name, funcname, ocs_sm_e… in __ocs_sport_common()
619 ocs_log_debug(ocs, "vport: letting f/w select WWN\n"); in __ocs_sport_vport_init()
623 ocs_log_debug(ocs, "vport: hard coding port id: %x\n", sport->fc_id); in __ocs_sport_vport_init()
628 if (ocs_hw_port_alloc(&ocs->hw, sport, sport->domain, in __ocs_sport_vport_init()
630 ocs_log_err(ocs, "Can't allocate port\n"); in __ocs_sport_vport_init()
689 ocs_log_err(ocs, "ocs_node_alloc() failed\n"); in __ocs_sport_vport_wait_alloc()
738 ocs_log_test(ocs, "can't find node %06x\n", FC_ADDR_FABRIC); in __ocs_sport_vport_allocated()
779 ocs_log_debug(ocs, "[%s] SPORT attached WWPN %016llx WWNN %016llx \n", sport->display_name, in __ocs_sport_attached()
803 ocs_log_debug(ocs, "[%s] SPORT deattached WWPN %016llx WWNN %016llx \n", sport->display_name, in __ocs_sport_attached()
855 if (ocs_hw_port_free(&ocs->hw, sport)) { in __ocs_sport_wait_shutdown()
856 ocs_log_err(sport->ocs, "ocs_hw_port_free failed\n"); in __ocs_sport_wait_shutdown()
920 ocs_t *ocs = domain->ocs; in ocs_vport_start() local
921 ocs_xport_t *xport = ocs->xport; in ocs_vport_start()
927 ocs_device_lock(ocs); in ocs_vport_start()
951 ocs_device_unlock(ocs); in ocs_vport_start()
968 ocs_t *ocs = sport->ocs; in ocs_vport_link_down() local
969 ocs_xport_t *xport = ocs->xport; in ocs_vport_link_down()
972 ocs_device_lock(ocs); in ocs_vport_link_down()
979 ocs_device_unlock(ocs); in ocs_vport_link_down()
1012 if (ini && (domain->ocs->enable_ini == 0)) { in ocs_sport_vport_new()
1013 ocs_log_test(domain->ocs, "driver initiator functionality not enabled\n"); in ocs_sport_vport_new()
1017 if (tgt && (domain->ocs->enable_tgt == 0)) { in ocs_sport_vport_new()
1018 ocs_log_test(domain->ocs, "driver target functionality not enabled\n"); in ocs_sport_vport_new()
1024 if (ocs_vport_create_spec(domain->ocs, wwnn, wwpn, fc_id, ini, tgt, tgt_data, ini_data)) { in ocs_sport_vport_new()
1025 ocs_log_test(domain->ocs, "failed to create vport object entry\n"); in ocs_sport_vport_new()
1084 * @param ocs Pointer to the device object.
1092 int32_t ocs_sport_vport_del(ocs_t *ocs, ocs_domain_t *domain, uint64_t wwpn, uint64_t wwnn) in ocs_sport_vport_del() argument
1094 ocs_xport_t *xport = ocs->xport; in ocs_sport_vport_del()
1110 ocs_device_lock(ocs); in ocs_sport_vport_del()
1118 ocs_device_unlock(ocs); in ocs_sport_vport_del()
1146 * @param ocs Pointer to the device object.
1152 ocs_vport_del_all(ocs_t *ocs) in ocs_vport_del_all() argument
1154 ocs_xport_t *xport = ocs->xport; in ocs_vport_del_all()
1158 ocs_device_lock(ocs); in ocs_vport_del_all()
1161 ocs_free(ocs, vport, sizeof(*vport)); in ocs_vport_del_all()
1163 ocs_device_unlock(ocs); in ocs_vport_del_all()
1476 ocs_t *ocs = sport->ocs; in ocs_vport_update_spec() local
1477 ocs_xport_t *xport = ocs->xport; in ocs_vport_update_spec()
1480 ocs_device_lock(ocs); in ocs_vport_update_spec()
1490 ocs_device_unlock(ocs); in ocs_vport_update_spec()
1500 * @param ocs Pointer to device context.
1513 ocs_vport_create_spec(ocs_t *ocs, uint64_t wwnn, uint64_t wwpn, uint32_t fc_id, uint32_t enable_ini… in ocs_vport_create_spec() argument
1515 ocs_xport_t *xport = ocs->xport; in ocs_vport_create_spec()
1522 ocs_log_test(ocs, "Failed: VPORT %016llx %016llx already allocated\n", in ocs_vport_create_spec()
1528 vport = ocs_malloc(ocs, sizeof(*vport), OCS_M_ZERO | OCS_M_NOWAIT); in ocs_vport_create_spec()
1530 ocs_log_err(ocs, "ocs_malloc failed\n"); in ocs_vport_create_spec()
1543 ocs_device_lock(ocs); in ocs_vport_create_spec()
1545 ocs_device_unlock(ocs); in ocs_vport_create_spec()
1644 node_group_dir = ocs_malloc(sport->ocs, sizeof(*node_group_dir), OCS_M_ZERO | OCS_M_NOWAIT); in ocs_node_group_dir_alloc()
1658 ocs_log_debug(sport->ocs, "[%s] [%d] allocating node group directory\n", sport->display_name, in ocs_node_group_dir_alloc()
1682 ocs_log_debug(sport->ocs, "[%s] [%d] freeing node group directory\n", sport->display_name, in ocs_node_group_dir_free()
1686 ocs_log_test(sport->ocs, "[%s] WARNING: node group list not empty\n", sport->display_name); in ocs_node_group_dir_free()
1690 ocs_free(sport->ocs, node_group_dir, sizeof(*node_group_dir)); in ocs_node_group_dir_free()
1739 ocs_t *ocs; in ocs_remote_node_group_alloc() local
1746 ocs_assert(node_group_dir->sport->ocs, NULL); in ocs_remote_node_group_alloc()
1749 ocs = sport->ocs; in ocs_remote_node_group_alloc()
1751 node_group = ocs_malloc(ocs, sizeof(*node_group), OCS_M_ZERO | OCS_M_NOWAIT); in ocs_remote_node_group_alloc()
1761 hrc = ocs_hw_node_group_alloc(&ocs->hw, node_group); in ocs_remote_node_group_alloc()
1763 ocs_log_err(ocs, "ocs_hw_node_group_alloc() failed: %d\n", hrc); in ocs_remote_node_group_alloc()
1764 ocs_free(ocs, node_group, sizeof(*node_group)); in ocs_remote_node_group_alloc()
1768 ocs_log_debug(ocs, "[%s] [%d] indicator x%03x allocating node group\n", sport->display_name, in ocs_remote_node_group_alloc()
1801 ocs_assert(node_group->node_group_dir->sport->ocs); in ocs_remote_node_group_free()
1806 …ocs_log_debug(sport->ocs, "[%s] [%d] freeing node group\n", sport->display_name, node_group->insta… in ocs_remote_node_group_free()
1815 ocs_free(sport->ocs, node_group, sizeof(*node_group)); in ocs_remote_node_group_free()
1838 ocs_t *ocs; in ocs_node_group_init() local
1846 ocs_assert(node->ocs, -1); in ocs_node_group_init()
1848 ocs = node->ocs; in ocs_node_group_init()
1851 ocs_assert(ocs->enable_hlm, -1); in ocs_node_group_init()
1862 ocs_log_err(ocs, "ocs_node_group_dir_alloc() failed\n"); in ocs_node_group_init()
1871 if (node_group_dir->node_group_list_count < ocs->hlm_group_size) { in ocs_node_group_init()
1875 ocs_log_err(ocs, "ocs_remote_node_group_alloc() failed\n"); in ocs_node_group_init()
1883 if (idx >= ocs->hlm_group_size) { in ocs_node_group_init()
1884 ocs_log_err(node->ocs, "assertion failed: idx >= ocs->hlm_group_size\n"); in ocs_node_group_init()
1894 if (idx == ocs->hlm_group_size) { in ocs_node_group_init()
1907 hrc = ocs_hw_node_group_attach(&ocs->hw, node_group, &node->rnode); in ocs_node_group_init()