blob: ffa56c39ba4e157427ea89c1fff0741232c0400b [file] [log] [blame]
zbao7d94cf92012-07-02 14:19:14 +08001/* $NoKeywords:$ */
2/**
3 * @file
4 *
5 * AMD Family_15 WHEA initial Data
6 *
7 * @xrefitem bom "File Content Label" "Release Content"
8 * @e project: AGESA
9 * @e sub-project: CPU/Family/0x15
10 * @e \$Revision: 63425 $ @e \$Date: 2011-12-22 11:24:10 -0600 (Thu, 22 Dec 2011) $
11 *
12 */
13/*
14 ******************************************************************************
15 *
16 * Copyright 2008 - 2012 ADVANCED MICRO DEVICES, INC. All Rights Reserved.
17 *
18 * AMD is granting you permission to use this software (the Materials)
19 * pursuant to the terms and conditions of your Software License Agreement
20 * with AMD. This header does *NOT* give you permission to use the Materials
21 * or any rights under AMD's intellectual property. Your use of any portion
22 * of these Materials shall constitute your acceptance of those terms and
23 * conditions. If you do not agree to the terms and conditions of the Software
24 * License Agreement, please do not use any portion of these Materials.
25 *
26 * CONFIDENTIALITY: The Materials and all other information, identified as
27 * confidential and provided to you by AMD shall be kept confidential in
28 * accordance with the terms and conditions of the Software License Agreement.
29 *
30 * LIMITATION OF LIABILITY: THE MATERIALS AND ANY OTHER RELATED INFORMATION
31 * PROVIDED TO YOU BY AMD ARE PROVIDED "AS IS" WITHOUT ANY EXPRESS OR IMPLIED
32 * WARRANTY OF ANY KIND, INCLUDING BUT NOT LIMITED TO WARRANTIES OF
33 * MERCHANTABILITY, NONINFRINGEMENT, TITLE, FITNESS FOR ANY PARTICULAR PURPOSE,
34 * OR WARRANTIES ARISING FROM CONDUCT, COURSE OF DEALING, OR USAGE OF TRADE.
35 * IN NO EVENT SHALL AMD OR ITS LICENSORS BE LIABLE FOR ANY DAMAGES WHATSOEVER
36 * (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS
37 * INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF AMD'S NEGLIGENCE,
38 * GROSS NEGLIGENCE, THE USE OF OR INABILITY TO USE THE MATERIALS OR ANY OTHER
39 * RELATED INFORMATION PROVIDED TO YOU BY AMD, EVEN IF AMD HAS BEEN ADVISED OF
40 * THE POSSIBILITY OF SUCH DAMAGES. BECAUSE SOME JURISDICTIONS PROHIBIT THE
41 * EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES,
42 * THE ABOVE LIMITATION MAY NOT APPLY TO YOU.
43 *
44 * AMD does not assume any responsibility for any errors which may appear in
45 * the Materials or any other related information provided to you by AMD, or
46 * result from use of the Materials or any related information.
47 *
48 * You agree that you will not reverse engineer or decompile the Materials.
49 *
50 * NO SUPPORT OBLIGATION: AMD is not obligated to furnish, support, or make any
51 * further information, software, technical information, know-how, or show-how
52 * available to you. Additionally, AMD retains the right to modify the
53 * Materials at any time, without notice, and is not obligated to provide such
54 * modified Materials to you.
55 *
56 * U.S. GOVERNMENT RESTRICTED RIGHTS: The Materials are provided with
57 * "RESTRICTED RIGHTS." Use, duplication, or disclosure by the Government is
58 * subject to the restrictions as set forth in FAR 52.227-14 and
59 * DFAR252.227-7013, et seq., or its successor. Use of the Materials by the
60 * Government constitutes acknowledgement of AMD's proprietary rights in them.
61 *
62 * EXPORT ASSURANCE: You agree and certify that neither the Materials, nor any
63 * direct product thereof will be exported directly or indirectly, into any
64 * country prohibited by the United States Export Administration Act and the
65 * regulations thereunder, without the required authorization from the U.S.
66 * government nor will be used for any purpose prohibited by the same.
67 ******************************************************************************
68 */
69
70/*----------------------------------------------------------------------------------------
71 * M O D U L E S U S E D
72 *----------------------------------------------------------------------------------------
73 */
74#include "AGESA.h"
75#include "cpuLateInit.h"
76#include "cpuFamilyTranslation.h"
77#include "Filecode.h"
78CODE_GROUP (G3_DXE)
79RDATA_GROUP (G3_DXE)
80
81#define FILECODE PROC_CPU_FAMILY_0X15_CPUF15WHEAINITDATATABLES_FILECODE
82
83
84/*----------------------------------------------------------------------------------------
85 * D E F I N I T I O N S A N D M A C R O S
86 *----------------------------------------------------------------------------------------
87 */
88
89/*----------------------------------------------------------------------------------------
90 * T Y P E D E F S A N D S T R U C T U R E S
91 *----------------------------------------------------------------------------------------
92 */
93
94/*----------------------------------------------------------------------------------------
95 * P R O T O T Y P E S O F L O C A L F U N C T I O N S
96 *----------------------------------------------------------------------------------------
97 */
98VOID
99GetF15WheaInitData (
100 IN CPU_SPECIFIC_SERVICES *FamilySpecificServices,
101 OUT CONST VOID **F15WheaInitDataPtr,
102 OUT UINT8 *NumberOfElements,
103 IN AMD_CONFIG_PARAMS *StdHeader
104 );
105
106/*----------------------------------------------------------------------------------------
107 * E X P O R T E D F U N C T I O N S
108 *----------------------------------------------------------------------------------------
109 */
110AMD_HEST_BANK_INIT_DATA F15HestBankInitData[] = {
111 {0xFFFFFFFF,0xFFFFFFFF,0x400,0x401,0x402,0x403},
112 {0xFFFFFFFF,0xFFFFFFFF,0x404,0x405,0x406,0x407},
113 {0xFFFFFFFF,0xFFFFFFFF,0x408,0x409,0x40A,0x40B},
114 {0xFFFFFFFF,0xFFFFFFFF,0x410,0x411,0x412,0x413},
115 {0xFFFFFFFF,0xFFFFFFFF,0x414,0x415,0x416,0x417},
116 {0xFFFFFFFF,0xFFFFFFFF,0x418,0x419,0x41A,0x41B},
117};
118
119AMD_WHEA_INIT_DATA F15WheaInitData = {
120 0x000000000, // AmdGlobCapInitDataLsd
121 0x000000000, // AmdGlobCapInitDataMsd
122 0x000000077, // AmdGlobCtrlInitDataLsd
123 0x000000000, // AmdGlobCtrlInitDataMsd
124 0x00, // AmdMcbClrStatusOnInit
125 0x02, // AmdMcbStatusDataFormat
126 0x00, // AmdMcbConfWriteEn
127 (sizeof (F15HestBankInitData) / sizeof (F15HestBankInitData[0])), // HestBankNum
128 &F15HestBankInitData[0] // Pointer to Initial data of HEST Bank
129};
130
131
132/*---------------------------------------------------------------------------------------*/
133/**
134 * Returns the family specific WHEA table properties.
135 *
136 * @CpuServiceMethod{::F_CPU_GET_FAMILY_SPECIFIC_ARRAY}.
137 *
138 * @param[in] FamilySpecificServices The current Family Specific Services.
139 * @param[out] F15WheaInitDataPtr Points to the family 15h WHEA properties.
140 * @param[out] NumberOfElements Will be one to indicate one structure.
141 * @param[in] StdHeader Header for library and services.
142 *
143 */
144VOID
145GetF15WheaInitData (
146 IN CPU_SPECIFIC_SERVICES *FamilySpecificServices,
147 OUT CONST VOID **F15WheaInitDataPtr,
148 OUT UINT8 *NumberOfElements,
149 IN AMD_CONFIG_PARAMS *StdHeader
150 )
151{
152 *NumberOfElements = 1;
153 *F15WheaInitDataPtr = &F15WheaInitData;
154}