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: Michael Wang <yun.wang@profitbricks.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Tested-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Sean Hefty <sean.hefty@intel.com>
Reviewed-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Tested-by: Doug Ledford <dledford@redhat.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
Michael Wang 2015-05-05 14:50:19 +02:00 committed by Doug Ledford
parent 6b90a6d66b
commit de66be9474
1 changed files with 22 additions and 0 deletions

View File

@ -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);