开发环境用户指南上这么写的

3.1 内核源代码

成功安装Hi3531 SDK后,内核源代码已存放于SDK目录下的osdrv/目录中,用户可

直接进入目录进行相关操作。

3.2 配置内核

如果对内核和Hi3531平台没有足够了解,请勿修改默认配置。但可增加需要的模块。

配置内核的操作步骤如下:

1.  手动拷贝.config 文件: 

hisilicon$cd os/linux-3.0.y 

hisilicon$cp arch/arm/configs/godnet_defconfig .config//编译Hi3531 

hisilicon$cp arch/arm/configs/godcube_defconfig .config //编译Hi3532 

2.  用户通过“make menuconfig”进行内核配置:

hisilicon$make ARCH=arm CROSS_COMPILE= arm-hisiXXX-linux- menuconfig 

3.  选择需要的模块。

4.  选择完毕后,保存并退出。

----结束

3.3 编译内核并生成内核镜像uImage 

配置保存后,可直接输入“make ARCH=arm CROSS_COMPILE=arm-hisiXXX-linux- 

uImage命令编译内核生成镜像,此时需要等待几分钟。

如果编译过程中出现错误,按顺序执行以下命令:

make ARCH=arm CROSS_COMPILE=arm-hisiXXX-linux- clean 

make ARCH=arm CROSS_COMPILE=arm-hisiXXX-linux- menuconfig 

make ARCH=arm CROSS_COMPILE=arm-hisiXXX-linux- uImage

编译内核时需要在make后添加两个参数:ARCH=arm CROSS_COMPILE=arm-hisiXXX

linux-,其中CROSS_COMPILE表示工具链。文档中统一以CROSS_COMPILE=arm-hisiXXX

linux-来表示两种情况。

z  Hi35xx_V100R001C01SPCxxx对应uclibc,使用uclibc工具链时,CROSS_COMPILE=arm

hisiv100nptl-linux-。

z  Hi35xx_V100R001C02SPCxxx对应glibc,使用glibc工具链时,CROSS_COMPILE=arm

hisiv200-linux-。

具体命令

单独编译kernel:

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

cp arch/arm/configs/godnet_defconfig .config

make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux- menuconfig

make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux- uImage

使用tftp 刷上去后启动的时候出错,大概意思是配置的NAND flash的 pagesize 和硬件的不同,然后就卡在那里不动了。刚开始以为是uboot配置参数的问题,改了半天uboot参数还是不行。最后试试把内核配置中的NAND驱动取消掉,完美运行。

取消NAND Flash驱动的位置:

Device Drivers  --->

<*> Memory Technology Device (MTD) support  --->

< >   NAND Device Support  --->

由于PHY地址配置的不同,也有可能会网口不通,应该会需要修改如下配置

1. 内核下的方法:

在osdvr/kernel/linux -3.0.y目录下运行

“make ARCH=arm CROSS_COMPILE=arm-hisiv200-linux- menuconfig”

在 menuconfig 菜单下, 选择以下选项:

 

        Device Drivers  --->

             [*] Network device support  --->

                 [*]   Ethernet (1000 Mbit)  --->

                     <M>   STMicroelectronics 10/100/1000 Ethernet driver  --->

                        (1)     STMMAC MAC #0 PHY ID     << 表示 phy 地址是 1.

                        (2)     STMMAC MAC #1 PHY ID     << 表示 phy 地址是 2.

hi3531 SDK 编译 kernel, 修改 参数的更多相关文章

  1. hi3531 SDK 编译 uboot, 修改PHY地址, 修改 uboot 参数 .

    一,编译uboot SDK文档写得比较清楚了,写一下需要注意的地方吧. 1. 之前用SDK里和别人给的已经编译好的uboot,使用fastboot工具都刷不到板子上.最后自己用SDK里uboot源码编 ...

  2. hi3531 SDK 编译 uboot, 改动PHY地址, 改动 uboot 參数 .

    一,编译uboot SDK文档写得比較清楚了,写一下须要注意的地方吧. 1. 之前用SDK里和别人给的已经编译好的uboot,使用fastboot工具都刷不到板子上.最后自己用SDK里uboot源代码 ...

  3. Qt5.5.0在Windows下静态编译(修改参数以后才能支持XP)good

    测试系统环境: windows 7 编译软件环境: vs2013 + QT5.5.0 [源码地址:http://download.qt.io/official_releases/qt/5.5/5.5. ...

  4. hi3531 SDK已编译文件系统制作jffs2文件系统镜像并解决问题 .

    一, 安装SDK 1.Hi3531 SDK包位置 在"Hi3531_V100R001***/01.software/board"目录下,您可以看到一个 Hi3531_SDK_Vx. ...

  5. RK3568开发笔记(五):在虚拟机上使用SDK编译制作uboot、kernel和ubuntu镜像

    前言   buildroot虽然灵活,但是基于实际情况,本身是侧重驱动和应用定制开发的只定制一次文件系统投入有点多,还不如直接ubunt自己交叉编译依赖库,做一些库的移植裁剪.  于是本篇就使用ubu ...

  6. hi3531 SDK已编译文件系统制作jffs2文件系统镜像并解决这个问题 .

    一, 安装SDK 1.Hi3531 SDK包位置 在"Hi3531_V100R001***/01.software/board"文件夹下,您能够看到一个 Hi3531_SDK_Vx ...

  7. RK3568开发笔记(四):在虚拟机上使用SDK编译制作uboot、kernel和buildroot镜像

    前言   上一篇搭建好了ubuntu宿主机开发环境,本篇的目标系统主要是开发linux+qt,所以需要刷上billdroot+Qt创建的系统,为了更好的熟悉原理和整个开发过程,选择从零开始搭建rk35 ...

  8. Hi3531 SDK 安装以及升级使用说明

    Hi3531 SDK 安装以及升级使用说明 第一章 Hi3531_SDK_Vx.x.x.x版本升级操作说明    如果您是首次安装本SDK,请直接参看第2章.     第二章 首次安装SDK 1.Hi ...

  9. Hi3531 SDK v2.0.8.0 安装

    1.Hi3531 SDK包位置 在"Hi3531_V100R001***/01.software/board"目录下,您可以看到一个 Hi3531_SDK_Vx.x.x.x.tgz ...

随机推荐

  1. centos 编译安装net-snmp 5.6.2

    1.准备环境 yum -y install make gcc gcc-c++ gcc-g77 openssl openssl-devel 常用lib安装可参照本文 2.编译和安装 首先我们需要下载Ne ...

  2. iOS-CYLTabBarController【好用的TabbarController】

    用TabbarController进行模块分类和管理,这里推荐一个CYLTabBarController,只需两个数组就可以使用和管理: 1.导入CYLTabBarController 使用cocoa ...

  3. BZOJ 1097: [POI2007]旅游景点atr [DP 状压 最短路]

    传送门 题意: 一个无向图,从$1$到$n$,要求必须经过$2,3,...,k+1$,给出一些限制关系,要求在经过$v \le k+1$之前必须经过$u \le k+1$ 求最短路 预处理出$1... ...

  4. 浅谈JavaScript的事件(事件类型)

    Web浏览器能够发生的事件有很多种类型,不同的事件类型有不同的事件信息.DOM3级的事件类型主要包括:UI事件,用户与页面上的元素交互时触发:焦点事件,元素获得或失去焦点触发:鼠标事件,用户通过鼠标在 ...

  5. Dagger2 使用全解析

    Dagger2 使用全解析 Dagger是一个注入工具,何为注入,我们要生产一批机器人,每个机器人都有一个控制器,我们可以在机器人内部 new 出一个控制器: class Robot { val co ...

  6. 整理的linux面试运维题

    如何在非交互模式下把 /home/example/下所有.conf文件中的 192.168.0.2 改成 db01 ?   find /home/example/ -type f -name &quo ...

  7. JaveScript函数(JS知识点归纳六)

    1.函数的基本使用 a)作用:代码的复用,灵活性比较强 b)声明方式:function 名 (形参){函数体} c)调用: 名(实参); d)封装函数--书写一个函数的结构,而且放入一些功能,在需要使 ...

  8. Java集合中的Map接口

    jdk1.8.0_144 Map是Java三种集合中的一种位于java.util包中,Map作为一个接口存在定义了这种数据结构的一些基础操作,它的最终实现类有很多:HashMap.TreeMap.So ...

  9. 基于微软企业库的AOP组件(含源码)

    软件开发,离不开对日志的操作.日志可以帮助我们查找和检测问题,比较传统的日志是在方法执行前或后,手动调用日志代码保存.但自从AOP出现后,我们就可以避免这种繁琐但又必须要实现的方式.本文是在微软企业库 ...

  10. js获取某个日期所在周周一的日期

    第一次写,做个小笔记. 第一步:获取该日期的星期数: 第二步:在该日期上减去他的星期数再减1,(注:星期日获取到的星期数是0): 下面是具体代码: function GetMonday(dd) { v ...