TI论坛
直播中

唐芳

7年用户 209经验值
私信 关注

请问gel文件中,replacement addr指向的是36bits的物理地址。那这个0x10000 0000地址应该是物理地址的哪一块?

本帖最后由 一只耳朵怪 于 2018-6-19 15:07 编辑

#define XMPAX2_L     (*(int*)(0x08000000 + 0x00000010))
#define XMPAX2_H     (*(int*)(0x08000000 + 0x00000014))

xmc_setup()
[
    /* mapping for ddr emif registers XMPAX*2 */
    XMPAX2_L = 0x100000FF;     /* replacement addr + permission fo segment*/
    XMPAX2_H = 0x2100000B;    /* base addr + seg size (4KB)*/        
]
gel文件中有这样一段代码,replacement addr指向的是36bits的物理地址。那这个0x10000 0000地址应该是物理地址的哪一块?为什么要把0x2100 0000映射过去?

回帖(2)

杨娟

2018-6-19 05:34:39
如C6678数据手册memory map所述,DDR3控制器的MMR的逻辑起始地址是0x21000000,物理地址是0x1 0000 0000,而默认MPAX中没有做相应的映射,所以需要代码配置MPAX使其地址映射好,这样才能用0x21000000地址去访问真正的DDR控制器寄存器。
                                                                          

举报

唐芳

2018-6-19 05:40:54
引用: zbb9612 发表于 2018-6-19 05:34
如C6678数据手册memory map所述,DDR3控制器的MMR的逻辑起始地址是0x21000000,物理地址是0x1 0000 0000,而默认MPAX中没有做相应的映射,所以需要代码配置MPAX使其地址映射好,这样才能用0x21000000地址去访问真正的DDR控制器寄存器。
                                                                          

谢谢,真没发现这里的逻辑地址和物理地址还不一样
举报

更多回帖

发帖
×
20
完善资料,
赚取积分