2180
- 收藏
- 点赞
- 分享
- 举报
hi3516 Uboot的制作(RMII网络)
注意:
1.解压Hi3516AV100最新SDK版本1.0.6.0;
# Hi3516A_SDK_V1.0.6.0.tgz
2.安装Hi3516AV100环境;(进入步骤1解压出来的目录)
#./sdk.unpack
3.安装交叉编译环境;(已安装服务器可略过)
#cd Hi3516A_SDK_V1.0.6.0/osdrv/opensource/toolchain/arm-hisiv300-linux
#./cross.install.v300
一、进入uboot源码目录,解压uboot压缩文件到当前目录并重命名为u-boot-2010-06-rmii;
#cd ~/work/SDK_HI3516AV100/Hi3516A_SDK_V1.0.6.0/osdrv/opensource/uboot/
#tar zxvf u-boot-2010.06.tgz
#mv u-boot-2010.06 u-boot-2010-06-rmii
二、进入解压出来的uboot源码目录,并生成配置文件(hi3516a_config)
#cd u-boot-2010-06-rmii
# make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- hi3516a_config
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- hi3519v101_config
三、修改include/configs/hi3516a.h头文件:
#vim include/configs/hi3516a.h
1)配置分区及启动参数
sf probe 0;sf read 0x82000000 0x80000 0x300000;bootm 0x82000000
mem=80M console=ttyAMA0,115200 mtdparts=hi_sfc:512K(boot),3M(kernel),11M(app),1M(app_ext),512K(param)
以下分别是修改之前和修改之后的截图:
2)配置网络
以下分别是修改之前和修改之后的截图:
3) 配置uboot程序空间和环境参数空间大小
以下分别是修改之前和修改之后的截图:
#vim product/env_setup.h
4)修改对应的spi flash驱动代码:
#vim drivers/mtd/spi/hisfc350/hisfc350_spi_ids.c
A:支持MX25L12835F
B:支持GD25Q127C
四、编译生成uboot镜像,完成后将在当前目录生成u-boot和u-boot.bin,我们需要的是u-boot.bin
#make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux-
以上所生成的u-boot.bin就是可以接使用的uboot镜像;
补充说明以下几点:
一、flash分区在uboot的配置中直接进行分区,不需要到内核中的源码中进行分区或在编译内核时在cmdline命令行选项上进行分区(内核编译时,此选项为空不写任何内容)
二、RMII网络,此uboot已经默认是RGMII网络,如果实际硬件板子用的是RMII网络时,需要到include/configs/hi3516a.h这个文件修改配置具体修改项如下:
三、如果硬件板子有寄存器需要重新设置的(Hi3516A需要重新配置DDR和网络),请按如下操作步骤操作:
(1)在windows操作系统中进入SDK中的uboot_tools目录
(2)用Microsoft Execl打开(WPS打开是不行的)
修改相应内容:
1. DDR修改配置
A: 在 mddrc_dmc1 页,设置为 16bit 位宽,地址和相应 bit 位: 0x2011_1050【 5:4】,
见 datasheet;
0x26 修改为->0x16.
B: 在 mddrc_dmc2 页,修改配置 AXI_CONFIG【 3:0】: 0xb,设置为 2k bank 位宽;
0x2000C 修改为->0x2000b.
C: 在 mddrc_phy 页,屏蔽高 16 位的写数据。
0x0 修改为->0x3.
0x0 修改为->0x3.
D: mddrc_dmc1 页面
0x142 修改为->0x132.
E: mddrc_dmc1 页面 : 0x4126804c -------> 0x41268028
【 7:0】进行修改:我们的 uboot 默认发布 DDRC 总线 250M: 160/4 = 40 =0x28
F: mddrc_phy 页面 : 0x089726c4 -------> 0x085026c4
【 24:16】进行修改:修改为 160/2 = 80 = 0x50;
2.网络配置
A: muxctrl_reg 页面 : 0x1 -------> 0x2
muxctrl_reg93进行修改
修改完相应设置后,保存一下,切换到main页面,点击Generate reg bin file按钮,执行之后,在uboot_tools目录下生成reg_info.bin文件
(3)生成u-boot.bin镜像:
在Linux环境界面下,将原来生成的u-boot.bin拷贝到此目录下,需要使用的文件有
mkboot.sh
reg_info.bin
u-boot.bin
执行 ./mkboot.sh reg_info.bin u-boot-hi3516a.bin
生成u-boot.bin查看更新时间,确保是新生成的
1.解压Hi3516AV100最新SDK版本1.0.6.0;
# Hi3516A_SDK_V1.0.6.0.tgz
2.安装Hi3516AV100环境;(进入步骤1解压出来的目录)
#./sdk.unpack
3.安装交叉编译环境;(已安装服务器可略过)
#cd Hi3516A_SDK_V1.0.6.0/osdrv/opensource/toolchain/arm-hisiv300-linux
#./cross.install.v300
一、进入uboot源码目录,解压uboot压缩文件到当前目录并重命名为u-boot-2010-06-rmii;
#cd ~/work/SDK_HI3516AV100/Hi3516A_SDK_V1.0.6.0/osdrv/opensource/uboot/
#tar zxvf u-boot-2010.06.tgz
#mv u-boot-2010.06 u-boot-2010-06-rmii
二、进入解压出来的uboot源码目录,并生成配置文件(hi3516a_config)
#cd u-boot-2010-06-rmii
# make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- hi3516a_config
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- hi3519v101_config
三、修改include/configs/hi3516a.h头文件:
#vim include/configs/hi3516a.h
1)配置分区及启动参数
sf probe 0;sf read 0x82000000 0x80000 0x300000;bootm 0x82000000
mem=80M console=ttyAMA0,115200 mtdparts=hi_sfc:512K(boot),3M(kernel),11M(app),1M(app_ext),512K(param)
以下分别是修改之前和修改之后的截图:
2)配置网络
以下分别是修改之前和修改之后的截图:
3) 配置uboot程序空间和环境参数空间大小
以下分别是修改之前和修改之后的截图:
#vim product/env_setup.h
4)修改对应的spi flash驱动代码:
#vim drivers/mtd/spi/hisfc350/hisfc350_spi_ids.c
A:支持MX25L12835F
B:支持GD25Q127C
四、编译生成uboot镜像,完成后将在当前目录生成u-boot和u-boot.bin,我们需要的是u-boot.bin
#make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux-
以上所生成的u-boot.bin就是可以接使用的uboot镜像;
补充说明以下几点:
一、flash分区在uboot的配置中直接进行分区,不需要到内核中的源码中进行分区或在编译内核时在cmdline命令行选项上进行分区(内核编译时,此选项为空不写任何内容)
二、RMII网络,此uboot已经默认是RGMII网络,如果实际硬件板子用的是RMII网络时,需要到include/configs/hi3516a.h这个文件修改配置具体修改项如下:
三、如果硬件板子有寄存器需要重新设置的(Hi3516A需要重新配置DDR和网络),请按如下操作步骤操作:
(1)在windows操作系统中进入SDK中的uboot_tools目录
(2)用Microsoft Execl打开(WPS打开是不行的)
修改相应内容:
1. DDR修改配置
A: 在 mddrc_dmc1 页,设置为 16bit 位宽,地址和相应 bit 位: 0x2011_1050【 5:4】,
见 datasheet;
0x26 修改为->0x16.
B: 在 mddrc_dmc2 页,修改配置 AXI_CONFIG【 3:0】: 0xb,设置为 2k bank 位宽;
0x2000C 修改为->0x2000b.
C: 在 mddrc_phy 页,屏蔽高 16 位的写数据。
0x0 修改为->0x3.
0x0 修改为->0x3.
D: mddrc_dmc1 页面
0x142 修改为->0x132.
E: mddrc_dmc1 页面 : 0x4126804c -------> 0x41268028
【 7:0】进行修改:我们的 uboot 默认发布 DDRC 总线 250M: 160/4 = 40 =0x28
F: mddrc_phy 页面 : 0x089726c4 -------> 0x085026c4
【 24:16】进行修改:修改为 160/2 = 80 = 0x50;
2.网络配置
A: muxctrl_reg 页面 : 0x1 -------> 0x2
muxctrl_reg93进行修改
修改完相应设置后,保存一下,切换到main页面,点击Generate reg bin file按钮,执行之后,在uboot_tools目录下生成reg_info.bin文件
(3)生成u-boot.bin镜像:
在Linux环境界面下,将原来生成的u-boot.bin拷贝到此目录下,需要使用的文件有
mkboot.sh
reg_info.bin
u-boot.bin
执行 ./mkboot.sh reg_info.bin u-boot-hi3516a.bin
生成u-boot.bin查看更新时间,确保是新生成的
我来回答
回答0个
时间排序
认可量排序
暂无数据
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片![alt](url)
相关问答
-
2017-04-29 17:37:11
-
2016-05-21 09:05:58
-
2019-05-23 17:33:22
-
2017-09-06 18:17:13
-
132016-02-19 10:13:47
-
2018-01-15 21:56:40
-
2017-04-06 13:51:05
-
2016-11-07 18:52:56
-
2017-11-13 14:54:27
-
2016-06-30 14:21:02
-
2018-04-28 17:00:01
-
2016-03-22 09:27:54
-
122016-11-03 11:50:52
-
2016-04-29 15:53:35
-
2015-08-14 12:26:32
-
2018-04-10 10:46:18
-
102019-05-22 09:55:10
-
2019-05-23 17:28:50
-
2018-06-05 17:08:09
无更多相似问答 去提问
点击登录
-- 积分
-- E币
提问
—
收益
—
被采纳
—
我要提问
切换马甲
上一页
下一页
悬赏问答
-
5Hi3516CV610 如何使用SD卡升级固件
-
5cat /dev/logmpp 报错 <3>[ vi] [func]:vi_send_frame_node [line]:99 [info]:vi pic queue is full!
-
50如何获取vpss chn的图像修改后发送至vo
-
5FPGA通过Bt1120传YUV422数据过来,vi接收不到数据——3516dv500
-
50SS928 运行PQtools 拼接 推到设备里有一半画面会异常
-
53536AV100的sample_vdec输出到CVBS显示
-
10海思板子mpp怎么在vi阶段改变视频数据尺寸
-
10HI3559AV100 多摄像头同步模式
-
9海思ss928单路摄像头vio中加入opencv处理并显示
-
10EB-RV1126-BC-191板子运行自己编码的程序
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
提醒
你的问题还没有最佳答案,是否结题,结题后将扣除20%的悬赏金
取消
确认
提醒
你的问题还没有最佳答案,是否结题,结题后将根据回答情况扣除相应悬赏金(1回答=1E币)
取消
确认