• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /** @file
2   Provide FSP wrapper API test related function.
3 
4   Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
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/BaseMemoryLib.h>
17 #include <Library/DebugLib.h>
18 #include <Library/HobLib.h>
19 #include <Guid/GuidHobFspEas.h>
20 
21 /**
22   Test the output of FSP API - FspMemoryInit.
23 
24   @param[in]  FspmUpdDataPtr Address pointer to the FSP_MEMORY_INIT_PARAMS structure.
25   @param[in]  HobListPtr     Address of the HobList pointer.
26 
27   @return test result on output of FspMemoryInit API.
28 **/
29 EFI_STATUS
30 EFIAPI
TestFspMemoryInitApiOutput(IN VOID * FspmUpdDataPtr,IN VOID ** HobListPtr)31 TestFspMemoryInitApiOutput (
32   IN  VOID        *FspmUpdDataPtr,
33   IN  VOID        **HobListPtr
34   )
35 {
36   DEBUG_CODE_BEGIN ();
37   EFI_PEI_HOB_POINTERS        Hob;
38 
39   Hob.Raw = (UINT8 *)(*(HobListPtr));
40   while (TRUE) {
41     if (END_OF_HOB_LIST(Hob) == TRUE) {
42       DEBUG((DEBUG_INFO, "gFspBootLoaderTolumHobGuid not Found\n"));
43       break;
44     }
45     if ((CompareGuid (&Hob.ResourceDescriptor->Owner, &gFspBootLoaderTolumHobGuid))) {
46       DEBUG ((DEBUG_INFO, "gFspBootLoaderTolumHobGuid Found\n"));
47       DEBUG ((DEBUG_INFO, "Fill Boot Loader reserved memory range with 0x5A for testing purpose\n"));
48       SetMem ((VOID *)(UINTN)Hob.ResourceDescriptor->PhysicalStart, (UINTN)Hob.ResourceDescriptor->ResourceLength, 0x5A);
49       break;
50     }
51     Hob.Raw = GET_NEXT_HOB (Hob);
52   }
53   DEBUG_CODE_END ();
54 
55   return RETURN_SUCCESS;
56 }
57 
58 /**
59   Test the output of FSP API - TempRamExit.
60 
61   @param[in] TempRamExitParam    Address pointer to the TempRamExit parameters structure.
62 
63   @return test result on output of TempRamExit API.
64 **/
65 EFI_STATUS
66 EFIAPI
TestFspTempRamExitApiOutput(IN VOID * TempRamExitParam)67 TestFspTempRamExitApiOutput (
68   IN VOID         *TempRamExitParam
69   )
70 {
71   return RETURN_SUCCESS;
72 }
73 
74 /**
75   Test the output of FSP API - FspSiliconInit.
76 
77   @param[in] FspsUpdDataPtr Address pointer to the Silicon Init parameters structure.
78 
79   @return test result on output of FspSiliconInit API.
80 **/
81 EFI_STATUS
82 EFIAPI
TestFspSiliconInitApiOutput(IN VOID * FspsUpdDataPtr)83 TestFspSiliconInitApiOutput (
84   IN  VOID        *FspsUpdDataPtr
85   )
86 {
87   return RETURN_SUCCESS;
88 }
89