
海思方案
robin.L
物来顺应,未来不迎,当时不杂,既过不恋!
展开
-
海思Hi3521DV200移植opencv3.3
1.官网下载源码,opencv-3.3.0版本https://opencv.org/releases/2.编译cmake2.1建立目录mkdir buildmkdir output2.2 新建一个bulid.sh脚本#!/bin/shcmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_C_COMPILER=arm-himix400-linux-gcc \ -D CMAKE_CXX_COMPILER=arm-himix40.原创 2020-08-12 11:11:49 · 1062 阅读 · 0 评论 -
I2C用户态工具
我们可以根据设备节点来操作响应的i2c,以便应用层实现对i2c读写操作。内核态和用户态操作都可以在外设驱动指南pdf中有相应的说明。本示例可以当作一个工具使用。当然对于i2c工具很多,比如海思tools封装好的i2c_read和i2c_write,另外还有开源工具i2c-tools(busybox编译出来有这个工具)。/*** Copyright (C), 2016, * All rights reserved.** @file maincpp* @brief * @autho原创 2020-07-29 08:50:46 · 710 阅读 · 0 评论 -
udevadm
udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB3)Udevadm info starts with the device specified by the devpath and thenwalks up the chain of parent devices. It prints for every devicefound, all possible attributes in the udev rules key format.原创 2020-06-03 10:56:07 · 432 阅读 · 0 评论 -
aarch64-himix200-linux-gcc -mabi=apcs-gnu
aarch64-himix200-linux-gcc: error: unrecognized argument in option '-mabi=apcs-gnu'aarch64-himix200-linux-gcc: note: valid arguments to '-mabi=' are: ilp32 lp64aarch64-himix200-linux-gcc: error: unrecognized command line option '-mapcs'; did you mean '--原创 2020-05-23 16:20:14 · 1291 阅读 · 1 评论 -
海思uboot使用dtc报错
scripts/kconfig/conf --silentoldconfig Kconfig CHK include/config.h CFG u-boot.cfg GEN include/autoconf.mk.dep GEN include/autoconf.mk CHK include/config/uboot.release CHK include/generated/timestamp_autogenerated.h./.原创 2020-05-14 16:55:54 · 727 阅读 · 0 评论 -
mount挂载nfs超时
设备能ping通服务端,服务端也能ping通设备端,但是就是挂载不上。通过打印ifconfig查看,mac地址一致会变。我的解决方法:固定mac地址即可。ifconfig eth0 hw ether 00:0C:29:34:97:22...原创 2020-04-30 17:10:29 · 3485 阅读 · 1 评论 -
pppd2.4.5 移植海思平台报错 strip: Unable to recognise the format of the input file
1.下载源码http://www.linuxfromscratch.org/~thomasp/blfs-book-xsl/basicnet/ppp.html2.配置编译./configure --prefix=$PWD/__installmake CC=arm-himix200-linux-gcc;make install但是make install报错stri...原创 2020-04-17 10:10:10 · 1277 阅读 · 0 评论 -
海思模式日志 cat /proc/umap/vi
其实有时候我们查看海思属性只看某个状态的,全部的很多也不易查找浏览,可以借助grepcat /proc/umap/vi | grep "VI PIPE STATUS" -A 8打印如下-------------------------------VI PIPE STATUS---------------------------------------------- PipeI...原创 2020-04-13 14:57:35 · 3222 阅读 · 0 评论 -
海思kernel异常反汇编定位
加载驱动时候内核打印报错PC is at ssp_lcd_ioctl+0x5c/0x84 [hi_ssp_ota5182]LR is at do_vfs_ioctl+0xb0/0x8ecpc : [<bf8aa364>] lr : [<c01f031c>] psr: 80000013sp : ccbbdef8 ip : 00000003 fp : ...原创 2020-04-11 10:50:55 · 781 阅读 · 0 评论 -
hi3519av100 的相关管脚复用功能无法用作GPIO功能解决办法
sdk版本Hi3519AV100_SDK_V2.0.2.0,用户指南里有特别注意: 当使用GPIO13、GPIO9_6和GPIO9_7时,需要先配置MISC_CTRL1[mipitxphy_cmos_mode_enable]为1(寄存器详细描述见3.5.5.2章节),同时配置PHY_RSTZ和PHY_TST_CTRL0 寄存器分别为0x0和0x1(寄存器详情请参见10.5.5小节),使MIPI...原创 2020-04-03 09:00:29 · 1390 阅读 · 0 评论 -
海思 强制销毁VB功能
插入hi35xx_base.ko时加上模块参数vb_force_exit=1,可允许用户在程序退出时不用手动销毁VB,而由系统强制销毁VB。注意:此功能不是规范安全的做法,建议客户还是应该在退出程序时释放已申请的资源,禁止在使用时强制销毁资源。...原创 2020-03-27 19:20:57 · 912 阅读 · 0 评论 -
HI_MPI_IVE_DMA抠图
int yuv400_crop(uint32_t width_src, uint32_t height_src, VIDEO_FRAME_INFO_S *stFrame, uint32_t x_start, uint32_t y_start, uint32_t width_dst, uint32_t height_dst, IVE_IMAGE_S * dst_mm...原创 2020-03-18 10:37:47 · 1098 阅读 · 0 评论 -
Linux中内核IO使用方法
请参考:Hi3519AV100_SDK_V2.0.2.0\osdrv\opensource\kernel\linux-4.9.y\Documentation\gpio\gpio-legacy.txt文件提供的API:驱动需要包含 #include <linux/gpio.h>判断一个IO是否合法:int gpio_is_valid(int number);设置GPIO的...原创 2020-03-12 18:51:44 · 514 阅读 · 0 评论 -
海思更改uboot命令行前缀 CONFIG_SYS_PROMPT
在配置文件中.config或者在\uboot\u-boot-2016.11\configs\hi3516dv200_emmc_defconfig这样改更彻底CONFIG_SYS_PROMPT="hisilicon # "原创 2020-03-05 16:39:28 · 892 阅读 · 1 评论 -
mount --bind使用方法
针对只读文件系统,有时候避免更改升级rootfs麻烦,可以使用mount --bind将一个临时文件系统目录挂载到rootfs系统上,这样就可以更改该目录下文件,而不必重新制作升级rootfs,同时重启后不会改变rootfs里面原始内容。mount --bind命令来将两个目录连接起来,mount --bind命令是将前一个目录挂载到后一个目录上,所有对后一个目录的访问其实都是对前一个目录的访...原创 2020-03-04 17:26:59 · 1002 阅读 · 0 评论 -
海思Hi3519AV100 uboot下不能识别usb3.0 设备
hisilicon # usb startstarting USB...USB0: Register 2000140 NbrPorts 2Starting the controllerUSB XHCI 1.10scanning bus 0 for devices... unable to get device descriptor (error=-1)Device not re...原创 2020-03-02 18:16:35 · 2933 阅读 · 3 评论 -
Hi3519AV100 内核编译错误 ./lib/build_OID_registry line 14
Can't locate strict.pm in @INC (@INC contains: /tmp/ndk-andrewhsieh/build/perl/prefix/lib/site_perl/5.16.2/x86_64-linux /tmp/ndk-andrewhsieh/build/perl/prefix/lib/site_perl/5.16.2 /tmp/ndk-andrewhsieh...原创 2020-02-28 09:04:46 · 955 阅读 · 0 评论 -
Hi3519AV100 USB DEVICE驱动问题
配置文件hi3519av100_smp_emmc_defconfig当编译内核时选择的配置文件带有smp字样时,则#ifndefCONFIG_HISI_MC(如图1-4)下的节点为有效节点,且默认配置为:port0默认配置为host模式,port1默认配置为device模式,如需进行切换,可在dtsi中打开相应设备节点(即修改#if下的1和0对节点进行打开和关闭)。当编译内核时选择的...原创 2020-02-25 14:36:46 · 2333 阅读 · 0 评论 -
Hi3519AV100 PCIE_USB3_MODE
在Hi3519AV100芯片中,PCIE与USB3.0接口信号是复用的,应用时需要根据场景选择复用模式。复用模式由COMBO_PHY_MODE(与 SENSOR_HS2复用)管脚上电时的上下拉决定。请参考 Hi35xxVxxx_PINOUT_CN.xlsx中管脚信息表页面。1.COMBO_PHY_MODE "用于设定COMBO PHY接口的复用模式:0:PCIe模式;1:USB3模...原创 2020-02-25 11:13:01 · 1146 阅读 · 0 评论 -
I帧、P帧、B帧,以及PTS、DTS的关系(转)
原文链接:https://blog.youkuaiyun.com/davidsguo008/article/details/72628690在MPEG编码的过程中,部分视频帧序列压缩成为I帧,部分压缩成P帧,还有部分压缩成B帧。I帧法是帧内压缩法,也称为“关键帧”压缩法。I帧法是基本离散余弦变换 DCT( Discrete Cosine Transform )的压缩技术,这种算法与JPEG压缩算法类似...原创 2020-01-13 15:19:27 · 444 阅读 · 0 评论 -
海思 HIWD 框架构思
海思 HIWD 框架构思原创 2020-01-09 19:38:18 · 601 阅读 · 0 评论 -
海思移植 APR(Apache Portable Runtime)
0.前言Apache可移植运行时(Apache Portable Runtime,简称APR)是ApacheHTTP服务器的支持库,提供了一组映射到下层操作系统的API。如果操作系统不支持某个特定的功能,APR将提供一个模拟的实现。这样程序员使用APR编写真正可在不同平台上移植的程序。最初,APR是作为Apache HTTP服务器的一部分而存在的,但是Apache软件基金会将其延伸成一个单独的...原创 2020-01-07 16:56:53 · 1000 阅读 · 0 评论 -
海思GUI 设计一点思考
前言 GUI界面最主要功能是显示信息和人机交互。显示信息主要功能实时显示设备的状态,比如设备电压、温度,GPS状态,4G状态和实时视频等状态。而人机交互主要是完成设备功能设置,参数的获取和设置,拨打电话等功能。针对海思安防这块来说,主要是在linux架构下利用linux framebuffer来完成的,这块海思只提供hifb,可以通过ioctl操作,而对于控件主要是由自己来完成,不同厂家...原创 2020-01-04 10:48:32 · 1048 阅读 · 1 评论 -
VO用户时序总结
Hi3531 PLL 频率计算方法PLL Pin 计算方法描述 注意事项FREF PLL 输入参考时钟 ...原创 2019-12-27 09:06:51 · 1467 阅读 · 0 评论 -
海思hi3519a交叉编译zbar
1.源码下载https://sourceforge.net/projects/zbar/files/zbar/0.10/版本号:0.102.编译配置./configure CC=arm-himix200-linux-gcc --host=arm-himix200-linux --prefix=$PWD/_install --disable-video --without-gtk ...原创 2019-12-24 10:20:04 · 559 阅读 · 0 评论 -
海思hi3519a内核编译perl语法错误
编译海思内核时候突然出现如下错误,根据错误提示找到build_OID_registry,把第14行注释掉了就可以了。GEN lib/oid_registry_data.cCan't locate strict.pm in @INC (@INC contains: /tmp/ndk-andrewhsieh/build/perl/prefix/lib/site_perl/5.16.2...原创 2019-12-19 09:38:38 · 412 阅读 · 0 评论 -
Hi3519a编译openssl
1.下载源码https://github.com/openssl/openssl/releases?after=FIPS_098_TEST_7下载openssl-OpenSSL_0_9_8e.tar.gz2.配置选项./Configure no-asm shared --prefix=$PWD/_install linux-generic32修改makefile中编译器选...原创 2019-12-14 17:10:35 · 339 阅读 · 0 评论 -
Hi3519a编译live555
1.源码http://www.live555.com/liveMedia/public/2.makefile配置cp config.armlinux config.hi3519a修改config.hi3519a中CROSS_COMPILE?= arm-himix200-linux- 和openssl 头文件和库路径CROSS_COMPILE?= ar...原创 2019-12-14 16:17:16 · 581 阅读 · 0 评论 -
Hi3519a编译libmxml库
1.源码下载https://github.com/michaelrsweet/mxml/releases本次使用的V2.9版本2.解压并编译./configure CC=arm-himix200-linux-gcc --host=arm-himix200-linux --prefix=$PWD/_installmake;make install...原创 2019-12-14 15:39:22 · 235 阅读 · 0 评论 -
Hi3519A编译libiconv报错./stdio.h:1010:1: error: 'gets' undeclared here (not in a function)
In file included from progname.c:26:0:./stdio.h:1010:1: error: 'gets' undeclared here (not in a function) _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");解决方法libiconv/src...原创 2019-12-14 14:43:26 · 419 阅读 · 0 评论 -
海思hi3519av100编译freetype2+SDL2+SDL2_ttf2.0+libiconv
1.编译工具arm-himix200-linux-gcc2.freetype2编译https://sourceforge.net/projects/freetype/files/freetype2/下载freetype-2.6.1版本./configure CC=arm-himix200-linux-gcc --host=arm-himix200-linux --prefi...原创 2019-12-13 18:03:09 · 1323 阅读 · 1 评论 -
arm-himix200-linux-g++: fatal error: cannot specify -o with -c, -S or -E with multiple files
arm-himix200-linux-g++: fatal error: cannot specify -o with -c, -S or -E with multiple files原因:makefile中没有过滤另外一个机型相同文件名,是由同名源文件引起的。原创 2019-12-10 17:28:30 · 1580 阅读 · 0 评论 -
海思网络工具编译ethtool
1.下载源码 https://sourceforge.net/projects/gkernel/files/ethtool/6/2.编译修改海思osdrv/tools/board/ethtools中makefile为下载文件名即可TOOL_TAR_BALL := ethtool-6.tar.gzmake即可3.使用用法如下:/home # ./eth...原创 2019-12-09 19:22:31 · 755 阅读 · 0 评论 -
Hi3519a编译工具链string.h中为啥没有strlcpy和strlcat
1.前言 今天从hi3520dv300移植代码到hi3519av100中,原来代码中使用高频率strlcpy函数,而在hi3519a中却报没有定义的错误。通过查看编译链中string.h中定义,hi3519av100确实没有。网上资料说strlcpy和strlcat是BSD的C库函数,glibc维护者一直拒绝将其加入,并不属于ANSI C,至今也还不是标准。为了和之前海思芯片编译工具兼容...原创 2019-12-09 17:03:24 · 514 阅读 · 0 评论 -
海思编译报错 unable to find string literal operator 'operator""format' with 'const char [15]',
#define PRINT_ERR(format,...) printf( "Err [%s():%d] "format, __FUNCTION__, __LINE__, ##__VA_ARGS__)该函数在arm-himix200-linux-g++ 报错error: unable to find string literal operator 'operator""format' ...原创 2019-12-09 14:37:21 · 2073 阅读 · 0 评论 -
Hi3519av100 系统绑定关系
/home/tools # cat /proc/umap/sys [SYS] Version: [Hi3519AV100_MPP_V2.0.2.0 B050 Release], Build Time[Aug 2 2019, 17:42:54]-----MODULE STATUS------------------------------------------------------...原创 2019-12-07 09:55:26 · 714 阅读 · 0 评论 -
IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
IPv6: ADDRCONF(NETDEV_UP): eth0: link is not readylibphy: hisi_gemac_mii_bus: probedlibphy: Fixed MDIO Bus: probedhi_gmac_v200 40e0000.ethernet: invalid resourcehi_gmac_v200 40e0000.ethernet ...原创 2019-12-04 19:12:55 · 10455 阅读 · 4 评论 -
海思hi3519a的MIPI用法
1.前言根据手册,Hi3519AV100 MIPI Rx最大支持8Lane MIPI输入或12Lane LVDS输入。同时Hi3519AV100 可以对接5路sensor。所有PIPE都支持Raw数据格式,只有PIPE2~PIPE5支持YUV数据格式。2.要点hi3519a总共有三个mipi接口12lane,根据硬件设计mipi0 4lane,mipi1 4lane,而mi...原创 2019-11-21 19:27:05 · 5070 阅读 · 1 评论 -
海思日志 cat /dev/logmpp
1.前言 有时候调用sdk时候,会报错,可以根据sdk的错误码查找原因,可是该说明不太详细,不知道具体哪个地方出错。但是我们可以使用 cat /dev/logmpp查看错误日志,以便查找原因,解决问题。2.用途 在运行hi3519a样例的过程中,报错,打印如下:/home # ./sample_vio_main 0 0[SAMPLE_VIO_ViOnlineVpss...原创 2019-11-21 08:58:14 · 4485 阅读 · 2 评论 -
海思hi3519a 插入驱动报错 insmod hi3519av100_vi.ko
打印如下:/komod # insmod hi3519av100_vi.koVi register module failed !Load vi.ko for Hi3519AV100...failed !hi35xx_vi: probe of 4800000.vi failed with error -1原因:/komod # cat /dev/logmpp <3&...原创 2019-11-20 17:26:57 · 811 阅读 · 0 评论