]>
Commit | Line | Data |
---|---|---|
36ee91ca | 1 | /** @file\r |
64a80549 | 2 | DpcLib.h.\r |
3a1ab4bc | 3 | \r |
cd5ebaa0 | 4 | Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR>\r |
64a80549 | 5 | This program and the accompanying materials are licensed and made available under \r |
6 | the terms and conditions of the BSD License that accompanies this distribution. \r | |
7 | The full text of the license may be found at\r | |
8 | http://opensource.org/licenses/bsd-license.php. \r | |
36ee91ca | 9 | \r |
64a80549 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r |
36ee91ca | 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r |
12 | \r | |
36ee91ca | 13 | **/\r |
14 | \r | |
15 | #ifndef _DPC_LIB_H_\r | |
16 | #define _DPC_LIB_H_\r | |
17 | \r | |
36ee91ca | 18 | #include <Protocol/Dpc.h>\r |
19 | \r | |
20 | /**\r | |
21 | Add a Deferred Procedure Call to the end of the DPC queue.\r | |
22 | \r | |
e9b67286 | 23 | @param[in] DpcTpl The EFI_TPL that the DPC should invoke.\r |
64a80549 | 24 | @param[in] DpcProcedure The pointer to the DPC's function.\r |
25 | @param[in] DpcContext The pointer to the DPC's context. Passed to DpcProcedure\r | |
3a1ab4bc | 26 | when DpcProcedure is invoked.\r |
36ee91ca | 27 | \r |
28 | @retval EFI_SUCCESS The DPC was queued.\r | |
29 | @retval EFI_INVALID_PARAMETER DpcTpl is not a valid EFI_TPL.\r | |
30 | @retval EFI_INVALID_PARAMETER DpcProcedure is NULL.\r | |
31 | @retval EFI_OUT_OF_RESOURCES There are not enough resources available to\r | |
32 | add the DPC to the queue.\r | |
33 | \r | |
34 | **/\r | |
35 | EFI_STATUS\r | |
7b414b4e | 36 | EFIAPI\r |
36ee91ca | 37 | QueueDpc (\r |
38 | IN EFI_TPL DpcTpl,\r | |
39 | IN EFI_DPC_PROCEDURE DpcProcedure,\r | |
40 | IN VOID *DpcContext OPTIONAL\r | |
41 | );\r | |
42 | \r | |
43 | /**\r | |
e9b67286 | 44 | Dispatch the queue of DPCs. All DPCs that have been queued with a DpcTpl\r |
36ee91ca | 45 | value greater than or equal to the current TPL are invoked in the order that\r |
46 | they were queued. DPCs with higher DpcTpl values are invoked before DPCs with\r | |
47 | lower DpcTpl values.\r | |
48 | \r | |
49 | @retval EFI_SUCCESS One or more DPCs were invoked.\r | |
50 | @retval EFI_NOT_FOUND No DPCs were invoked.\r | |
51 | \r | |
52 | **/\r | |
53 | EFI_STATUS\r | |
7b414b4e | 54 | EFIAPI\r |
36ee91ca | 55 | DispatchDpc (\r |
56 | VOID\r | |
57 | );\r | |
58 | \r | |
59 | #endif\r |