blob: ec7c3ce35e8d057564105d2890f301fae4631c22 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
/* $NoKeywords */
/**
* @file
*
* MemSetup.h
*
* Contains common MemSetup-related structures and defines.
*
* @xrefitem bom "File Content Label" "Release Content"
* @e project: FDK
* @e sub-project: UEFI
* @e version: $Revision: 317558 $ @e date: $Date: 2015-04-24 17:20:55 -0700 (Fri, 24 Apr 2015) $
*
*/
/*****************************************************************************
*
* Copyright 2013 - 2016 ADVANCED MICRO DEVICES, INC. All Rights Reserved.
*
* This program and the accompanying materials are licensed and made available
* under the terms and conditions of the BSD License which accompanies this
* distribution. The full text of the license may be found at
* http://opensource.org/licenses/bsd-license.php
*
* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR
* IMPLIED.
*
***************************************************************************/
//#########################################################################
//#########################################################################
//#########################################################################
// NOTE: This file shared between SCP and UEFI, make sure all //
// changes are reflected in both copies. //
//#########################################################################
//#########################################################################
//#########################################################################
#ifndef MEMSETUP_H_
#define MEMSETUP_H_
#ifdef __cplusplus
extern "C" {
#endif
/*----------------------------------------------------------------------------------------
* M O D U L E S U S E D
*----------------------------------------------------------------------------------------
*/
/*----------------------------------------------------------------------------------------
* T Y P E D E F S A N D S T R U C T U R E S
*----------------------------------------------------------------------------------------
*/
/// Memory Set up Structure for customer visibility
typedef struct {
UINT8 MemoryClockSpeed; ///< Memory clock speed
UINT8 DDR3RttWr; ///< DDR3 Rtt_Wr
UINT8 DDR3RttNom; ///< DDR3 Rtt_Nom
UINT8 DDR4RttWr; ///< DDR4 Rtt_Wr
UINT8 DDR4RttNom; ///< DDR4 Rtt_Nom
UINT8 AddCtrlDriveStrength; ///< Address/Control Drive Strength
UINT8 ClockDriveStrengt; ///< Clock Drive Strength
UINT8 DataDMDriveStrength; ///< Data/DM Drive Strength
UINT8 DQSDriveStrength; ///< DQS Drive Strength
UINT8 PowerdownEnable; ///< Power down Enable
UINT16 PowerdownIdleClocks; ///< Power down Idle Clocks
UINT8 LongCountMask; ///< Long Count Mask
UINT8 ECCEnable; ///< ECC Enable/Disable
UINT16 tref; ///< tref
UINT16 tselseldq; ///< tsel_sel_dq
UINT16 tselseldqs; ///< tsel_sel_dqs
UINT16 trainingProgress; ///< training progress
UINT16 trainingRestore; ///< restore training results
} MEM_SETUP_VAR;
#ifdef __cplusplus
}
#endif
#endif /* MEMSETUP_H_ */
|