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.

如何修改DVSDK Codec Engine例子的内存分配

嗨,大家好

最近在测试OMAPL138测试板,我用的DVSDK版本是dvsdk_omapl138-evm_04_03_00_06_setuplinux

DVSDK里面Codec Engine例子默认的内存映射如下:

0xC0000000 .. 0xC1FFFFFF ( size 32MB): Linux: booted with MEM = 32M 
0xC2000000 .. 0xC2BFFFFF ( size 12MB): CMEM: shared ARM/DSP I/O buffers 
0xC2C00000 .. 0xC2EFFFFF ( size 3MB): SDRAM
0xC2F00000 .. 0xC2F00FFF ( size 4KB): RESET_VECTOR: reset vectors 
0xC2F01000 .. 0xC2FFFFFF ( size 1020KB): DSPLINKMEM: memory for DSPLINK 
0xC3000000 .. 0xC3FFFFFF ( size 16MB): RESET_VECTOR: reset vectors

我的开发板内存是128MB,于是我想给Linux 96MB内存,使得最终内存分配如下:

0xC0000000 .. 0xC5FFFFFF ( size 96MB): Linux: booted with MEM = 96M 
0xC6000000 .. 0xC6BFFFFF ( size 12MB): CMEM: shared ARM/DSP I/O buffers 
0xC6C00000 .. 0xC6EFFFFF ( size 3MB): SDRAM
0xC6F00000 .. 0xC6F00FFF ( size 4KB): RESET_VECTOR: reset vectors 
0xC6F01000 .. 0xC6FFFFFF ( size 1020KB): DSPLINKMEM: memory for DSPLINK 
0xC7000000 .. 0xC7FFFFFF ( size 16MB): RESET_VECTOR: reset vectors

按照论坛及文档说明,我修改了三个地方:

首先是uboot参数,将mem=32M改成mem=96M。

其次是加载CMEM模块时指定的物理地址,将phys_start=0xC2000000 phys_end=0xC2BFFFFF改成phys_start=0xC6000000 phys_end=0xC6BFFFFF。

最后是CE Server内存分配配置文件,我的配置:

var mem_ext = [
{
   comment: "SDRAM: off-chip memory for application code and data",
   name: "SDRAM",
   base: 0xC6C00000,
   len: 0x00300000,
   space: "code/data"
},
{
   comment: "RESET_VECTOR: off-chip memory for the reset vector table",
   name: "RESET_VECTOR",
   base: 0xC6F00000,
   len: 0x00001000,
   space: "code/data"
},
{
   comment: "DSPLINK: off-chip memory reserved for DSPLINK code and data",
   name: "DSPLINKMEM",
   base: 0xC6F01000,
   len: 0x00100000 - 0x1000,
   space: "code/data"
},
{
   comment: "DDRALGHEAP: off-chip memory for dynamic algmem allocation",
   name: "DDRALGHEAP",
   base: 0xC7000000,
   len: 0x01000000,
   space: "code/data"
},
];

请问除了这三个文件,我还需要修改其他的么?