iPXE
|
A Hermon device. More...
#include <hermon.h>
Data Fields | |
struct pci_device * | pci |
PCI device. More... | |
void * | config |
PCI configuration registers. More... | |
void * | uar |
PCI user Access Region. More... | |
unsigned int | toggle |
Command toggle. More... | |
void * | mailbox_in |
Command input mailbox. More... | |
void * | mailbox_out |
Command output mailbox. More... | |
unsigned int | open_count |
Device open request counter. More... | |
size_t | firmware_len |
Firmware size. More... | |
userptr_t | firmware_area |
Firmware area in external memory. More... | |
struct hermon_icm_map | icm_map [HERMON_ICM_NUM_REGIONS] |
ICM map. More... | |
size_t | icm_len |
ICM size. More... | |
size_t | icm_aux_len |
ICM AUX size. More... | |
userptr_t | icm |
ICM area. More... | |
struct hermon_event_queue | eq |
Event queue. More... | |
unsigned long | last_poll |
Last unsolicited link state poll. More... | |
unsigned long | lkey |
Unrestricted LKey. More... | |
hermon_bitmask_t | cq_inuse [HERMON_BITMASK_SIZE(HERMON_MAX_CQS)] |
Completion queue in-use bitmask. More... | |
hermon_bitmask_t | qp_inuse [HERMON_BITMASK_SIZE(HERMON_MAX_QPS)] |
Queue pair in-use bitmask. More... | |
hermon_bitmask_t | mtt_inuse [HERMON_BITMASK_SIZE(HERMON_MAX_MTTS)] |
MTT entry in-use bitmask. More... | |
struct hermon_dev_cap | cap |
Device capabilities. More... | |
unsigned long | special_qpn_base |
Special QPN base. More... | |
unsigned long | qpn_base |
QPN base. More... | |
struct nvs_vpd_device | nvsvpd |
Non-volatile storage in PCI VPD. More... | |
struct hermon_port | port [HERMON_MAX_PORTS] |
Ports. More... | |
struct bofm_device | bofm |
BOFM device. More... | |
struct pci_device* hermon::pci |
PCI device.
Definition at line 866 of file hermon.h.
Referenced by hermon_bofm_probe(), hermon_bofm_remove(), hermon_probe(), hermon_remove(), and hermon_reset().
void* hermon::config |
PCI configuration registers.
Definition at line 868 of file hermon.h.
Referenced by hermon_bofm_probe(), hermon_bofm_remove(), hermon_cmd(), hermon_cmd_wait(), hermon_probe(), hermon_remove(), and hermon_reset().
void* hermon::uar |
PCI user Access Region.
Definition at line 870 of file hermon.h.
Referenced by hermon_create_eq(), hermon_create_qp(), hermon_probe(), and hermon_remove().
unsigned int hermon::toggle |
Command toggle.
Definition at line 873 of file hermon.h.
Referenced by hermon_cmd(), hermon_cmd_wait(), and hermon_reset().
void* hermon::mailbox_in |
Command input mailbox.
Definition at line 875 of file hermon.h.
Referenced by hermon_alloc(), hermon_cmd(), and hermon_free().
void* hermon::mailbox_out |
Command output mailbox.
Definition at line 877 of file hermon.h.
Referenced by hermon_alloc(), hermon_cmd(), and hermon_free().
unsigned int hermon::open_count |
Device open request counter.
Definition at line 880 of file hermon.h.
Referenced by hermon_close(), hermon_open(), and hermon_probe().
size_t hermon::firmware_len |
userptr_t hermon::firmware_area |
Firmware area in external memory.
This is allocated when first needed, and freed only on final teardown, in order to avoid memory map changes at runtime.
Definition at line 890 of file hermon.h.
Referenced by hermon_free(), hermon_start_firmware(), and hermon_stop_firmware().
struct hermon_icm_map hermon::icm_map[HERMON_ICM_NUM_REGIONS] |
ICM map.
Definition at line 892 of file hermon.h.
Referenced by hermon_map_icm(), and hermon_unmap_icm().
size_t hermon::icm_len |
size_t hermon::icm_aux_len |
userptr_t hermon::icm |
ICM area.
This is allocated when first needed, and freed only on final teardown, in order to avoid memory map changes at runtime.
Definition at line 903 of file hermon.h.
Referenced by hermon_free(), and hermon_map_icm().
struct hermon_event_queue hermon::eq |
Event queue.
Definition at line 906 of file hermon.h.
Referenced by hermon_create_cq(), hermon_create_eq(), hermon_destroy_eq(), and hermon_poll_eq().
unsigned long hermon::last_poll |
Last unsolicited link state poll.
Definition at line 908 of file hermon.h.
Referenced by hermon_poll_eq().
unsigned long hermon::lkey |
Unrestricted LKey.
Used to get unrestricted memory access.
Definition at line 913 of file hermon.h.
Referenced by hermon_fill_eth_send_wqe(), hermon_fill_mlx_send_wqe(), hermon_fill_rc_send_wqe(), hermon_fill_ud_send_wqe(), hermon_post_recv(), hermon_setup_mpt(), and hermon_start().
hermon_bitmask_t hermon::cq_inuse[HERMON_BITMASK_SIZE(HERMON_MAX_CQS)] |
Completion queue in-use bitmask.
Definition at line 916 of file hermon.h.
Referenced by hermon_create_cq(), and hermon_destroy_cq().
hermon_bitmask_t hermon::qp_inuse[HERMON_BITMASK_SIZE(HERMON_MAX_QPS)] |
Queue pair in-use bitmask.
Definition at line 918 of file hermon.h.
Referenced by hermon_alloc_qpn(), and hermon_free_qpn().
hermon_bitmask_t hermon::mtt_inuse[HERMON_BITMASK_SIZE(HERMON_MAX_MTTS)] |
MTT entry in-use bitmask.
Definition at line 920 of file hermon.h.
Referenced by hermon_alloc_mtt(), and hermon_free_mtt().
struct hermon_dev_cap hermon::cap |
Device capabilities.
Definition at line 923 of file hermon.h.
Referenced by hermon_alloc_mtt(), hermon_configure_special_qps(), hermon_create_cq(), hermon_create_eq(), hermon_destroy_cq(), hermon_event_port_mgmnt_change(), hermon_event_port_state_change(), hermon_get_cap(), hermon_map_icm(), hermon_probe(), hermon_remove(), hermon_sense_port_type(), hermon_setup_mpt(), hermon_start(), and hermon_unmap_mpt().
unsigned long hermon::special_qpn_base |
Special QPN base.
Definition at line 925 of file hermon.h.
Referenced by hermon_alloc_qpn(), and hermon_configure_special_qps().
unsigned long hermon::qpn_base |
QPN base.
Definition at line 927 of file hermon.h.
Referenced by hermon_alloc_qpn(), hermon_configure_special_qps(), and hermon_free_qpn().
struct nvs_vpd_device hermon::nvsvpd |
Non-volatile storage in PCI VPD.
Definition at line 930 of file hermon.h.
Referenced by hermon_probe().
struct hermon_port hermon::port[HERMON_MAX_PORTS] |
Ports.
Definition at line 933 of file hermon.h.
Referenced by hermon_event_port_mgmnt_change(), hermon_event_port_state_change(), hermon_probe(), hermon_remove(), and hermon_start().
struct bofm_device hermon::bofm |
BOFM device.
Definition at line 936 of file hermon.h.
Referenced by hermon_bofm_probe(), and hermon_bofm_remove().