Bret Barkelew
37bf678761
MdePkg/UefiLib: Add a new API GetVariable3
...
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1396
Add a new API GetVariable3, which can return the attributes of a variable during reading it.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jiansong Xu <jiansongx.xu@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
2019-01-31 20:19:24 +08:00
Ashish Singhal
0290fca20f
MdePkg/UefiLib: Abstract driver model protocol uninstallation
...
Provided functions in UEFILib that abstract driver model protocol
uninstallation. This helps drivers to install and uninstall protocols
using a library to keep things seemless.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1429
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ashish Singhal <ashishsingha@nvidia.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
2019-01-10 23:37:15 +08:00
Star Zeng
af5e952159
MdePkg UefiLib: Add new EfiLocateXXXAcpiTable() APIs
...
https://bugzilla.tianocore.org/show_bug.cgi?id=967
Request to add a library function for GetAcpiTable() in order
to get ACPI table using signature as input.
After evaluation, we found there are many duplicated code to
find ACPI table by signature in different modules.
This patch adds new EfiLocateXXXAcpiTable() APIs in UefiLib
for the request and also the following patch to remove the
duplicated code.
Cc: Younas khan <pmdyounaskhan786@gmail.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
2018-09-27 14:25:32 +08:00
Laszlo Ersek
5dbc768f1c
MdePkg/UefiLib: don't special-case EFI_FILE_MODE_CREATE in OpenMode
...
While reviewing the patch that would land as 768b611136
("MdePkg/UefiLib: introduce EfiOpenFileByDevicePath()", 2018-08-16), Ray
pointed out that distinguishing EFI_FILE_MODE_CREATE was wasteful. Per
spec, if the file to create exists, then EFI_FILE_MODE_CREATE is ignored
by EFI_FILE_PROTOCOL.Open(), and the existent file is opened.
Therefore we don't need an attempt to "open-but-not-create" first, and a
fallback to "open-and-create-too" second -- that behavior is internal to
EFI_FILE_PROTOCOL.Open(). Remove the special-casing of
EFI_FILE_MODE_CREATE.
Cc: Liming Gao <liming.gao@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Ruiyu Ni <ruiyu.ni@intel.com >
Suggested-by: Ruiyu Ni <ruiyu.ni@intel.com >
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1074
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
2018-08-22 10:31:47 +02:00
Laszlo Ersek
768b611136
MdePkg/UefiLib: introduce EfiOpenFileByDevicePath()
...
The EfiOpenFileByDevicePath() function centralizes functionality from
- MdeModulePkg/Universal/Disk/RamDiskDxe
- NetworkPkg/TlsAuthConfigDxe
- SecurityPkg/VariableAuthenticated/SecureBootConfigDxe
- ShellPkg/Library/UefiShellLib
unifying the implementation and fixing various bugs.
(Ray suggested that we eliminate the special handling of
EFI_FILE_MODE_CREATE in the "OpenMode" input parameter as well. We plan to
implement that separately, under
<https://bugzilla.tianocore.org/show_bug.cgi?id=1074 >.)
Cc: Chao Zhang <chao.b.zhang@intel.com >
Cc: Eric Dong <eric.dong@intel.com >
Cc: Jaben Carsey <jaben.carsey@intel.com >
Cc: Jiaxin Wu <jiaxin.wu@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Roman Bacik <roman.bacik@broadcom.com >
Cc: Ruiyu Ni <ruiyu.ni@intel.com >
Cc: Siyuan Fu <siyuan.fu@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1008
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
2018-08-16 20:02:39 +02:00
Liming Gao
9095d37b8f
MdePkg: Clean up source files
...
1. Do not use tab characters
2. No trailing white space in one line
3. All files must end with CRLF
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao <liming.gao@intel.com >
2018-06-28 11:19:47 +08:00
Liming Gao
3d7c6cfbab
MdePkg UefiLib: Use comparison logic to check UINTN parameter
...
Commit d2aafe1e41
changes the input parameter
from BOOLEAN to UINTN. Its comparison logic should be updated.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao <liming.gao@intel.com >
Cc: Michael Kinney <michael.d.kinney@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com >
2018-06-12 09:23:11 +08:00
Liming Gao
d2aafe1e41
MdePkg UefiLib: Fix XCODE5 varargs warning
...
https://bugzilla.tianocore.org/show_bug.cgi?id=741
Change GetBestLanguage() parameter type from BOOLEAN to UINTN
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Steven Shi <steven.shi@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
2018-05-23 10:37:47 +08:00
Marvin.Haeuser@outlook.com
5b9626e8eb
MdePkg/UefiLib: Add 'OUT' decorator where necessary.
...
The functions AddUnicodeString() and AddUnicodeString2() might return
a new value into their parameter UnicodeStringTable, hence add the
appropiate 'OUT' decorator.
V2: Update FrameworkUefiLib as well.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
2018-05-17 15:22:12 +08:00
Michael D Kinney
40070a186a
MdePkg/UefiLib: Add EfiLocateProtocolBuffer()
...
https://bugzilla.tianocore.org/show_bug.cgi?id=838
Add new API to the UefiLib that locates and returns
an array of protocols instances that match a given
protocol.
Cc: Sean Brogan <sean.brogan@microsoft.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Bret Barkelew <Bret.Barkelew@microsoft.com >
2018-02-11 15:10:03 -08:00
Star Zeng
1b1970630d
MdePkg UefiLib: Make the event empty function public
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=298
Then this event empty function can be used to remove
the duplication in drivers and other libraries.
Cc: Liming Gao <liming.gao@intel.com >
Cc: Michael Kinney <michael.d.kinney@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
2017-01-20 15:51:16 +08:00
Laszlo Ersek
772fb7cb13
MdePkg/UefiLib: introduce EfiEventGroupSignal
...
This is a small convenience function that eases signaling an event group
(identified by GUID). An example where it can be used is Platform BDS
signaling the End-of-DXE event group.
The naming follows EfiNamedEventSignal().
The patch modifies the library class header, and updates the most commonly
used library instance at once. Other library instances in the edk2 tree
will be adapted in the following patches.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Cc: Jordan Justen <jordan.l.justen@intel.com >
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org >
Suggested-by: Jordan Justen <jordan.l.justen@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
2016-03-23 12:05:39 +01:00
ydong10
bf4a3dbd47
Add new interface GetVariable2 and GetEfiGlobalVariable2 to return more info. Also replace old interface with new one.
...
Signed-off-by: Eric Dong <eric.dong@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13375 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-30 07:36:00 +00:00
jcarsey
f405c0674a
Add 2 functions to UefiLib library class: CatSPrint and CatVSPrint.
...
Implement these functions in the UefiLib instance.
Add 2 functions to PrintLib library class: SPrintLengthAsciiFormat and SPrintLength.
Implement these functions in the BasePrintLib instance and the DxePrintLib2Protocol instance.
Signed-off-by: jcarsey
Reviewed-by: jljusten
Reviewed-by: geekboy15a
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12081 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-02 23:33:06 +00:00
mdkinney
cda8ba5ed7
Add ASSERT() conditions to UEFI Library Print() and AsciiPrint() functions if gST->ConOut is NULL.
...
Add ASSERT() conditions to UEFI Library ErrorPrint() and AsciiErrorPrint() functions if gST->StdErr is NULL.
Add ASSERT() conditions to UEFI Library PrintXY() and AsciiPrintXY() gST->ConsoleOutputHandle is NULL.
Update Print(), AsciiPrint(), ErrorPrint(), AsciiErrorPrint() to return 0 if the Simple Text Output Protocol OutputString() call returns an error.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10576 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-11 19:11:20 +00:00
hhtian
9df063a06a
Update the copyright notice format
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10403 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-23 15:46:20 +00:00
myronporter
af2dc6a70b
Grammatical and disclaimer changes (does not follow internal C coding stds.)
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10235 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-12 22:19:12 +00:00
erictian
5ee9264acc
wrap ASSERT_LOCKED macro with MDEPKG_NDEBUG.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9907 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-02 03:21:46 +00:00
pkandel
1a2f870c9b
Second set of changes based on a review of the code comments in the Include directory for typos, grammar issues, and language clarity.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8467 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-04 16:16:15 +00:00
eric_tian
d9e63d93d5
update the file description of PrintXY and AsciiPrintXY. and also refine the implementation to return the number of actual printed characters.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8372 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-21 10:02:33 +00:00
mdkinney
b9c8d8bd15
Clarify clipping behavior of PrintXY() and AsciiPrintXY().
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8271 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-08 23:48:32 +00:00
qhuang8
51969ecb37
Fix several minor coding style issues.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8092 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-15 14:31:45 +00:00
lgao4
db2ef756ba
Add CreatePopUp API into UefiLib
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8016 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-02 09:29:34 +00:00
gikidy
28d3e14ffb
Fix some typo.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8008 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-02 05:34:26 +00:00
qhuang8
6d28c49754
Add GetVariabe(), GetEfiGlobalVariable() and GetBestLanguage() to UefiLib.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7936 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-24 14:18:13 +00:00
qhuang8
8408411af4
Fix typo in API prototype
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7664 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-25 02:59:42 +00:00
jji4
f0a8eeb2c5
Comments synchronized
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7480 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-09 03:28:44 +00:00
jji4
63ba999ccb
Comments checked with spec.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7463 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-06 07:12:56 +00:00
mdkinney
daa6553a39
Use BIT8-1 insetad of UINT8_MAX
...
Fix a typo in a comment
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6910 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-07 23:59:51 +00:00
mdkinney
9bfdfa522d
Move NEXT_MEMORY_DESCRIPTOR() from UefiSpec.h to UEFI Library
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6902 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-07 22:55:55 +00:00
qhuang8
286f1bd2a9
Remove GetCurrentLanguage () from UefiLib in MdePkg
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6759 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-27 07:44:08 +00:00
jji4
cf8ae2f6fe
Function headers in .h and .c files synchronized with spec
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6722 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-25 07:38:54 +00:00
jji4
1d37ab9fb9
Code and comments have been checked with spec.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6650 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-20 08:55:42 +00:00
vanjeff
b31547205f
1.Removed PrintXY from Graphics Library.
...
2.Added PrintXY and AsciiPrintXY in Uefi Library
3.Moved PcdUgaConsumeSupport from MdeModulePkg to MdePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6642 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-20 03:08:28 +00:00
qwang12
285010e7dc
Update doxygen comment for VarArg list parameter. "..."'s description is added.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6623 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-19 03:29:46 +00:00
qhuang8
52ca0d9816
Add 3 macros to manager Timer events.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6563 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-17 14:21:43 +00:00
jji4
50a64e5b0b
Synchronization of MDE Library Spec., Mde.dec, and corresponding head files in MdePkg\Include\Library.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6544 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-14 03:45:34 +00:00
qhuang8
def220c4e5
Add extra DriverConfiguration2 protocol parameter for EfiLibInstallAllDriverbinding2() API in UefiLib class.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6418 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-07 06:23:27 +00:00
klu2
e500088c2d
Update library class and library instance description for UefiLib to follows specification.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6102 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-10 08:06:02 +00:00
qwang12
f4e8509b62
1) Move RFC_3066_ENTRY_SIZE and ISO_639_2_ENTRY_SIZE to UefiBaseType.h.
...
2) Rename BufToHexString to BufInReverseOrderToHexString
3) Rename HexStringToBuf to HexStringToBufInReverseOrder
4) Update function comments in HiiLib.h and IfrSupportLib.h.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5989 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-26 06:20:19 +00:00
klu2
7f1eba7b99
Cleanup "Tiano" word.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5942 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-22 05:22:41 +00:00
qwang12
f8d18bada5
HiiLibGetCurrentLanguage returns the current UEFI variable "PlatformLang" (if this variable does not exist, a default value is returned). This function is called by HiiDatabase itself. Now, HiiLibGetCurrentLanguage is in HiiLib. Because of this, we can't add location of Hii protoocol in the library constructor of HiiLib. This cause Hii Database driver never get loaded (circular dependency).
...
By moving HiiLibGetCurrentLanguage to UefiLib, library constructor (depex) can be added back to HiiLib to make sure the execution order is correct.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5938 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-21 08:50:52 +00:00
vanjeff
ed66e1bc0d
clean up the un-suitable ';' location when declaring the functions.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5820 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-04 09:37:28 +00:00
klu2
fc30687f39
Use doxygen comment style for document entity such as struct, enum, variable that use /// but not //
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5647 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-14 03:30:12 +00:00
yshang1
9199040cb2
Code Scrub of MdePkg/Inlcude/Library
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5533 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-21 07:26:20 +00:00
klu2
01aef47bbe
Fix missing include header file and fix typo in comment.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5110 6f19259b-4bc3-4df7-8a09-765794883524
2008-04-22 06:12:08 +00:00
qhuang8
0c9d739571
1. Move some status code related PCDs to MdePkg
...
2. Let DxeIpl PEIM to enable IDT table by default.
3. Fix spelling typo in UefiLib.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4368 6f19259b-4bc3-4df7-8a09-765794883524
2007-12-07 02:06:52 +00:00
qhuang8
f662c19489
1. Add EfiLibInstallDriverBindingComponentName2() to install DriverBinding Protocol and optional ComponentName Protocol and ComponentName2 Protocol. This new API should cover most cases in our UEFI drivers.
...
2. Refine the function headers for this driver model APIs
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3862 6f19259b-4bc3-4df7-8a09-765794883524
2007-09-17 03:39:25 +00:00
qwang12
a73480f6f2
Enable Intel IPF compilation for MdePkg.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3130 6f19259b-4bc3-4df7-8a09-765794883524
2007-07-06 15:19:20 +00:00
vanjeff
50615d1f8e
Remove prefix EFI_ from some TPL macros reference in some comments
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2750 6f19259b-4bc3-4df7-8a09-765794883524
2007-06-26 08:30:09 +00:00