Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit de66be94 authored by Michael Wang's avatar Michael Wang Committed by Doug Ledford
Browse files

IB/Verbs: Implement raw management helpers



Add raw helpers:
        rdma_protocol_ib
        rdma_protocol_iboe
        rdma_protocol_iwarp
        rdma_ib_or_iboe (transition, clean up later)
To help us detect which technology the port supported.

Signed-off-by: default avatarMichael Wang <yun.wang@profitbricks.com>
Reviewed-by: default avatarIra Weiny <ira.weiny@intel.com>
Tested-by: default avatarIra Weiny <ira.weiny@intel.com>
Reviewed-by: default avatarSean Hefty <sean.hefty@intel.com>
Reviewed-by: default avatarJason Gunthorpe <jgunthorpe@obsidianresearch.com>
Tested-by: default avatarDoug Ledford <dledford@redhat.com>
Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
parent 6b90a6d6
Loading
Loading
Loading
Loading
+22 −0
Original line number Original line Diff line number Diff line
@@ -1752,6 +1752,28 @@ int ib_query_port(struct ib_device *device,
enum rdma_link_layer rdma_port_get_link_layer(struct ib_device *device,
enum rdma_link_layer rdma_port_get_link_layer(struct ib_device *device,
					       u8 port_num);
					       u8 port_num);


static inline bool rdma_protocol_ib(struct ib_device *device, u8 port_num)
{
	return device->query_protocol(device, port_num) == RDMA_PROTOCOL_IB;
}

static inline bool rdma_protocol_iboe(struct ib_device *device, u8 port_num)
{
	return device->query_protocol(device, port_num) == RDMA_PROTOCOL_IBOE;
}

static inline bool rdma_protocol_iwarp(struct ib_device *device, u8 port_num)
{
	return device->query_protocol(device, port_num) == RDMA_PROTOCOL_IWARP;
}

static inline bool rdma_ib_or_iboe(struct ib_device *device, u8 port_num)
{
	enum rdma_protocol_type pt = device->query_protocol(device, port_num);

	return (pt == RDMA_PROTOCOL_IB || pt == RDMA_PROTOCOL_IBOE);
}

int ib_query_gid(struct ib_device *device,
int ib_query_gid(struct ib_device *device,
		 u8 port_num, int index, union ib_gid *gid);
		 u8 port_num, int index, union ib_gid *gid);