开发平台:飞凡嵌入式Hi3536

开发板采用SPI NORFlash启动,默认内核不支持USB摄像头工作,需重新编译内核,并烧写系统。

一、编译内核

采用Hisi官方提供的SDK中内核linux-3.10.y,配置文件为hi3536_full_A17_slave_defconfig。主要流程:

#cd /opt/hi3536/Hi3536_SDK_V2.0.2.0/osdrv/opensource/kernel/linux-3.10.y

#cp arch/arm/configs//hi3536_full_A17_slave_defconfig .config

#make ARCH=arm CROSS_COMPILE=arm-hisiv400-linux- menuconfig

由于对Linux驱动架构不熟悉,也不能确定所使用USB摄像头的属类,这里将所有V4L2相关驱动全部选上,在menuconfig 搜索V4L2将所有的选为Y,注意依赖项的选择,如果依赖关系不正确的,menuconfig会提示。

保存、退出得到所需要的配置文件,然后编译内核

#make ARCH=arm CROSS_COMPILE=arm-hisiv400-linux- uImage

二、烧写系统

1、参数配置

配置tftp服务器

#可以使用任意的tftp服务器,将相关文件拷贝到tftp服务器目录下;

#单板上电后,敲任意键进入u-boot。设置serverip(即tftp服务器的ip)、ipaddr(单板ip)和ethaddr(单板的MAC地址)。

setenv serverip xx.xx.xx.xx

setenv ipaddr xx.xx.xx.xx

setenv ethaddr xx:xx:xx:xx:xx:xx

setenv netmask xx.xx.xx.xx

setenv gatewayip xx.xx.xx.xx

ping serverip,确保网络畅通。

2、根据系统硬件的配置,选择合适的烧写方案。我的开发办为SPI NOR启动,采用的是“烧写双主控(SPIBOOT_NAND256M).txt”,注意的是由于我编译出的内核大于了4M,按照原本的文件内核空间是没有4M的,是没有办法烧写的,所以要做修改。修改后文件如下:

*****************************************************************************
烧写双主控(SPIBOOT_NAND256M).txt
*****************************************************************************
烧写Glibc映像文件到SPI Flash1)地址空间说明(其中,m表示master arm;s表示slave arm)
|      1M       |      6M       |      12M      |      1M       |      4M       |      6M       |
|---------------|---------------|---------------|---------------|---------------|---------------|
|     boot(m)   |     kernel(m) |     empty(m)  |     boot(s)   |     kernel(s) |     rootfs(s) |以下的操作均基于图示的地址空间分配,您也可以根据实际情况进行调整。2)烧写主u-boot
mw.b 0x42000000 0xff 0x100000
tftp 0x42000000 osdrv_master/image_glibc/u-boot-hi3536.bin
sf probe 0
sf erase 0x0 0x100000
sf write 0x42000000 0x0 0x100000
reset3)烧写主内核
mw.b 0x42000000 0xff 0x600000
tftp 0x42000000 osdrv_master/image_glibc/uImage_hi3536
sf probe 0
sf erase 0x100000 0x600000
sf write 0x42000000 0x100000 0x6000004)擦除空白,主文件系统放nand上
sf probe 0
sf erase 0x700000 0xc000005)烧写从u-boot
mw.b 0x42000000 0xff 0x100000
tftp 0x42000000 osdrv_slave/image_glibc/u-boot-hi3536.bin
sf probe 0
sf erase 0x1300000 0x100000
sf write 0x42000000 0x1300000 0x1000006)烧写从内核
mw.b 0x42000000 0xff 0x400000
tftp 0x42000000 osdrv_slave/image_glibc/uImage_hi3536
sf probe 0
sf erase 0x1400000 0x400000
sf write 0x42000000 0x1400000 0x4000007)烧写从文件系统
mw.b 0x42000000 0xff 0x600000
tftp 0x42000000 osdrv_slave/image_glibc/rootfs-SLV_FULL_REL.cramfs.initrd.img
sf probe 0
sf erase 0x1800000 0x600000
sf write 0x42000000 0x1800000 0x6000008)烧写主文件系统
mw.b 0x42000000 0xff 0x7000000
tftp 0x42000000 osdrv_master/image_glibc/rootfs_hi3536_2k_4bit_spiboot.yaffs2
nand erase;nand write.yaffs 0x42000000 0x0 0x661b180;(实际的文件系统大小)9)设置启动参数
setenv bootargs 'mem=128M console=ttyAMA0,115200 root=/dev/mtdblock3 rootfstype=yaffs2 mtdparts=hi_sfc:1M(boot),6M(kernel),12M(norflash);hinand,256M(rootfs)'
setenv bootcmd 'sf probe 0;sf read 0x42000000 0x100000 0x600000;bootm 0x42000000'
setenv slave_autostart 1
setenv slave_bootcmd 'sf probe 0;sf read 0x81000000 0x1300000 0x80000;sf read 0x82000000 0x1400000 0x400000;sf read 0x83000000 0x1800000 0x600000;bootm 0x81000000 0x82000000 0x83000000'
setenv slave_bootargs 'mem=96M console=ttyAMA0,115200'
sa

之后重启,插入USB摄像头,会看到生成的 /dev/video0设备文件。

飞凡Hi3536内核编译与烧写相关推荐

  1. Jetson TX1内核kernel编译与烧写

    Data: 2017.09.13 Author: cjh Theme: Jetson TX1内核kernel编译与烧写 PS   :本人用的JetPack版本为3.0 1.      Getting ...

  2. Uboot初次编译、烧写、启动(启动界面log简析)

    目录 U-Boot 初次编译 U-Boot 烧写与启动 上述笔记第三点就是建立shell脚本实现的 第四点就是修改Makefile文件实现的,下面均有实现步骤讲解. U-Boot 初次编译 先编译体验 ...

  3. RV1126编译及烧写

    文章目录 前言 一.编译内核.根文件系统及烧写 1.编译 2.烧写 二.APP编译 1.配置编译规则 总结 前言 对于第一次拿到rv1126板子还是挺陌生的,本文适合新手小白参看. 一.编译内核.根文 ...

  4. Orangepi 3 全志H6 uboot的编译与烧写

    Orangepi 3 全志H6 uboot的编译与烧写 使用OrangePi_SDK中shell脚本编译uboot 不使用OrangePi_SDK中shell脚本编译uboot 环境:Ubuntu18 ...

  5. A33_Vstar_Android_SDK开发 编译及烧写遇到的问题【汇总】

    A33_Vstar_Android_SDK开发 遇到的问题 整理一下Android SDK编译及烧写的时候,遇到的问题和解决的办法 问题1  .tar.bz2文件解压命令 解决办法: .tar.gz  ...

  6. Android实战技巧之四十:Android5.1.1源代码编译与烧写

    购买Nexus手机的朋友大多是为了自己修改系统玩,再加上其较高的性价比,在开发者中还是广受欢迎的.我的5太子被我升级到了6.0预览版,玩的正嗨,舍不得换回到5.1时代了.不过鉴于距6.0源码发布还有段 ...

  7. Android实战技巧之四十 Android5 1 1源代码编译与烧写

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 购买Ne ...

  8. DM365 linux内核文件系统的烧写步骤及其uboot参数配置

    DM365 linux内核&文件系统的烧写步骤及其uboot参数配置     目录 源文档下载:http://download.csdn.net/detail/zhangjikuan/6443 ...

  9. ZynqLinux最小系统系列—— 4、Petalinux工程创建与编译以及烧写到FLASH(二)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 ZynqLinux最小系统系列-- 4.Petalinux工程创建与编译以及烧写到FLASH(二) 写在前面 接上一篇 烧写FLASH ...

最新文章

  1. 【GLib】GLib学习笔记(一):GLib、GObject、GType
  2. 线性规划与网络流24题 负载平衡问题
  3. fastdfs java client_GitHub - happyfish100/fastdfs-client-java: FastDFS java client SDK
  4. WebSocket剖析
  5. Python操作MySQL(一)
  6. java中奇偶数的判断
  7. tomcat xjar 加密_XJar Spring Boot JAR 安全加密运行工具
  8. 7. Simple Product
  9. Python让繁琐工作自动化——chapter13 处理PDF和Word文档
  10. DL实战(3):cfNet- Matlab配置
  11. 计算机无法安装蓝牙驱动,win7电脑蓝牙驱动怎么安装,教您怎么安装
  12. apksigner --> apk签名工具
  13. 论文解读——神经网络翻译中的注意力机制 以及 global / local attention
  14. HHKB键盘使用说明书
  15. 2021英国硕士计算机专业排名,2020年伦敦国王学院先进的计算机专业硕士申请条件-学费-世界排名...
  16. 【图像加密】基于matlab GUI正交拉丁方置乱+混沌图像加密解密【含Matlab源码 636期】
  17. 公路车sava和Java_入门之作 意外惊喜 SAVA追风5.0公路车 评测
  18. 消息队列系列之分布式消息队列Kafka
  19. html星星坠落效果,抖音星球坠落特效怎么弄 摘下星星送给你
  20. 【Windows基础】NTFS文件系统

热门文章

  1. 如何关掉 PC QQ 烦人的 QQ 频道
  2. JAVA开发(byte和string转换类型的坑)
  3. 8k分辨率是多少像素
  4. qgis自动获取建筑和道路矢量
  5. 传统企业数字化现状和问题
  6. 【LVGL学习笔记】(五)使用SquareLine Studio设计UI
  7. python倾向匹配得分_倾向评分匹配的SPSS和R实现方法
  8. 男生学护理和学计算机哪个好,护理专业是做什么的 男生学护理发展好吗
  9. CorelDRAW 足球制作完你一个自己绘出足球的梦
  10. 苹果nfc功能怎么开启_苹果手机自带会议记录功能!一键开启这个按钮,快速记录重要内容...