ib_device_operations Struct Reference

Infiniband device operations. More...

#include <infiniband.h>


Data Fields

int(* create_cq )(struct ib_device *ibdev, struct ib_completion_queue *cq)
 Create completion queue.
void(* destroy_cq )(struct ib_device *ibdev, struct ib_completion_queue *cq)
 Destroy completion queue.
int(* create_qp )(struct ib_device *ibdev, struct ib_queue_pair *qp)
 Create queue pair.
int(* modify_qp )(struct ib_device *ibdev, struct ib_queue_pair *qp)
 Modify queue pair.
void(* destroy_qp )(struct ib_device *ibdev, struct ib_queue_pair *qp)
 Destroy queue pair.
int(* post_send )(struct ib_device *ibdev, struct ib_queue_pair *qp, struct ib_address_vector *av, struct io_buffer *iobuf)
 Post send work queue entry.
int(* post_recv )(struct ib_device *ibdev, struct ib_queue_pair *qp, struct io_buffer *iobuf)
 Post receive work queue entry.
void(* poll_cq )(struct ib_device *ibdev, struct ib_completion_queue *cq)
 Poll completion queue.
void(* poll_eq )(struct ib_device *ibdev)
 Poll event queue.
int(* open )(struct ib_device *ibdev)
 Open port.
void(* close )(struct ib_device *ibdev)
 Close port.
int(* mcast_attach )(struct ib_device *ibdev, struct ib_queue_pair *qp, struct ib_gid *gid)
 Attach to multicast group.
void(* mcast_detach )(struct ib_device *ibdev, struct ib_queue_pair *qp, struct ib_gid *gid)
 Detach from multicast group.
int(* set_port_info )(struct ib_device *ibdev, union ib_mad *mad)
 Set port information.
int(* set_pkey_table )(struct ib_device *ibdev, union ib_mad *mad)
 Set partition key table.


Detailed Description

Infiniband device operations.

These represent a subset of the Infiniband Verbs.

Definition at line 231 of file infiniband.h.


Field Documentation

Create completion queue.

Parameters:
ibdev Infiniband device
cq Completion queue
Return values:
rc Return status code

Referenced by ib_create_cq().

void( * ib_device_operations::destroy_cq)(struct ib_device *ibdev, struct ib_completion_queue *cq)

Destroy completion queue.

Parameters:
ibdev Infiniband device
cq Completion queue

Referenced by ib_create_cq(), and ib_destroy_cq().

int( * ib_device_operations::create_qp)(struct ib_device *ibdev, struct ib_queue_pair *qp)

Create queue pair.

Parameters:
ibdev Infiniband device
qp Queue pair
Return values:
rc Return status code

Referenced by ib_create_qp().

int( * ib_device_operations::modify_qp)(struct ib_device *ibdev, struct ib_queue_pair *qp)

Modify queue pair.

Parameters:
ibdev Infiniband device
qp Queue pair
Return values:
rc Return status code

Referenced by ib_modify_qp().

void( * ib_device_operations::destroy_qp)(struct ib_device *ibdev, struct ib_queue_pair *qp)

Destroy queue pair.

Parameters:
ibdev Infiniband device
qp Queue pair

Referenced by ib_create_qp(), and ib_destroy_qp().

int( * ib_device_operations::post_send)(struct ib_device *ibdev, struct ib_queue_pair *qp, struct ib_address_vector *av, struct io_buffer *iobuf)

Post send work queue entry.

Parameters:
ibdev Infiniband device
qp Queue pair
av Address vector
iobuf I/O buffer
Return values:
rc Return status code
If this method returns success, the I/O buffer remains owned by the queue pair. If this method returns failure, the I/O buffer is immediately released; the failure is interpreted as "failure to enqueue buffer".

Referenced by ib_post_send().

int( * ib_device_operations::post_recv)(struct ib_device *ibdev, struct ib_queue_pair *qp, struct io_buffer *iobuf)

Post receive work queue entry.

Parameters:
ibdev Infiniband device
qp Queue pair
iobuf I/O buffer
Return values:
rc Return status code
If this method returns success, the I/O buffer remains owned by the queue pair. If this method returns failure, the I/O buffer is immediately released; the failure is interpreted as "failure to enqueue buffer".

Referenced by ib_post_recv().

void( * ib_device_operations::poll_cq)(struct ib_device *ibdev, struct ib_completion_queue *cq)

Poll completion queue.

Parameters:
ibdev Infiniband device
cq Completion queue
The relevant completion handler (specified at completion queue creation time) takes ownership of the I/O buffer.

Referenced by ib_poll_cq().

void( * ib_device_operations::poll_eq)(struct ib_device *ibdev)

Poll event queue.

Parameters:
ibdev Infiniband device

Referenced by ib_poll_eq().

int( * ib_device_operations::open)(struct ib_device *ibdev)

Open port.

Parameters:
ibdev Infiniband device
Return values:
rc Return status code

Referenced by ib_open().

void( * ib_device_operations::close)(struct ib_device *ibdev)

Close port.

Parameters:
ibdev Infiniband device

Referenced by ib_close(), and ib_open().

int( * ib_device_operations::mcast_attach)(struct ib_device *ibdev, struct ib_queue_pair *qp, struct ib_gid *gid)

Attach to multicast group.

Parameters:
ibdev Infiniband device
qp Queue pair
gid Multicast GID
Return values:
rc Return status code

Referenced by ib_mcast_attach().

void( * ib_device_operations::mcast_detach)(struct ib_device *ibdev, struct ib_queue_pair *qp, struct ib_gid *gid)

Detach from multicast group.

Parameters:
ibdev Infiniband device
qp Queue pair
gid Multicast GID

Referenced by ib_mcast_detach().

int( * ib_device_operations::set_port_info)(struct ib_device *ibdev, union ib_mad *mad)

Set port information.

Parameters:
ibdev Infiniband device
mad Set port information MAD
This method is required only by adapters that do not have an embedded SMA.

Referenced by ib_set_port_info().

int( * ib_device_operations::set_pkey_table)(struct ib_device *ibdev, union ib_mad *mad)

Set partition key table.

Parameters:
ibdev Infiniband device
mad Set partition key table MAD
This method is required only by adapters that do not have an embedded SMA.

Referenced by ib_set_pkey_table().


The documentation for this struct was generated from the following file:

Generated on Tue Apr 6 20:02:05 2010 for gPXE by  doxygen 1.5.7.1