mirror of https://github.com/ipxe/ipxe.git
[infiniband] Allow drivers to override the eIPoIB LEMAC
Signed-off-by: Michael Brown <mcb30@ipxe.org>pull/51/head
parent
57c63047e3
commit
173c0c2536
|
@ -956,6 +956,7 @@ static int ipoib_probe ( struct ib_device *ibdev ) {
|
||||||
/* Extract hardware address */
|
/* Extract hardware address */
|
||||||
memcpy ( netdev->hw_addr, &ibdev->gid.s.guid,
|
memcpy ( netdev->hw_addr, &ibdev->gid.s.guid,
|
||||||
sizeof ( ibdev->gid.s.guid ) );
|
sizeof ( ibdev->gid.s.guid ) );
|
||||||
|
memcpy ( netdev->ll_addr, ibdev->lemac, ETH_ALEN );
|
||||||
|
|
||||||
/* Set local MAC address */
|
/* Set local MAC address */
|
||||||
memcpy ( &ipoib->mac.gid.s.guid, &ibdev->gid.s.guid,
|
memcpy ( &ipoib->mac.gid.s.guid, &ibdev->gid.s.guid,
|
||||||
|
|
|
@ -15,6 +15,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
|
||||||
#include <ipxe/tables.h>
|
#include <ipxe/tables.h>
|
||||||
#include <ipxe/ib_packet.h>
|
#include <ipxe/ib_packet.h>
|
||||||
#include <ipxe/ib_mad.h>
|
#include <ipxe/ib_mad.h>
|
||||||
|
#include <ipxe/if_ether.h>
|
||||||
|
|
||||||
/** Subnet management interface QPN */
|
/** Subnet management interface QPN */
|
||||||
#define IB_QPN_SMI 0
|
#define IB_QPN_SMI 0
|
||||||
|
@ -457,6 +458,9 @@ struct ib_device {
|
||||||
/** General services interface */
|
/** General services interface */
|
||||||
struct ib_mad_interface *gsi;
|
struct ib_mad_interface *gsi;
|
||||||
|
|
||||||
|
/** IPoIB LEMAC (if non-default) */
|
||||||
|
uint8_t lemac[ETH_ALEN];
|
||||||
|
|
||||||
/** Driver private data */
|
/** Driver private data */
|
||||||
void *drv_priv;
|
void *drv_priv;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue