Define the Hardware Abstraction Layer (HAL) interface functions
Definition in file ocs_hal.h.
|
| ocs_hal_rtn_e | ocs_hal_setup (ocs_hal_t *, ocs_os_handle_t, sli4_port_type_e) |
| | Set up the Hardware Abstraction Layer module. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_get (ocs_hal_t *, ocs_hal_property_e, uint32_t *) |
| |
| void * | ocs_hal_get_ptr (ocs_hal_t *, ocs_hal_property_e) |
| |
| ocs_hal_rtn_e | ocs_hal_set (ocs_hal_t *, ocs_hal_property_e, uint32_t) |
| |
| ocs_hal_rtn_e | ocs_hal_set_ptr (ocs_hal_t *, ocs_hal_property_e, void *) |
| |
| ocs_hal_rtn_e | ocs_hal_callback (ocs_hal_t *, ocs_hal_callback_e, void *, void *) |
| | register a callback for the given event. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_init (ocs_hal_t *) |
| | Set up Hardware Abstraction Layer module. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_teardown (ocs_hal_t *) |
| | Tear down Hardware Abstraction Layer module. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_reset (ocs_hal_t *, ocs_hal_reset_e) |
| |
| int32_t | ocs_hal_get_num_eq (ocs_hal_t *) |
| |
| void | ocs_hal_cxn_req_invalidate (ocs_list_t *list_cxn) |
| |
| void | ocs_tgt_cxn_invalidate (ocs_cxn_t *cxn) |
| |
| ocs_hal_rtn_e | ocs_hal_domain_add (ocs_hal_t *, ocs_sli_port_t *, ocs_domain_t *) |
| | Adds a domain object. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_domain_free (ocs_hal_t *, ocs_domain_t *) |
| | Free a domain object. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_get_route_table (ocs_hal_t *hal, portal_cb_t portal_cb, void *ul_arg) |
| | Read routing table. More...
|
| |
| int32_t | ocs_hal_portal_get_route_table_cb (ocs_hal_t *hal, int32_t status, ocs_command_ctx_t *ctx) |
| | Called for the completion of Get Route table command. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_set_route_table (ocs_hal_t *hal, ocs_hal_ip_address_subnet_t *hal_ipsub, ocs_hal_ip_address_t *hal_gateway, int32_t add, portal_cb_t portal_cb, void *ul_arg) |
| | Add/Remove an entry to routing table. More...
|
| |
| int32_t | ocs_hal_portal_set_route_table_cb (ocs_hal_t *hal, int32_t status, ocs_command_ctx_t *ctx) |
| | Called for the completion of Set Route table command. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_set_mac (ocs_hal_t *, uint8_t *mac_address, portal_cb_t, void *ul_arg) |
| | Set the MAC address on the portal. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_set_mtu (ocs_hal_t *, uint8_t is_jumbo, portal_cb_t, void *ul_arg) |
| | Enable Jumbo frame support on the portal. More...
|
| |
| ocs_hal_portal_t | ocs_hal_portal_get_default (ocs_hal_t *) |
| | Return the default portal. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_create (ocs_hal_t *, unsigned int vlan_tag, portal_cb_t, void *ul_arg) |
| | Create a new VLAN interface handle. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_delete (ocs_hal_t *, ocs_hal_portal_t, portal_cb_t, void *ul_arg) |
| | Delete a VLAN interface handle. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_ip_add (ocs_hal_t *, ocs_hal_portal_t, ocs_hal_ip_address_subnet_t *, portal_cb_t, void *ul_arg) |
| | Add an IP address to an interface. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_ip_remove (ocs_hal_t *, ocs_hal_portal_t, ocs_hal_ip_address_subnet_t *, portal_cb_t, void *ul_arg) |
| | Removes an IP address from an interface. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_ip_get (ocs_hal_t *, ocs_hal_portal_t, ocs_hal_ip_type_e ip_type, portal_cb_t, void *ul_arg) |
| | Retrieves the IP addresses on an interface. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_gateway_get (ocs_hal_t *, ocs_hal_ip_type_e, portal_cb_t, void *ul_arg) |
| | Retrieves the default gateway on an interface. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_gateway_add (ocs_hal_t *, ocs_hal_ip_address_t *, portal_cb_t, void *ul_arg) |
| | adds the default gateway on an interface. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_gateway_remove (ocs_hal_t *, ocs_hal_ip_address_t *, portal_cb_t, void *ul_arg) |
| | removes a default gateway on an interface. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_listen_start (ocs_hal_t *, ocs_hal_ip_address_t *, uint32_t tcp_port, portal_cb_t, void *ul_arg) |
| | Starts listening on a TCP port. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_listen_stop (ocs_hal_t *, ocs_hal_ip_address_t *, uint32_t tcp_port, portal_cb_t, void *ul_arg) |
| | Stops listening on a TCP port. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_isns_discover (ocs_hal_t *, ocs_hal_portal_t, portal_cb_t, void *ul_arg) |
| | Discovers iSNS servers via DHCP. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_isns_send_packet (ocs_hal_t *, ocs_hal_ip_address_t *, uint32_t tcp_port, void *packet, uint32_t pkt_len, portal_cb_t, void *ul_arg) |
| | Sends an iSNS packet to the requested server. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_esi_listen_start (ocs_hal_t *, ocs_hal_ip_address_t *, uint32_t tcp_port, portal_cb_t, void *ul_arg) |
| | Starts listening for iSNS ESI messages on a TCP port. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_portal_esi_listen_stop (ocs_hal_t *, ocs_hal_ip_address_t *, uint32_t tcp_port, portal_cb_t, void *ul_arg) |
| | Stops listening on an iSNS ESI TCP port. More...
|
| |
| int32_t | ocs_hal_event_check (ocs_hal_t *, uint32_t) |
| | Check for events associated with the interrupt vector. More...
|
| |
| int32_t | ocs_hal_process (ocs_hal_t *, uint32_t, uint32_t) |
| | Process events associated with the interrupt vector. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_command_bootstrap (ocs_hal_t *hal, uint8_t *cmd) |
| | Issue a SLI command to the bootstrap mailbox. More...
|
| |
| ocs_command_ctx_t * | ocs_hal_command_get_ctx (ocs_hal_t *hal) |
| | Issue a SLI command. More...
|
| |
| void | ocs_hal_command_free_ctx (ocs_hal_t *hal, ocs_command_ctx_t *ctx) |
| | Issue a SLI command. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_command_queue (ocs_hal_t *hal, ocs_command_ctx_t *ctx) |
| | Issue a SLI command. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_firmware_write (ocs_hal_t *, ocs_dma_t *, uint32_t, uint32_t, int, ocs_hal_fw_cb_t, void *) |
| | Write a portion of a firmware image to the device. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_get_active_profile (ocs_hal_t *hal, mgmt_cb_t mgmt_cb, void *ul_arg) |
| | Get the currently active profile. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_set_active_profile (ocs_hal_t *hal, mgmt_cb_t mgmt_cb, uint32_t profile_id, void *ul_arg) |
| | Set the currently active profile. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_get_profile_list (ocs_hal_t *hal, mgmt_cb_t mgmt_cb, void *ul_arg) |
| | Get a list of available profiles. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_get_port_protocol (ocs_hal_t *hal, uint32_t pci_func, mgmt_cb_t mgmt_cb, void *ul_arg) |
| | Get the current port protocol. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_set_port_protocol (ocs_hal_t *hal, uint32_t pci_func, ocs_hal_port_protocol_e profile, mgmt_cb_t mgmt_cb, void *ul_arg) |
| | Set the port protocol. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_set_linkcfg (ocs_hal_t *hal, mgmt_cb_t mgmt_cb, uint32_t config_id, void *ul_arg) |
| |
| ocs_hal_rtn_e | ocs_hal_get_linkcfg (ocs_hal_t *hal, mgmt_cb_t mgmt_cb, void *ul_arg) |
| | Get the current link configuration. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_rxbuffer (ocs_hal_t *, ocs_hal_rq_buffer_t *hdr, ocs_hal_rq_buffer_t *data) |
| | Add a receive buffer pair to the Receive Queue. More...
|
| |
| ocs_cxn_t * | ocs_hal_cxn_alloc (ocs_hal_t *, uint32_t conn_hdl) |
| | Gets a free connection structure. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_cxn_connect (ocs_hal_t *, ocs_cxn_t *, ocs_hal_ip_address_t *, uint32_t tcp_port, uint16_t window_size, uint8_t window_scale, cxn_cb_t, void *ul_arg) |
| | Establish a TCP connection from an initiator to a target. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_cxn_reject (ocs_hal_t *hal, uint32_t conn_hdl, cxn_cb_t cxn_cb, void *ul_arg) |
| | Rejects an incoming connection on a target. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_cxn_get_info (ocs_hal_t *hal, ocs_cxn_t *cxn, cxn_cb_t cxn_cb, void *ul_arg) |
| | Retrieves information about an incoming context. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_cxn_offload (ocs_hal_t *hal, ocs_cxn_t *cxn, uint32_t tcp_window_size, uint8_t data_digest, uint8_t hdr_digest, uint32_t max_rcv_dsl, cxn_cb_t cxn_cb, void *ul_arg) |
| | Offloads an incoming connection on a target. More...
|
| |
| uint32_t | ocs_hal_cxn_get_free_wq_cnt (ocs_hal_t *, ocs_cxn_t *) |
| | Returns the number of free entries on the work queue for this connection. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_cxn_close (ocs_hal_t *, ocs_cxn_t *, uint8_t invalidate, cxn_cb_t, void *ul_arg) |
| | Invalidates a connection and optionally sends a TCP Reset. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_cxn_upload (ocs_hal_t *hal, ocs_cxn_t *cxn, uint8_t graceful, cxn_cb_t cxn_cb, void *ul_arg) |
| | uploads an incoming connection on a target. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_cxn_free (ocs_hal_t *, ocs_cxn_t *) |
| | Frees a connection object for re-use. More...
|
| |
| ocs_hal_io_t * | ocs_hal_io_alloc (ocs_hal_t *hal) |
| | Allocate a HAL IO object. More...
|
| |
| void | ocs_hal_io_free (ocs_hal_t *, ocs_hal_io_t *) |
| | Free a previously allocated HAL IO object. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_io_send (ocs_hal_t *, ocs_hal_io_type_e, ocs_hal_io_t *, uint32_t, ocs_hal_io_param_t *, ocs_cxn_t *, io_cb_t, void *) |
| | Send a read, write, or response IO. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_io_init_sges (ocs_hal_t *, ocs_hal_io_t *, ocs_hal_io_type_e, uint32_t) |
| | Initialize the Scatter Gather List entries of an IO. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_io_add_sge (ocs_hal_t *, ocs_hal_io_t *, uintptr_t, uint32_t) |
| | Add a Scatter Gather list Entry to an IO. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_io_add_seed_sge (ocs_hal_t *hal, ocs_hal_io_t *io, ocs_hal_dif_info_t *dif_info) |
| | Add a T10 PI seed scatter gather list entry. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_io_add_dif_sge (ocs_hal_t *hal, ocs_hal_io_t *io, uintptr_t addr) |
| | Add a T10 DIF scatter gather list entry to an IO. More...
|
| |
| ocs_hal_rtn_e | ocs_hal_io_abort (ocs_hal_t *, ocs_hal_io_t *, ocs_hal_abort_scope_e, ocs_hal_abort_type_e) |
| | Abort a currently running IO. More...
|
| |
| ocs_hal_io_t * | ocs_hal_io_find_itt (ocs_hal_t *hal, uint32_t itt) |
| | Find an IO based on the initiator task tag. More...
|
| |
| uint32_t | tcmd_thread_id (void) |
| |
| int | ocs_hal_fw_valid (ocs_hal_t *hal) |
| | Check that firmware version meets minimum requirements. More...
|
| |
| int32_t | ocs_hal_async_call (ocs_hal_t *hal, ocs_hal_async_cb_t callback, void *arg) |
| | Make an async callback using NOP mailbox command. More...
|
| |