imx6的MFGTools配置、流程、分析

转载地址:https://wenku.baidu.com/view/7012b2a9240c844769eaeef7.html

1、MFG说明

MFGTool工具是freescale专门针对i.MX处理器专门使用的烧写工具,用来将编译好的文件系统和镜像文件烧写到板子上。

 

2、文件结构

以明远智睿MY-I.MX6-MFG-TOOL-V2.3 为例:

文件结构

cfg.ini 指定LIST,ucl2.xml根据此定义,找到对应的操作部分

 

流程:

MFG先把OSFirmware下面的uboot.bin uImage initramfs.cpio.gz.uboot下载到RAM中,运行,再执行具体的烧录过程。

 

Profiles/MX6Q Linux Update/OSFirmware/uImage

打开MfgTool2.exe时,会读取uImage的内容。

如果没有uImage,打开MfgTool2.exe,提示:

 

 

 

 

Profiles/MX6Q Linux Update/OSFirmware/ucl2.xml

MFG的工作流程由配置文件决定,配置文件即:ucl2.xml

明远,LIST name=Android-MYZR-SPI_NOR-EMMC

<CFG>

   <STATE name="BootStrap"  dev="MX6Q" vid="15A2"pid="0054"/>

         <STATEname="Updater"    dev="MSC" vid="066F"pid="37FF"/>

 </CFG>

//全局变量

//ucl2.xml将烧录过程分成两个阶段:BootStrap和Updater

//dev、vid和pid:分别对应两个阶段的设备名、设备对应连接的USB vid和pid号

//针对imx6系列,在 BootStrap阶段,有效的设备名只有MX6Q、MX6D、MX6SL。在Updater阶段,有效的设备名只有MSC

 

 

<LIST name="Android-MYZR-SPI_NOR-EMMC"desc="Choose SPI-NOR and SD Rootfsas media">

//根据 cfg.ini 文件中定义的 name 选择

 

         <CMDstate="BootStrap" type="boot" body="BootStrap"file ="myzr_u-boot.bin">Loading U-boot</CMD>

//下载当前目录的myzr_u-boot.bin 文件到RAM

 

         <CMDstate="BootStrap" type="load" file="uImage" address="0x10800000"

       loadSection="OTH" setSection="OTH"HasFlashHeader="FALSE" >Loading Kernel.</CMD>

//下载当前目录的uImage文件到RAM的0x10800000地址处

 

         <CMDstate="BootStrap" type="load" file="initramfs.cpio.gz.uboot" address="0x10C00000"

       loadSection="OTH" setSection="OTH"HasFlashHeader="FALSE" >Loading Initramfs.</CMD>

//下载当前目录的initramfs.cpio.gz.uboot文件到内存的0x10C00000地址处

 

 

         <CMDstate="BootStrap" type="jump" > Jumping to OS image. </CMD>

//通知内嵌ROM代码跳转到内存中的镜像执行

        

         <!--

         Please use "cat /proc/mtd"to check the right partitions for NAND,mtd0 and mtd1 are for SPI-NOR; mtd2 -mtd6 are for NAND      -->

<!--  <CMDstate="Updater" type="push" body="mknodclass/mtd,mtd0,/dev/mtd0"/>

//类型是push,此句在目标机上执行  创建设备节点

         <CMDstate="Updater" type="push" body="mknodblock,mtdblock0,/dev/mtdblock0,block"/> -->

//类型是push,此句在目标机上执行,创建设备节点

 

         <CMDstate="Updater" type="push" body="$ flash_erase /dev/mtd0 0 0">Erasing Boot partition</CMD>

//擦除信息

 

         <CMDstate="Updater" type="push" body="send"file="files/android/u-boot.bin">Sending U-Boot</CMD>

//将files/android/u-boot.bin文件发送到目标机

 

         <CMDstate="Updater" type="push" body="$ dd if=$FILEof=/dev/mtd0 bs=512">writeU-Boot to SPI-NOR</CMD>

//烧写  将$FILE下载到/dev/mtd0位置,bs=512,指定读/写的blocks大小为512bytes

 

         <CMDstate="Updater" type="push" body="send"file="mksdcard-android.sh.tar">Sending partition shell</CMD>

//将当前目录的mksdcard-android.sh.tar 分区脚本文件,发送到目标机

 

         <CMDstate="Updater" type="push" body="$ tar xf $FILE "> Partitioning...</CMD>

//解压脚本文件

 

         <CMDstate="Updater" type="push" body="$ shmksdcard-android.sh /dev/mmcblk0"> Partitioning...</CMD>

//执行脚本文件

 

         <CMDstate="Updater" type="push" body="$ ls -l /dev/mmc*">Formatting sdpartition</CMD>

 

 

//从下面开始烧录内核、文件系统

         <CMDstate="Updater" type="push" body="send"file="files/android/boot.img">Sending kernel uImage</CMD>

//将 files/android/boot.img 发送到目标机

 

         <CMDstate="Updater" type="push" body="$ dd if=$FILEof=/dev/mmcblk0p1">writeboot.img</CMD>

 

         <CMDstate="Updater" type="push" body="frf">flush the memory.</CMD>

//刷新,等待数据传送完成

 

         <CMDstate="Updater" type="push" body="$ mkfs.ext4 -L data/dev/mmcblk0p4">Formattingsd partition</CMD>

 

         <CMDstate="Updater" type="push" body="$ mkfs.ext4 -Lsystem /dev/mmcblk0p5">Formattingsystem partition</CMD>

 

         <CMDstate="Updater" type="push" body="$ mkfs.ext4 -L cache-O^extent /dev/mmcblk0p6">Formatting cache partition</CMD>

 

         <CMDstate="Updater" type="push" body="$ mkfs.ext4 -Lvender /dev/mmcblk0p7">Formattingdata partition</CMD>

 

         <CMDstate="Updater" type="push" body="frf">flush the memory.</CMD>

 

         <CMDstate="Updater" type="push" body="$ mkfs.ext4/dev/mmcblk0p8">Formattingmisc partition</CMD>

 

         <CMDstate="Updater" type="push" body="pipe ddof=/dev/mmcblk0p5 bs=512" file="files/android/system.img">Sending and writting system.img</CMD>

//利用pipe 传输大数据

 

         <CMDstate="Updater" type="push" body="frf">flush the memory.</CMD>

//执行flush刷新操作,等到数据传输完毕

 

         <!-- Write userdata.img isoptional, for some customer this is needed, but it's optional. -->

         <!-- Also, userdata.img willhave android unit test, you can use this to do some auto test. -->

<!--  <CMDstate="Updater" type="push" onError="ignore"body="pipe dd of=/dev/mmcblk0p7"file="file/android/userdate.img"> Sending userdata.img(optional)</CMD>

         <CMDstate="Updater" type="push" body="frf">flushthe memory.</CMD> -->//注释掉

 

         <CMDstate="Updater" type="push" body="pipe ddof=/dev/mmcblk0p2 bs=512" file="files/android/recovery.img">Sending and writting recovery.img</CMD>

 

         <CMDstate="Updater" type="push" body="frf">Finishing rootfs write</CMD>

 

         <CMDstate="Updater" type="push" body="$ echo UpdateComplete!">Done</CMD>

//显示执行完毕信息

</LIST>

官方,LIST name= Android-SabreSD-eMMC

 

<LIST name="Android-SabreSD-eMMC" desc="Choose eMMC android asmedia">

 <!-- Android Profile: -->

         <CMDstate="BootStrap" type="boot" body="BootStrap"file ="u-boot.bin" >Loading U-boot</CMD>

         <CMDstate="BootStrap" type="load" file="uImage"address="0x10800000"

       loadSection="OTH" setSection="OTH"HasFlashHeader="FALSE" >Loading Kernel.</CMD>

   <CMD state="BootStrap" type="load"file="initramfs.cpio.gz.uboot" address="0x10C00000"

       loadSection="OTH" setSection="OTH"HasFlashHeader="FALSE" >Loading Initramfs.</CMD>

   <CMD state="BootStrap" type="jump" > Jumpingto OS image. </CMD>

 

         <CMDstate="Updater" type="push" body="$ dd if=/dev/zeroof=/dev/mmcblk0 bs=512 seek=1536 count=16">clean up u-boot parameter</CMD>

//将/dev/zero下载到/dev/mmcblk0 从/dev/mmcblk0开始的位置,跳过1536个blocks,复制16个blocks

 

         <CMDstate="Updater" type="push" body="$ echo 1 >/sys/devices/platform/sdhci-esdhc-imx.3/mmc_host/mmc0/mmc0:0001/boot_config">accessboot partition 1</CMD>

         <CMDstate="Updater" type="push" body="send"file="files/android/u-boot.bin">Sending U-Boot</CMD>

         <CMDstate="Updater" type="push" body="$ dd if=$FILEof=/dev/mmcblk0 bs=512 seek=2 skip=2">write U-Boot to sdcard</CMD>

 

         <CMDstate="Updater" type="push" body="$ echo 8 >/sys/devices/platform/sdhci-esdhc-imx.3/mmc_host/mmc0/mmc0:0001/boot_config">accessuser partition and enable boot partion 1 to boot</CMD>

         <CMDstate="Updater" type="push" body="send" file="mksdcard-android.sh.tar">Sendingpartition shell</CMD>

         <CMDstate="Updater" type="push" body="$ tar xf $FILE"> Partitioning...</CMD>

         <CMDstate="Updater" type="push" body="$ shmksdcard-android.sh /dev/mmcblk0"> Partitioning...</CMD>

 

         <CMDstate="Updater" type="push" body="$ ls -l /dev/mmc*">Formatting sd partition</CMD>

 

         <CMDstate="Updater" type="push" body="send"file="files/android/boot.img">Sending kernel uImage</CMD>

         <CMDstate="Updater" type="push" body="$ dd if=$FILEof=/dev/mmcblk0p1">write boot.img</CMD>

         <CMDstate="Updater" type="push" body="frf">flushthe memory.</CMD>

 

         <CMDstate="Updater" type="push" body="$ mkfs.ext4 -b 4096-m 0 /dev/mmcblk0p4">Formatting data partition</CMD>

         <CMDstate="Updater" type="push" body="send"file="mk-encryptable-data-android.sh.tar">Sending data partitionshell</CMD>

         <CMDstate="Updater" type="push" body="$ tar xf $FILE">Extracting data partition shell</CMD>

         <CMDstate="Updater" type="push" body="$ shmk-encryptable-data-android.sh /dev/mmcblk0 /dev/mmcblk0p4">Making dataencryptable</CMD>

 

         <CMDstate="Updater" type="push" body="$ mkfs.ext4/dev/mmcblk0p5">Formatting system partition</CMD>

         <CMDstate="Updater" type="push" body="$ mkfs.ext4/dev/mmcblk0p6">Formatting cache partition</CMD>

         <CMDstate="Updater" type="push" body="frf">flushthe memory.</CMD>

         <CMDstate="Updater" type="push" body="$ mkfs.ext4/dev/mmcblk0p7">Formatting device partition</CMD>

         <CMDstate="Updater" type="push" body="pipe ddof=/dev/mmcblk0p5 bs=512" file="files/android/system.img">Sendingand writting system.img</CMD>

         <CMDstate="Updater" type="push" body="frf">flushthe memory.</CMD>

         <!--Write userdata.img is optional, for some customer this is needed, but it'soptional. -->

         <!--Also, userdata.img will have android unit test, you can use this to do someauto test. -->

<!--  <CMDstate="Updater" type="push" onError="ignore"body="pipe dd of=/dev/mmcblk0p7"file="file/android/userdate.img"> Sending userdata.img(optional)</CMD>

         <CMDstate="Updater" type="push" body="frf">flushthe memory.</CMD>  -->

         <CMDstate="Updater" type="push" body="pipe ddof=/dev/mmcblk0p2 bs=512"file="files/android/recovery.img">Sending and writtingrecovery.img</CMD>

 

         <CMDstate="Updater" type="push"body="frf">Finishing rootfs write</CMD>

 

         <CMDstate="Updater" type="push" body="$ echo UpdateComplete!">Done</CMD>

</LIST>

 

Profiles/MX6Q Linux Update/OS Firmware/mksdcard-android.sh.tar

//SD卡分区脚本

 

#!/bin/bash

//定义是脚本文件

 

# partition size in MB

//以 MB 为单位,分区

 

BOOTLOAD_RESERVE=8

BOOT_ROM_SIZE=8

SYSTEM_ROM_SIZE=512

CACHE_SIZE=512

RECOVERY_ROM_SIZE=8

VENDER_SIZE=8

MISC_SIZE=8

 

help() {

 

bn=`basename $0`

cat << EOF

usage $bn <option> device_node

 

options:

  -h                                      displaysthis help message

  -s                             only get partitionsize

  -np                                 notpartition.

  -f                                     flashandroid image.

EOF

 

}

 

# check the if root?

userid=`id -u`

if [ $userid -ne "0" ]; then

         echo"you're not root?"

         exit

fi

 

 

# parse command line

moreoptions=1

node="na"

cal_only=0

flash_images=0

not_partition=0

not_format_fs=0

while [ "$moreoptions" = 1 -a $#-gt 0 ]; do

         case$1 in

             -h) help; exit ;;

             -s) cal_only=1 ;;

             -f) flash_images=1 ;;

             -np) not_partition=1 ;;

             -nf) not_format_fs=1 ;;

             *) moreoptions=0; node=$1 ;;

         esac

         ["$moreoptions" = 0 ] && [ $# -gt 1 ] && help&& exit

         ["$moreoptions" = 1 ] && shift

done

 

if [ ! -e ${node} ]; then

         help

         exit

fi

 

 

# call sfdisk to create partition table

# get total card size

seprate=40

total_size=`sfdisk -s ${node}`

total_size=`expr ${total_size} / 1024`

boot_rom_sizeb=`expr ${BOOT_ROM_SIZE} +${BOOTLOAD_RESERVE}`

extend_size=`expr ${SYSTEM_ROM_SIZE} +${CACHE_SIZE} + ${VENDER_SIZE} + ${MISC_SIZE} + ${seprate}`

data_size=`expr ${total_size} -${boot_rom_sizeb} - ${RECOVERY_ROM_SIZE} - ${extend_size} + ${seprate}`

 

# create partitions

if [ "${cal_only}" -eq"1" ]; then

cat << EOF

BOOT  : ${boot_rom_sizeb}MB

RECOVERY: ${RECOVERY_ROM_SIZE}MB

SYSTEM : ${SYSTEM_ROM_SIZE}MB

CACHE : ${CACHE_SIZE}MB

DATA  : ${data_size}MB

MISC  : ${MISC_SIZE}MB

EOF

exit

fi

 

# destroy the partition table

dd if=/dev/zero of=${node} bs=1024 count=1

 

sfdisk --force -uM ${node} << EOF

,${boot_rom_sizeb},83

,${RECOVERY_ROM_SIZE},83

,${extend_size},5

,${data_size},83

,${SYSTEM_ROM_SIZE},83

,${CACHE_SIZE},83

,${VENDER_SIZE},83

,${MISC_SIZE},83

EOF

 

# adjust the partition reserve forbootloader.

# if you don't put the uboot on samedevice, you can remove the BOOTLOADER_ERSERVE

# to have 8M space.

# the minimal sylinder for some card is 4M,maybe some was 8M

# just 8M for some big eMMC 's sylinder

sfdisk --force -uM ${node} -N1 << EOF

${BOOTLOAD_RESERVE},${BOOT_ROM_SIZE},83

EOF

 

# For MFGTool Notes:

# MFGTool use mksdcard-android.tar storethis script

# if you want change it.

# do following:

#  tar xf mksdcard-android.sh.tar

#  vi mksdcard-android.sh

#   [edit want you want to change ]

#  rm mksdcard-android.sh.tar; tar cf mksdcard-android.sh.tarmksdcard-android.sh

 

Document/ V2/ Manufacturing Tool V2 UCL User Guide

Overview

 

Manufacturing (Mfg) tool provides aflexible way for users to set their own operations. An xml script file is usedto configure the users operation.

可以灵活的自定义操作

An xml file typically consists of a numberof tasks which can be executed by running the manufacturing tool just once.

大量任务   开始运行工具时,执行

UTP mode operation

Global Configuration   全局配置

Mfg tool uses global configuration torecognize which device the user wants to flash among different USB devicesconnected to the PC.

选择设备  与PC相连的USB

Let’s explain it by an example.  下面为例,说明

 <CFG>

<STATE name="BootStrap"dev="MX6Q" vid="15A2" pid="0054"/>

<STATEname="Updater"  dev="MSC" vid="066F" pid="37FF"/>

 </CFG>

Global configuration is contained betweenparameter <CFG> and</CFG>.

定义的全局配置参数

<STATE name="BootStrap"dev="MX6Q" vid="15A2" pid="0054"/> indicatesthe first phase of the burning process, the phase name is “BootStrap”, and adevice named “MX6Q” should be connected with the USB pid “0054” and vid “15A2”.For i.MX 6 serial, in thephase “BootStrap”, the valid strings for dev are: “MX6Q”, “MX6D”, “MX6SL”; inthe phase “Updater”, the valid string for dev is: “MSC”.

烧录过程的第一步

BootStrap

 

<STATE name="Updater"   dev="MSC" vid="066F"pid="37FF"/> indicates the second phase of the burning process,the phase name is “Updater”, and a device named “MSC” should be connected withthe USB pid “37FF” and vid “066F”.

 

Update Command List

The tool uses Update Command List (UCL) to specify all the usertasks. The UCL contains a distinct list for each use case. Each list contains aset of command elements with attributes for the command type, body, andpayload. The command element text provides a user interface message for thecurrent operation.

Each UCL begins from <LIST name=”xx”,desc=”xxx”> while ending with </LIST>, the name of which can bespecified by users. Parameter “desc” is used for comment purpose.

There are two types of commands: hostspecific commands and firmware specific commands. Host specific commands areparsed and executed by host tool while firmware specific commands are parsedand executed by firmware runs on targeted device.

Host Specific Commands

The example below shows a typical command.

state”indicates the phase of the command executed and 命令执行的阶段

 “type” specifies the type of a command.   命令的类型

body”is a parameter of the command. 命令的参数

file” isanother parameter. 命令参数

 “Loading Kernel” is a description of the command. 当前命令的描述

<CMD state="BootStrap"type="load" file="uImage" address="0x10800000"

       loadSection="OTH" setSection="OTH"HasFlashHeader="FALSE" >Loading Kernel.</CMD>

 

 

Command type

Body

Other parameters

Description

load

 

file

Address

loadSection

setSection

HasFlashHeader

CodeOffset

Download an image to RAM. It is strongly recommended to follow the example provided in release package since it involves ROM code parameters which may not be easy to understand.

file: specify the path and name of the image file.

说明文件的路径、名称

Parameter “address” specifies the RAM address where the image is located.

文件在RAM的地址

loadSection: a parameter used by ROM code, should be set to “OTH”

ROM代码所用的参数

setSection: a parameter used by ROM code, should be set to “OTH” if there are other images to be loaded; set to “APP” if the last image is loaded.

还有其他文件 OTH

最后一个文件 APP

 

HasFlashHeader: set TRUE if the image contains a flash header, or set to FALSE.

包含flash header,设成TRUE

否则,设成FALSE

 

CodeOffset: the address offset of first executed instruct within the image.

文件中执行的第一条指令的偏移地址

 

The command is only for Bulk-IO mode i.MX device except i.MX50 HID mode device.

jump

 

 

Notify ROM code to jump to the RAM image to run. The command must be followed after a load command in which setSection value is set to “APP”.

 

 

The command is only for Bulk-IO mode i.MX device except i.MX50 HID mode device.

boot

Recovery

File

if

Download an image to RAM.

Firmware Specific Commands

If a command is typed as “push”, which means the command isparsed and executed by the targeted device instead of host,   push  是目标机执行的命令

the only thing host has to do is to sendthe command to the targeted device.

主机只是将命令发给目标机

The commands actually executed by OS imageare downloaded in Command lists. As aresult, each OS has its own commands.

Command

Arguments

Description

?

None

Request to send the device identity information in XML form

!

integer

Initiate the reboot depending on argument. 3 means reboot while
other values will force a shutdown.

$

string

Execute shell command
Example:
$ echo 'hello from utp'

flush

None

Wait for all data transfer to be finished and processed.

ffs

None

Partition the SD card and flash the boot stream to it.

mknod

device_class,
device_item,node_t
o_create, type

Create the device node by parsing sysfs entry.创建设备节点
Example:
mknod class/mtd,mtd0,/dev/mtd0

read

string

Read the file specified by parameter and send it to the host. If
there is no such file, the appropriate status will be returned.

send

None

Receive the file from the host. Subsequent shell commands can
refer to the file received as $FILE.
Example:
<CMD type="push" body="send" file="stmp378x_ta1_linux.sb/>
<CMD type=”push” body=”$ kobs-ng init -d $FILE" />

selftest

None

Perform self-diagnostic; returns either pass or appropriate
status. Implemented as empty function in current release.

save

string

Save the file received by command “send” to the file specified
as parameter.

pipe

string
require file attribute

Execute shell command and read data from stdio pipe IN. mfg will send file to stdio pipe OUT.
It is useful for big data transfer, more than physical memory size 
<CMD type="push" body="pipe tar -xv -C /mnt/ubi0" file="files/rootfs.tar"/>
<CMD type="push" body="flush">Finish Flashing NAND</CMD>

Note: The above two commands must be combined to use

Recommend: Please add below command prior to pipe command to free some memory.

<CMD type="push" body="$ echo 3 > /proc/sys/vm/drop_caches">release memory</CMD>

wff

NONE

Deprecate
Prepare Write firmware to flash.

wfs

NONE

Deprecate
Prepare Write firmware to SD CARD.

ffs

NONE

Write firmware to SD.

wrf

NONE, 
require file attribute

ubiformat nand with ubi image.
Example
<CMD type="push" body="wrf" file="files/rootfs.tar"/>
<CMD type="push" body="frf">Finish Flashing NAND</CMD>

wrs

number of sd partition
require file attribute

Write rootfs image to sd card.
Example
<CMD type="push" body="wrs2" file="files/rootfs.ext2"/>
<CMD type="push" body="frs">Finish Flashing NAND</CMD>

You can also use
<CMD type="push" body="pipe dd of=/dev/mmcblkp2 bs=1K" file="files/rootfs.ext2"/?
<CMD type="push" body="frs">Finish Flashing NAND</CMD>

frf

NONE

same as flush

frs

NONE

same as flush

OTP Bits Programming

 

Command below shows how to write a file toa disk:

 <CMD state="Updater" type="push" body="$ ls/sys/fsl_otp ">Showing HW_OCOTP fuse bank</CMD>

 <CMD state="Updater" type="push" body="$echo 0x11223344 > /sys/fsl_otp/HW_OCOTP_MAC0">write 0x11223344 toHW_OCOTP_MAC0 fuse bank</CMD>

 <CMD state="Updater" type="push" body="$ cat/sys/fsl_otp/HW_OCOTP_MAC0">Read value from HW_OCOTP_MAC0 fusebank</CMD>

The fuse bank name (ex: HW_OCOTP_MAC0)should be set as needed.

 

应用MGFTool下载时的打印信息

 

 

 

 

//<CMDstate="BootStrap" type="boot" body="BootStrap"file ="myzr_u-boot.bin" >Loading U-boot</CMD>

//<CMDstate="BootStrap" type="load" file="uImage"address="0x10800000"

        loadSection="OTH"setSection="OTH" HasFlashHeader="FALSE" >LoadingKernel.</CMD>

//<CMDstate="BootStrap" type="load"file="initramfs.cpio.gz.uboot" address="0x10C00000"

        loadSection="OTH"setSection="OTH" HasFlashHeader="FALSE" >LoadingInitramfs.</CMD>

//<CMDstate="BootStrap" type="jump" > Jumping to OS image.</CMD>

//显示“Jumping to OS image”,开始打印:

U-Boot 2009.08-dirty (Dec 05 2013 -15:40:26)

 

CPU: Freescale i.MX6 family TO1.2 at 792MHz

Thermal sensor with ratio = 176

Temperature:   28 C, calibration data 0x5584d169

mx6q pll1: 792MHz

mx6q pll2: 528MHz

mx6q pll3: 480MHz

mx6q pll8: 50MHz

ipg clock     : 66000000Hz

ipg per clock : 66000000Hz

uart clock    : 80000000Hz

cspi clock    : 60000000Hz

ahb clock     : 132000000Hz

axi clock  : 264000000Hz

emi_slow clock: 132000000Hz

ddr clock     : 528000000Hz

usdhc1 clock  : 198000000Hz

usdhc2 clock  : 198000000Hz

usdhc3 clock  : 198000000Hz

usdhc4 clock  : 198000000Hz

nfc clock     : 24000000Hz

Board: i.MX6Q-SABRESD: unknown-board Board:0x63012 [POR ]

Boot Device: SPI NOR

I2C:  ready

DRAM:  1 GB

MMC:  FSL_USDHC: 0,FSL_USDHC: 1,FSL_USDHC: 2

Using default environment

 

In:   serial

Out:  serial

Err:  serial

Net:  got MAC address from IIM: 00:00:00:00:00:00

FEC0 [PRIME]

Hit any key to stop autoboot:  0

## Booting kernel from Legacy Image at 10800000 ...

  Image Name:   Linux-3.0.35-06116-g2d14546-dirt

  Image Type:   ARM Linux KernelImage (uncompressed)

  Data Size:    3182360 Bytes =  3 MB

  Load Address: 10008000

  Entry Point:  10008000

  Verifying Checksum ... OK

## Loading init Ramdisk from Legacy Imageat 10c00000 ...

  Image Name:   uboot initramfsrootfs

  Image Type:   ARM Linux RAMDiskImage (gzip compressed)

  Data Size:    4537478 Bytes =  4.3 MB

  Load Address: 00000000

  Entry Point:  00000000

  Verifying Checksum ... OK

  Loading Kernel Image ... OK

OK

 

Starting kernel ...

 

Uncompressing Linux... done, booting thekernel.

Linux version 3.0.35-06116-g2d14546-dirty(gq@gq) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #2 SMP PREEMPTThu Sep 4 13:36:48 CST 2014

CPU: ARMv7 Processor [412fc09a] revision 10(ARMv7), cr=10c53c7d

CPU: VIPT nonaliasing data cache, VIPTaliasing instruction cache

Machine: Freescale i.MX 6Quad/DualLite/SoloSabre-SD Board

Memory policy: ECC disabled, Data cachewritealloc

CPU identified as i.MX6Q, silicon rev 1.2

PERCPU: Embedded 7 pages/cpu @8185b000s5184 r8192 d15296 u32768

Built 1 zonelists in Zone order, mobilitygrouping on.  Total pages: 260096

Kernel command line: console=ttymxc0,115200rdinit=/linuxrc enable_wait_mode=off

PID hash table entries: 4096 (order: 2,16384 bytes)

Dentry cache hash table entries: 131072(order: 7, 524288 bytes)

Inode-cache hash table entries: 65536(order: 6, 262144 bytes)

Memory: 1024MB = 1024MB total

Memory: 1028664k/1028664k available, 19912kreserved, 0K highmem

Virtual kernel memory layout:

   vector  : 0xffff0000 -0xffff1000   (   4 kB)

   fixmap  : 0xfff00000 -0xfffe0000   ( 896 kB)

   DMA     : 0xfbe00000 -0xffe00000   (  64 MB)

   vmalloc : 0xc0800000 - 0xf2000000  ( 792 MB)

   lowmem  : 0x80000000 -0xc0000000   (1024 MB)

   pkmap   : 0x7fe00000 -0x80000000   (   2 MB)

   modules : 0x7f000000 - 0x7fe00000  (  14 MB)

     .init : 0x80008000 - 0x8003a000  ( 200 kB)

     .text : 0x8003a000 - 0x805b676c  (5618 kB)

     .data : 0x805b8000 - 0x80606280  ( 313 kB)

       .bss : 0x806062a4 - 0x806316f0   ( 174 kB)

SLUB: Genslabs=13, HWalign=32, Order=0-3,MinObjects=0, CPUs=4, Nodes=1

Preemptible hierarchical RCUimplementation.

NR_IRQS:624

MXC GPIO hardware

sched_clock: 32 bits at 3000kHz, resolution333ns, wraps every 1431655ms

arm_max_freq=1GHz

MXC_Early serial console at MMIO 0x2020000(options '115200')

bootconsole [ttymxc0] enabled

Console: colour dummy device 80x30

Calibrating delay loop... 1581.05 BogoMIPS(lpj=7905280)

pid_max: default: 32768 minimum: 301

Mount-cache hash table entries: 512

CPU: Testing write buffer coherency: ok

hw perfevents: enabled with ARMv7 Cortex-A9PMU driver, 7 counters available

CPU1: Booted secondary processor

CPU2: Booted secondary processor

CPU3: Booted secondary processor

Brought up 4 CPUs

SMP: Total of 4 processors activated(6324.22 BogoMIPS).

print_constraints: dummy:

NET: Registered protocol family 16

print_constraints: vddpu: 725 <-->1300 mV at 700 mV fast normal

print_constraints: vddcore: 725 <-->1300 mV at 1150 mV fast normal

print_constraints: vddsoc: 725 <-->1300 mV at 1200 mV fast normal

print_constraints: vdd2p5: 2000 <-->2775 mV at 2400 mV fast normal

print_constraints: vdd1p1: 800 <-->1400 mV at 1100 mV fast normal

print_constraints: vdd3p0: 2625 <-->3400 mV at 3000 mV fast normal

No AHCI save PWR: PDDQ enabled

hw-breakpoint: found 6 breakpoint and 1watchpoint registers.

hw-breakpoint: 1 breakpoint(s) reserved forwatchpoint single-step.

hw-breakpoint: maximum watchpoint size is 4bytes.

L310 cache controller enabled

l2x0: 16 ways, CACHE_ID 0x410000c7,AUX_CTRL 0x02070000, Cache size: 1048576 B

bio: create slab <bio-0> at 0

mxs-dma mxs-dma-apbh: initialized

print_constraints: SPKVDD: 4200 mV

print_constraints: 1_8V: 1800 mV

print_constraints: MICVDD: 3300 mV

print_constraints: vmmc: 3300 mV

SCSI subsystem initialized

spi_imx imx6q-ecspi.0: probed

22usbcore: registered new interface driverusbfs

22usbcore: registered new interface driverhub

11usbcore: registered new device driver usb

imx-ipuv3 imx-ipuv3.0: IPU DMFC NORMALmode: 1(0~1), 5B(4,5), 5F(6,7)

imx-ipuv3 imx-ipuv3.1: IPU DMFC NORMALmode: 1(0~1), 5B(4,5), 5F(6,7)

Advanced Linux Sound Architecture DriverVersion 1.0.24.

Bluetooth: Core ver 2.16

NET: Registered protocol family 31

Bluetooth: HCI device and connectionmanager initialized

Bluetooth: HCI socket layer initialized

Bluetooth: L2CAP socket layer initialized

Bluetooth: SCO socket layer initialized

i2c-core: driver [max17135] using legacysuspend method

i2c-core: driver [max17135] using legacyresume method

Switching to clocksource mxc_timer1

Clockevents: could not switch to one-shotmode:

Clockevents: could not switch to one-shotmode:

Clockevents: could not switch to one-shotmode: dummy_timer is not functional.

Clockevents: could not switch to one-shotmode:

Could not switch to high resolution mode onCPU 2

 dummy_timer is not functional.

 dummy_timer is not functional.

Could not switch to high resolution mode onCPU 1

Could not switch to high resolution mode onCPU 0

NET: Registered protocol family 2

IP route cache hash table entries: 32768(order: 5, 131072 bytes)

TCP established hash table entries: 131072(order: 8, 1048576 bytes)

TCP bind hash table entries: 65536 (order:7, 786432 bytes)

TCP: Hash tables configured (established131072 bind 65536)

TCP reno registered

UDP hash table entries: 512 (order: 2,16384 bytes)

UDP-Lite hash table entries: 512 (order: 2,16384 bytes)

NET: Registered protocol family 1

RPC: Registered named UNIX socket transportmodule.

RPC: Registered udp transport module.

RPC: Registered tcp transport module.

RPC: Registered tcp NFSv4.1 backchanneltransport module.

Unpacking initramfs...

 dummy_timer is not functional.

Could not switch to high resolution mode onCPU 3

Freeing initrd memory: 4428K

PMU: registered new PMU device of type 0

Static Power Management for Freescale i.MX6

wait mode is disabled for i.MX6

cpaddr = c0880000suspend_iram_base=c08f8000

PM driver module loaded

IMX usb wakeup probe

cpu regulator mode:ldo_enable

i.MXC CPU frequency driver

JFFS2 version 2.2. (NAND) 漏 2001-2006 Red Hat, Inc.

msgmni has been set to 2017

cryptodev: driver loaded.

io scheduler noop registered

io scheduler deadline registered

io scheduler cfq registered (default)

mxc_sdc_fb mxc_sdc_fb.0: register mxcdisplay driver ldb

_regulator_get: get() with no identifier

imx-ipuv3 imx-ipuv3.0: IPU DMFC DP HIGHRESOLUTION: 1(0,1), 5B(2~5), 5F(6,7)

Console: switching to colour frame bufferdevice 128x37

mxc_sdc_fb mxc_sdc_fb.1: register mxcdisplay driver hdmi

mxc_hdmi mxc_hdmi: Detected HDMI controller0x13:0xa:0xa0:0xc1

fbcvt: 1920x1080@60: CVT Name - 2.073M9

------------[ cut here ]------------

WARNING: at mm/page_alloc.c:2121__alloc_pages_nodemask+0x150/0x64c()

Modules linked in:

[<800469f0>](unwind_backtrace+0x0/0xf8) from [<800731b8>](warn_slowpath_common+0x4c/0x64)

[<800731b8>](warn_slowpath_common+0x4c/0x64) from [<800731ec>](warn_slowpath_null+0x1c/0x24)

[<800731ec>](warn_slowpath_null+0x1c/0x24) from [<800bf5b4>](__alloc_pages_nodemask+0x150/0x64c)

[<800bf5b4>] (__alloc_pages_nodemask+0x150/0x64c)from [<8004994c>] (__dma_alloc+0xa4/0x324)

[<8004994c>] (__dma_alloc+0xa4/0x324)from [<80049c44>] (dma_alloc_writecombine+0x24/0x2c)

[<80049c44>](dma_alloc_writecombine+0x24/0x2c) from [<80248fe4>](mxcfb_set_par+0x17c/0x74c)

[<80248fe4>](mxcfb_set_par+0x17c/0x74c) from [<8023513c>] (fb_set_var+0x124/0x290)

[<8023513c>] (fb_set_var+0x124/0x290)from [<80248aa8>] (mxcfb_register+0x328/0x428)

[<80248aa8>](mxcfb_register+0x328/0x428) from [<8024b3bc>] (mxcfb_probe+0x428/0xa74)

[<8024b3bc>](mxcfb_probe+0x428/0xa74) from [<80279214>](platform_drv_probe+0x18/0x1c)

[<80279214>](platform_drv_probe+0x18/0x1c) from [<80278008>](driver_probe_device+0x90/0x1ac)

[<80278008>](driver_probe_device+0x90/0x1ac) from [<802781b0>] (__driver_attach+0x8c/0x90)

[<802781b0>](__driver_attach+0x8c/0x90) from [<80277228>](bus_for_each_dev+0x5c/0x88)

[<80277228>](bus_for_each_dev+0x5c/0x88) from [<802779ec>](bus_add_driver+0x17c/0x244)

[<802779ec>](bus_add_driver+0x17c/0x244) from [<8027865c>] (driver_register+0x78/0x13c)

[<8027865c>](driver_register+0x78/0x13c) from [<8003a604>](do_one_initcall+0xfc/0x164)

[<8003a604>](do_one_initcall+0xfc/0x164) from [<800089e0>] (kernel_init+0x98/0x13c)

[<800089e0>] (kernel_init+0x98/0x13c)from [<80040a58>] (kernel_thread_exit+0x0/0x8)

---[ end trace 4f030c26e9e10913 ]---

mxc_sdc_fb mxc_sdc_fb.1: Unable to allocateframebuffer memory

detected fb_set_par error, error code: -12

mxc_sdc_fb mxc_sdc_fb.1: Error fb_set_varret:-12

mxc_sdc_fb: probe of mxc_sdc_fb.1 failedwith error -12

mxc_sdc_fb mxc_sdc_fb.2: register mxcdisplay driver ldb

imx-sdma imx-sdma: loaded firmware 1.1

imx-sdma imx-sdma: initialized

Serial: IMX driver

imx-uart.0: ttymxc0 at MMIO 0x2020000 (irq= 58) is a IMX

console [ttymxc0] enabled, bootconsoledisabled

console [ttymxc0] enabled, bootconsoledisabled

imx-uart.1: ttymxc1 at MMIO 0x21e8000 (irq= 59) is a IMX

imx-uart.2: ttymxc2 at MMIO 0x21ec000 (irq= 60) is a IMX

imx-uart.3: ttymxc3 at MMIO 0x21f0000 (irq= 61) is a IMX

imx-uart.4: ttymxc4 at MMIO 0x21f4000 (irq= 62) is a IMX

loop: module loaded

m25p80 spi0.0: sst25vf016b (2048 Kbytes)

Creating2 MTD partitions on "m25p80":

0x000000000000-0x000000180000: "bootloader"

0x000000180000-0x000000200000: "kernel"

GPMI NAND driver registered. (IMX)

vcan: Virtual CAN interface driver

FEC Ethernet Driver

fec_enet_mii_bus: probed

Initializing USB Mass Storage driver...

22usbcore: registered new interface driverusb-storage

USB Mass Storage support registered.

ARC USBOTG Device Controller driver (1 August2005)

add wake up source irq 75

g_file_storage gadget: controller'fsl-usb2-udc' not recognized

check_parameters:UTP settings are in placenow, overriding defaults

g_file_storage gadget: No serial-numberstring provided!

g_file_storage gadget: File-backed StorageGadget, version: 1 September 2010

g_file_storage gadget: Number of LUNs=1

fsl-usb2-udc: bind to driver g_file_storage

mousedev: PS/2 mouse device common for allmice

egalax_ts 1-0004: egalax_ts: failed to readfirmware version

egalax_ts: probe of 1-0004 failed witherror -5

egalax_ts 2-0004: egalax_ts: failed to readfirmware version

egalax_ts: probe of 2-0004 failed witherror -5

input: ft5x0x_ts as/devices/platform/imx-i2c.2/i2c-2/2-0038/input/input0

FT5X06 register succeed

using rtc device, snvs_rtc, for alarms

snvs_rtc snvs_rtc.0: rtc core: registeredsnvs_rtc as rtc0

i2c /dev entries driver

Linux video capture interface: v2.00

mxc_v4l2_output mxc_v4l2_output.0: V4L2device registered as video16

mxc_v4l2_output mxc_v4l2_output.0: V4L2 deviceregistered as video17

mxc_v4l2_output mxc_v4l2_output.0: V4L2device registered as video18

imx2-wdt imx2-wdt.0: IMX2+ Watchdog Timerenabled. timeout=60s (nowayout=1)

Bluetooth: Virtual HCI driver ver 1.3

Bluetooth: Generic Bluetooth USB driver ver0.6

22usbcore: registered new interface driverbtusb

sdhci: Secure Digital Host ControllerInterface driver

sdhci: Copyright(c) Pierre Ossman

mmc0: SDHCI controller on platform[sdhci-esdhc-imx.3] using DMA

mmc1: SDHCI controller on platform[sdhci-esdhc-imx.1] using DMA

mmc2: SDHCI controller on platform[sdhci-esdhc-imx.2] using DMA

mxc_vdoa mxc_vdoa: i.MX Video Data OrderAdapter(VDOA) driver probed

VPU initialized

mxc_asrc registered

22usbcore: registered new interface driverusbhid

usbhid: USB HID core driver

Cirrus Logic CS42888 ALSA SoC Codec Driver

i2c-core: driver [cs42888] using legacysuspend method

i2c-core: driver [cs42888] using legacyresume method

imx_3stack asoc driver

ALSA device list:

  Nosoundcards found.

TCP cubic registered

NET: Registered protocol family 17

can: controller area network core (rev20090105 abi 8)

NET: Registered protocol family 29

can: raw protocol (rev 20090105)

can: broadcast manager protocol (rev20090105 t)

Bluetooth: RFCOMM TTY layer initialized

Bluetooth: RFCOMM socket layer initialized

Bluetooth: RFCOMM ver 1.11

Bluetooth: BNEP (Ethernet Emulation) ver1.3

Bluetooth: BNEP filters: protocol multicast

Bluetooth: HIDP (Human Interface Emulation)ver 1.2

VFP support v0.3: implementor 41architecture 3 part 30 variant 9 rev 4

Bus freq driver module loaded

Bus freq driver Enabled

mxc_dvfs_core_probe

DVFS driver module loaded

regulator_init_complete: MICVDD: incompleteconstraints, leaving on

regulator_init_complete: 1_8V: incompleteconstraints, leaving on

regulator_init_complete: SPKVDD: incompleteconstraints, leaving on

snvs_rtc snvs_rtc.0: setting system clockto 1970-01-01 00:00:00 UTC (0)

Freeing init memory: 200K

 

 

Starting UTP

ln: /etc/mtab: File exists

disable turn off display

Starting the hotplug events dispatcher udevd

udevd (1997): /proc/1997/oom_adj isdeprecated, please use /proc/1997/oom_score_adj instead.

Synthesizing initial hotplug events

mmc0: new high speed DDR MMC card ataddress 0001

mmcblk0: mmc0:0001 SEM04G 3.68 GiB

mmcblk0boot0: mmc0:0001 SEM04G partition 11.00 MiB

mmcblk0boot1: mmc0:0001 SEM04G partition 21.00 MiB

 mmcblk0: p1 p2 p3 < p5 p6 p7 p8 > p4

mmcblk0: p4 size 5554176 extends beyondEOD, truncated

 mmcblk0boot1: unknown partition table

 mmcblk0boot0: unknown partition table

g_file_storage gadget: high speed config #1

uuc 0.4 [built Sep 14 2013 17:02:20]

UTP: Waiting for device to appear

UTP: file/device node /dev/utp alreadyexists

cpu_idis 0

 

//<CMD state="Updater" type="push" body="$flash_erase /dev/mtd0 0 0">Erasing Boot partition</CMD>

UTP: received command '$ flash_erase/dev/mtd0 0 0'

UTP: executing "flash_erase /dev/mtd00 0"

Erasing 4 Kibyte @ 17f000 -- 100 % complete 

// 4k 4*1024=4096

UTP: sending Success to kernel for command$ flash_erase /dev/mtd0 0 0.

utp_poll: pass returned.

 

//<CMD state="Updater" type="push" body="send"file="files/android/u-boot.bin">Sending U-Boot</CMD>

UTP: received command 'send'

UTP: sending Success to kernel for commandsend.

 

//<CMD state="Updater" type="push" body="$ ddif=$FILE of=/dev/mtd0 bs=512">write U-Boot to SPI-NOR</CMD>

UTP: received command '$ dd if=$FILEof=/dev/mtd0 bs=512'

UTP: executing "dd if=$FILEof=/dev/mtd0 bs=512"

442+1 records in

442+1 records out

226788 bytes (221.5KB) copied, 7.148058seconds, 31.0KB/s

UTP: sending Success to kernel for command$ dd if=$FILE of=/dev/mtd0 bs=512.

utp_poll: pass returned.

 

//<CMD state="Updater" type="push" body="send"file="mksdcard-android.sh.tar">Sending partition shell</CMD>

UTP: received command 'send'

UTP: sending Success to kernel for commandsend.

 

//<CMDstate="Updater" type="push" body="$ tar xf $FILE"> Partitioning...</CMD>

UTP: received command '$ tar xf $FILE '

UTP: executing "tar xf $FILE "

UTP: sending Success to kernel for command$ tar xf $FILE .

utp_poll: pass returned.

 

//<CMDstate="Updater" type="push" body="$ shmksdcard-android.sh /dev/mmcblk0"> Partitioning...</CMD>

//SD卡分区

UTP: received command '$ shmksdcard-android.sh /dev/mmcblk0'

UTP: executing "sh mksdcard-android.sh/dev/mmcblk0"

1+0 records in

1+0 records out

1024 bytes (1.0KB) copied, 0.006179seconds, 161.8KB/s

Checking that no-one is using this diskright now ...

 mmcblk0: unknown partition table

OK

 

Disk /dev/mmcblk0: 120832 cylinders, 4heads, 16 sectors/track

 

sfdisk: ERROR: sector 0 does not have anmsdos signature

 /dev/mmcblk0: unrecognized partition tabletype

Old situation:

No partitions found

Warning: given size (2712) exceeds maxallowable size (2672)

New situation:

Units = mebibytes of 1048576 bytes, blocksof 1024 bytes, counting from 0

 

  Device Boot Start   End    MiB   #blocks   Id  System

/dev/mmcblk0p1         0+   15     16-     16383+ 83  Linux

/dev/mmcblk0p2        16    23      8       8192  83  Linux

/dev/mmcblk0p3        24  1103   1080    1105920   5  Extended

/dev/mmcblk0p4      1104  3815   2712    2777088  83  Linux

/dev/mmcblk0p5        24+  535    512-    524287+ 83  Linux

/dev/mmcblk0p6       536+ 1047    512-    524287+ 83  Linux

/dev/mmcblk0p7      1048+ 1055      8-      8191+ 83  Linux

/dev/mmcblk0p8      1056+ 1063      8-      8191+ 83  Linux

Warning: partition 4 extends past end ofdisk

Successfully wrote the new partition table

 

Re-reading the partition table ...

 mmcblk0: p1 p2 p3 < p5 p6 p7 p8 > p4

mmcblk0: p4 size 5554176 extends beyondEOD, truncated

 

If you created or changed a DOS partition,/dev/foo7, say, then use dd(1)

to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1

(See fdisk(8).)

Checking that no-one is using this diskright now ...

 mmcblk0: p1 p2 p3 < p5 p6 p7 p8 > p4

mmcblk0: p4 size 5554176 extends beyondEOD, truncated

OK

 

Disk /dev/mmcblk0: 120832 cylinders, 4heads, 16 sectors/track

Old situation:

Units = mebibytes of 1048576 bytes, blocksof 1024 bytes, counting from 0

 

  Device Boot Start   End    MiB   #blocks   Id  System

/dev/mmcblk0p1         0+   15     16-     16383+ 83  Linux

/dev/mmcblk0p2        16    23      8      8192   83  Linux

/dev/mmcblk0p3        24  1103   1080    1105920   5  Extended

/dev/mmcblk0p4      1104  3815   2712    2777088  83  Linux

/dev/mmcblk0p5        24+  535    512-    524287+ 83  Linux

/dev/mmcblk0p6       536+ 1047    512-    524287+ 83  Linux

/dev/mmcblk0p7      1048+ 1055      8-      8191+ 83  Linux

/dev/mmcblk0p8      1056+ 1063      8-      8191+ 83  Linux

New situation:

Units = mebibytes of 1048576 bytes, blocksof 1024 bytes, counting from 0

 

  Device Boot Start   End    MiB   #blocks   Id  System

/dev/mmcblk0p1         8    15      8       8192  83  Linux

/dev/mmcblk0p2        16    23      8       8192  83  Linux

/dev/mmcblk0p3        24  1103   1080    1105920   5  Extended

/dev/mmcblk0p4      1104  3815   2712    2777088  83  Linux

/dev/mmcblk0p5        24+  535    512-    524287+ 83  Linux

/dev/mmcblk0p6       536+ 1047    512-    524287+ 83  Linux

/dev/mmcblk0p7      1048+ 1055      8-      8191+ 83  Linux

/dev/mmcblk0p8      1056+ 1063      8-      8191+ 83  Linux

Warning: partition 4 extends past end ofdisk

Successfully wrote the new partition table

 

Re-reading the partition table ...

 mmcblk0: p1 p2 p3 < p5 p6 p7 p8 > p4

mmcblk0: p4 size 5554176 extends beyondEOD, truncated

 

If you created or changed a DOS partition,/dev/foo7, say, then use dd(1)

to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1

(See fdisk(8).)

UTP: sending Success to kernel for command$ sh mksdcard-android.sh /dev/mmcblk0.

utp_poll: pass returned.

 

//<CMD state="Updater" type="push" body="$ ls -l/dev/mmc* ">Formatting sd partition</CMD>

UTP: received command '$ ls -l /dev/mmc* '

UTP: executing "ls -l /dev/mmc* "

brw-r-----    1 root    disk      179,   0 Jan 1 00:00 /dev/mmcblk0

brw-r-----    1 root    disk      179,   8 Jan 1 00:00 /dev/mmcblk0boot0

brw-r-----    1 root    disk      179,  16 Jan 1 00:00 /dev/mmcblk0boot1

brw-r-----    1 root    disk      179,   1 Jan 1 00:00 /dev/mmcblk0p1

brw-r-----    1 root    disk      179,   2 Jan 1 00:00 /dev/mmcblk0p2

brw-r-----    1 root    disk      179,   3 Jan 1 00:00 /dev/mmcblk0p3

brw-r-----    1 root    disk      179,   4 Jan 1 00:00 /dev/mmcblk0p4

brw-r-----    1 root    disk      179,   5 Jan 1 00:00 /dev/mmcblk0p5

brw-r-----    1 root    disk      179,   6 Jan 1 00:00 /dev/mmcblk0p6

brw-r-----    1 root    disk      179,   7 Jan 1 00:00 /dev/mmcblk0p7

brw-r-----    1 root    disk      259,   0 Jan 1 00:00 /dev/mmcblk0p8

UTP: sending Success to kernel for command$ ls -l /dev/mmc* .

utp_poll: pass returned.

 

//<CMDstate="Updater" type="push" body="send"file="files/android/boot.img">Sending kernel uImage</CMD>

UTP: received command 'send'

UTP: sending Success to kernel for commandsend.

 

//<CMD state="Updater" type="push" body="$ ddif=$FILE of=/dev/mmcblk0p1">write boot.img</CMD>

UTP: received command '$ dd if=$FILEof=/dev/mmcblk0p1'

UTP: executing "dd if=$FILEof=/dev/mmcblk0p1"

9576+0 records in

9576+0 records out

4902912 bytes (4.7MB) copied, 2.046426seconds, 2.3MB/s

UTP: sending Success to kernel for command$ dd if=$FILE of=/dev/mmcblk0p1.

utp_poll: pass returned.

 

//<CMD state="Updater" type="push"body="frf">flush the memory.</CMD>

UTP: received command 'frf'

UTP: closing the file

UTP: sending Success to kernel for commandfrf.

utp_poll: pass returned.

 

//<CMDstate="Updater" type="push" body="$ mkfs.ext4 -L data/dev/mmcblk0p4">Formatting sd partition</CMD>

UTP: received command '$ mkfs.ext4 -L data/dev/mmcblk0p4'

UTP: executing "mkfs.ext4 -L data/dev/mmcblk0p4"

mke2fs 1.41.4 (27-Jan-2009)

Filesystem label=data

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

171024 inodes, 684032 blocks

34201 blocks (5.00%) reserved for the superuser

First data block=0

Maximum filesystem blocks=700448768

21 block groups

32768 blocks per group, 32768 fragments pergroup

8144 inodes per group

Superblock backups stored on blocks:

       32768, 98304, 163840, 229376, 294912

 

Writing inode tables: done                           

Creating journal (16384 blocks): done

Writing superblocks and filesystemaccounting information: done

 

This filesystem will be automaticallychecked every 33 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

UTP: sending Success to kernel for command$ mkfs.ext4 -L data /dev/mmcblk0p4.

utp_poll: pass returned.

 

//<CMDstate="Updater" type="push" body="$ mkfs.ext4 -Lsystem /dev/mmcblk0p5">Formatting system partition</CMD>

UTP: received command '$ mkfs.ext4 -Lsystem /dev/mmcblk0p5'

UTP: executing "mkfs.ext4 -L system/dev/mmcblk0p5"

mke2fs 1.41.4 (27-Jan-2009)

Filesystem label=system

OS type: Linux

Block size=1024 (log=0)

Fragment size=1024 (log=0)

131072 inodes, 524284 blocks

26214 blocks (5.00%) reserved for the superuser

First data block=1

Maximum filesystem blocks=67633152

64 block groups

8192 blocks per group, 8192 fragments pergroup

2048 inodes per group

Superblock backups stored on blocks:

       8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409

 

Writing inode tables: done                            

Creating journal (8192 blocks): done

Writing superblocks and filesystemaccounting information: done

 

This filesystem will be automaticallychecked every 35 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

UTP: sending Success to kernel for command$ mkfs.ext4 -L system /dev/mmcblk0p5.

utp_poll: pass returned.

 

//<CMD state="Updater" type="push" body="$ mkfs.ext4-L cache -O^extent /dev/mmcblk0p6">Formatting cachepartition</CMD>

UTP: received command '$ mkfs.ext4 -L cache-O^extent /dev/mmcblk0p6'

UTP: executing "mkfs.ext4 -L cache-O^extent /dev/mmcblk0p6"

mke2fs 1.41.4 (27-Jan-2009)

Filesystem label=cache

OS type: Linux

Block size=1024 (log=0)

Fragment size=1024 (log=0)

131072 inodes, 524284 blocks

26214 blocks (5.00%) reserved for the superuser

First data block=1

Maximum filesystem blocks=67633152

64 block groups

8192 blocks per group, 8192 fragments pergroup

2048 inodes per group

Superblock backups stored on blocks:

       8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409

 

Writing inode tables: done                           

Creating journal (8192 blocks): done

Writing superblocks and filesystemaccounting information: done

 

This filesystem will be automaticallychecked every 35 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

UTP: sending Success to kernel for command$ mkfs.ext4 -L cache -O^extent /dev/mmcblk0p6.

utp_poll: pass returned.

 

//<CMD state="Updater" type="push" body="$ mkfs.ext4-L vender /dev/mmcblk0p7">Formatting data partition</CMD>

UTP: received command '$ mkfs.ext4 -Lvender /dev/mmcblk0p7'

UTP: executing "mkfs.ext4 -L vender/dev/mmcblk0p7"

mke2fs 1.41.4 (27-Jan-2009)

Filesystem label=vender

OS type: Linux

Block size=1024 (log=0)

Fragment size=1024 (log=0)

2048 inodes, 8188 blocks

409 blocks (5.00%) reserved for the superuser

First data block=1

Maximum filesystem blocks=8388608

1 block group

8192 blocks per group, 8192 fragments pergroup

2048 inodes per group

 

Writing inode tables: done                            

Creating journal (1024 blocks): done

Writing superblocks and filesystemaccounting information: done

 

This filesystem will be automaticallychecked every 38 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

UTP: sending Success to kernel for command$ mkfs.ext4 -L vender /dev/mmcblk0p7.

utp_poll: pass returned.

 

//<CMD state="Updater" type="push"body="frf">flush the memory.</CMD>

UTP: received command 'frf'

UTP: sending Success to kernel for commandfrf.

utp_poll: pass returned.

 

//<CMDstate="Updater" type="push" body="$ mkfs.ext4/dev/mmcblk0p8">Formatting misc partition</CMD>

UTP: received command '$ mkfs.ext4/dev/mmcblk0p8'

UTP: executing "mkfs.ext4/dev/mmcblk0p8"

mke2fs 1.41.4 (27-Jan-2009)

Filesystem label=

OS type: Linux

Block size=1024 (log=0)

Fragment size=1024 (log=0)

2048 inodes, 8188 blocks

409 blocks (5.00%) reserved for the superuser

First data block=1

Maximum filesystem blocks=8388608

1 block group

8192 blocks per group, 8192 fragments pergroup

2048 inodes per group

 

Writing inode tables: done                           

Creating journal (1024 blocks): done

Writing superblocks and filesystemaccounting information: done

 

This filesystem will be automaticallychecked every 33 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

UTP: sending Success to kernel for command$ mkfs.ext4 /dev/mmcblk0p8.

utp_poll: pass returned.

 

//<CMD state="Updater" type="push" body="pipe ddof=/dev/mmcblk0p5 bs=512" file="files/android/system.img">Sendingand writting system.img</CMD>

UTP: received command 'pipe ddof=/dev/mmcblk0p5 bs=512'

pid is 3762, UTP: executing "ddof=/dev/mmcblk0p5 bs=512"

UTP: sending Success to kernel for commandpipe dd of=/dev/mmcblk0p5 bs=512.

 

//<CMD state="Updater" type="push"body="frf">flush the memory.</CMD>

UTP: received command 'frf'

573440+0 records in

573440+0 records out

293601280 bytes (280.0MB) copied, 39.740839seconds, 7.0MB/s

UTP: closing the file

UTP: sending Success to kernel for commandfrf.

utp_poll: pass returned.

 

//<CMD state="Updater" type="push" body="pipe ddof=/dev/mmcblk0p2 bs=512"file="files/android/recovery.img">Sending and writtingrecovery.img</CMD>

UTP: received command 'pipe ddof=/dev/mmcblk0p2 bs=512'

pid is 3764, UTP: executing "dd of=/dev/mmcblk0p2bs=512"

UTP: sending Success to kernel for commandpipe dd of=/dev/mmcblk0p2 bs=512.

 

//<CMD state="Updater" type="push"body="frf">Finishing rootfs write</CMD>

UTP: received command 'frf'

10592+0 records in

10592+0 records out

5423104 bytes (5.2MB) copied, 1.458177seconds, 3.5MB/s

UTP: closing the file

UTP: sending Success to kernel for commandfrf.

utp_poll: pass returned.

 

//<CMDstate="Updater" type="push" body="$ echo UpdateComplete!">Done</CMD>

UTP: received command '$ echo Update Complete!'

UTP: executing "echo UpdateComplete!"

Update Complete!

UTP: sending Success to kernel for command$ echo Update Complete!.

utp_poll: pass returned.

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值