海思3559平台搭建:简单烧写说明

简介: 在板子上存在uboot的前提下进行如下操作,如果板子上从未烧写过uboot,就需要使用 HiTool 工具进行烧写。HiTool 工具位置放在 Hi3559A***/01.software/pc/HiTool,使用说明请参见该目录下的《HiBurn工具使用指南》

前言

 在板子上存在uboot的前提下进行如下操作,如果板子上从未烧写过uboot,就需要使用 HiTool 工具进行烧写。HiTool 工具位置放在 Hi3559A***/01.software/pc/HiTool,使用说明请参见该目录下的《HiBurn工具使用指南》

 注意:单 Linux 方案要烧写 image_glibc_multi-core_arm64 目录中的镜像文件!获取方式为:进入到hi3995_tools/Hi3559AV100_SDK_V2.0.3.1/osdrv目录下

 source /etc/profile

 make BOOT_MEDIA=spi AMP_TYPE=linux all

1. 配置tftp服务,防火墙务必关闭

2. 参数配置

setenv ipaddr 192.168.119.200
setenv ethaddr 00:10:ab:20:81:70
setenv netmask 255.255.255.0
setenv gatewayip 192.168.119.1
setenv serverip 192.168.119.100
ping 192.168.119.100

 确保网络畅通。

 以上为举例,IP 以实际为准。

3. 烧写 multi-core 版本映像文件到 SPI NAND

 注意:单 Linux 方案要烧写 image_glibc_multi-core_arm64 目录中的镜像文件!

3.1. 地址空间说明

9e7167ca9a0949dea0c67fe8d4c9b0e7.png

 以下操作基于图示的地址空间分配,也可以根据实际情况进行调整。

3.2. 拨码选择主 CPU

 通过拨码开关 SW1.4 设置选择主 CPU:

 0:从 A53MP Core0 启动;

 1:从 A53UP 启动。

3.3. 烧写 u-boot

mw.b 0x44000000 0xff 0x100000
tftp 0x44000000 u-boot-hi3559av100.bin
nand erase 0x0 0x100000
nand write 0x44000000 0x0 0x100000

3.4. 烧写内核

mw.b 0x44000000 0xff 0x900000
tftp 0x44000000 uImage_hi3559av100_multi-core
nand erase 0x100000 0x900000
nand write 0x44000000 0x100000 0x900000

3.5. 烧写文件系统

mw.b 0x44000000 0xff 0x1000000
tftp 0x44000000 rootfs_hi3559av100_2k_4bit.yaffs2
nand erase 0xA00000 0x1000000
nand write.yaffs 0x44000000 0xA00000 0xb934c0  (0xb934c0 为 rootfs 文件实际大小)

 实际文件大小参考tftp传过去后的大小显示

Using gmac0 device
TFTp from server 192.168.119.100; our ip address is Filename 'rootfs hi3559av100 2k 4bit.yaffs2'. Load address: 0x44000000
Loading:  ############# ####### 
########
###########################################
*###########################*##############
9.5 MiB/s
done
Bytes transferred = 12137664(b934c0 hex)  Hx--1024

3.6. 设置启动参数

 参数说明:

 bootargs:

 • mem=xxxM 分配给Linux操作系统的内存大小;

 • root=/dev/xxx 指定根文件系统所在的设备号、分区号;

 • rootfstype=xxx 指定根文件系统类型;

 • rw 声明启动权限,即以读写方式启动;

 • rootwait 指等待设备/dev/mmcblk0p1设备就绪后才尝试挂载rootfs,仅emmc需要该参数;

 • mtdparts/blkdevparts 根据flash/emmc总容量划定各分区大小;

setenv bootargs 'mem=512M console=ttyAMA0,115200 root=/dev/mtdblock2 rw rootfstype=yaffs2 mtdparts=hinand:1M(boot),9M(kernel),16M(rootfs)'
setenv bootcmd 'nand read 0x44000000 0x100000 0x900000;bootm 0x44000000'
saveenv

4. 重启系统

reset


相关文章
|
编译器 API C语言
C/C++ 获取文件名的方法:分享一些实用的获取文件名的方法和技巧(__FILE__,__builtin_FILE(),__BASE_FILE__等)
C/C++ 获取文件名的方法:分享一些实用的获取文件名的方法和技巧(__FILE__,__builtin_FILE(),__BASE_FILE__等)
1257 0
|
Ubuntu 计算机视觉 C++
Ubuntu 20.04 编译 Opencv 4.11,详细步骤(带图)及报错解决,我的踩坑之旅~
Ubuntu 20.04 编译 Opencv 4.11,详细步骤(带图)及报错解决,我的踩坑之旅~
8833 0
|
编解码 监控 网络协议
如何用魔法般的步骤实现RTSP推送H.264与H.265(HEVC),打造震撼视听盛宴,让每一帧都充满魔力!
【9月更文挑战第3天】实现RTSP流媒体服务推送H.264和H.265编码视频是现代视频监控及直播平台的关键技术。本文详细介绍环境搭建、编码配置及服务器与客户端实现方法。首先,通过FFmpeg捕获视频并编码成RTSP流,接着使用VLC等工具接收播放。此外,还提供了C++示例代码,演示如何利用libv4l2和FFmpeg自定义服务器端实现。希望本文能帮助读者成功搭建RTSP视频流系统。
1768 1
|
并行计算 PyTorch 算法框架/工具
【Pytorch】查看GPU是否可用
本文提供了使用PyTorch检查GPU是否可用的方法,包括查看PyTorch版本、编译时使用的CUDA版本以及当前CUDA是否可用于PyTorch。
1346 2
|
Linux 开发工具
【项目--Hi3559A】如何在Hi3559A上运行自己的yolov3模型(修改类别、网络结构)
【项目--Hi3559A】如何在Hi3559A上运行自己的yolov3模型(修改类别、网络结构)
200 0
|
Ubuntu Linux
Linux(22) Linux设置网络优先级顺序
Linux(22) Linux设置网络优先级顺序
1630 0
|
计算机视觉
OpenCV 图片尺寸缩放——resize函数
OpenCV 图片尺寸缩放——resize函数
1044 0
OpenCV 图片尺寸缩放——resize函数
|
算法 网络协议 Linux
Linux模块文件编译到内核与独立编译成.ko文件的方法
Linux模块文件编译到内核与独立编译成.ko文件的方法
3905 0
|
域名解析 Ubuntu 安全
如何在 Ubuntu 20.04 上安装 Visual Studio Code
Visual Studio Code 是一个由微软开发的强大的开源代码编辑器。它包含内建的调试支持,嵌入的 Git 版本控制,语法高亮,代码自动完成,集成终端,代码重构以及代码片段功能。本文主要为大家讲解两种在 Ubuntu 20.04 上安装 Visual Studio Code 的方式。
60865 1
如何在 Ubuntu 20.04 上安装 Visual Studio Code
|
Linux C语言 SoC
设备树知识小全(二)
设备树知识小全(二)
326 0