summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/Network/MnpDxe/MnpImpl.h
diff options
context:
space:
mode:
Diffstat (limited to 'MdeModulePkg/Universal/Network/MnpDxe/MnpImpl.h')
-rw-r--r--MdeModulePkg/Universal/Network/MnpDxe/MnpImpl.h548
1 files changed, 274 insertions, 274 deletions
diff --git a/MdeModulePkg/Universal/Network/MnpDxe/MnpImpl.h b/MdeModulePkg/Universal/Network/MnpDxe/MnpImpl.h
index cdb081d2b4..7f6669fba3 100644
--- a/MdeModulePkg/Universal/Network/MnpDxe/MnpImpl.h
+++ b/MdeModulePkg/Universal/Network/MnpDxe/MnpImpl.h
@@ -1,274 +1,274 @@
-/** @file
-
-Copyright (c) 2005 - 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
-are licensed and made available under the terms and conditions of the BSD License
-which accompanies this distribution. The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-Module Name:
-
- MnpImpl.h
-
-Abstract:
-
-
-**/
-
-#ifndef _MNP_IMPL_H_
-#define _MNP_IMPL_H_
-
-#include "MnpDriver.h"
-#include "MnpDebug.h"
-
-#define NET_ETHER_FCS_SIZE 4
-
-#define MNP_SYS_POLL_INTERVAL (2 * TICKS_PER_MS) // 2 milliseconds
-#define MNP_TIMEOUT_CHECK_INTERVAL (50 * TICKS_PER_MS) // 50 milliseconds
-#define MNP_TX_TIMEOUT_TIME (500 * TICKS_PER_MS) // 500 milliseconds
-#define MNP_INIT_NET_BUFFER_NUM 512
-#define MNP_NET_BUFFER_INCREASEMENT 64
-#define MNP_MAX_NET_BUFFER_NUM 65536
-
-#define MNP_MAX_RCVD_PACKET_QUE_SIZE 256
-
-#define MNP_RECEIVE_UNICAST 0x01
-#define MNP_RECEIVE_BROADCAST 0x02
-
-#define UNICAST_PACKET MNP_RECEIVE_UNICAST
-#define BROADCAST_PACKET MNP_RECEIVE_BROADCAST
-
-#define MNP_INSTANCE_DATA_SIGNATURE EFI_SIGNATURE_32 ('M', 'n', 'p', 'I')
-
-#define MNP_INSTANCE_DATA_FROM_THIS(a) \
- CR ( \
- (a), \
- MNP_INSTANCE_DATA, \
- ManagedNetwork, \
- MNP_INSTANCE_DATA_SIGNATURE \
- )
-
-typedef struct _MNP_INSTANCE_DATA {
- UINT32 Signature;
-
- MNP_SERVICE_DATA *MnpServiceData;
-
- EFI_HANDLE Handle;
-
- NET_LIST_ENTRY InstEntry;
-
- EFI_MANAGED_NETWORK_PROTOCOL ManagedNetwork;
-
- BOOLEAN Configured;
- BOOLEAN Destroyed;
-
- NET_LIST_ENTRY GroupCtrlBlkList;
-
- NET_MAP RxTokenMap;
-
- NET_LIST_ENTRY RxDeliveredPacketQueue;
- NET_LIST_ENTRY RcvdPacketQueue;
- UINTN RcvdPacketQueueSize;
-
- EFI_MANAGED_NETWORK_CONFIG_DATA ConfigData;
-
- UINT8 ReceiveFilter;
-} MNP_INSTANCE_DATA;
-
-typedef struct _MNP_GROUP_ADDRESS {
- NET_LIST_ENTRY AddrEntry;
- EFI_MAC_ADDRESS Address;
- INTN RefCnt;
-} MNP_GROUP_ADDRESS;
-
-typedef struct _MNP_GROUP_CONTROL_BLOCK {
- NET_LIST_ENTRY CtrlBlkEntry;
- MNP_GROUP_ADDRESS *GroupAddress;
-} MNP_GROUP_CONTROL_BLOCK;
-
-typedef struct _MNP_RXDATA_WRAP {
- NET_LIST_ENTRY WrapEntry;
- MNP_INSTANCE_DATA *Instance;
- EFI_MANAGED_NETWORK_RECEIVE_DATA RxData;
- NET_BUF *Nbuf;
- UINT64 TimeoutTick;
-} MNP_RXDATA_WRAP;
-
-EFI_STATUS
-MnpInitializeServiceData (
- IN MNP_SERVICE_DATA *MnpServiceData,
- IN EFI_HANDLE ImageHandle,
- IN EFI_HANDLE ControllerHandle
- );
-
-VOID
-MnpFlushServiceData (
- MNP_SERVICE_DATA *MnpServiceData
- );
-
-VOID
-MnpInitializeInstanceData (
- IN MNP_SERVICE_DATA *MnpServiceData,
- IN MNP_INSTANCE_DATA *Instance
- );
-
-EFI_STATUS
-MnpTokenExist (
- IN NET_MAP *Map,
- IN NET_MAP_ITEM *Item,
- IN VOID *Arg
- );
-
-EFI_STATUS
-MnpCancelTokens (
- IN NET_MAP *Map,
- IN NET_MAP_ITEM *Item,
- IN VOID *Arg
- );
-
-VOID
-MnpFlushRcvdDataQueue (
- IN MNP_INSTANCE_DATA *Instance
- );
-
-EFI_STATUS
-MnpConfigureInstance (
- IN MNP_INSTANCE_DATA *Instance,
- IN EFI_MANAGED_NETWORK_CONFIG_DATA *ConfigData OPTIONAL
- );
-
-EFI_STATUS
-MnpGroupOp (
- IN MNP_INSTANCE_DATA *Instance,
- IN BOOLEAN JoinFlag,
- IN EFI_MAC_ADDRESS *MacAddr OPTIONAL,
- IN MNP_GROUP_CONTROL_BLOCK *CtrlBlk OPTIONAL
- );
-
-BOOLEAN
-MnpIsValidTxToken (
- IN MNP_INSTANCE_DATA *Instance,
- IN EFI_MANAGED_NETWORK_COMPLETION_TOKEN *Token
- );
-
-VOID
-MnpBuildTxPacket (
- IN MNP_SERVICE_DATA *MnpServiceData,
- IN EFI_MANAGED_NETWORK_TRANSMIT_DATA *TxData,
- OUT UINT8 **PktBuf,
- OUT UINT32 *PktLen
- );
-
-EFI_STATUS
-MnpSyncSendPacket (
- IN MNP_SERVICE_DATA *MnpServiceData,
- IN UINT8 *Packet,
- IN UINT32 Length,
- IN EFI_MANAGED_NETWORK_COMPLETION_TOKEN *Token
- );
-
-EFI_STATUS
-MnpInstanceDeliverPacket (
- IN MNP_INSTANCE_DATA *Instance
- );
-
-VOID
-EFIAPI
-MnpRecycleRxData (
- IN EFI_EVENT Event,
- IN VOID *Context
- );
-
-EFI_STATUS
-MnpReceivePacket (
- IN MNP_SERVICE_DATA *MnpServiceData
- );
-
-NET_BUF *
-MnpAllocNbuf (
- IN MNP_SERVICE_DATA *MnpServiceData
- );
-
-VOID
-MnpFreeNbuf (
- IN MNP_SERVICE_DATA *MnpServiceData,
- IN NET_BUF *Nbuf
- );
-
-VOID
-EFIAPI
-MnpCheckPacketTimeout (
- IN EFI_EVENT Event,
- IN VOID *Context
- );
-
-VOID
-EFIAPI
-MnpSystemPoll (
- IN EFI_EVENT Event,
- IN VOID *Context
- );
-
-EFI_STATUS
-EFIAPI
-MnpGetModeData (
- IN EFI_MANAGED_NETWORK_PROTOCOL *This,
- OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL,
- OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL
- );
-
-EFI_STATUS
-EFIAPI
-MnpConfigure (
- IN EFI_MANAGED_NETWORK_PROTOCOL *This,
- IN EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL
- );
-
-EFI_STATUS
-EFIAPI
-MnpMcastIpToMac (
- IN EFI_MANAGED_NETWORK_PROTOCOL *This,
- IN BOOLEAN Ipv6Flag,
- IN EFI_IP_ADDRESS *IpAddress,
- OUT EFI_MAC_ADDRESS *MacAddress
- );
-
-EFI_STATUS
-EFIAPI
-MnpGroups (
- IN EFI_MANAGED_NETWORK_PROTOCOL *This,
- IN BOOLEAN JoinFlag,
- IN EFI_MAC_ADDRESS *MacAddress OPTIONAL
- );
-
-EFI_STATUS
-EFIAPI
-MnpTransmit (
- IN EFI_MANAGED_NETWORK_PROTOCOL *This,
- IN EFI_MANAGED_NETWORK_COMPLETION_TOKEN *Token
- );
-
-EFI_STATUS
-EFIAPI
-MnpCancel (
- IN EFI_MANAGED_NETWORK_PROTOCOL *This,
- IN EFI_MANAGED_NETWORK_COMPLETION_TOKEN *Token OPTIONAL
- );
-
-EFI_STATUS
-EFIAPI
-MnpReceive (
- IN EFI_MANAGED_NETWORK_PROTOCOL *This,
- IN EFI_MANAGED_NETWORK_COMPLETION_TOKEN *Token
- );
-
-EFI_STATUS
-EFIAPI
-MnpPoll (
- IN EFI_MANAGED_NETWORK_PROTOCOL *This
- );
-
-#endif
+/** @file
+
+Copyright (c) 2005 - 2007, Intel Corporation
+All rights reserved. This program and the accompanying materials
+are licensed and made available under the terms and conditions of the BSD License
+which accompanies this distribution. The full text of the license may be found at
+http://opensource.org/licenses/bsd-license.php
+
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+
+Module Name:
+
+ MnpImpl.h
+
+Abstract:
+
+
+**/
+
+#ifndef _MNP_IMPL_H_
+#define _MNP_IMPL_H_
+
+#include "MnpDriver.h"
+#include "MnpDebug.h"
+
+#define NET_ETHER_FCS_SIZE 4
+
+#define MNP_SYS_POLL_INTERVAL (2 * TICKS_PER_MS) // 2 milliseconds
+#define MNP_TIMEOUT_CHECK_INTERVAL (50 * TICKS_PER_MS) // 50 milliseconds
+#define MNP_TX_TIMEOUT_TIME (500 * TICKS_PER_MS) // 500 milliseconds
+#define MNP_INIT_NET_BUFFER_NUM 512
+#define MNP_NET_BUFFER_INCREASEMENT 64
+#define MNP_MAX_NET_BUFFER_NUM 65536
+
+#define MNP_MAX_RCVD_PACKET_QUE_SIZE 256
+
+#define MNP_RECEIVE_UNICAST 0x01
+#define MNP_RECEIVE_BROADCAST 0x02
+
+#define UNICAST_PACKET MNP_RECEIVE_UNICAST
+#define BROADCAST_PACKET MNP_RECEIVE_BROADCAST
+
+#define MNP_INSTANCE_DATA_SIGNATURE EFI_SIGNATURE_32 ('M', 'n', 'p', 'I')
+
+#define MNP_INSTANCE_DATA_FROM_THIS(a) \
+ CR ( \
+ (a), \
+ MNP_INSTANCE_DATA, \
+ ManagedNetwork, \
+ MNP_INSTANCE_DATA_SIGNATURE \
+ )
+
+typedef struct _MNP_INSTANCE_DATA {
+ UINT32 Signature;
+
+ MNP_SERVICE_DATA *MnpServiceData;
+
+ EFI_HANDLE Handle;
+
+ NET_LIST_ENTRY InstEntry;
+
+ EFI_MANAGED_NETWORK_PROTOCOL ManagedNetwork;
+
+ BOOLEAN Configured;
+ BOOLEAN Destroyed;
+
+ NET_LIST_ENTRY GroupCtrlBlkList;
+
+ NET_MAP RxTokenMap;
+
+ NET_LIST_ENTRY RxDeliveredPacketQueue;
+ NET_LIST_ENTRY RcvdPacketQueue;
+ UINTN RcvdPacketQueueSize;
+
+ EFI_MANAGED_NETWORK_CONFIG_DATA ConfigData;
+
+ UINT8 ReceiveFilter;
+} MNP_INSTANCE_DATA;
+
+typedef struct _MNP_GROUP_ADDRESS {
+ NET_LIST_ENTRY AddrEntry;
+ EFI_MAC_ADDRESS Address;
+ INTN RefCnt;
+} MNP_GROUP_ADDRESS;
+
+typedef struct _MNP_GROUP_CONTROL_BLOCK {
+ NET_LIST_ENTRY CtrlBlkEntry;
+ MNP_GROUP_ADDRESS *GroupAddress;
+} MNP_GROUP_CONTROL_BLOCK;
+
+typedef struct _MNP_RXDATA_WRAP {
+ NET_LIST_ENTRY WrapEntry;
+ MNP_INSTANCE_DATA *Instance;
+ EFI_MANAGED_NETWORK_RECEIVE_DATA RxData;
+ NET_BUF *Nbuf;
+ UINT64 TimeoutTick;
+} MNP_RXDATA_WRAP;
+
+EFI_STATUS
+MnpInitializeServiceData (
+ IN MNP_SERVICE_DATA *MnpServiceData,
+ IN EFI_HANDLE ImageHandle,
+ IN EFI_HANDLE ControllerHandle
+ );
+
+VOID
+MnpFlushServiceData (
+ MNP_SERVICE_DATA *MnpServiceData
+ );
+
+VOID
+MnpInitializeInstanceData (
+ IN MNP_SERVICE_DATA *MnpServiceData,
+ IN MNP_INSTANCE_DATA *Instance
+ );
+
+EFI_STATUS
+MnpTokenExist (
+ IN NET_MAP *Map,
+ IN NET_MAP_ITEM *Item,
+ IN VOID *Arg
+ );
+
+EFI_STATUS
+MnpCancelTokens (
+ IN NET_MAP *Map,
+ IN NET_MAP_ITEM *Item,
+ IN VOID *Arg
+ );
+
+VOID
+MnpFlushRcvdDataQueue (
+ IN MNP_INSTANCE_DATA *Instance
+ );
+
+EFI_STATUS
+MnpConfigureInstance (
+ IN MNP_INSTANCE_DATA *Instance,
+ IN EFI_MANAGED_NETWORK_CONFIG_DATA *ConfigData OPTIONAL
+ );
+
+EFI_STATUS
+MnpGroupOp (
+ IN MNP_INSTANCE_DATA *Instance,
+ IN BOOLEAN JoinFlag,
+ IN EFI_MAC_ADDRESS *MacAddr OPTIONAL,
+ IN MNP_GROUP_CONTROL_BLOCK *CtrlBlk OPTIONAL
+ );
+
+BOOLEAN
+MnpIsValidTxToken (
+ IN MNP_INSTANCE_DATA *Instance,
+ IN EFI_MANAGED_NETWORK_COMPLETION_TOKEN *Token
+ );
+
+VOID
+MnpBuildTxPacket (
+ IN MNP_SERVICE_DATA *MnpServiceData,
+ IN EFI_MANAGED_NETWORK_TRANSMIT_DATA *TxData,
+ OUT UINT8 **PktBuf,
+ OUT UINT32 *PktLen
+ );
+
+EFI_STATUS
+MnpSyncSendPacket (
+ IN MNP_SERVICE_DATA *MnpServiceData,
+ IN UINT8 *Packet,
+ IN UINT32 Length,
+ IN EFI_MANAGED_NETWORK_COMPLETION_TOKEN *Token
+ );
+
+EFI_STATUS
+MnpInstanceDeliverPacket (
+ IN MNP_INSTANCE_DATA *Instance
+ );
+
+VOID
+EFIAPI
+MnpRecycleRxData (
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ );
+
+EFI_STATUS
+MnpReceivePacket (
+ IN MNP_SERVICE_DATA *MnpServiceData
+ );
+
+NET_BUF *
+MnpAllocNbuf (
+ IN MNP_SERVICE_DATA *MnpServiceData
+ );
+
+VOID
+MnpFreeNbuf (
+ IN MNP_SERVICE_DATA *MnpServiceData,
+ IN NET_BUF *Nbuf
+ );
+
+VOID
+EFIAPI
+MnpCheckPacketTimeout (
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ );
+
+VOID
+EFIAPI
+MnpSystemPoll (
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ );
+
+EFI_STATUS
+EFIAPI
+MnpGetModeData (
+ IN EFI_MANAGED_NETWORK_PROTOCOL *This,
+ OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL,
+ OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL
+ );
+
+EFI_STATUS
+EFIAPI
+MnpConfigure (
+ IN EFI_MANAGED_NETWORK_PROTOCOL *This,
+ IN EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL
+ );
+
+EFI_STATUS
+EFIAPI
+MnpMcastIpToMac (
+ IN EFI_MANAGED_NETWORK_PROTOCOL *This,
+ IN BOOLEAN Ipv6Flag,
+ IN EFI_IP_ADDRESS *IpAddress,
+ OUT EFI_MAC_ADDRESS *MacAddress
+ );
+
+EFI_STATUS
+EFIAPI
+MnpGroups (
+ IN EFI_MANAGED_NETWORK_PROTOCOL *This,
+ IN BOOLEAN JoinFlag,
+ IN EFI_MAC_ADDRESS *MacAddress OPTIONAL
+ );
+
+EFI_STATUS
+EFIAPI
+MnpTransmit (
+ IN EFI_MANAGED_NETWORK_PROTOCOL *This,
+ IN EFI_MANAGED_NETWORK_COMPLETION_TOKEN *Token
+ );
+
+EFI_STATUS
+EFIAPI
+MnpCancel (
+ IN EFI_MANAGED_NETWORK_PROTOCOL *This,
+ IN EFI_MANAGED_NETWORK_COMPLETION_TOKEN *Token OPTIONAL
+ );
+
+EFI_STATUS
+EFIAPI
+MnpReceive (
+ IN EFI_MANAGED_NETWORK_PROTOCOL *This,
+ IN EFI_MANAGED_NETWORK_COMPLETION_TOKEN *Token
+ );
+
+EFI_STATUS
+EFIAPI
+MnpPoll (
+ IN EFI_MANAGED_NETWORK_PROTOCOL *This
+ );
+
+#endif