Merge the global data in ExecData.c to Event.c

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5901 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
eric_tian 2008-09-16 07:53:15 +00:00
parent 14085cf071
commit 1947c70c3e
4 changed files with 60 additions and 77 deletions

View File

@ -320,7 +320,7 @@ CoreInitializeGcdServices (
/** /**
Initializes "event" support and populates parts of the System and Runtime Table. Initializes "event" support.
@retval EFI_SUCCESS Always return success @retval EFI_SUCCESS Always return success

View File

@ -64,7 +64,6 @@
Event/Tpl.c Event/Tpl.c
Event/Timer.c Event/Timer.c
Event/Event.c Event/Event.c
Event/ExecData.c
Dispatcher/Dependency.c Dispatcher/Dependency.c
Dispatcher/Dispatcher.c Dispatcher/Dispatcher.c
DxeMain/DxeProtocolNotify.c DxeMain/DxeProtocolNotify.c

View File

@ -15,49 +15,74 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include "DxeMain.h" #include "DxeMain.h"
// ///
// Enumerate the valid types /// gEfiCurrentTpl - Current Task priority level
// ///
EFI_TPL gEfiCurrentTpl = TPL_APPLICATION;
///
/// gEventQueueLock - Protects the event queus
///
EFI_LOCK gEventQueueLock = EFI_INITIALIZE_LOCK_VARIABLE (TPL_HIGH_LEVEL);
///
/// gEventQueue - A list of event's to notify for each priority level
///
LIST_ENTRY gEventQueue[TPL_HIGH_LEVEL + 1];
///
/// gEventPending - A bitmask of the EventQueues that are pending
///
UINTN gEventPending = 0;
///
/// gEventSignalQueue - A list of events to signal based on EventGroup type
///
LIST_ENTRY gEventSignalQueue = INITIALIZE_LIST_HEAD_VARIABLE (gEventSignalQueue);
///
/// Enumerate the valid types
///
UINT32 mEventTable[] = { UINT32 mEventTable[] = {
// ///
// 0x80000200 Timer event with a notification function that is /// 0x80000200 Timer event with a notification function that is
// queue when the event is signaled with SignalEvent() /// queue when the event is signaled with SignalEvent()
// ///
EVT_TIMER | EVT_NOTIFY_SIGNAL, EVT_TIMER | EVT_NOTIFY_SIGNAL,
// ///
// 0x80000000 Timer event without a notification function. It can be /// 0x80000000 Timer event without a notification function. It can be
// signaled with SignalEvent() and checked with CheckEvent() or WaitForEvent(). /// signaled with SignalEvent() and checked with CheckEvent() or WaitForEvent().
// ///
EVT_TIMER, EVT_TIMER,
// ///
// 0x00000100 Generic event with a notification function that /// 0x00000100 Generic event with a notification function that
// can be waited on with CheckEvent() or WaitForEvent() /// can be waited on with CheckEvent() or WaitForEvent()
// ///
EVT_NOTIFY_WAIT, EVT_NOTIFY_WAIT,
// ///
// 0x00000200 Generic event with a notification function that /// 0x00000200 Generic event with a notification function that
// is queue when the event is signaled with SignalEvent() /// is queue when the event is signaled with SignalEvent()
// ///
EVT_NOTIFY_SIGNAL, EVT_NOTIFY_SIGNAL,
// ///
// 0x00000201 ExitBootServicesEvent. /// 0x00000201 ExitBootServicesEvent.
// ///
EVT_SIGNAL_EXIT_BOOT_SERVICES, EVT_SIGNAL_EXIT_BOOT_SERVICES,
// ///
// 0x60000202 SetVirtualAddressMapEvent. /// 0x60000202 SetVirtualAddressMapEvent.
// ///
EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE, EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE,
// ///
// 0x00000000 Generic event without a notification function. /// 0x00000000 Generic event without a notification function.
// It can be signaled with SignalEvent() and checked with CheckEvent() /// It can be signaled with SignalEvent() and checked with CheckEvent()
// or WaitForEvent(). /// or WaitForEvent().
// ///
0x00000000, 0x00000000,
// ///
// 0x80000100 Timer event with a notification function that can be /// 0x80000100 Timer event with a notification function that can be
// waited on with CheckEvent() or WaitForEvent() /// waited on with CheckEvent() or WaitForEvent()
// ///
EVT_TIMER | EVT_NOTIFY_WAIT, EVT_TIMER | EVT_NOTIFY_WAIT,
}; };

View File

@ -1,41 +0,0 @@
/** @file
Event data is declared in this file.
Copyright (c) 2006 - 2008, Intel Corporation. <BR>
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.
**/
#include "DxeMain.h"
//
// gTpl - Task priority level
//
EFI_TPL gEfiCurrentTpl = TPL_APPLICATION;
//
// gEventQueueLock - Protects the event queus
//
EFI_LOCK gEventQueueLock = EFI_INITIALIZE_LOCK_VARIABLE (TPL_HIGH_LEVEL);
//
// gEventQueue - A list of event's to notify for each priority level
// gEventPending - A bitmask of the EventQueues that are pending
//
LIST_ENTRY gEventQueue[TPL_HIGH_LEVEL + 1];
UINTN gEventPending = 0;
//
// gEventSignalQueue - A list of events to signal based on EventGroup type
//
LIST_ENTRY gEventSignalQueue = INITIALIZE_LIST_HEAD_VARIABLE (gEventSignalQueue);