1 /** @file
2 
3 Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution.  The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8 
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11 
12 Module Name:
13   PpisNeededByDxeCore.c
14 
15 Abstract:
16 
17 Revision History:
18 
19 **/
20 
21 #include "PpisNeededByDxeCore.h"
22 #include "HobGeneration.h"
23 #include "SerialStatusCode.h"
24 
25 EFI_STATUS
26 EFIAPI
PreparePpisNeededByDxeCore(IN HOB_TEMPLATE * Hob)27 PreparePpisNeededByDxeCore (
28   IN HOB_TEMPLATE  *Hob
29   )
30 /*++
31 
32 Routine Description:
33 
34   This routine adds the PPI/Protocol Hobs that are consumed by the DXE Core.
35   Normally these come from PEI, but since our PEI was 32-bit we need an
36   alternate source. That is this driver.
37 
38   This driver does not consume PEI or DXE services and thus updates the
39   Phit (HOB list) directly
40 
41 Arguments:
42 
43   HobStart - Pointer to the beginning of the HOB List from PEI
44 
45 Returns:
46 
47   This function should after it has add it's HOBs
48 
49 --*/
50 {
51   EFI_REPORT_STATUS_CODE                    ReportStatusCode;
52 
53   InstallSerialStatusCode (&ReportStatusCode);
54   Hob->SerialStatusCode.Interface = (EFI_PHYSICAL_ADDRESS) (UINTN) ReportStatusCode;
55 
56   return EFI_SUCCESS;
57 }
58 
59 
60