1 /** @file
2 *
3 *  Copyright (c) 2011, ARM Limited. All rights reserved.
4 *
5 *  This program and the accompanying materials
6 *  are licensed and made available under the terms and conditions of the BSD License
7 *  which accompanies this distribution.  The full text of the license may be found at
8 *  http://opensource.org/licenses/bsd-license.php
9 *
10 *  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 *  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 *
13 **/
14 
15 #include <PiPei.h>
16 #include <Library/ArmLib.h>
17 #include <Library/PrePiHobListPointerLib.h>
18 #include <Library/DebugLib.h>
19 
20 /**
21   Returns the pointer to the HOB list.
22 
23   This function returns the pointer to first HOB in the list.
24 
25   @return The pointer to the HOB list.
26 
27 **/
28 VOID *
29 EFIAPI
PrePeiGetHobList(VOID)30 PrePeiGetHobList (
31   VOID
32   )
33 {
34   return (VOID *)ArmReadTpidrurw();
35 }
36 
37 
38 
39 /**
40   Updates the pointer to the HOB list.
41 
42   @param  HobList       Hob list pointer to store
43 
44 **/
45 EFI_STATUS
46 EFIAPI
PrePeiSetHobList(IN VOID * HobList)47 PrePeiSetHobList (
48   IN  VOID      *HobList
49   )
50 {
51   ArmWriteTpidrurw((UINTN)HobList);
52 
53   return EFI_SUCCESS;
54 }
55