Hi3520DV400 U-Boot 编译

HI3520D高清机器系统移植详解 今天公司来了50块样机新板,然后硬件工程师拿了一块样机让我调试和系统移植下去验证板子的硬件是不是有问题,之前在学校移植过三星S3C2410,因此对过程有些了解,其实不同的开发板都是大同小异的,无非就是FLASH大小不同,以及分区不同而已, 下面我把自己移植的过程做了下笔记希望能为一些遇到相似问题的人有你帮助。 首先移植的时候如果你用的是TFTP协议的话,要一个TFTP传输软件,软件文件设置为你 阅读详情

目录

 

注意

U-Boot 打印信息:

uboot编译

1.配置编译环境

2.编译uboot,生成u-boot.bin文件

3.生成最终使用的 U-boot 镜像

烧写 U-boot

1.烧写

2.uboot环境变量配置

通过修改uboot代码来配置环境变量


注意

1.Hi3521D_V100&Hi3520D_V400共用SDK

2.海思SDK版本中代号C01是uclibc库,C02是glibc库

U-Boot 打印信息:

System startup

U-Boot 2010.06 (Nov 30 2020 - 13:48:56)

Check Flash Memory Controller v100 ... Found
SPI Nand(cs 0) ID: 0xef 0xaa 0x21 Name:"W25N01GV"
Block:128KB Page:2KB Chip:128MB*1 OOB:64B ECC:4bit/512
ECC provided by Flash Memory Controller
SPI Nand total size: 128MB
In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  0

NAND read: device 0 offset 0x100000, size 0x400000
 4194304 bytes read: OK
## Booting kernel from Legacy Image at 82000000 ...
   Image Name:   Linux-3.18.20
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3198744 Bytes = 3.1 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Loading Kernel Image ... OK
OK

Starting kernel ...

Booting Linux on physical CPU 0x0
Initializing cgroup subsys cpu
Linux version 3.18.20 (lwx@lwx-VirtualBox) (gcc version 4.9.4 20150629 (prerelease) (Hisilicon_v500_20180120) ) #1 SMP Sat May 9 11:26:35 CST 2020
CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine model: Hisilicon HI3520DV400 DEMO Board
Memory policy: Data cache writealloc
PERCPU: Embedded 9 pages/cpu @c7edc000 s5696 r8192 d22976 u36864
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
Kernel command line: mem=128M console=ttyAMA0,115200 root=/dev/mtdblock2 rw rootfstype=yaffs2 mtdparts=hinand:1M(boot),4M(kernel),-(rootfs)
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)

 

uboot编译

1.配置编译环境

进入uboot目录 Hi3521DV100_SDK_V1.0.4.0/osdrv/opensource/uboot/u-boot-2010.06

make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- hi3520dv400_config 

2.编译uboot,生成u-boot.bin文件

make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux-


3.生成最终使用的 U-boot 镜像

将生成的 u-boot.bin 复制到 osdrv/tools/pc/uboot_tools/ 目录

进入osdrv/tools/pc/uboot_tools/ 目录

./mkboot-hi3520dv400.sh reg_info_hi3520dv400.bin u-boot-hi3520dv400.bin

其中 u-boot-hi3520dv400.bin 就是能够在单板上运行的 U-boot 镜像

 

烧写 U-boot

1.烧写

直接用HiTool烧写,也可以使用tftp方式烧写,前提是板端烧写过uboot

2.uboot环境变量配置

上电进入超级终端,依次执行以下代码即可

setenv bootargs 'mem=128M console=ttyAMA0,115200 root=/dev/mtdblock2 rw rootfstype=yaffs2 mtdparts=hinand:1M(boot),4M(kernel),-(rootfs)'; 
setenv bootcmd 'nand read 0x82000000 0x100000 0x400000;bootm 0x82000000' 
sa

通过修改uboot代码来配置环境变量

修改 Hi3521DV100_SDK_V1.0.4.0/osdrv/opensource/uboot/u-boot-2010.06/include/configs/hi3520dv400.h

可以搜索"Environment"关键字定位代码位置

/*-----------------------------------------------------------------------
 *  Environment   Configuration
 *-----------------------------------------------------------------------*/
#define CONFIG_BOOTCOMMAND "nand read 0x82000000 0x100000 0x400000;bootm 0x82000000"
#define CONFIG_BOOTDELAY	1
#define CONFIG_BOOTARGS "mem=128M console=ttyAMA0,115200 root=/dev/mtdblock2 rw rootfstype=yaffs2 mtdparts=hinand:1M(boot),4M(kernel),-(rootfs)"
#define CONFIG_NETMASK  255.255.255.0       /* talk on MY local net */
#define CONFIG_IPADDR   192.168.0.10        /* static IP I currently own */
#define CONFIG_SERVERIP 192.168.0.250     /* current IP of tftp server ip */
#define CONFIG_ETHADDR  00:00:23:34:45:66
#define CONFIG_BOOTFILE "uImage"        /* file to load */
#define CONFIG_BAUDRATE         115200
#define CONFIG_USE_MDIO	"0"

重新uboot编译即可。

海思SDK 安装以及升级使用说明 前言:这个SDK主要正对Hi3521A/Hi3520DV300,首先你的有Hi3521A_SDK_Vx.x.x.x.tgz HIS SDK包, 1、Hi3521A SDK包位置     在"Hi3521A_V100R001***/01.software/board"目录下,您可以看到一个 Hi3521A_SDK_Vx.x.x.x.tgz 的文件, 该文件就是Hi3521A的软件开发包。 2、解... 阅读详情

相关推荐

rk3128 android7.1系统起来报错

DDR Version 2.06 20170316 In 1A1A1B1B 3 DDR3 1A1B1B1B F Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB mach:2 OUT Boot1 Release Time: 2017-06-12, version: 2.40 ChipType = 0xa, 1368 SdmmcInit=2 0 BootCapSize=2000 UserCapSize=7456MB

YY2065的博客 5757

海思Hi3520DV400,Hi3520DRQCV400产品简介

Hi3520DV400 是针对多路高清(1080p/720p)和多路标清(D1/960H)DVR产品应用 开发的一款专业SOC芯片。Hi3520DV400内置ARM A7双核处理器和高性能的 H.265/ H.264视频编解码引擎,集成了包含多项复杂图像处理算法的高性能视频/图像 处理引擎,提供HDMI/VGA 高清显示输出能力,同时还集成了丰富的外围接口。该 SOC 芯片为客户产品提供了高性能、...

weixin_34417200的博客 2423

3521D/3531D/3536D/3520DV400版本区别

海思最新后端编解码芯片3521D/3531D/3536D/3520DV400版本区别及各自优势,适合研发人员学习研究。

HISI 35214路双流编码----共享内存------4路RTMP流推送到流媒体服务器

4路双流编码----共享内存------4路RTMP流推送到流媒体服务器

zlyadvocate的博客 419

海思芯片烧录工具(HiTool) v5.0.8 官方版

海思芯片烧录工具(HiTool) v5.0.8 官方版 支持近期比较火热的华为悦盒EC6109-U烧录镜像破解以及提取镜像备份系统分区!

海思Hi3520开发工具套件(Hi3520_SHDK)说明书

海思Hi3520开发工具套件(Hi3520_SHDK)说明书

Qt5.6.1移植海思Hi3521d(二)

该篇讲解一下,使用海思交叉编译器arm-hisiv500-linux-gcc,编译qt5.6源码,搭建qt交叉编译环境新建一个Qt GUI工程,构建套件选择如下点击左下角那把🔨,如果没报错说明交叉编译环境搭建好了,下一章讲讲解如何移植到海思Hi3531D板子上,以及Qt运行环境配置。

流云落尘 1146

AIGC在游戏行业的应用:革新游戏开发与体验

AIGC(人工智能生成内容)技术正在深刻改变游戏行业,从开发到体验全面革新。在游戏开发中,AIGC可用于自动生成关卡、角色和剧情,提升开发效率;在资源制作中,通过AI生成场景、角色模型等,降低成本。

1663

新手玩海思HI3520D开发板(一,升级)

1、配置tftp服务器     # 可以使用任意的tftp服务器,将package/image_uclibc(或image_glibc)下的相关文件拷贝到tftp服务器目录下。 2、参数配置     # 单板上电后,敲任意键进入u-boot。设置serverip(即tftp服务器的ip)、ipaddr(单板ip)和ethaddr(单板的MAC地址)。     setenv serve...

u010558738的博客 5880

高通引导文件获取全攻略:ELF/MBN提取与EDL救砖实战

在智能手机底层维护中,引导加载程序(Bootloader)是系统启动的第一道关卡。高通平台通过PBL、SBL1/XBL等阶段完成硬件初始化和安全校验,一旦引导分区损坏,设备便可能陷入黑砖状态。此时,掌握ELF与MBN格式的引导镜像获取方法,成为维修工程师和刷机用户的核心技能。通过官方固件包解包或借助EDL模式直接从设备分区备份,均能获得原厂匹配的引导文件。配合Firehose工具和9008端口通信,即可实现分区级读写与救砖恢复。本文从启动链路原理出发,对比两种获取路径的适用场景,并针对驱动识别、文件校验、分

weixin_30175731的博客 413

5分钟搞定!用FunASR在本地快速部署达摩院Paraformer语音识别模型(附常见问题解决)

本文详细介绍了如何在本地快速部署阿里达摩院开源的Paraformer语音识别模型。通过FunASR工具包,用户可在5分钟内完成环境配置、模型下载与基础识别,并掌握批量处理、性能调优及构建API服务等进阶技巧。文章重点解析了Paraformer的非自回归架构带来的速度优势,并提供了音频格式转换、依赖冲突、显存不足等常见问题的实战解决方案,助力开发者实现高效、离线的语音转写应用。

p1q2r的博客 705

Hi3520DV400 kernel 编译

1.Hi3521D_V100&Hi3520D_V400共用SDK 2.海思SDK版本中代号C01是uclibc库,C02是glibc库 3.从linux开源社区下载v3.18.20版本的内核 4.打补丁 5.编译kernel 6.Makefile:546: recipe for target 'menuconfig' failed 7.arch/arm/Makefile:334: recipe for target 'uImage' failed

CHAMSDONCON的博客 831

使用 MATLAB/Simulink 构建一个 核电站汽轮机与发电机协调控制系统 的仿真模型

在核电机组中,汽轮机-发电机系统是将核能最终转化为电能的关键环节。与火电机组不同,核反应堆的热惯性大、功率调节慢,因此汽轮机的控制策略需与反应堆特性相匹配,实现安全、稳定、高效的能量转换。维持发电机输出功率/频率稳定(响应电网调度)调节汽轮机进汽压力(匹配一回路蒸汽供应)实现“堆-机协调控制”保障机组在启停、变负荷、甩负荷等工况下的安全性本教程将带你使用构建一个核电站汽轮机与发电机协调控制系统汽轮机调速系统(调门控制)建模发电机与电网接口建模(同步机)

xiaoheshang_123的博客 188

Hi3520DV200 Uboot升级USB读写慢问题

把common/usb_storage.c文件里的int usb_stor_BBB_transport(ccb *srb, struct us_data *us)里wait_ms(200);改成wait_ms(5);

fteworld的专栏 1357

借助Gemini 3 Pro高效解决课题申报中的五大核心痛点,亲测有效经验分享

之前给大家分享过关于AI辅助课题申报的相关的内容,涵盖了申报书部分撰写技巧,但没针对性拆解各位同仁在实际申报时遇到的卡壳的地方。比如选题范围拿捏不准,定的太大,根本没法落地完成;定的太小,研究价值则体现不了;写综述时,容易单纯罗列文献,缺乏批判性视角,没办法自然融入自己的判断,找不到研究缺口;研究方法部分,可能担心方法设计不够严谨,别人难以复现.....针对这些申报中的高频痛点,接下来七哥会从五个核心要点出发,借助Gemini 3 Pro高效解决这些痛点。

智能AI让学术科研更容易 700

Spring Boot 与 Redisson 版本适配深度解析

Spring Boot 与 Redisson 的版本适配是一个动态演进的过程。开发者需要密切关注两者官方的版本更新日志,建立完善的版本验证机制。本文提供的适配方案基于当前最新技术状态(2024年1月),建议在实际生产环境中通过灰度发布策略验证版本兼容性。只有深入理解底层技术原理,才能在分布式系统的星辰大海中稳健航行。延伸阅读Spring Boot 官方迁移指南。

fudaihb的博客 1078

HI3520DV200+GV7601采集1080P视频

前段时间找了块HI3520DV200的开发板玩了一下,用的是GV7601的前端,SDI输入。         搭配GV7601的AD采集1080P的视频,SDI输入,跑sample_venc程序,一直输出超时,查看VI调试信息发现有中断,但是所有接收到的数据全部丢掉。零零总总卡了三四天才解决,现在把中途遇到的问题及解决办法整理成笔记,以备后查。希望路过的朋友及时指正,谢谢!         运

zqj6893的专栏 1万+

Android 15.0 Launcher3中去掉Hotseat功能实现

在15.0系统产品定制化开发中,在Launcher3的定制化需求也是特别多的,由产品是小屏幕的产品,所以产品需求Launcher3 页面布局的原因,要求Launcher3 需要去掉Hotseat 不显示Hotseat下面几个图标,而做满屏app的显示,从而达到美观的效果,下面就来分析去掉Hotseat从而实现这个功能

安卓兼职framework和app工程师的博客 554

HI3520D平台搭建详解

1,新建文件夹hixxmkdir  /home/jumne/hixx2,解压SDKtar -zxvf  Hi3520D_SDK_Vxxxxxx3,新建文件夹arm-hisiv100nptl-linux   mkdir arm-hisiv100nptl-linux

hellowording的专栏 1600

Open-Sora代码详细解读(1):解读DiT结构

目前开源的DiT视频生成模型不是很多,Open-Sora是开发者生态最好的一个,涵盖了DiT、时空DiT、3D VAE、Rectified Flow、因果卷积等Diffusion视频生成的经典知识点。本篇博客从Open-Sora的代码出发,深入解读背后的原理。

沉迷单车的追风少年 2263

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

海思芯片固件修改工具_海思HI3520DV400改网络 RMII 模式uboot开发

本文由俊竹科技原创,欢迎转载,请注明出处。海思HI3520DV400的uboot默认的RGMII模块。俊竹科技在做板时,把网络芯片换成RMII的100M网络芯片。当然如果你的板子换成MII的芯片,修改的方法一样,只是两个地方值不一样而已。主要修改以下两个地方:1、修改uboot配置头文件。 打开uboot 的源码目录,找到海思HI3520DV400的头文件,路径参考:Z:homehi3520DV4...

weixin_39628063的博客 3441

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

海思Hi3521/Hi3520A/Hi3520D/Hi3515A/Hi3515C U-boot 移植应用 开发指南

本文档主要介绍本在Hi3521/Hi3520A/Hi3520D/Hi3515A/Hi3515C单板上如何移植和烧写 U-boot(Hi3521 单板的 Bootloader)的相关操作及如何使用ARM 调试工具。 Hi3521单板的Bootloader 采用U-boot。当选用的外围芯片的型号与单板上外围芯片的型号不同时,需要修改 U-boot 配置文件,主要包括存储器配置、管脚复用。 1.2...

szx940213的博客 2801

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

学内核之八:Linux内核的smp_processor_id是如何实现的

分析内核明确当前代码对应的CPU编号的过程

wwwyuewww的专栏 3965

10.全志H3-优化,解决DDR速度上不去的问题

上面是我的微信和QQ群,欢迎新朋友的加入。 在前几天,已经让板子跑起来了 但是因为PCB走线的问题,目前板子只能在一两M的条件下运行 一但速度高了,就直接跑不起来了 最开始我没关注到这个速度的问题 第二版上面,有过一个问题是,板子要加热,才能走过start kernel 最开始,我以为是我的焊接问题导致的这个现象,而且当时SD卡是飞线接上去的,感觉不是那么可靠 当然当时还有个问题是层叠结构选择的不对,没做阻抗匹配 于是做了第三版,同时做了一个底板,不用飞线的方式 可是同样遇到了这个..

Jun626的博客 7468

理解 Linux 动态库加载:LD_LIBRARY_PATH

flyfish

二分掌柜的 318

Linux 磁盘满了怎么排查?df / du / find 三步定位大文件

Linux 磁盘满排查三步法:df -h 定位分区、du 逐层下钻、find 按大小和时间抓大文件,附 inode 耗尽、文件已删未释放、du 与 df 不一致等经典坑的解决方案。

weixin_38291577的博客 215
下一篇: Hi3520DV400 SDK 安装
chamsdoncon
博客等级 码龄16年 3粉丝 9原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值