MMDC setting in flash_header.S for SABER-SDP

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

MMDC setting in flash_header.S for SABER-SDP

跳至解决方案
1,318 次查看
yuuki
Senior Contributor II

I have some questions about a MMDC setup in flash_header.S for SABER-SDP.

<Question 1>
For the MMDCx_MDASP setting
In flash_header.S, these are set up as follows.
- 32bit : 4Gb for CS0(2Gb DDR3 x2) => MXC_DCD_ITEM(48, MMDC_P0_BASE_ADDR + 0x040, 0x00000017)
- 64bit : 8Gb for CS0(2Gb DDR x4) => MXC_DCD_ITEM(71, MMDC_P0_BASE_ADDR + 0x040, 0x00000027)

However, according to MMDCx_MDASP field descriptions of a reference manual, the following is explained.

000_0000 256Mb
000_0001 512Mb
001_1111 8Gb (1GB)
011_1111 16Gb (2GB) - default
111_1111 32Gb (4GB)

I think that if CS0 is used 4Gb(2Gb DDR3 x2) with 32bit, MMDCx_MDASP setting is 0x0000000F.
Why is MMDCx_MDASP set as 0x00000017?


<Question 2>
For the MMDCx_MAPSR setting
In flash_header.S, these are set up as follows.
- 32bit : MXC_DCD_ITEM(58, MMDC_P0_BASE_ADDR + 0x404, 0x00011006)
- 64bit : MXC_DCD_ITEM(82, MMDC_P1_BASE_ADDR + 0x404, 0x00011006)

However, according to MMDCx_MAPSR field descriptions of a reference manual, bit19-16 and bit3-1 fields are "Reserved".

Would you teach the reason written in the Reserved domain?
Are these fields for Freescale factories?
Does the user need to write a value in these Fields?

Best Regards,

标签 (1)
0 项奖励
回复
1 解答
897 次查看
alejandrolozan1
NXP Employee
NXP Employee

Hi,

I believe I can help in the question1.

You have to keep in mind that the DDR address starts at 0x1000_0000. So if you want a rage of 512MB you have to consider that offset.

The MDASP register represents the last address of CS0. That means that the last address must be 0x1000_0000+ 512MB = 0x2FFF_FFFF.

Which corresponds to 0x17 in the MDASP register.

I will delve into the second question.

I hope that helps,

Alejandro

在原帖中查看解决方案

0 项奖励
回复
2 回复数
898 次查看
alejandrolozan1
NXP Employee
NXP Employee

Hi,

I believe I can help in the question1.

You have to keep in mind that the DDR address starts at 0x1000_0000. So if you want a rage of 512MB you have to consider that offset.

The MDASP register represents the last address of CS0. That means that the last address must be 0x1000_0000+ 512MB = 0x2FFF_FFFF.

Which corresponds to 0x17 in the MDASP register.

I will delve into the second question.

I hope that helps,

Alejandro

0 项奖励
回复
897 次查看
alejandrolozan1
NXP Employee
NXP Employee

Hi,

I have not found any information in regards the second question.

One thing we can try is to modify those values to the reset state, that should not affect the original behavior.

Best Regards,

Alejandro