打印
[全新]

迅为龙芯iTOP2K1000开发板NAND FLASH启动(烧写系统到nand)

[复制链接]
310|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
核心板上板载了一个大小为 512mb 的 nand flash,所以我们可以直接将系统烧写到 nand 上,从 nand上来启动系统,这样就不用通过固态或者 U 盘了。
这里我们使用 tftp 来烧写系统,我们需要在 Ubuntu 系统上搭建 tftp 服务,如大家不清楚要如何在 Ubuntu上安装 tftp,请参考手册 4.4 章节。
这里大家也可以使用别的媒介来烧录,如果 U 盘,烧写思路为将 U 盘或者 tftp 中的镜像拷贝到对应的nand flash 分区,所以使用 tftp 烧写的本质是通过网络将 pmon,内核,文件系统等镜像拷贝到 nand flash分区。
1、准备系统镜像
搭建好 tftp 服务后,我们需要将要烧写的 PMON 镜像,内核镜像,文件系统镜像拷贝到虚拟机 Ubuntu
的 tftp 目录下,如下图所示:

2、设置网络
首先,我们需要进到 PMON 命令行下,使用命令 ifaddr syn0 192.168.1.10 设置开发板的 IP 地址和虚拟机 Ubuntu 的 IP 在同一个网段下,并可以 ping 通虚拟机,如下图所示:

烧写完成后重启开发板 PMON 即可更新成功。
3、加载 PMON 镜像
注意:这里不建议大家在没有 Ejtag 的情况下对 PMON 进行操作,以免开发板变砖。
设置完网络后,我们输入命令 load -f 0xbfc00000 -r tftp://192.168.1.38/gzrom-dtb.bin,其中 192.168.1.38北京迅为电子有限公司 基于国产龙芯 SOC
为虚拟机 Ubuntu 的 IP 地址,如下图所示

烧写完成后重启开发板 PMON 即可更新成功。
4、分区格式化 nand flash
在 pmon 命 令 行 下 输 入 命 令 mtd_erase /dev/mtd0 , 分 区 格 式 化 分 区 mtd0 , 如 下 图 所 示 :

在 pmon 命令行下输入命令 mtd_erase /dev/mtd1 分区格式化分区 mtd1,如下图所示:

5 、拷贝文件系统镜像
在 PMON 目录下输入命令 devcp tftp://192.168.1.38/rootfs.yaffs2 /dev/mtd1y 拷贝内核镜像到开发板nand flash 的/dev/mtd1 分区,其中 y 是以 yaffs2 格式拷贝,192.168.1.38 为虚拟机 Ubuntu 的 IP 地址,拷贝成功如下图所示:

6、拷贝内核镜像
在 PMON 目录下输入命令 devcp tftp://192.168.1.38/vmlinuz /dev/mtd0 拷贝内核镜像到开发板 nand
flash 的 mtd0 分区,其中 192.168.1.38 为虚拟机 Ubuntu 的 IP 地址,拷贝成功如下图所示:、

7、设置环境变量
设置环境变量 al1 的值,使用命令 set al1 /dev/mtd0。设置完如下图所示:

设置环境变量 append 的值,使用命令 set append "console=ttyS0,115200 init=/linuxrc rootfstype=yaffs2 rwroot=/dev/mtdblock1",设置完如下图所示:

然后输入 saveenv 保存,如下图所示:

设置完成以后,重启开发板,登录账号为 root,密码为 topeet,启动成功如下图所示:

至此,给 nand flash 烧写系统完毕。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

636

主题

716

帖子

1

粉丝