diff options
author | Michael Brown <mcb30@ipxe.org> | 2010-04-19 20:16:01 +0100 |
---|---|---|
committer | Michael Brown <mcb30@ipxe.org> | 2010-04-19 23:43:39 +0100 |
commit | 8406115834d38bb743e01f35bfd36e835532415e (patch) | |
tree | ee1e3106e2cdc645d911ba5643f8414b21fc4c3e /src/include/ipxe/ipoib.h | |
parent | 2a36703af228bd10d50a31daec96072fe3a992a3 (diff) | |
download | ipxe-8406115834d38bb743e01f35bfd36e835532415e.tar.gz |
[build] Rename gPXE to iPXE
Access to the gpxe.org and etherboot.org domains and associated
resources has been revoked by the registrant of the domain. Work
around this problem by renaming project from gPXE to iPXE, and
updating URLs to match.
Also update README, LOG and COPYRIGHTS to remove obsolete information.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include/ipxe/ipoib.h')
-rw-r--r-- | src/include/ipxe/ipoib.h | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/include/ipxe/ipoib.h b/src/include/ipxe/ipoib.h new file mode 100644 index 000000000..31b0c1b6d --- /dev/null +++ b/src/include/ipxe/ipoib.h @@ -0,0 +1,61 @@ +#ifndef _IPXE_IPOIB_H +#define _IPXE_IPOIB_H + +/** @file + * + * IP over Infiniband + */ + +FILE_LICENCE ( GPL2_OR_LATER ); + +#include <ipxe/infiniband.h> + +/** IPoIB MAC address length */ +#define IPOIB_ALEN 20 + +/** An IPoIB MAC address */ +struct ipoib_mac { + /** Queue pair number + * + * MSB indicates support for IPoIB "connected mode". Lower 24 + * bits are the QPN. + */ + uint32_t flags__qpn; + /** Port GID */ + struct ib_gid gid; +} __attribute__ (( packed )); + +/** IPoIB link-layer header length */ +#define IPOIB_HLEN 4 + +/** IPoIB link-layer header */ +struct ipoib_hdr { + /** Network-layer protocol */ + uint16_t proto; + /** Reserved, must be zero */ + union { + /** Reserved, must be zero */ + uint16_t reserved; + /** Peer addresses + * + * We use these fields internally to represent the + * peer addresses using a lookup key. There simply + * isn't enough room in the IPoIB header to store + * literal source or destination MAC addresses. + */ + struct { + /** Destination address key */ + uint8_t dest; + /** Source address key */ + uint8_t src; + } __attribute__ (( packed )) peer; + } __attribute__ (( packed )) u; +} __attribute__ (( packed )); + +extern const char * ipoib_ntoa ( const void *ll_addr ); +extern void ipoib_link_state_changed ( struct ib_device *ibdev ); +extern int ipoib_probe ( struct ib_device *ibdev ); +extern void ipoib_remove ( struct ib_device *ibdev ); +extern struct net_device * alloc_ipoibdev ( size_t priv_size ); + +#endif /* _IPXE_IPOIB_H */ |