PandaBoard ES配置SD卡及烧写
来源:互联网 发布:淘宝怎么发布信息 编辑:程序博客网 时间:2024/05/29 09:29
PandaBoard ES配置SD卡及烧写
从今天开始学习PandaBoard ES这块板子,并跟踪记录整个过程。废话不多说,相信刚刚拿到这块基于omap4460芯片的Pandaboard ES板子的朋友都想先让它跑起来。这也是我拿到这块板子之后的第一想法,下面将记录下我配置SD卡分区,编译BootLoader源码与烧写以及用串口打印的全过程。
1、 配置SD卡
手头有一张2G的SD卡,我配置成了两个分区,boot和rootfs,boot装载xLoader、Uboot和kernel;而rootfs用于装载文件系统。
Step 1,将SD卡置于读卡器中并插入到电脑的USB口中。(环境是VMware中的Ubuntu 10.04)
Step 2,开始之前必须先知道SD卡的device name,使用 sudo fdisk –ls命令将会列出各个磁盘及分区的部分信息,发现2G的SD卡的device name为/dev/sdb。如下图:
Step 3,使用脚本mkcard.sh(本文下方附有脚本原文)对SD卡进行分区,命令格式:sudo ./omap4-mkcard.sh /dev/sdb。运行之后boot分区是FAT32文件系统,rootfs分区是ext3文件系统。
Step 4,把boot分区和rootfs分区挂载到主机系统中:
$ mkdir /tmp/mmc1 $ mkdir /tmp/mmc2 $ sudo mount /dev/sdb1 /tmp/mmc1 $ sudo mount /dev/sdb2 /tmp/mmc2
【更多详细配置可以参考:这里】
2、 下载xLoader与U-boot源码与编译
Step 1,下载linaro的代码:
$ mkdir pandaboard-es$ cd pandaboard-es$ git clone git://git.linaro.org/boot/u-boot-linaro-stable.git$ cd u-boot-linaro-stable$ git checkout -b pandaboard-es origin/Linaro-u-boot-2011.12
Step 2,下载ARM GNU/Linux toolchain,可用友善之臂提供的4.4.3(可从友善之臂官网获得),并对Makefile做如下更改:CROSS_COMPILE=arm-none-linux-gnueabi-
Step 3,配置与编译:
$ make omap4_panda_config
$ make
3、 烧写
$ cp MLO /tmp/mcc1$ cp u-boot.img /tmp/mmc1$ sync
4、 串口显示:
附SD卡分区脚本:
#! /bin/sh# mkcard.sh v0.5# (c) Copyright 2009 Graeme Gregory <dp@xora.org.uk># Licensed under terms of GPLv2## Parts of the procudure base on the work of Denys Dmytriyenko# http://wiki.omap.com/index.php/MMC_Boot_Formatexport LC_ALL=Cif [ $# -ne 1 ]; thenecho "Usage: $0 <drive>"exit 1;fiDRIVE=$1dd if=/dev/zero of=$DRIVE bs=1024 count=1024SIZE=`fdisk -l $DRIVE | grep Disk | grep bytes | awk '{print $5}'`echo DISK SIZE - $SIZE bytesCYLINDERS=`echo $SIZE/255/63/512 | bc`echo CYLINDERS - $CYLINDERS{echo ,9,0x0C,*echo ,,,-} | sfdisk -D -H 255 -S 63 -C $CYLINDERS $DRIVEsleep 1if [ -x `which kpartx` ]; thenkpartx -a ${DRIVE}fi# handle various device names.# note something like fdisk -l /dev/loop0 | egrep -E '^/dev' | cut -d' ' -f1# won't work due to https://bugzilla.redhat.com/show_bug.cgi?id=649572PARTITION1=${DRIVE}1if [ ! -b ${PARTITION1} ]; thenPARTITION1=${DRIVE}p1fiDRIVE_NAME=`basename $DRIVE`DEV_DIR=`dirname $DRIVE`if [ ! -b ${PARTITION1} ]; thenPARTITION1=$DEV_DIR/mapper/${DRIVE_NAME}p1fiPARTITION2=${DRIVE}2if [ ! -b ${PARTITION2} ]; thenPARTITION2=${DRIVE}p2fiif [ ! -b ${PARTITION2} ]; thenPARTITION2=$DEV_DIR/mapper/${DRIVE_NAME}p2fi# now make partitions.if [ -b ${PARTITION1} ]; thenumount ${PARTITION1}mkfs.vfat -F 32 -n "boot" ${PARTITION1}elseecho "Cant find boot partition in /dev"fiif [ -b ${PARITION2} ]; thenumount ${PARTITION2}mke2fs -j -L "rootfs" ${PARTITION2}elseecho "Cant find rootfs partition in /dev"fi
- PandaBoard ES配置SD卡及烧写
- pandaboard ES学习之旅——1 制作烧写SD卡
- PandaBoard烧写指南
- PandaBoard烧写指南
- pandaboard的SD卡分区步骤
- PandaBoard ES uboot howto
- Pandaboard Es debug
- 利用android源码烧写pandaboard
- OMAP4 pandaboard ES开发资料总结
- OMAP4 pandaboard ES开发资料总结
- OMAP4 pandaboard ES开发资料总结
- OMAP4 pandaboard ES开发资料汇总
- pandaboard Es Rev b3 刷android4.2
- OMAP4 pandaboard ES开发资料总结
- Linux Ubuntu环境下对SD卡分区(烧写uboot,kernel,及filesystem)
- sd 卡写数据
- pandaboard ES学习之旅——0 pandaboard ES开发板简介
- 嵌入式开发九:OMAP4 pandaboard ES开发资料总结
- 游戏程序设计之渲染管道
- Java中的容器(一)很重要的基础,很重要的思想
- JAVA设计模式——装饰者模式
- LiteIDE 编写Go的单元测试
- 同时启动2个tomcat
- PandaBoard ES配置SD卡及烧写
- 那些年移动互联网行业曾经走过的弯路
- 树结构做情节结构的问题
- lua学习笔记 0 android嵌入Lua
- Java设计模式——策略模式
- c/c++基础数据类型 关键字
- Android中两种设置全屏的方法!!!
- 观察者模式简单例子(1)
- 联发科芯片趋势