diff --git a/MdePkg/Library/BasePalLibNull/BasePalLibNull.inf b/MdePkg/Library/BasePalLibNull/BasePalLibNull.inf new file mode 100644 index 0000000000..ba8bf8a66e --- /dev/null +++ b/MdePkg/Library/BasePalLibNull/BasePalLibNull.inf @@ -0,0 +1,40 @@ +#/** @file +# Null instance of PAL Library with empty functions. +# +# Copyright (c) 2007 - 2008, 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. +# +# +#**/ + +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = BasePalCallLibNull + FILE_GUID = 632D5625-B73D-43b8-AF30-8D225D96168E + MODULE_TYPE = BASE + VERSION_STRING = 1.0 + LIBRARY_CLASS = PalCallLib + EDK_RELEASE_VERSION = 0x00020000 + + +# +# VALID_ARCHITECTURES = IPF +# + +[Sources.common] + PalCall.c + + +[Packages] + MdePkg/MdePkg.dec + + +[LibraryClasses] + DebugLib + diff --git a/MdePkg/Library/BasePalLibNull/PalCall.c b/MdePkg/Library/BasePalLibNull/PalCall.c new file mode 100644 index 0000000000..e13711abdf --- /dev/null +++ b/MdePkg/Library/BasePalLibNull/PalCall.c @@ -0,0 +1,48 @@ +/** @file + + Template and Sample instance of PalCallLib. + + Copyright (c) 2006 - 2008, 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. + +**/ +#include +#include +#include + +/** + Makes a PAL procedure call. + + This is a wrapper function to make a PAL procedure call. + This is just a template as simple instance. It does not + make real PAL call. It directly reports error if called. + + @param Index The PAL procedure Index number. + @param Arg2 The 2nd parameter for PAL procedure calls. + @param Arg3 The 3rd parameter for PAL procedure calls. + @param Arg4 The 4th parameter for PAL procedure calls. + + @return Structure returned from the PAL Call procedure, including the status and return value. + +**/ +PAL_CALL_RETURN +EFIAPI +PalCall ( + IN UINT64 Index, + IN UINT64 Arg2, + IN UINT64 Arg3, + IN UINT64 Arg4 + ) +{ + PAL_CALL_RETURN Ret; + + Ret.Status = (UINT64) -1; + ASSERT (!RETURN_ERROR (RETURN_UNSUPPORTED)); + return Ret; +}