mirror of https://github.com/ipxe/ipxe.git
[infiniband] Add support for identifying the underlying hardware device
Signed-off-by: Michael Brown <mcb30@ipxe.org>pull/1/head
parent
d068049789
commit
9e036d32ba
|
@ -701,7 +701,8 @@ static struct interface_operation srpdev_socket_op[] = {
|
||||||
|
|
||||||
/** SRP device socket interface descriptor */
|
/** SRP device socket interface descriptor */
|
||||||
static struct interface_descriptor srpdev_socket_desc =
|
static struct interface_descriptor srpdev_socket_desc =
|
||||||
INTF_DESC ( struct srp_device, socket, srpdev_socket_op );
|
INTF_DESC_PASSTHRU ( struct srp_device, socket, srpdev_socket_op,
|
||||||
|
scsi );
|
||||||
|
|
||||||
/** SRP device SCSI interface operations */
|
/** SRP device SCSI interface operations */
|
||||||
static struct interface_operation srpdev_scsi_op[] = {
|
static struct interface_operation srpdev_scsi_op[] = {
|
||||||
|
@ -713,7 +714,7 @@ static struct interface_operation srpdev_scsi_op[] = {
|
||||||
|
|
||||||
/** SRP device SCSI interface descriptor */
|
/** SRP device SCSI interface descriptor */
|
||||||
static struct interface_descriptor srpdev_scsi_desc =
|
static struct interface_descriptor srpdev_scsi_desc =
|
||||||
INTF_DESC ( struct srp_device, scsi, srpdev_scsi_op );
|
INTF_DESC_PASSTHRU ( struct srp_device, scsi, srpdev_scsi_op, socket );
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Open SRP device
|
* Open SRP device
|
||||||
|
|
|
@ -334,6 +334,17 @@ static size_t ib_cmrc_xfer_window ( struct ib_cmrc_connection *cmrc ) {
|
||||||
return ( cmrc->connected ? IB_MAX_PAYLOAD_SIZE : 0 );
|
return ( cmrc->connected ? IB_MAX_PAYLOAD_SIZE : 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Identify device underlying CMRC connection
|
||||||
|
*
|
||||||
|
* @v cmrc CMRC connection
|
||||||
|
* @ret device Underlying device
|
||||||
|
*/
|
||||||
|
static struct device *
|
||||||
|
ib_cmrc_identify_device ( struct ib_cmrc_connection *cmrc ) {
|
||||||
|
return cmrc->ibdev->dev;
|
||||||
|
}
|
||||||
|
|
||||||
/** CMRC data transfer interface operations */
|
/** CMRC data transfer interface operations */
|
||||||
static struct interface_operation ib_cmrc_xfer_operations[] = {
|
static struct interface_operation ib_cmrc_xfer_operations[] = {
|
||||||
INTF_OP ( xfer_deliver, struct ib_cmrc_connection *,
|
INTF_OP ( xfer_deliver, struct ib_cmrc_connection *,
|
||||||
|
@ -341,6 +352,8 @@ static struct interface_operation ib_cmrc_xfer_operations[] = {
|
||||||
INTF_OP ( xfer_window, struct ib_cmrc_connection *,
|
INTF_OP ( xfer_window, struct ib_cmrc_connection *,
|
||||||
ib_cmrc_xfer_window ),
|
ib_cmrc_xfer_window ),
|
||||||
INTF_OP ( intf_close, struct ib_cmrc_connection *, ib_cmrc_close ),
|
INTF_OP ( intf_close, struct ib_cmrc_connection *, ib_cmrc_close ),
|
||||||
|
INTF_OP ( identify_device, struct ib_cmrc_connection *,
|
||||||
|
ib_cmrc_identify_device ),
|
||||||
};
|
};
|
||||||
|
|
||||||
/** CMRC data transfer interface descriptor */
|
/** CMRC data transfer interface descriptor */
|
||||||
|
|
Loading…
Reference in New Issue