第一章 Hi3531_SDK_Vx.x.x.x版本升级操作说明

如果您是首次安装本SDK,请直接参看第2章。

第二章首次安装SDK

1、Hi3531 SDK包位置

在"Hi3531_V100R001***/01.software/board"目录下,您可以看到一个Hi3531_SDK_Vx.x.x.x.tgz
的文件,

该文件就是Hi3531的软件开发包。

2、解压缩SDK包

在linux服务器上(或者一台装有linux的PC上,主流的linux发行版本均可以),使用命令:tar
-zxf Hi3531_SDK_Vx.x.x.x.tgz ,

解压缩该文件,可以得到一个Hi3531_SDK_Vx.x.x.x目录。

3、展开SDK包内容

返回Hi3531_SDK_Vx.x.x.x目录,运行./sdk.unpack(请用root或sudo权限执行)将会展开SDK包打包压缩存放的内容,请按照提示完成操作。

Dpkg-reconfiguredash

如果您需要通过WINDOWS操作系统中转拷贝SDK包,请先运行./sdk.cleanup,收起SDK包的内容,拷贝到新的目录后再展开。

4、在linux服务器上安装交叉编译器

1)安装uclibc交叉编译器(注意,需要有sudo权限或者root权限):

进入Hi3531_SDK_Vx.x.x.x/osdrv/toolchain/arm-hisiv100-linux目录,运行chmod +xcross.install,然后运行./cross.install即可。

进入Hi3531_SDK_Vx.x.x.x/osdrv/toolchain/arm-hisiv100npts-linux目录,运行chmod +xcross.install,然后运行./cross.install即可。

2) 安装glibc交叉编译器(注意,需要有sudo权限或者root权限):

进入Hi3531_SDK_Vx.x.x.x/osdrv/toolchain/arm-hisiv200-linux目录,运行chmod +xcross.install,然后运行./cross.install即可。

3) 执行source /etc/profile,安装交叉编译器的脚本配置的环境变量就可以生效了,或者请重新登陆也可。

Echo $PATH

1.osdrv使用说明

本目录设计思路为一套源代码支持两种工具链编译,因此需要通过编译参数指定不同的工具链。其中arm-hisiv100nptl-linux是uclibc工具链,arm-hisiv200-linux是glibc工具链。具体命令如下

(1)编译整个osdrv目录:

makeOSDRV_CROSS=arm-hisiv100nptl-linux all

或者

makeOSDRV_CROSS=arm-hisiv200-linux all

(2)清除整个osdrv目录的编译文件:

makeOSDRV_CROSS=arm-hisiv100nptl-linux clean

或者

makeOSDRV_CROSS=arm-hisiv200-linux clean

(3)彻底清除整个osdrv目录的编译文件,除清除编译文件外,还删除已编译好的镜像:

makeOSDRV_CROSS=arm-hisiv100nptl-linux distclean

或者

makeOSDRV_CROSS=arm-hisiv200-linux distclean

5、编译osdrv

参见osdrv目录下readme

生成文件:

rootfs_uclibc.tgz   rootfs文件系统、

uImage 
kernel镜像、

u-boot-hi3531_930MHz.bin   
u-boot镜像、

rootfs_256k.jffs2  jffs2 rootfs镜像(对应spi-flashblocksize=256K)、

rootfs_2k_1bit.yaffs2  yaffs2 rootfs镜像(对应nand-flashpagesize=2K ecc=1bit)。

//库

flash_eraseall   mcc_usrdev_host.ko            flash_erase            mcc_usrdev_slv.ko            hi35xx_dev_slv.ko            nandwrite

hi35xx_dev_host.ko            mcc_drv_slv.ko            mtd_debug

flash_info            parted_uclibc            mcc_drv_host.ko

boot_device.ko            pcit_dma_slv.ko            sumtool

mtdinfo            flashcp            nandtest

gdb-arm-hisiv100nptl-linux            nanddump            pcit_dma_host.ko

4.单独编译内核:

进入内核源代码目录后,执行以下操作

       cparch/arm/configs/godnet_defconfig .config; makeARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux- menuconfig;  make ARCH=armCROSS_COMPILE=arm-hisiv100nptl-linux- uImage;                //10分钟

或者

cparch/arm/configs/godnet_defconfig .config; makeARCH=arm CROSS_COMPILE=arm-hisiv200-linux- menuconfig; make ARCH=arm CROSS_COMPILE=arm-hisiv200-linux- uImage;

Image Name:  Linux-3.0.8

Created:     Wed Aug 21 16:24:02 2013

Image Type:  ARM Linux Kernel Image (uncompressed)

Data Size:   3496792 Bytes = 3414.84 kB = 3.33 MB

Load Address: 80008000

Entry Point: 80008000

Image arch/arm/boot/uImage is ready

(5)单独编译uboot:

      
待进入boot源代码目录后,执行以下操作

      
make ARCH=armCROSS_COMPILE=arm-hisiv100nptl-linux- godnet_config;       make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux-

      
或者

      
make ARCH=armCROSS_COMPILE=arm-hisiv200-linux- godnet_config

      
make ARCH=armCROSS_COMPILE=arm-hisiv200-linux-

//编译成功后,将在U-boot 目录下生成u-boot.bin。265.5K 3分钟

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

调试2013-11-25///////////////////////

HI3531板子的接口:

输入:8路D1,1路VGA,1路YPBPR,1路HDMI(VGA、YPBPR、HDMI是3选1);输出:2路HDMI,1路VGA,1路YPBPR,2路CVBS。

其它接口:千兆网口,usb,sata,RS232,pcie1.0各一个。

存储接口:spi、nand flash各一个,DDR2缓存

DDR3:一片256M字节,四片共1G字节

Nand flash 16GB

spi flash 16MB

接口:红外接口

无sata接口

VIV0 8路D1;VIV2 1路1080P; VIV1 不用; Vout1120 1路1080P(hdmi)。

 

芯片从片内ROM 启动,将会启动串口通信机制,通过串口与PC 端相应的软件建立通

信,下载boot 程序后完成启动(请参考《Fastboot 工具使用说明》);同时,在

BOOTROM 启动时如果与串口通信超时未相应,将会转向判断BOOT_SEL1(与芯片

外部管脚NF_ALE 复用)和BOOT_SEL0(与芯片外部管脚NF_CLE 复用)的上下拉

电平,从NAND FLASH 或SPI FLASH 启动:

当BOOTROM_SEL=1 时,芯片从片内ROM 启动;

当BOOTROM_SEL=1 时且串口通信超时未响应,BOOTROM_SEL=0

当BOOTROM_SEL=0、BOOT_SEL1=1、BOOT_SEL0=0 时,NAND Flash 启动。

当BOOTROM_SEL=0、BOOT_SEL1=0、BOOT_SEL0=0 时,SPI Flash 启动。

当BOOTROM_SEL=0、BOOT_SEL1=0、BOOT_SEL0=1 时,DDR 启动。

1 U-Boot2010.06-svn83 (Jan 06 2013 - 17:36:14)

2 DRAM:  256 MiB

3 NAND:  Special Nand id table Version 1.35

4 Nand ID: 0x000x00 0x00 0x00 0x00 0x00 0x00 0x00

ON:0,

测试:

1.     Fastboot烧写uboot提示超时

相同

3.     换个flash,效果同上

4.     监控发现串口传送8k,然后重复命令FE
00 FF 01 00 04 25 D0 81 00 00 00 93 01,接收端20 aa,Uboot有265k左右。

5.     焊装第二版和第一版相同

6.     焊装Ddr后和以前一样

 

Jlink 烧写Uboot的更多相关文章

  1. HI3518E用J-link烧写裸板fastboot u-boot流程

    Hi3518E的裸板烧写fastboot是不能像HI3531那样,可以通过FB直接烧写.遵循ARM9的烧写流程.其中一般u-boot的烧写流程可分为几类:第一:通过编程器芯片直接烧写:第二通过RVDS ...

  2. STM32用JLINK 烧写程序时出现NO Cortex-m device found in JTAG chain现象和解决方案

    现象 CPU: STM32107VC 用JLINK 烧写程序时出现NO Cortex-m device found in JTAG chain 如图无法查找到硬件就是CPU 提示1:NO Cortex ...

  3. 驱动开发学习笔记. 0.02 基于EASYARM-IMX283 烧写uboot和linux系统

    驱动开发读书笔记. 0.02 基于EASYARM-IMX283 怎么烧写自己裁剪的linux内核?(非所有arm9通用) 手上有一块tq2440,但是不知道什么原因,没有办法烧boot进norflas ...

  4. 通过NORFLASH中的uboot烧写uboot到nandFlash

    在mini2440的教程中,在构建nandflash系统的时候是首先通过supervivi借助dnw烧写uboot.bin到nand flash 第零块, 由于我使用的是64位操作系统,usb驱动没安 ...

  5. 嵌入式系统烧写uboot/bootloader/kernel的一般方法

    嵌入式系统烧写uboot/bootloader/kernel的一般方法   本文介绍了在嵌入式系统中烧写uboot/bootloader/kernel 的一般方法,以及如果uboot或者内核出现错误, ...

  6. arm+linux 裸机环境搭建之初试minicom+dnw烧写uboot

    下面的步骤将会实现在linux下面使用dnw+minicom来烧写uboot 一.安装minicom 下载地址:http://download.csdn.net/detail/king_bingge/ ...

  7. Tiny210编译和烧写u-boot步骤

    当有多个交叉编译器是,不方便设置环境变量时,可以在编译命令中指定交叉编译器,具体如下: make ARCH=arm CROSS_COMPILE=/opt/FriendlyARM/toolschain/ ...

  8. Tiny4412 烧写uboot到emmc步骤

    将uboot写入emmc,并通过EMMC驱动,不在只用SD卡启动 烧写uboot的之前用如下命令查看EMMC卡信息及分区信息: mmcinfo 0: 查看mmc卡信息, 0表示SD卡:1表示emmc卡 ...

  9. 烧写uboot和openwrt固件ARxx系列

      以AR9331为例. 1.用烧录器将uboot烧写到flash中 (AR9331_U-Boot_Oolite-v1-v20170713.bin) 2.登录:192.168.1.1网页烧写uboot ...

随机推荐

  1. APP测试(转载)

    (1) 非功能测试 app测试的一个重要方面是app的非功能需求.移动app在推出市场或进行进一步开发前,测试人员有一定的职责做该类需求的跟踪工作. 早期开发阶段要进行的第一个测试应该是实用性测试.通 ...

  2. 面试中的Java链表

    链表作为常考的面试题,并且本身比较灵活,对指针的应用较多.本文对常见的链表面试题Java实现做了整理. 链表节点定义如下: static class Node { int num; Node next ...

  3. Snort初探

    Snort初探 概念: Snort是一款开源的网络入侵防御系统(IPS),可以实时分析和记录网络数据包,你可以通过执行协议分析.内容搜索和匹配,从而发现各种网络攻击和可疑的探测.例如,缓冲区溢出.端口 ...

  4. JSP自定义标签就是如此简单

    tags: JSP 为什么要用到简单标签? 上一篇博客中我已经讲解了传统标签,想要开发自定义标签,大多数情况下都要重写doStartTag(),doAfterBody()和doEndTag()方法,并 ...

  5. QQ浏览器等window.innerHeight首次读取的高度不正确的解决办法

    问题描述 移动端的页面,需要处理首屏为一满屏.并且,采用javascript计算高度来设置容器高度的方案. <!DOCTYPE html> <html> <head> ...

  6. 不使用Math.random实现随机数

    不使用Math.random实现随机数 var rand = (function(){ var today = new Date(); var seed = today.getTime(); func ...

  7. jboss7.1.1相关error及解决办法

    问题1: 报错提示: 公司的网站系统使用的中间是jboss7.1.1 Final,由于有些数据和服务测试环境不具备,免不了要在测试环境调试些jsp页面,发现从jboss社区里下载的jboss应用有个问 ...

  8. bzoj 4827: [Hnoi2017]礼物 [fft]

    4827: [Hnoi2017]礼物 题意:略 以前做的了 化一化式子就是一个卷积和一些常数项 我记着确定调整值还要求一下导... #include <iostream> #include ...

  9. 51NOD 1237 最大公约数之和 V3 [杜教筛]

    1237 最大公约数之和 V3 题意:求\(\sum_{i=1}^n\sum_{j=1}^n(i,j)\) 令\(A(n)=\sum_{i=1}^n(n,i) = \sum_{d\mid n}d \c ...

  10. Kolakoski序列产生器

    /* 本程序说明: Kolakoski序列是一个仅由1和2组成的无限数列,是一种通过“自描述”来定义的数列. 他的前几项为1,2,2,1,1,2,1,2,2,1,2,2,1,1,2,1,1,2,2,1 ...