This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

omapl138 mem空间分配问题

我使用的是128M的DDR,那么在OMAPL138-DVSDK中,内存的默认分配是怎样的呢?是不是采用的是LINUX+DSP+CMEM的方式和结构呢,如果是的话,每部分占用的大小为多少呢?如果想改变这些大小分配,应该具体修改哪些文件的哪些参数呢?

比如如果初始linux的mem=32,如果我想修改成mem=64或者更多(不改变起始地址),是不是只要在UBOOT启动内核时,将参数MEM=64M传递给内核即可呢? DSP核运行时的mem是通过谁来分配和定义的呢,是DSPLINK吗?如果不是,那么是过怎么样的方法分配。

如果是,我看到在DSPLINK中的,内存被分为:VECTOR+DDR+SHAREMEM+POOLMEM。我想知道DDR和sharemem0、及sharemem1、poolmem的用途。还有DSP程序的加载地址在哪里,是DDR的起始地址么,那么运行程序是需要的内存区是不是也在DDR呢?

再说到DSPLINK中的一个函数:PROC_read/write,他们需要参数中有个为DSPaddr,我想知道这个DSPaddr的范围为多少。因为我在运行TI的DSPLINK中的例程 readwrite(dsplink/../src/sample),传递的DSPaddr必须在DDR(默认0xc3e00080--0xc40000)的范围,且靠近尾部,否则报错。但是当我手动修改增大DDR(0xc3e00080--0xc70000)范围(CFG_OMAPL138GEM.C和OMAPL138.TCI和,[projetc].cmd),当超出0xc40000,还是要报错,为什么呢? 还有就是当更改DPSLINK中内存分配后,需要重新编译生成新的dsplink.ko文件吗?

谢谢您的解答。