iPXE
Data Fields
ib_device Struct Reference

An Infiniband device. More...

#include <infiniband.h>

Data Fields

struct refcnt refcnt
 Reference counter. More...
 
struct list_head list
 List of Infiniband devices. More...
 
struct list_head open_list
 List of open Infiniband devices. More...
 
unsigned int index
 Index of this Infiniband device. More...
 
char name [IBDEV_NAME_LEN]
 Name of this Infiniband device. More...
 
struct devicedev
 Underlying device. More...
 
struct list_head cqs
 List of completion queues. More...
 
struct list_head qps
 List of queue pairs. More...
 
struct ib_device_operationsop
 Infiniband operations. More...
 
unsigned int port
 Port number. More...
 
unsigned int ports
 Total ports on device. More...
 
unsigned int open_count
 Port open request counter. More...
 
uint8_t port_state
 Port state. More...
 
uint8_t link_width_supported
 Link width supported. More...
 
uint8_t link_width_enabled
 Link width enabled. More...
 
uint8_t link_width_active
 Link width active. More...
 
uint8_t link_speed_supported
 Link speed supported. More...
 
uint8_t link_speed_enabled
 Link speed enabled. More...
 
uint8_t link_speed_active
 Link speed active. More...
 
union ib_guid node_guid
 Node GUID. More...
 
union ib_gid gid
 Port GID (comprising GID prefix and port GUID) More...
 
uint16_t lid
 Port LID. More...
 
uint16_t sm_lid
 Subnet manager LID. More...
 
uint8_t sm_sl
 Subnet manager SL. More...
 
uint16_t pkey
 Partition key. More...
 
uint32_t rdma_key
 RDMA key. More...
 
struct ib_mad_interfacesmi
 Subnet management interface. More...
 
struct ib_mad_interfacegsi
 General services interface. More...
 
uint8_t lemac [ETH_ALEN]
 IPoIB LEMAC (if non-default) More...
 
void * drv_priv
 Driver private data. More...
 

Detailed Description

An Infiniband device.

Definition at line 398 of file infiniband.h.

Field Documentation

◆ refcnt

struct refcnt ib_device::refcnt

Reference counter.

Definition at line 400 of file infiniband.h.

Referenced by ibdev_get(), and ibdev_put().

◆ list

struct list_head ib_device::list

List of Infiniband devices.

Definition at line 402 of file infiniband.h.

Referenced by alloc_ibdev(), register_ibdev(), and unregister_ibdev().

◆ open_list

struct list_head ib_device::open_list

List of open Infiniband devices.

Definition at line 404 of file infiniband.h.

Referenced by alloc_ibdev(), ib_close(), ib_open(), ib_step(), and last_opened_ibdev().

◆ index

unsigned int ib_device::index

Index of this Infiniband device.

Definition at line 406 of file infiniband.h.

Referenced by register_ibdev().

◆ name

char ib_device::name[IBDEV_NAME_LEN]

◆ dev

struct device* ib_device::dev

◆ cqs

struct list_head ib_device::cqs

List of completion queues.

Definition at line 412 of file infiniband.h.

Referenced by alloc_ibdev(), flexboot_nodnic_complete_all_tx(), ib_create_cq(), and ib_poll_eq().

◆ qps

struct list_head ib_device::qps

List of queue pairs.

Definition at line 414 of file infiniband.h.

Referenced by alloc_ibdev(), ib_create_qp(), ib_find_qp_mgid(), ib_find_qp_qpn(), and ibstat().

◆ op

struct ib_device_operations* ib_device::op

◆ port

unsigned int ib_device::port

Port number.

Definition at line 418 of file infiniband.h.

Referenced by arbel_alloc_qpn(), arbel_create_qp(), arbel_fill_ud_send_wqe(), arbel_ib_close(), arbel_ib_open(), arbel_mad(), arbel_probe(), flexboot_nodnic_allocate_infiniband_devices(), flexboot_nodnic_create_cq(), flexboot_nodnic_create_qp(), flexboot_nodnic_destroy_cq(), flexboot_nodnic_destroy_qp(), flexboot_nodnic_eth_close(), flexboot_nodnic_eth_open(), flexboot_nodnic_eth_transmit(), flexboot_nodnic_find_wq(), flexboot_nodnic_mcast_attach(), flexboot_nodnic_mcast_detach(), flexboot_nodnic_poll_eq(), flexboot_nodnic_post_recv(), flexboot_nodnic_post_send(), flexboot_nodnic_register_netdev(), golan_modify_qp_rst_to_init(), golan_probe_normal(), golan_query_vport_context(), golan_query_vport_gid(), golan_query_vport_pkey(), golan_register_ibdev(), hermon_alloc_qpn(), hermon_eth_close(), hermon_eth_open(), hermon_eth_transmit(), hermon_fill_ud_send_wqe(), hermon_ib_close(), hermon_ib_open(), hermon_mad(), hermon_probe(), hermon_register_ibdev(), hermon_register_netdev(), hermon_sched_queue(), hermon_sense_port_type(), hermon_set_port_type(), ib_mi_send(), ib_sma_node_info(), ib_sma_port_info(), ib_smc_get_port_info(), ibstat(), linda_probe(), qib7322_alloc_ctx(), qib7322_close(), qib7322_create_recv_wq(), qib7322_create_send_wq(), qib7322_ctx(), qib7322_destroy_recv_wq(), qib7322_free_ctx(), qib7322_link_state_changed(), qib7322_link_state_check(), qib7322_open(), qib7322_poll_eq(), qib7322_post_send(), qib7322_probe(), qib7322_set_port_info(), and shomron_fill_eth_send_wqe().

◆ ports

unsigned int ib_device::ports

◆ open_count

unsigned int ib_device::open_count

Port open request counter.

Definition at line 422 of file infiniband.h.

Referenced by ib_close(), ib_is_open(), ib_open(), and last_opened_ibdev().

◆ port_state

uint8_t ib_device::port_state

◆ link_width_supported

uint8_t ib_device::link_width_supported

Link width supported.

Definition at line 427 of file infiniband.h.

Referenced by ib_sma_port_info(), ib_smc_get(), linda_probe(), and qib7322_probe().

◆ link_width_enabled

uint8_t ib_device::link_width_enabled

Link width enabled.

Definition at line 429 of file infiniband.h.

Referenced by ib_sma_port_info(), ib_sma_set_port_info(), ib_smc_get(), linda_probe(), and qib7322_probe().

◆ link_width_active

uint8_t ib_device::link_width_active

Link width active.

Definition at line 431 of file infiniband.h.

Referenced by ib_sma_port_info(), ib_smc_get(), linda_link_state_changed(), and qib7322_link_state_changed().

◆ link_speed_supported

uint8_t ib_device::link_speed_supported

Link speed supported.

Definition at line 433 of file infiniband.h.

Referenced by ib_sma_port_info(), ib_smc_get(), linda_probe(), and qib7322_probe().

◆ link_speed_enabled

uint8_t ib_device::link_speed_enabled

Link speed enabled.

Definition at line 435 of file infiniband.h.

Referenced by ib_sma_port_info(), ib_sma_set_port_info(), ib_smc_get(), linda_probe(), and qib7322_probe().

◆ link_speed_active

uint8_t ib_device::link_speed_active

Link speed active.

Definition at line 437 of file infiniband.h.

Referenced by ib_sma_port_info(), ib_smc_get(), linda_link_state_changed(), and qib7322_link_state_changed().

◆ node_guid

union ib_guid ib_device::node_guid

◆ gid

union ib_gid ib_device::gid

◆ lid

uint16_t ib_device::lid

◆ sm_lid

uint16_t ib_device::sm_lid

Subnet manager LID.

Definition at line 445 of file infiniband.h.

Referenced by golan_query_vport_context(), ib_create_madx(), ib_sma_port_info(), ib_sma_set_port_info(), and ib_smc_get().

◆ sm_sl

uint8_t ib_device::sm_sl

◆ pkey

uint16_t ib_device::pkey

◆ rdma_key

uint32_t ib_device::rdma_key

RDMA key.

This is a single key allowing unrestricted access to memory.

Definition at line 456 of file infiniband.h.

Referenced by arbel_start(), hermon_start(), and ib_srp_open().

◆ smi

struct ib_mad_interface* ib_device::smi

Subnet management interface.

Definition at line 459 of file infiniband.h.

Referenced by ib_close(), and ib_open().

◆ gsi

struct ib_mad_interface* ib_device::gsi

◆ lemac

uint8_t ib_device::lemac[ETH_ALEN]

IPoIB LEMAC (if non-default)

Definition at line 464 of file infiniband.h.

Referenced by hermon_register_ibdev(), and ipoib_probe().

◆ drv_priv

void* ib_device::drv_priv

Driver private data.

Definition at line 467 of file infiniband.h.

Referenced by alloc_ibdev(), ib_get_drvdata(), and ib_set_drvdata().


The documentation for this struct was generated from the following file: