1 #ifndef _IPXE_IB_PACKET_H 2 #define _IPXE_IB_PACKET_H 26 #define IB_GUID_FMT "%08x:%08x" 29 #define IB_GUID_ARGS( guid ) \ 30 ntohl ( (guid)->dwords[0] ), ntohl ( (guid)->dwords[1] ) 45 #define IB_GID_FMT IB_GUID_FMT ":" IB_GUID_FMT 48 #define IB_GID_ARGS( gid ) \ 49 IB_GUID_ARGS ( &(gid)->s.prefix ), IB_GUID_ARGS ( &(gid)->s.guid ) 52 #define IB_GID_MULTICAST( gid ) ( (gid)->bytes[0] == 0xff ) 83 #define IB_LID_NONE 0xffff 86 #define IB_LID_MULTICAST( lid ) ( ( (lid) >= 0xc000 ) && ( (lid) <= 0xfffe ) ) 109 #define IB_GRH_IPVER_IPv6 0x06 110 #define IB_GRH_NXTHDR_IBA 0x1b 156 #define IB_MAX_HEADER_SIZE sizeof ( union ib_headers )
ib_bth_opcode
An Infiniband BTH opcode.
unsigned long long uint64_t
int ib_push(struct ib_device *ibdev, struct io_buffer *iobuf, struct ib_queue_pair *qp, size_t payload_len, const struct ib_address_vector *dest)
Add IB headers.
An Infiniband Global Identifier.
ib_lnh
An Infiniband Link Next Header value.
int ib_pull(struct ib_device *ibdev, struct io_buffer *iobuf, struct ib_queue_pair **qp, size_t *payload_len, struct ib_address_vector *dest, struct ib_address_vector *source)
Remove IB headers.
An Infiniband Globally Unique Identifier.
An Infiniband Queue Pair.
struct arbelprm_qp_db_record qp
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
if(len >=6 *4) __asm__ __volatile__("movsl" if(len >=5 *4) __asm__ __volatile__("movsl" if(len >=4 *4) __asm__ __volatile__("movsl" if(len >=3 *4) __asm__ __volatile__("movsl" if(len >=2 *4) __asm__ __volatile__("movsl" if(len >=1 *4) __asm__ __volatile__("movsl" if((len % 4) >=2) __asm__ __volatile__("movsw" if((len % 2) >=1) __asm__ __volatile__("movsb" return dest
An Infiniband Address Vector.
ib_vl
Infiniband virtual lanes.