• 欢迎浏览“String me = Creater\忠实的资深Linux玩家;”,请文明浏览,理性发言,有侵犯你的权益请邮件我(creater@vip.qq.com).
  • 把任何的失败都当作一次尝试,不要自卑;把所有的成功都想成是一种幸运,不要自傲。
  •    3年前 (2014-10-26)  dsp |   抢沙发  22 
    文章评分 0 次,平均分 0.0

    今天看了下关于内存管理的文档,特地记录一下。
    内存图在如下的文件中可以看到,如下所示:

    Memory Map - 512MB DDR
    +--------------+ 
    | 80MB         | Linux
    |              |
    |              |
    +--------------+
    | 64MB         | CMEM
    |              |
    |              | 
    +--------------+
    | 60MB         | (SR1) Bitstream buffer (Cached)
    |              |
    +--------------+
    | 3MB          | Video M3 code
    +--------------+
    | 14MB         | Video M3 data
    +--------------+
    | 2MB          | VPSS / DSS M3 code
    +--------------+
    | 22MB         | VPSS / DSS M3 data
    +--------------+
    | 1MB          | DSP code
    +--------------+
    | 10MB         | DSP data
    +--------------+
    | 128MB        | Tiler buffer 
    |              |
    +--------------+
    | 105MB        | SR(2) Frame buffer 
    |              |
    |              |
    |              | VPSS-VID M3 Frame buffer
    |              |
    |              |
    |              |
    |              |
    |              |
    +--------------+
    | 16MB         | (SR0) Syslink MsgQ / IPC List MP (Non-cached)
    +--------------+
    | 2MB          | VPSS M3 - VPDMA descriptor
    +--------------+
    | 2MB          | VPSS M3 - FBDev
    +--------------+
    | 2MB          | Host - VPSS M3 Notify (for FBDev)
    +--------------+
    | 1MB          | Remote Printf
    +--------------+
    

    这只是默认的内存图,我们可以修改各自的大小,但是必须有几点需要遵守。

    • 1. M3 Vedio与M3 VPSS的代码区必须位于内存图的高256M上,从图上可以看出,确实是在高256M内。
    • 2.至少2M的空间分配给Linux内核,用于支持Syslink-Notify,完成VPSS M3与Linux内核在RDK中通信,如果修改了这项配置,需要在uboot中更新参数"notifyk,vpssm3_sva"
    • 3.至少保留2M空间用于RDK的FBDev缓冲区,如果修改了该缓冲区的基地址,需要修改以下文件:
    • ipnc_rdk\ipnc_mcfw\bin\load.sh
      insmod ./kermod/vpss.ko omx=1 sbufaddr=0xbfb00000
    • 4.需要1M空间用于远程调试时各个核之间的共享数据,A8处理器不停的读取该共享存储区并在A8上产生调试信息,如果修改了该项地址则需要按照以下顺序修改文件:
    • ipnc_rdk\ipnc_mcfw\bin\scripts\wait_cmd.sh
      ipnc_rdk\ipnc_mcfw\bin\scripts\send_cmd.sh
      ipnc_rdk\ipnc_mcfw\bin\scripts\send_str.sh

      修改

      ../bin/remote_debug_client.out 0xbff00000 --waitch $1 $2
     

    除特别注明外,本站所有文章均为String me = "Creater\忠实的资深Linux玩家";原创,转载请注明出处来自http://unix8.net/home.php/3787.html

    关于

    发表评论

    暂无评论

    切换注册

    登录

    忘记密码 ?

    切换登录

    注册

    扫一扫二维码分享