efinet.h revision 199767f8919635c4928607450d9e0abb932109ce
/* $FreeBSD$ */
#ifndef _EFINET_H
#define _EFINET_H
/*++
Copyright (c) 1999 - 2002 Intel Corporation. All rights reserved
This software and associated documentation (if any) is furnished
under a license and may only be used or copied in accordance
with the terms of the license. Except as permitted by such
license, no part of this software or documentation may be
reproduced, stored in a retrieval system, or transmitted in any
form or by any means without the express written consent of
Intel Corporation.
Module Name:
Abstract:
EFI Simple Network protocol
Revision History
--*/
///////////////////////////////////////////////////////////////////////////////
//
// Simple Network Protocol
//
#define EFI_SIMPLE_NETWORK_PROTOCOL \
{ 0xA19832B9, 0xAC25, 0x11D3, {0x9A, 0x2D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D} }
///////////////////////////////////////////////////////////////////////////////
//
typedef struct {
//
// Total number of frames received. Includes frames with errors and
// dropped frames.
//
//
// Number of valid frames received and copied into receive buffers.
//
//
// Number of frames below the minimum length for the media.
// This would be <64 for ethernet.
//
//
// Number of frames longer than the maxminum length for the
// media. This would be >1500 for ethernet.
//
//
// Valid frames that were dropped because receive buffers were full.
//
//
// Number of valid unicast frames received and not dropped.
//
//
// Number of valid broadcast frames received and not dropped.
//
//
// Number of valid mutlicast frames received and not dropped.
//
//
// Number of frames w/ CRC or alignment errors.
//
//
// Total number of bytes received. Includes frames with errors
// and dropped frames.
//
//
// Transmit statistics.
//
//
// Number of collisions detection on this subnet.
//
//
// Number of frames destined for unsupported protocol.
//
///////////////////////////////////////////////////////////////////////////////
//
typedef enum {
///////////////////////////////////////////////////////////////////////////////
//
#define EFI_SIMPLE_NETWORK_RECEIVE_UNICAST 0x01
#define EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST 0x02
#define EFI_SIMPLE_NETWORK_RECEIVE_BROADCAST 0x04
#define EFI_SIMPLE_NETWORK_RECEIVE_PROMISCUOUS 0x08
#define EFI_SIMPLE_NETWORK_RECEIVE_PROMISCUOUS_MULTICAST 0x10
///////////////////////////////////////////////////////////////////////////////
//
#define EFI_SIMPLE_NETWORK_RECEIVE_INTERRUPT 0x01
#define EFI_SIMPLE_NETWORK_TRANSMIT_INTERRUPT 0x02
#define EFI_SIMPLE_NETWORK_COMMAND_INTERRUPT 0x04
#define EFI_SIMPLE_NETWORK_SOFTWARE_INTERRUPT 0x08
///////////////////////////////////////////////////////////////////////////////
//
#define MAX_MCAST_FILTER_CNT 16
typedef struct {
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
typedef
);
///////////////////////////////////////////////////////////////////////////////
//
#define EFI_SIMPLE_NETWORK_INTERFACE_REVISION 0x00010000
typedef struct _EFI_SIMPLE_NETWORK {
#endif /* _EFINET_H */