• 【图像处理】【SEED-VPM】5.uImage的烧写 & NFS烧写文件系统


     基于 TFTP 烧写 uImage

    当用户对 SEED-VPM6467 下的内核驱动源码进行调整或者添加新的设备驱动后,需
    要对内核进行重新编译配置,编译生成内核镜像后,可以通过 tftp 下载到 SEED-VPM6467
    平台上启动,进行测试,下面详细介绍 Linux 内核的烧写。

    1.1 软件配置

    1.1.1 TFTP 服务器

    Windows 上可以使用 SolarWind TFTP Server 或者其它 TFTP 服务器端软件,用户可
    以通过 Internet 获取:对软件进行正确配置,如读写使能,TFTP 根路径等。
    Red Hat 的 Linux 系统安装时已经安装了 TFTP 服务器,其根路径是/tftpboot。
    将 System Restore 目录下的 uImage 文件拷贝到 TFTP 服务器的根路径下,Windows
    平台下需要启动 TFTP 服务器端软件。

    2 1.1.2 串口终端通讯

    主机端串口使用 PC 机 windows 系统自带的超级终端即可。配置如下:
    点击 PC 机左下角开始-->程序-->附件-->通讯-->超级终端;在“您的区号(或城市号)
    是什么(C) ?”下键入 010 后点击确定;再次点击确定,在新弹出的对话框中输入你喜欢的
    名称, 如 davinci; 在新的对话框中的“连接时使用”下选择你希望使用的串口设备, 点击确定 ;
    而后在端口设置选项中配置波特率 115200,数据位 8,奇偶校验无,停止位 1,数据流控
    制无。
    也可使用第三方软件,如:putty。其配置参数同配置 windows 系统自带的超级终端一
    样。

    2 1.2 e uImage 烧写和更新的操作

    1 1.2.1 硬件准备

    通过 TFTP 服务进行 SEED-VPM6467 内核的烧写,首先需要将 u-boot 烧写到
    NORFlash 中,烧写方法参考 SEED-VPM6467 Flash Write User's Guide.pdf,下面详细介
    绍一下 SEED-VPM6467 的硬件配置

    • 使用串口线将 SEED-VPM6467 与 PC 机相连,一端接:SEED-VPM6467 的 J7 位

    置,另一端接:PC 机的 RS232 口;

    • 使用网线将 SEED-VPM6467 与 PC 连接到同一网络中,SEED-VPM6467 的网络

    接口位置是 J9;

    • VPM6467 平台的 J9 连接 5V 电源;

    1.2.2 e uImage 烧写和更新的操作

    硬件连接完成后,即可通过 TFTP 服务下载内核。操作如下:

    • 配置 PC 机端的超级终端, 设置串口参数: 波特率 115200, 数据位 8, 奇偶校验无 ,

    停止位 1,数据流控制无;

    • 打开 Windows PC 机超级终端;
    • SEED-VPM6467 平台采用 12V 电源上电, 此时 Windows PC 机超级终端显示启动

    信息,如下图:

    图 1

    • 超级终端显示 Hit any key to stop autoboot:3 时按下回车键,中断系统,此时显

    示提示符 SEED-VPM6467 # ;
    下面配置 U-Boot 环境变量用于 TFTP 下载内核启动;

    • 配置 TFTP 服务器 IP 地址:

    Target# setenv serverip xxx.xxx.xxx.xxx
    此处的 xxx.xxx.xxx.xxx 为 TFTP 服务器的 IP 地址,根据实际网络设置决定;

    • 配置 SEED-VPM6467 平台的 IP 地址:

    Target# setenv ipaddr xxx.xxx.xxx.xxx

    此处的 xxx.xxx.xxx.xxx 为 SEED-VPM6467 的 IP 地址,根据实际网络设置决定;

    • 配置网卡地址

    Target# setenv ethaddr 00:0C:29:94:D7:D6

    • 配置设置启动方式

    Target# setenv bootcmd bootm 0x42040000

    • 保存以上设置,并将 SEED-VPM6467 重新上电

    Target# save
    Note:重新上电的作用是使刚刚设置的 MAC 地址生效

    • 关闭自动启动并烧写内核

    Target# setenv autostart no
    Target# save
    Target# nand erase 0x100000 0x00400000
    Target# tftp 0x81180000 uImage
    Target#nand write 0x81180000 0x100000 0x00400000
    Target# setenv bootcmd 'nand read 0x80800000 0x00100000
    至此, uImage 已经烧写完成。 但此时系统不能启动 Linux 命令提示行, 需要向 flash
    烧写 root 文件系统。

     基于 NFS 服务器 烧写根文件系统

    1 2.1 NAND  Flash 中根文件系统恢复

    Linux 的目录结构的最顶层是一个被称为“/”的根目录。 系统加载 Linux 内核之后,就会
    挂载一个设备到根目录上。 存在于这个设备中的文件系统被称为根文件系统。 所有的系统命
    令,系统配置以及其他文件系统的挂载点都位于这个根文件系统中。
    当 SEED-VPM6467 NAND Flash 中的文件系统需要更新/修复时,可以通过以下操作
    进行文件系统的数据恢复。
    NAND Flash 文件系统的更新/修复需要网络文件系统的支持,用户安装好 DaVinci
    Linux Develop Software 下的开发套件后,按照文档操作可以很简单的配置 NFS。

    1 2.1.1 文件准备

    将 System Restore 目录下的 Restore_rootfs.tar.gz 文件拷贝到 nfs 服务器的/opt 路径
    下.并解压.

    2 2.1.2 硬件准备

    通过 nfs 服务进行 SEED-VPM6467 根文件系统的烧写,同样需要将 u-boot 烧写到
    NAND Flash 中, 烧写方法参考 SEED_VPM6467 软件用户指南.pdf, 并进行如下硬件连接:

    • 使用串口线将 SEED-VPM6467 与 PC 机相连,一端接:SEED-VPM6467 的 J7 位

    置,另一端接:PC 机的 RS232 口;

    • 使用网线将 SEED-VPM6467 与 PC 连接到同一网络中,SEED-VPM6467 的网络

    接口位置是 J9;

    • VPM6467 平台的 J9 连接 5V 电源;

    3 2.1.3 主机端串口配置及 NAND h Flash 文件系统更新/  修复

    硬件连接完成后,即可通过 TFTP 服务下载内核。操作如下:

    • 配置 PC 机端的超级终端, 设置串口参数: 波特率 115200, 数据位 8, 奇偶校验无 ,

    停止位 1,数据流控制无;

    • 打开 Windows PC 机超级终端;
    • SEED-VPM6467 平台采用 5V 电源上电,此时 Windows PC 机超级终端显示启动

    信息,如下图:

    图 2

    • 超级终端显示 Hit any key to stop autoboot:3 时按下回车键,中断系统,此时显

    示提示符 SEED-VPM6467 # ;

    • 配置通过 NFS 烧写根文件系统:

    Target# setenv bootargs mem=120M console=ttyS0,115200n8 root=/dev/nfs
    nfsroot=192.168.253.84:/home/linux/nfs rw
    ip=192.168.253.101:192.168.253.1:255.255.255.0Target# protect off 0x42240000
    +0xdc0000
    Target# save
    Target# boot


    稍后会进入从 nfs 启动的系统下。


    root@192.168.253.101:~# cd /opt
    root@192.168.253.101:~# tar zxvf Restore_rootfs.tar.gz
    root@192.168.253.101:~# flash_eraseall /dev/mtd2
    root@192.168.253.101:~# mount -t yaffs2 /dev/mtdblock2 /mnt
    root@192.168.253.101:~# cd Restore_rootfs
    root@192.168.253.101:~# cp * /mnt -arf


    稍后拷贝结束后系统已恢复完。

    • 重启系统,配置 U-Boot 环境变量

    Target# setenv bootargs 'mem=120M console=ttyS0,115200n8
    root=/dev/mtdblock2 rootfstype=yaffs2
    ip=192.168.253.101:255.255.255.0:192.168.253.1 eth=4a:0f:10:00:ff:28'
    Note:以上 IP 地址仅为参考;

    • 保存设置,输入启动命令启动系统:

    Target# save

    Target# boot
    至此 内核及文件系统已恢复完成板卡上电回自动从 NAND FLASH 启动系统

    【uboot参数设置参考】

    setenv serverip 192.168.253.65
    setenv ipaddr 192.168.253.101
    setenv gatewayip 192.168.253.1

    tftp下载内核nfs启动
    ---nfs------
    setenv bootcmd 'tftp 0x80700000 uImage;bootm'
    setenv bootargs mem=120M console=ttyS0,115200n8 root=/dev/nfs nfsroot=192.168.253.66:/home/linux/nfs rw ip=192.168.253.101:192.168.253.1:255.255.255.0


    系统烧写
    Creating 4 MTD partitions on "nand_davinci.0":
    0x00000000-0x00100000 : "bootloader"
    0x00100000-0x00500000 : "kernel"
    0x00500000-0x04500000 : "cramfs"
    0x04500000-0x08000000 : "filesystem"

    *******************************
    -------uImage---
    nand erase 0x100000 0x00400000
    tftp 0x81180000 uImage
    nand write 0x81180000 0x100000 0x00400000


    ----bootm----------
    setenv bootargs 'mem=120M console=ttyS0,115200n8 root=/dev/mtdblock2 rootfstype=cramfs ip=192.168.253.224:255.255.255.0:192.168.253.1 eth=4a:0f:10:00:ff:28'
    setenv bootcmd 'nand read 0x80800000 0x00100000 0x00300000;bootm 0x80800000'

    擦mtdblock3
    nand erase 0x04500000 0x03500000

    nandflash+NFS启动
    setenv serverip 192.168.253.226
    setenv ipaddr 192.168.253.224
    setenv gatewayip 192.168.253.1
    setenv bootargs mem=120M console=ttyS0,115200n8 root=/dev/nfs nfsroot=192.168.253.66:/home/linux/nfs rw ip=192.168.253.101:192.168.253.1:255.255.255.0

     第 1  章  基于 CCS3.3  烧写 ubl 、U-boot

    ————————(SEED-VPM6467 Root File System User's Guide)

    1  烧写 UBL 到 到 EEPROM

    2  烧写 U-BOOT 到 到 NAND FLASH

    3 uImage  烧写和更新的操作

  • 相关阅读:
    博客模仿
    实体零售的数据分析与信息化之路
    巡店系统如何应用于连锁加盟店管理
    Dynamics CRM 常用的JS
    公众号被动消息回复原理
    form分辨率
    打开新网页 浏览图片
    网页浏览文件
    Model赋值返回json
    装载 反射
  • 原文地址:https://www.cnblogs.com/tony-ning/p/5294448.html
Copyright © 2020-2023  润新知