BeagleBoneBlack(Chipsee)更新emmc

1.使用Angstrom BBB 出厂使用angstrom,包括uboot/kernel以及文件系统,很显然是不支持Chipsee扩展板的,那么若是想使用angstrom支持扩展板,则参考: http://derekmolloy.ie/beaglebone/php

更新emmc: http://www.crashcourse.ca/wiki/index.php/BBB_software_update_processlinux

2.TI的eZsdk指导 http://www.elinux.org/Beagleboard:3.2_SDK_On_BeagleBone_Blackshell

http://processors.wiki.ti.com/index.php/Sitara_Linux_Software_Developer%E2%80%99s_Guide#Start_your_Linux_Development 2.1 eZsdk 文件系统 http://processors.wiki.ti.com/index.php/EZSDK_Using_data_on_SD_and_filesystem_on_NAND#Creating_the_file_systemide

  1. eZsdk增长emmc支持   Chipsee提供的BSP是基于TI提供的eZSDK5.7版本,并且没有对BBB的emmc进行支持,若是想从BBB的emmc启动,则须要在内核中增长emmc支持。 3.1 内核emmc支持   在Chipsee提供的linux3.2基础上增长对BBB上emmc的支持(eZSDK5.7到eZSDK6.0的区别) 编辑board-am335xevm.c,增长mmc1_emmc_init初始化:

在此输入图片描述 而后在板卡配置结构体中增长mmc1_emmc_init调用: 在此输入图片描述 (上图有误:mmc1_emmc_init应该在mmc0_init以前)ui

从新编译内核后从SD卡启动,能够看到: 在此输入图片描述 mmcblk1p2 mount失败。 注意:code

  • mmc0: SD卡接口
  • mmc1: BBB板载emmc接口
  • mmcblk1p1:emmc fat分区
  • mmcblk1p2:emmc ext3分区

经过df -H 能够看到mmcblk1p2文件系统是ext4,在内核编译选项增长ext4支持: 编辑 .config文件,增长CONFIG_EXT4_FS=y,从新编译内核。 在此输入图片描述接口

挂载成功:

在此输入图片描述

3.2 uboot emmc支持   图片

1). Chipsee提供的uboot支持从emmc和sd卡启动,如需从emmc启动则须要对uEnv.txt稍做修改:

  将 fatload mmc 0 81000000 改成fatload mmc 1 81000000 2). eZsdk提供的uboot支持从emmc启动的,只是没法识别emmc中文件系统所在的ext4分区,而出厂的BBB默认安装angstrom,而且文件系统被格式化成了ext4分区(eZsdk提供的creatSD.sh是将SD卡分为fat和ext3分区)ip

BBB的emmc出厂默认带angstrom系统分为fat32和ext4,若是不想改动emmc分区则须要在Chipsee的uboot中增长对ext4支持: 在此输入图片描述get

3). 在uboot的am335x_evm.h头文件中使能storage_emmc无关紧要,使能storage_emmc的目的是给fastboot使用。

4.更新emmc   将emmc中默认的angstrom更新为eZsdk5.7,步骤:

    1. 从SD卡启动(Chipsee预装的、或者用Chipsee提供的mksdcard.sh制做的,可是uImage替换掉,支持emmc),进入shell
    1. 格式化emmc的ext4分区

  在shell窗口中执行:   

<!-- lang: shell -->
mkfs.ext3 -j -L “rootfs” /dev/mmcblk1p2

  重启,重启后/dev/mmcblk1p2会被挂载到 /media/mmcblk1p2

    1. 经过wget将eZsdk提供的rootfs.tar.gz(或者是Chipsee的)拷贝到本地:

  在shell窗口中执行:   

<!-- lang: shell -->
wget ftp://zr:zr@192.168.1.101/rootfs.tar.gz
    1. 将文件系统解压到emmc的ext分区:

  

<!-- lang: shell -->
tar -zxvf rootfs.tar.gz -C /media/mmcblk1p2
    1. 将以前编译好的MLO UBOOT以及kernel和uEnv.txt拷贝到 /media/mmcblk1p1中
    1. Chipsee提供的uEnv内容以下:

  

<!-- lang: shell -->
bootargs=console=ttyO1,115200n8 mem=512M root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait rootdelay=1 init=/init ip=off consoleblank=0
<!-- lang: shell -->
bootcmd=mmc rescan ; fatload mmc 0 81000000 uImage ; bootm 81000000
<!-- lang: shell -->
uenvcmd=boot

  将 fatload mmc 0 81000000 改成fatload mmc 1 81000000便可

  • 7)这样emmc更新完毕。
相关文章
相关标签/搜索