3 * Copyright (c) 2011, ARM Limited. All rights reserved.
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
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.
16 #include <Library/PrePiHobListPointerLib.h>
17 #include <Library/DebugLib.h>
18 #include <Library/PcdLib.h>
21 Returns the pointer to the HOB list.
23 This function returns the pointer to first HOB in the list.
25 @return The pointer to the HOB list.
34 return (VOID
*)*(UINTN
*)(PcdGet32 (PcdCPUCoresNonSecStackBase
) +
35 PcdGet32 (PcdCPUCoresNonSecStackSize
) -
36 PcdGet32 (PcdPeiGlobalVariableSize
) +
37 PcdGet32 (PcdHobListPtrGlobalOffset
));
43 Updates the pointer to the HOB list.
45 @param HobList Hob list pointer to store
56 HobListPtr
= (UINTN
*)(PcdGet32 (PcdCPUCoresNonSecStackBase
) +
57 PcdGet32 (PcdCPUCoresNonSecStackSize
) -
58 PcdGet32 (PcdPeiGlobalVariableSize
) +
59 PcdGet32 (PcdHobListPtrGlobalOffset
));
61 *HobListPtr
= (UINTN
)HobList
;