david

david

41个粉丝

368

问答

253

专栏

229

资料

david  发布于  2012-11-24 15:09:53
采纳率 1%
368个问答
一个爱徒步的~IT民工
6001

关于 hi3531 代码编译第一步

 
以16M SPI Flash为例。
    1)地址空间说明
        |      1M       |      4M       |      11M      |
        |---------------|---------------|---------------|
        |     boot      |     kernel    |     rootfs    |

run uboot 升级uboot
run kernel 升级kernel
run rootfs 升级rootfs

注意升级的时候必须保持网络畅通,同时保持文件正确无误,否则可能存在网络不通或者文件名、文件不对
导致升级进去的数据无效,系统就此挂掉,尤其升级uboot的时候,当uboot升级不成功后,整个系统需要将
flash取下,通过烧写器再次烧写flash,uboot的升级最好使用如下命令:
mw.b 82000000 ff 100000
tftp 0x82000000 u-boot_31.bin
sf probe 0
sf erase 0 100000
sf write 82000000 0 100000


mpp目录下的nvp是采集芯片的应用代码,编译生成libADChip.a
mpp/extdrv_hi3531目录下的nvp,编译生成nvp.ko

生成文件系统的jffs2文件
根文件系统目录在rootfs_uclibc目录下,执行mkimg.roofs即可以生成对应的rootfs的jffs2文件
./mkimg.rootfs rootfs_uclibc/ . rootfs jffs2
mkimg.roofs命令参看该命令的脚本,最终生成rootfs.jffs2文件,将该文件烧录到flash中

image_uclibc目录的文件是板子里可以运行的uboot、kernel、roofs.jffs2

系统驱动和程序运行放在根文件系统的etc/init.d目录下的S81toe文件中
cd /usr/ko_hi3531
./load3531
cd /
./sample_vio 0 &


uboot编译主要事项:
进入uboot目录编译,编译成功后生成u-boot.bin,但是此时的u-boot.bin不能直接升级到flash中;

将u-boot.bin拷贝至osdrv/tools/pc_tools/uboot_tools目录下,同时进入该目录,执行如下命令
./mkboot.sh reg_info.bin u-boot_31.bin
生成的u-boot_31.bin,才是最终能升级到板子里的文件

系统进行挂载调试时,需要设置系统板子的ip地址 ifconfig eth0 xx.xx.xx.xx
我来回答
回答1个
时间排序
认可量排序

hilinux

0个粉丝

17

问答

0

专栏

0

资料

hilinux 2012-11-24 15:21:59
认可0
:):)辛苦辛苦。。。
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区