mirror of
https://github.com/xcat2/xNBA.git
synced 2025-04-03 00:59:08 +00:00
[infiniband] Pass a generic MAD to ib_set_port_info()
This commit is contained in:
parent
0095e18d4c
commit
ea6eb7f7ed
src
@ -242,11 +242,11 @@ static void linda_link_state_changed ( struct ib_device *ibdev ) {
|
||||
* Set port information
|
||||
*
|
||||
* @v ibdev Infiniband device
|
||||
* @v port_info New port information
|
||||
* @v mad Set port information MAD
|
||||
*/
|
||||
static int linda_set_port_info ( struct ib_device *ibdev,
|
||||
const struct ib_port_info *port_info ) {
|
||||
static int linda_set_port_info ( struct ib_device *ibdev, union ib_mad *mad ) {
|
||||
struct linda *linda = ib_get_drvdata ( ibdev );
|
||||
struct ib_port_info *port_info = &mad->smp.smp_data.port_info;
|
||||
struct QIB_7220_IBCCtrl ibcctrl;
|
||||
unsigned int port_state;
|
||||
unsigned int link_state;
|
||||
|
@ -346,13 +346,12 @@ struct ib_device_operations {
|
||||
/** Set port information
|
||||
*
|
||||
* @v ibdev Infiniband device
|
||||
* @v port_info New port information
|
||||
* @v mad Set port information MAD
|
||||
*
|
||||
* This method is required only by adapters that do not have
|
||||
* an embedded SMA.
|
||||
*/
|
||||
int ( * set_port_info ) ( struct ib_device *ibdev,
|
||||
const struct ib_port_info *port_info );
|
||||
int ( * set_port_info ) ( struct ib_device *ibdev, union ib_mad *mad );
|
||||
};
|
||||
|
||||
/** An Infiniband device */
|
||||
@ -457,8 +456,7 @@ extern void ib_mcast_detach ( struct ib_device *ibdev,
|
||||
struct ib_queue_pair *qp, struct ib_gid *gid );
|
||||
extern int ib_get_hca_info ( struct ib_device *ibdev,
|
||||
struct ib_gid_half *hca_guid );
|
||||
extern int ib_set_port_info ( struct ib_device *ibdev,
|
||||
const struct ib_port_info *port_info );
|
||||
extern int ib_set_port_info ( struct ib_device *ibdev, union ib_mad *mad );
|
||||
extern struct ib_device * alloc_ibdev ( size_t priv_size );
|
||||
extern int register_ibdev ( struct ib_device *ibdev );
|
||||
extern void unregister_ibdev ( struct ib_device *ibdev );
|
||||
|
@ -687,13 +687,13 @@ int ib_get_hca_info ( struct ib_device *ibdev,
|
||||
return num_ports;
|
||||
}
|
||||
|
||||
/** Set port information
|
||||
/**
|
||||
* Set port information
|
||||
*
|
||||
* @v ibdev Infiniband device
|
||||
* @v port_info New port information
|
||||
* @v mad Set port information MAD
|
||||
*/
|
||||
int ib_set_port_info ( struct ib_device *ibdev,
|
||||
const struct ib_port_info *port_info ) {
|
||||
int ib_set_port_info ( struct ib_device *ibdev, union ib_mad *mad ) {
|
||||
int rc;
|
||||
|
||||
/* Adapters with embedded SMAs do not need to support this method */
|
||||
@ -703,7 +703,7 @@ int ib_set_port_info ( struct ib_device *ibdev,
|
||||
return -ENOTSUP;
|
||||
}
|
||||
|
||||
if ( ( rc = ibdev->op->set_port_info ( ibdev, port_info ) ) != 0 ) {
|
||||
if ( ( rc = ibdev->op->set_port_info ( ibdev, mad ) ) != 0 ) {
|
||||
DBGC ( ibdev, "IBDEV %p could not set port information: %s\n",
|
||||
ibdev, strerror ( rc ) );
|
||||
return rc;
|
||||
|
@ -255,7 +255,7 @@ static union ib_mad * ib_sma_set_port_info ( struct ib_gma *gma,
|
||||
"%02x\n", gma, ibdev->lid, ibdev->sm_lid,
|
||||
ibdev->link_width_enabled, ibdev->link_speed_enabled );
|
||||
|
||||
if ( ( rc = ib_set_port_info ( ibdev, port_info ) ) != 0 ) {
|
||||
if ( ( rc = ib_set_port_info ( ibdev, mad ) ) != 0 ) {
|
||||
DBGC ( gma, "GMA %p could not set port information: %s\n",
|
||||
gma, strerror ( rc ) );
|
||||
mad->hdr.status =
|
||||
|
Loading…
x
Reference in New Issue
Block a user