zoukankan      html  css  js  c++  java
  • Jlink 烧写Uboot 分类: HI3531 2013-12-02 15:30 883人阅读 评论(0) 收藏

     

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

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

       

    第二章首次安装SDK

    1Hi3531 SDK包位置

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

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

     

    2、解压缩SDK

        linux服务器上(或者一台装有linuxPC上,主流的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(请用rootsudo权限执行)将会展开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-linuxuclibc工具链,arm-hisiv200-linuxglibc工具链。具体命令如下

    (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分钟

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    ///////////////////////////3531调试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 

     

     

    ON0

    测试:

    1.     Fastboot烧写uboot提示超时

    2.     去掉 spi flash结果和1相同

    3.     换个flash,效果同上

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

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

    6.     焊装Ddr后和以前一样

     

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    maven 父子模块保持相同
    Maven deploy时排除指定的某个module
    源码,反码,补码
    Java日志之Slf4j,Log4J,logback原理总结
    Git Bash设置代理
    分享2个分布式锁
    二叉树的遍历记忆方法
    MySQL百万级数据分页查询及优化
    eclipse无法访问sun.misc.Unsafe类的解决办法
    Spring学习日志之纯Java配置的MVC框架搭建
  • 原文地址:https://www.cnblogs.com/mao0504/p/4706709.html
Copyright © 2011-2022 走看看