Hi Alexey,
For memory down configuration ensure below are enabled/filled in FSP
When a DIMM is having its SPD, the smbus reads the SPD and configures the DIMM
channels
For Memory down below changes are expected
1. UpdData->MemoryDownEnable is enabled
2)
MEMORY_DOWN_DATA PcdMemoryParameters; /* Offset 0x00F0 */
UINT16 PcdRegionTerminator; /* Offset 0x0100 */
} UPD_DATA_REGION
You can check this function below
romstage_fsp_rt_buffer_callback(FSP_INIT_RT_BUFFER *FspRtBuffer)
{
UPD_DATA_REGION *UpdData = FspRtBuffer->Common.UpdDataRgnPtr;
/* Memory Down overriding */
UpdData->PcdMemoryParameters.EnableMemoryDown = 1;
UpdData->PcdMemoryParameters.DRAMSpeed = 1; /* DRAM Speed
*/
UpdData->PcdMemoryParameters.DRAMType = 1; /* DRAM Type */
UpdData->PcdMemoryParameters.DIMM0Enable = 1; /* DIMM 0
Enable */
UpdData->PcdMemoryParameters.DIMM1Enable = 0; /* DIMM 1
Enable */
UpdData->PcdMemoryParameters.DIMMDWidth = 1; /* DRAM device
data width */
#if CONFIG_MINNOWMAX_2GB_SKU
UpdData->PcdMemoryParameters.DIMMDensity = 2; /* DRAM device
data density 2GB */
#else
UpdData->PcdMemoryParameters.DIMMDensity = 1; /* DRAM device
data density 1GB */
#endif
UpdData->PcdMemoryParameters.DIMMDensity = 2; /* DRAM device
data density */
UpdData->PcdMemoryParameters.DIMMBusWidth = 3; /* DIMM Bus
Width */
UpdData->PcdMemoryParameters.DIMMSides = 0; /* Ranks Per
DIMM */
UpdData->PcdMemoryParameters.DIMMtCL = 7; /* tCL */
UpdData->PcdMemoryParameters.DIMMtRPtRCD = 7; /* tRP and
tRCD in DRAM clk - 5:12.5ns, 6:15ns, etc. */
UpdData->PcdMemoryParameters.DIMMtWR = 8; /* tWR in DRAM
clk */
UpdData->PcdMemoryParameters.DIMMtWTR = 4; /* tWTR in
DRAM clk */
UpdData->PcdMemoryParameters.DIMMtRRD = 6; /* tRRD in
DRAM clk */
UpdData->PcdMemoryParameters.DIMMtRTP = 4; /* tRTP in
DRAM clk */
UpdData->PcdMemoryParameters.DIMMtFAW = 14; /* tFAW in
DRAM clk */
Regards
Ranga
From: Alexey Borovikov <[email protected]>
Sent: 02 May 2019 09:20
To: [email protected]
Subject: [coreboot] FSP 1.0: How to configure soldered memory with spd
There are two boards Intel Atom E3825 with soldered memory. One board with spd,
the other without spd. For a board where there is no spd, after configure the
correct memory settings in the fsp, I get a working memory controller. For a
board with spd, the fsp configurator does not allow to select soldered memory
with spd.
How to configure the board with soldered memory where spd?
Is there any difference when using a memory controller with soldered memory
with spd and DIMM?
FSP 1.0 is working with a chip spd on a smbus?
_______________________________________________
coreboot mailing list -- [email protected]
To unsubscribe send an email to [email protected]