hi3518e SDK - mpp2/ko/load3518e出错

1 执行   mpp2/ko/load3518e 出错

海思sdk:mpp2/ko/load3518e

出错信息(翻译出错信息很有用):

Hisilicon Media Memory Zone Manager
ERROR: Conflict MMZ:
PHYS(0x82000000, 0x83FFFFFF), GFP=0, nBYTES=32768KB,    NAME="anonymous"
MMZ conflict to kernel memory (0x80000000, 0x825FFFFF)
Add MMZ failed: PHYS(0x82000000, 0x83FFFFFF), GFP=0, nBYTES=32768KB,    NAME="anonymous"
Hisilicon UMAP device driver interface: v3.00
load sys.ko ...OK!
出差原因:内存分配冲突:

分析

翻译输出信息可知:内存地址分配冲突;

bootargs :mem=38M 指给内核分配38M内存空间,及给OS(operating system)留了38M, 就是kernel memory (0x80000000, 0x825FFFFF=0x80000000+(0x2600000-1));

从Add MMZ failed: PHYS(0x82000000, 0x83FFFFFF), GFP=0, nBYTES=32768KB,    NAME="anonymous"
可以看出楼主把MMZ设为 从0x82000000开始到0x83ffffff共32M
查看mpp2/ko/load3518e 发现108行有mmz.ko的初始化信息:

  insmod mmz.ko mmz=anonymous,0,0x82000000,32M anony=1 || report_error  

可见海思默认的mmz内存地址为:0x82000000 之后的32M内存,但是显然已经和系统内存冲突;

解决方法:

1.直接修改bootarg中的mem 使它减小为32M(0x82000000-0x80000000),及设置(mem=32M)

2,修改mpp2/ko/load3518e 的mmz空间设置:

将108行:

insmod mmz.ko mmz=anonymous,0,0x82000000,32M anony=1 || report_error 

改为:

 insmod mmz.ko mmz=anonymous,0,0x82600000,26M anony=1 || report_error

2 执行 sample程序无效果

原因:摄像头频率不对;
问题出现在mpp2/ko/load3518e文件:
第71行:
himm 0x20030030 0x1;              #Sensor clock 24 MHz
改为:
himm 0x20030030 0x0;              #Sensor clock 12 MHz

要注意摄像头的一些配置信息;

















  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值