|
iPXE
|
Mellanox bit operations. More...
Go to the source code of this file.
Macros | |
| #define | MLX_DECLARE_STRUCT(_structure) |
| Wrapper structure for pseudo_bit_t structures. | |
| #define | MLX_PSEUDO_STRUCT(_ptr) |
| Get pseudo_bit_t structure type from wrapper structure pointer. | |
| #define | MLX_BIT_OFFSET(_structure_st, _field) |
| Bit offset of a field within a pseudo_bit_t structure. | |
| #define | MLX_DWORD_OFFSET(_structure_st, _field) |
| Dword offset of a field within a pseudo_bit_t structure. | |
| #define | MLX_DWORD_BIT_OFFSET(_structure_st, _index, _field) |
| Dword bit offset of a field within a pseudo_bit_t structure. | |
| #define | MLX_BIT_WIDTH(_structure_st, _field) |
| Bit width of a field within a pseudo_bit_t structure. | |
| #define | MLX_BIT_MASK(_structure_st, _field) |
| Bit mask for a field within a pseudo_bit_t structure. | |
| #define | MLX_ASSEMBLE_1(_structure_st, _index, _field, _value) |
| #define | MLX_ASSEMBLE_2(_structure_st, _index, _field, _value, ...) |
| #define | MLX_ASSEMBLE_3(_structure_st, _index, _field, _value, ...) |
| #define | MLX_ASSEMBLE_4(_structure_st, _index, _field, _value, ...) |
| #define | MLX_ASSEMBLE_5(_structure_st, _index, _field, _value, ...) |
| #define | MLX_ASSEMBLE_6(_structure_st, _index, _field, _value, ...) |
| #define | MLX_ASSEMBLE_7(_structure_st, _index, _field, _value, ...) |
| #define | MLX_ASSEMBLE_8(_structure_st, _index, _field, _value, ...) |
| #define | MLX_MASK_1(_structure_st, _index, _field) |
| #define | MLX_MASK_2(_structure_st, _index, _field, ...) |
| #define | MLX_MASK_3(_structure_st, _index, _field, ...) |
| #define | MLX_MASK_4(_structure_st, _index, _field, ...) |
| #define | MLX_MASK_5(_structure_st, _index, _field, ...) |
| #define | MLX_MASK_6(_structure_st, _index, _field, ...) |
| #define | MLX_MASK_7(_structure_st, _index, _field, ...) |
| #define | MLX_MASK_8(_structure_st, _index, _field, ...) |
| #define | MLX_FILL(_ptr, _index, _assembled) |
| #define | MLX_FILL_1(_ptr, _index, ...) |
| #define | MLX_FILL_2(_ptr, _index, ...) |
| #define | MLX_FILL_3(_ptr, _index, ...) |
| #define | MLX_FILL_4(_ptr, _index, ...) |
| #define | MLX_FILL_5(_ptr, _index, ...) |
| #define | MLX_FILL_6(_ptr, _index, ...) |
| #define | MLX_FILL_7(_ptr, _index, ...) |
| #define | MLX_FILL_8(_ptr, _index, ...) |
| #define | MLX_SET(_ptr, _field, _value) |
| #define | MLX_GET(_ptr, _field) |
| #define | MLX_FILL_H(_structure_st, _index, _field, _address) |
Functions | |
| FILE_LICENCE (GPL2_OR_LATER) | |
Mellanox bit operations.
Definition in file mlx_bitops.h.
| #define MLX_DECLARE_STRUCT | ( | _structure | ) |
Wrapper structure for pseudo_bit_t structures.
This structure provides a wrapper around the autogenerated pseudo_bit_t structures. It has the correct size, and also encapsulates type information about the underlying pseudo_bit_t structure, which allows the MLX_FILL etc. macros to work without requiring explicit type information.
Definition at line 44 of file mlx_bitops.h.
| #define MLX_PSEUDO_STRUCT | ( | _ptr | ) |
Get pseudo_bit_t structure type from wrapper structure pointer.
Definition at line 54 of file mlx_bitops.h.
| #define MLX_BIT_OFFSET | ( | _structure_st, | |
| _field ) |
Bit offset of a field within a pseudo_bit_t structure.
Definition at line 58 of file mlx_bitops.h.
| #define MLX_DWORD_OFFSET | ( | _structure_st, | |
| _field ) |
Dword offset of a field within a pseudo_bit_t structure.
Definition at line 62 of file mlx_bitops.h.
| #define MLX_DWORD_BIT_OFFSET | ( | _structure_st, | |
| _index, | |||
| _field ) |
Dword bit offset of a field within a pseudo_bit_t structure.
Yes, using mod-32 would work, but would lose the check for the error of specifying a mismatched field name and dword index.
Definition at line 70 of file mlx_bitops.h.
| #define MLX_BIT_WIDTH | ( | _structure_st, | |
| _field ) |
Bit width of a field within a pseudo_bit_t structure.
Definition at line 74 of file mlx_bitops.h.
| #define MLX_BIT_MASK | ( | _structure_st, | |
| _field ) |
Bit mask for a field within a pseudo_bit_t structure.
Definition at line 78 of file mlx_bitops.h.
| #define MLX_ASSEMBLE_1 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| _value ) |
Definition at line 87 of file mlx_bitops.h.
| #define MLX_ASSEMBLE_2 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| _value, | |||
| ... ) |
Definition at line 90 of file mlx_bitops.h.
| #define MLX_ASSEMBLE_3 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| _value, | |||
| ... ) |
Definition at line 94 of file mlx_bitops.h.
| #define MLX_ASSEMBLE_4 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| _value, | |||
| ... ) |
Definition at line 98 of file mlx_bitops.h.
| #define MLX_ASSEMBLE_5 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| _value, | |||
| ... ) |
Definition at line 102 of file mlx_bitops.h.
| #define MLX_ASSEMBLE_6 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| _value, | |||
| ... ) |
Definition at line 106 of file mlx_bitops.h.
| #define MLX_ASSEMBLE_7 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| _value, | |||
| ... ) |
Definition at line 110 of file mlx_bitops.h.
| #define MLX_ASSEMBLE_8 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| _value, | |||
| ... ) |
Definition at line 114 of file mlx_bitops.h.
| #define MLX_MASK_1 | ( | _structure_st, | |
| _index, | |||
| _field ) |
Definition at line 123 of file mlx_bitops.h.
| #define MLX_MASK_2 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| ... ) |
Definition at line 127 of file mlx_bitops.h.
| #define MLX_MASK_3 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| ... ) |
Definition at line 131 of file mlx_bitops.h.
| #define MLX_MASK_4 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| ... ) |
Definition at line 135 of file mlx_bitops.h.
| #define MLX_MASK_5 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| ... ) |
Definition at line 139 of file mlx_bitops.h.
| #define MLX_MASK_6 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| ... ) |
Definition at line 143 of file mlx_bitops.h.
| #define MLX_MASK_7 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| ... ) |
Definition at line 147 of file mlx_bitops.h.
| #define MLX_MASK_8 | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| ... ) |
Definition at line 151 of file mlx_bitops.h.
| #define MLX_FILL | ( | _ptr, | |
| _index, | |||
| _assembled ) |
Definition at line 160 of file mlx_bitops.h.
| #define MLX_FILL_1 | ( | _ptr, | |
| _index, | |||
| ... ) |
Definition at line 167 of file mlx_bitops.h.
Referenced by arbel_alloc_icm(), arbel_cmd(), arbel_complete(), arbel_create_cq(), arbel_create_eq(), arbel_create_qp(), arbel_create_recv_wq(), arbel_create_send_wq(), arbel_destroy_cq(), arbel_destroy_eq(), arbel_destroy_qp(), arbel_fill_mlx_send_wqe(), arbel_fill_rc_send_wqe(), arbel_fill_ud_send_wqe(), arbel_free_icm(), arbel_ib_open(), arbel_map_vpm(), arbel_modify_qp(), arbel_poll_cq(), arbel_poll_eq(), arbel_post_recv(), arbel_post_send(), arbel_setup_mpt(), flexboot_nodnic_post_recv(), hermon_alloc_mtt(), hermon_bofm_update(), hermon_cmd(), hermon_create_cq(), hermon_create_eq(), hermon_create_qp(), hermon_eth_open(), hermon_fill_eth_send_wqe(), hermon_fill_mlx_send_wqe(), hermon_fill_nop_send_wqe(), hermon_fill_rc_send_wqe(), hermon_fill_ud_send_wqe(), hermon_ib_open(), hermon_map_icm(), hermon_map_vpm(), hermon_mcast_attach(), hermon_modify_qp(), hermon_poll_cq(), hermon_poll_eq(), hermon_post_recv(), hermon_post_send(), hermon_setup_mpt(), hermon_start(), hermon_unmap_icm(), shomron_cqe_set_owner(), and shomron_fill_eth_send_wqe().
| #define MLX_FILL_2 | ( | _ptr, | |
| _index, | |||
| ... ) |
Definition at line 171 of file mlx_bitops.h.
Referenced by arbel_alloc_icm(), arbel_create_cq(), arbel_create_qp(), arbel_fill_ud_send_wqe(), arbel_map_vpm(), arbel_mcast_attach(), arbel_modify_qp(), arbel_post_send(), arbel_setup_mpt(), hermon_alloc_mtt(), hermon_bofm_update(), hermon_create_cq(), hermon_create_eq(), hermon_create_qp(), hermon_eth_open(), hermon_fill_eth_send_wqe(), hermon_fill_ud_send_wqe(), hermon_ib_open(), hermon_map_icm(), hermon_map_vpm(), hermon_mod_stat_cfg(), hermon_modify_qp(), hermon_post_send(), and shomron_fill_eth_send_wqe().
| #define MLX_FILL_3 | ( | _ptr, | |
| _index, | |||
| ... ) |
Definition at line 175 of file mlx_bitops.h.
Referenced by arbel_cmd(), arbel_create_qp(), arbel_ib_open(), arbel_post_send(), and hermon_eth_open().
| #define MLX_FILL_4 | ( | _ptr, | |
| _index, | |||
| ... ) |
Definition at line 179 of file mlx_bitops.h.
Referenced by arbel_create_qp(), arbel_post_send(), hermon_cmd(), and hermon_create_qp().
| #define MLX_FILL_5 | ( | _ptr, | |
| _index, | |||
| ... ) |
Definition at line 183 of file mlx_bitops.h.
Referenced by arbel_fill_mlx_send_wqe(), and hermon_fill_mlx_send_wqe().
| #define MLX_FILL_6 | ( | _ptr, | |
| _index, | |||
| ... ) |
Definition at line 187 of file mlx_bitops.h.
| #define MLX_FILL_7 | ( | _ptr, | |
| _index, | |||
| ... ) |
Definition at line 191 of file mlx_bitops.h.
Referenced by arbel_setup_mpt(), and hermon_setup_mpt().
| #define MLX_FILL_8 | ( | _ptr, | |
| _index, | |||
| ... ) |
Definition at line 195 of file mlx_bitops.h.
Referenced by hermon_ib_open().
| #define MLX_SET | ( | _ptr, | |
| _field, | |||
| _value ) |
Definition at line 204 of file mlx_bitops.h.
Referenced by arbel_post_send().
| #define MLX_GET | ( | _ptr, | |
| _field ) |
Definition at line 222 of file mlx_bitops.h.
Referenced by arbel_alloc_icm(), arbel_cmd(), arbel_cmd_wait(), arbel_complete(), arbel_event_port_state_change(), arbel_get_limits(), arbel_mcast_attach(), arbel_mcast_detach(), arbel_poll_cq(), arbel_poll_eq(), arbel_start_firmware(), hermon_bofm_harvest(), hermon_cmd(), hermon_cmd_wait(), hermon_complete(), hermon_dump_eqes(), hermon_dump_qpctx(), hermon_event_port_mgmnt_change(), hermon_event_port_state_change(), hermon_get_cap(), hermon_map_icm(), hermon_mcast_attach(), hermon_mcast_detach(), hermon_poll_cq(), hermon_poll_eq(), hermon_sense_port_type(), hermon_set_port_type(), hermon_start_firmware(), shomron_fill_completion(), and shomron_tx_uar_send_db().
| #define MLX_FILL_H | ( | _structure_st, | |
| _index, | |||
| _field, | |||
| _address ) |
Definition at line 240 of file mlx_bitops.h.
Referenced by arbel_cmd(), arbel_create_cq(), arbel_create_eq(), arbel_create_qp(), arbel_fill_mlx_send_wqe(), arbel_fill_rc_send_wqe(), arbel_fill_ud_send_wqe(), arbel_map_vpm(), arbel_post_recv(), flexboot_nodnic_post_recv(), hermon_alloc_mtt(), hermon_cmd(), hermon_create_cq(), hermon_create_eq(), hermon_create_qp(), hermon_fill_eth_send_wqe(), hermon_fill_mlx_send_wqe(), hermon_fill_rc_send_wqe(), hermon_fill_ud_send_wqe(), hermon_map_vpm(), hermon_post_recv(), and shomron_fill_eth_send_wqe().
| FILE_LICENCE | ( | GPL2_OR_LATER | ) |