iPXE
|
#include "mlx_nodnic_data_structures.h"
Go to the source code of this file.
Macros | |
#define | NODIC_SUPPORTED_REVISION 1 |
#define | NODNIC_CMDQ_PHY_ADDR_HIGH_OFFSET 0x10 |
#define | NODNIC_CMDQ_PHY_ADDR_LOW_OFFSET 0x14 |
#define | NODNIC_NIC_INTERFACE_OFFSET 0x14 |
#define | NODNIC_INITIALIZING_OFFSET 0x1fc |
#define | NODNIC_NIC_INTERFACE_SUPPORTED_OFFSET 0x1fc |
#define | NODNIC_LOCATION_OFFSET 0x240 |
#define | NODNIC_CMDQ_PHY_ADDR_LOW_MASK 0xFFFFE000 |
#define | NODNIC_NIC_INTERFACE_SUPPORTED_MASK 0x4000000 |
#define | NODNIC_NIC_INTERFACE_BIT 9 |
#define | NODNIC_DISABLE_INTERFACE_BIT 8 |
#define | NODNIC_NIC_INTERFACE_SUPPORTED_BIT 26 |
#define | NODNIC_INITIALIZING_BIT 31 |
#define | NODNIC_NIC_DISABLE_INT_OFFSET 0x100c |
#define | NODNIC_REVISION_OFFSET 0x0 |
#define | NODNIC_HARDWARE_FORMAT_OFFSET 0x0 |
Functions | |
FILE_LICENCE (GPL2_OR_LATER) | |
mlx_status | nodnic_device_init (IN nodnic_device_priv *device_priv) |
mlx_status | nodnic_device_teardown (IN nodnic_device_priv *device_priv) |
mlx_status | nodnic_device_get_cap (IN nodnic_device_priv *device_priv) |
mlx_status | nodnic_device_clear_int (IN nodnic_device_priv *device_priv) |
mlx_status | nodnic_device_get_fw_version (IN nodnic_device_priv *device_priv, OUT mlx_uint16 *fw_ver_minor, OUT mlx_uint16 *fw_ver_sub_minor, OUT mlx_uint16 *fw_ver_major) |
#define NODIC_SUPPORTED_REVISION 1 |
Definition at line 27 of file mlx_device.h.
#define NODNIC_CMDQ_PHY_ADDR_HIGH_OFFSET 0x10 |
Definition at line 29 of file mlx_device.h.
#define NODNIC_CMDQ_PHY_ADDR_LOW_OFFSET 0x14 |
Definition at line 30 of file mlx_device.h.
#define NODNIC_NIC_INTERFACE_OFFSET 0x14 |
Definition at line 31 of file mlx_device.h.
#define NODNIC_INITIALIZING_OFFSET 0x1fc |
Definition at line 32 of file mlx_device.h.
#define NODNIC_NIC_INTERFACE_SUPPORTED_OFFSET 0x1fc |
Definition at line 33 of file mlx_device.h.
#define NODNIC_LOCATION_OFFSET 0x240 |
Definition at line 34 of file mlx_device.h.
#define NODNIC_CMDQ_PHY_ADDR_LOW_MASK 0xFFFFE000 |
Definition at line 36 of file mlx_device.h.
#define NODNIC_NIC_INTERFACE_SUPPORTED_MASK 0x4000000 |
Definition at line 37 of file mlx_device.h.
#define NODNIC_NIC_INTERFACE_BIT 9 |
Definition at line 39 of file mlx_device.h.
#define NODNIC_DISABLE_INTERFACE_BIT 8 |
Definition at line 40 of file mlx_device.h.
#define NODNIC_NIC_INTERFACE_SUPPORTED_BIT 26 |
Definition at line 41 of file mlx_device.h.
#define NODNIC_INITIALIZING_BIT 31 |
Definition at line 42 of file mlx_device.h.
#define NODNIC_NIC_DISABLE_INT_OFFSET 0x100c |
Definition at line 44 of file mlx_device.h.
#define NODNIC_REVISION_OFFSET 0x0 |
Definition at line 47 of file mlx_device.h.
#define NODNIC_HARDWARE_FORMAT_OFFSET 0x0 |
Definition at line 48 of file mlx_device.h.
FILE_LICENCE | ( | GPL2_OR_LATER | ) |
mlx_status nodnic_device_init | ( | IN nodnic_device_priv * | device_priv | ) |
Definition at line 195 of file mlx_device.c.
References MLX_FATAL_CHECK_STATUS, MLX_INVALID_PARAMETER, MLX_SUCCESS, nodnic_device_get_nodnic_data(), nodnic_device_start_nodnic(), NULL, and status.
Referenced by flexboot_nodnic_probe().
mlx_status nodnic_device_teardown | ( | IN nodnic_device_priv * | device_priv | ) |
Definition at line 218 of file mlx_device.c.
References disable_nodnic_inteface(), MLX_FATAL_CHECK_STATUS, MLX_SUCCESS, and status.
Referenced by flexboot_nodnic_probe(), and flexboot_nodnic_remove().
mlx_status nodnic_device_get_cap | ( | IN nodnic_device_priv * | device_priv | ) |
Definition at line 230 of file mlx_device.c.
References buffer, CHECK_BIT, FALSE, _nodnic_device_capabilites::log_max_ring_size, _nodnic_device_capabilites::log_pkey_table_size, _nodnic_device_capabilites::log_uar_page_size, _nodnic_device_capabilites::log_working_buffer_size, MLX_FATAL_CHECK_STATUS, MLX_INVALID_PARAMETER, MLX_SUCCESS, nodnic_cmd_read(), NODNIC_DEVICE_LOG_MAX_RING_SIZE_MASK, NODNIC_DEVICE_LOG_MAX_RING_SIZE_OFFSET, NODNIC_DEVICE_LOG_PKEY_TABLE_SIZE_MASK, NODNIC_DEVICE_LOG_PKEY_TABLE_SIZE_OFFSET, NODNIC_DEVICE_LOG_UAR_PAGE_SIZE_MASK, NODNIC_DEVICE_LOG_UAR_PAGE_SIZE_OFFSET, NODNIC_DEVICE_LOG_WORKING_BUFFER_SIZE_MASK, NODNIC_DEVICE_LOG_WORKING_BUFFER_SIZE_OFFSET, NODNIC_DEVICE_NUM_PORTS_OFFSET, NODNIC_DEVICE_PD_MASK, NODNIC_DEVICE_SUPPORT_BAR_CQ_CONTROL_OFFSET, NODNIC_DEVICE_SUPPORT_MAC_FILTERS_OFFSET, NODNIC_DEVICE_SUPPORT_PROMISC_FILTER_OFFSET, NODNIC_DEVICE_SUPPORT_PROMISC_MULT_FILTER_OFFSET, NODNIC_DEVICE_SUPPORT_RX_PI_DMA_OFFSET, NODNIC_DEVICE_SUPPORT_UAR_TRX_DB_OFFSET, NULL, _nodnic_device_capabilites::num_ports, status, _nodnic_device_capabilites::support_bar_cq_ctrl, _nodnic_device_capabilites::support_mac_filters, _nodnic_device_capabilites::support_promisc_filter, _nodnic_device_capabilites::support_promisc_multicast_filter, _nodnic_device_capabilites::support_rx_pi_dma, and _nodnic_device_capabilites::support_uar_tx_db.
Referenced by flexboot_nodnic_probe().
mlx_status nodnic_device_clear_int | ( | IN nodnic_device_priv * | device_priv | ) |
Definition at line 165 of file mlx_device.c.
References MLX_CHECK_STATUS, mlx_memory_cpu_to_be32(), mlx_pci_mem_read(), mlx_pci_mem_write(), MLX_SUCCESS, MlxPciWidthUint32, nodnic_cmd_write(), NODNIC_NIC_DISABLE_INT_OFFSET, and status.
Referenced by flexboot_nodnic_eth_irq().
mlx_status nodnic_device_get_fw_version | ( | IN nodnic_device_priv * | device_priv, |
OUT mlx_uint16 * | fw_ver_minor, | ||
OUT mlx_uint16 * | fw_ver_sub_minor, | ||
OUT mlx_uint16 * | fw_ver_major | ||
) |
Definition at line 336 of file mlx_device.c.
References buffer, MLX_CHECK_STATUS, MLX_INVALID_PARAMETER, MLX_SUCCESS, nodnic_cmd_read(), NULL, and status.