hisi平台mii网络模式和rmii网络模式的uboot制作
MII网络uboot编译说明
一:编译生成默认的uboot
1. 进入到uboot目录
a. cd /home/satan/Hi3518_SDK_V1.0.7.0/osdrv/uboot
2. 新建临时文件夹
a. mkdir u-boot-2010.06-mii-debug
3. 解压
a. tar -xzvf u-boot-2010.06.tgz -C u-boot-2010.06-mii-debug
4. 进入目录
cd u-boot-2010.06-mii-debug/u-boot-2010.06
5. 生成配置文件
a. make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux- hi3518c_config
6. 编译
a. make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux-(完成后将在当前目录生成u-boot和u-boot.bin,我们需要的是u-boot.bin)
二:生成寄存器配置表文件
1. 拷贝寄存器配置表格文件到windows中
a. 寄存器配置表格文件目录(~SDK/osdrv/tools/pc_tools/uboot_tools/uboot-Hi3518C-bvt_No2_440_200_400.xlsm)
2. 打开寄存器配置表格文件
a. 必须用Miscosoft Excel,WPS的Excel不能用
b. 必须启用宏选项
3. 生成寄存器配置文件
a. 点击mail页面的Generate reg bin file按钮
b. 成功后将在当前目录生成reg_info.bin文件
三:生成最终的uboot镜像文件
1. 拷贝制作脚本mkboot.sh
a. mkboot.sh所在目录(~SDK/osdrv/tools/pc_tools/uboot_tools)
b. 将制作脚本mkboot.sh拷贝到~SDK/osdrv/uboot/u-boot-2010.06-mii-debug目录
2. 拷贝寄存器配置文件reg_info.bin
a. reg_info.bin文件的目录在windows下与uboot-Hi3518C-bvt_No2_440_200_400.xlsm同级目录下
b. 将reg_info.bin拷贝到/home/satan/Hi3518_SDK_V1.0.7.0/osdrv/uboot/u-boot-2010.06-mii-debug目录
3. 拷贝u-boot.bin文件
a. u-boot.bin文件所在目录/home/satan/Hi3518_SDK_V1.0.7.0/osdrv/uboot/u-boot-2010.06-mii-debug/u-boot-2010.06
b. 拷贝u-boot.bin到/home/satan/Hi3518_SDK_V1.0.7.0/osdrv/uboot/u-boot-2010.06-mii-debug目录
4. uboot制作目录下文件有
a. mkboot.sh
b. reg_info.bin
c. u-boot.bin
5. 制作最终的uboot镜像文件
a. ./mkboot.sh reg_info.bin u-boot.bin
b. 执行后的u-boot.bin文件即为最终的uboot镜像文件
##############################################################################################
RMII网络模式下UBOOT制作方法
RMII:另外一种网络连接方式,它使用的GPIO口少于MII所使用的GPIO,剩余的GPIO口可做其他用途,比如云台
一:编译生成默认的uboot
1. 进入到uboot目录
a. cd /home/satan/Hi3518_SDK_V1.0.7.0/osdrv/uboot
2. 新建临时文件夹
a. mkdir u-boot-2010.06-rmii-debug
3. 解压
a. tar -xzvf u-boot-2010.06.tgz -C u-boot-2010.06-rmii-debug
4. 进入目录
cd u-boot-2010.06-rmii-debug/u-boot-2010.06
5. 修改配置文件
a. 配置文件目录u-boot-2010.06/include/configs/hi3518c.h
b. 修改项
将以下行
181 #define HIETH_MII_RMII_MODE_U HISFV_MII_MODE
182 #define HIETH_MII_RMII_MODE_D HISFV_MII_MODE
修改为:
181 #define HIETH_MII_RMII_MODE_U HISFV_RMII_MODE//HISFV_MII_MODE
182 #define HIETH_MII_RMII_MODE_D HISFV_RMII_MODE//HISFV_MII_MODE
6. 修改网络时钟
a. 修改文件:u-boot-2010.06/drivers/net/hisfv300/mii-drv.c
b. 修改项
在函数unsigned int get_phy_device(char *devname, unsigned char phyaddr)增加以下语句
47 /* PHY-8201 */
48 if ((phy_id & 0xFFFFFFF0) == 0x1cc810)
49 {
50 if (HIETH_MII_RMII_MODE_U == HISFV_RMII_MODE)
51 {
52 unsigned short reg;
53 miiphy_write(devname, phyaddr, 0x1F, 0x7);
54
55 miiphy_read(devname, phyaddr, 0x10, ®);
56 reg |= (1 << 12); // set phy RMII 50MHz clk;
57 miiphy_write(devname, phyaddr, 0x10, reg);
58
59 miiphy_write(devname, phyaddr, 0x1F, 0x0);
60 }
61 }
7. 生成配置文件
a. make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux- hi3518c_config
8. 编译
a. make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux-(完成后将在当前目录生成u-boot和u-boot.bin,我们需要的是u-boot.bin)
二:生成寄存器配置表文件
1. 拷贝寄存器配置表格文件到windows中
a. 寄存器配置表格文件目录(~SDK/osdrv/tools/pc_tools/uboot_tools/uboot-Hi3518C-bvt_No2_440_200_400.xlsm)
2. 打开寄存器配置表格文件
a. 必须用Miscosoft Excel,WPS的Excel不能用
b. 必须启用宏选项
3. 修改相应的项
a. 修改点1
在pll表格的PERI_CRG58上一行加入以下行(将HD3518C的ETH网络模式配置成RMII
)
寄存器名称 偏移地址
写入寄存器的值/读出判断的值 delay值
选择读/写 读写多少bit
从第几bit开始读写 寄存器读写属性
PERI_CRG51 0xcc 0x2 0 写 1
2 0x0000100D
b. 修改点2
修改mutilplex表格的该行(将输出时钟由MII时钟改为RMII时钟)
muxctrl_reg23 0x5c 0x01 0 写 1
0 0x0000000D
修改为
muxctrl_reg23 0x5c 0x03 0 写 1
0 0x0000000D
4. 生成寄存器配置文件
a. 点击mail页面的Generate reg bin file按钮
b. 成功后将在当前目录生成reg_info.bin文件
三:生成最终的uboot镜像文件
1. 拷贝制作脚本mkboot.sh
a. mkboot.sh所在目录(/home/satan/Hi3518_SDK_V1.0.7.0/osdrv/tools/pc_tools/uboot_tools)
b. 将制作脚本mkboot.sh拷贝到/home/satan/Hi3518_SDK_V1.0.7.0/osdrv/uboot/u-boot-2010.06-mii-debug目录
2. 拷贝寄存器配置文件reg_info.bin
a. reg_info.bin文件的目录在windows下与uboot-Hi3518C-bvt_No2_440_200_400.xlsm同级目录下
b. 将reg_info.bin拷贝到/home/satan/Hi3518_SDK_V1.0.7.0/osdrv/uboot/u-boot-2010.06-mii-debug目录
3. 拷贝u-boot.bin文件
a. u-boot.bin文件所在目录/home/satan/Hi3518_SDK_V1.0.7.0/osdrv/uboot/u-boot-2010.06-mii-debug/u-boot-2010.06
b. 拷贝u-boot.bin到/home/satan/Hi3518_SDK_V1.0.7.0/osdrv/uboot/u-boot-2010.06-mii-debug目录
4. uboot制作目录下文件有
a. mkboot.sh
b. reg_info.bin
c. u-boot.bin
5. 制作最终的uboot镜像文件
a. ./mkboot.sh reg_info.bin u-boot.bin
b. 执行后的u-boot.bin文件即为最终的uboot镜像文件
from:http://blog.csdn.net/u014780165/article/details/43193099
hisi平台mii网络模式和rmii网络模式的uboot制作的更多相关文章
- Android8.1 MTK平台 SystemUI源码分析之 网络信号栏显示刷新
SystemUI系列文章 Android8.1 MTK平台 SystemUI源码分析之 Notification流程 Android8.1 MTK平台 SystemUI源码分析之 电池时钟刷新 And ...
- [转]VMware Workstation网络连接的三种模式
经常要使用VMWare Workstation来在本地测试不同的操作系统,以前也搞不清楚网络连接三种模式,最近看了几篇文章才算明白.现总结如下: 1. VMware Workstation的虚拟网络组 ...
- VMware网络配置 - 三种网络模式简介
安装好虚拟机以后,在网络连接里面可以看到多了两块网卡: 其 中VMnet1是虚拟机Host-only模式的网络接口,VMnet8是NAT模式的网络接口,这些后面会详细介绍 选择虚拟机网络模 式方法如下 ...
- Linux网络编程1——小端模式与大端模式
数据存储优先顺序的转换 计算机数据存储有两种字节优先顺序:高位字节优先(称为大端模式)和低位字节优先(称为小端模式).内存的低地址存储数据的低字节,高地址存储数据的高字节的方式叫小端模式.内存的高地址 ...
- VMWare虚拟机网络的三种工作模式
VMWare提供了三种工作模式: 1.bridged(桥接模式) 在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器.在桥接模式下,需要手工为虚拟系 ...
- 支付平台程序,支付程序,网络pos程序,api接口程序,锋锐支付平台程序开发领导者!
支付平台程序,支付程序,网络pos程序,api接口程序,锋锐支付平台程序开发领导者! 锋锐支付平台程序(www.100freenet.com)隶属于盐城市沐良商贸有限公司(沈阳杰速网络科技有限公司旗下 ...
- 公布一个基于 Reactor 模式的 C++ 网络库
公布一个基于 Reactor 模式的 C++ 网络库 陈硕 (giantchen_AT_gmail) Blog.csdn.net/Solstice 2010 Aug 30 本文主要介绍 muduo 网 ...
- IO模式设置网络编程常见问题总结—IO模式设置,阻塞与非阻塞的比较,recv参数对性能的影响—O_NONBLOCK(open使用)、IPC_NOWAIT(msgrcv)、MSG_DONTWAIT(re
非阻塞IO 和阻塞IO: 在网络编程中对于一个网络句柄会遇到阻塞IO 和非阻塞IO 的概念, 这里对于这两种socket 先做一下说明: 基本概念: 阻塞IO:: socket 的阻塞模式 ...
- Linux网络配置(仅主机模式)
1.启动虚机,网络选择:仅主机模式 2.命令行输入 rm -rf /etc/udev/rules.d/70-persistent-net.rules 3.修改虚机中的网络配置 >>vim ...
随机推荐
- POJ 1979 Red and Black(水题,递归)
一开始理解错题意了,以为是走过的砖不能再重复走,最多能走多少个黑砖,结果写的递归陷入死循环...后来才明白原来可以重复走,问可以到达的磁砖数. #include <iostream> #i ...
- POJ 1691 Painting A Board(DFS)
链接 题意 : 看了好长时间终于看懂题目了,将一个大矩形划分成若干小矩形,告诉你每个小矩形的左上角那个点和右下角那个点的坐标,告诉你这个小矩形要涂的颜色,每个颜色对应一个刷子,问你最少要使用几次刷子. ...
- [转]Ubuntu 常用快捷键10个
转自:http://www.linuxeden.com/html/news/20100613/103374.html 1.前一个后一个工作区的切换 如果你经常使用工作区,那你就可以用Ctrl + Al ...
- Qt源码分析之QObject
原文:http://blog.csdn.net/oowgsoo/article/details/1529284 我感觉oowgsoo兄弟写的分析相当透彻,赞! 1.试验代码: #include < ...
- 10位顶级PHP大师的开发原则
在Web开发世界里,PHP是最流行的语言之一,从PHP里,你能够很容易的找到你所需的脚本,遗憾的是,很少人会去用“最佳做法”去写一个PHP程序.这里,我们向大家介绍PHP的10种最佳实践,当然,每一种 ...
- 使用HttpClient发送HTTPS请求以及配置Tomcat支持SSL
这里使用的是HttpComponents-Client-4.1.2 package com.jadyer.util; import java.io.File; import java.io.FileI ...
- Python中的 isdigit()方法
Python isdigit()方法 sdigit()方法就是检测字符串是否只有数字组成, 如果字符串中是只有数字组成,则返回true, 如果字符串中有其他字符,则返回false. 语法格式是: s ...
- Pig简单入门
pig是hadoop客户端,使用类似于SQL的面向数据流的语言pig latin,这个语言可以完成排序,过滤,求和,关联等操作,可以支持自定义函数.Pig自动把pig latin 映射为Map-Red ...
- 运行Android应用时提示ADB是否存在于指定路径问题
打开eclipse,选择指定的Android应用工程并Run,提示: [2014-06-28 11:32:26 - LinearLayout] The connectionto adb is down ...
- android的helloworld工程目录学习
android的helloworld工程目录学习 Android工程的主要目录有src.gen.Android X.X.bin.res等文件夹. 1. Src文件夹 Src文件夹包含java源 ...