#!/bin/sh

# 参考文章:
# . MFGTool Emmc mksdcard.sh MFGTool Emmc mksdcard.sh comment
# http://jordonwu.github.io/blog/2015/05/14/mfgtool-emmc-mksdcard-dot-sh/
# . linux sfdisk partition
# http://blog.csdn.net/shell_albert/article/details/8425530 #<!-- partitioning the eMMC: -->
#<CMD state="Updater" type="push" body="$ echo 8 > /sys/devices/platform/sdhci-esdhc-imx.3/mmc_host/mmc0/mmc0:0001/boot_config">access user partition and enable boot partion to boot</CMD>
#<CMD state="Updater" type="push" body="send" file="mksdcard.sh.tar">Sending partition shell</CMD>
#<CMD state="Updater" type="push" body="$ tar xf $FILE "> Partitioning...</CMD>
#<CMD state="Updater" type="push" body="$ sh mksdcard.sh /dev/mmcblk0"> Partitioning SD card now...</CMD> # partition size in MB
# 这里定义的是启动ROM 10MB
BOOT_ROM_SIZE= # call sfdisk to create partition table
# destroy the partition table
# $: 为命令行第一个传递的参数
# node: /dev/mmcblk0
# 将前导一个1024字节(1KB)大小的分区零0,也就是分区表擦除
node=$
dd if=/dev/zero of=${node} bs= count= # sfdisk reads lines of the form
# <start> <size> <id>< bootable> <c,h,s> <c,h,s>
# where each line fills one partition descriptor.
#
# --force: disable all consistency checking
# -uS, -uB, -uC, -uM: 以扇面/块/柱面数/MB为单位 显示或形成报告
# SmartFdisk –uM表示以MB为单位生成报告 即: sfdisk --force -um /dev/mmcblk0 <<EOF
#
# BOOT_ROM_SIZE:
# 而分区则是使用sfdisk进行的,空出了uboot和kernel的位置,从起始地址10MB开始的:
# (,,) 将其10M以后所有空间分成一个区,,此处应该就是mmcblk0p1,其中83是Linux分区标识
#
# Uboot和kernel是直接使用dd写入mmcblk0中的:
# <!-- burn the uboot: -->
# <CMD state="Updater" type="push" body="send" file="files/u-boot.bin">Sending U-Boot</CMD>
# <CMD state="Updater" type="push" body="$ dd if=/dev/zero of=/dev/mmcblk0 bs=512 seek=2 count=2000">Clean U-Bootenvironment</CMD>
# <CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mmcblk0 bs=512 seek=2 skip=2">write U-Boot to sdcard</CMD>
#
# <!-- burn the kernel: -->
# <CMD state="Updater" type="push" body="send" file="files/uImage">Sending kernel uImage</CMD>
# <CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mmcblk0 bs=1M seek=1 conv=fsync">write kernel image to emmc</CMD> sfdisk --force -uM ${node} << EOF
${BOOT_ROM_SIZE},,
EOF

I.MX6 Manufacturing Tool V2 (MFGTool2) Emmc mksdcard.sh hacking的更多相关文章

  1. I.MX6 Manufacturing Tool V2 (MFGTool2) Emmc mksdcard-android.sh hacking

    #!/bin/bash # 参考文章: # . Shell特殊变量:Shell $, $#, $*, $@, $?, $$和命令行参数 # http://c.biancheng.net/cpp/vie ...

  2. I.MX6 Manufacturing Tool V2 (MFGTool2) Update Command List (UCL) User Guide translate

    Manufacturing Tool V2 (MFGTool2) Update Command List (UCL) User Guide Contents(目录) Contents(目录)     ...

  3. I.MX6 Manufacturing Tool V2 (MFGTool2) ucl2.xml hacking

    <!-- * Copyright (C) 2010-2013, Freescale Semiconductor, Inc. All Rights Reserved. * The CFG elem ...

  4. AM335x Android eMMC mkmmc-android.sh hacking

    # AM335x Android eMMC mkmmc-android.sh hacking # # . 有空解读一下android的分区文件. # . 代码来源:https://github.com ...

  5. JMeter Nmon Tool V2.0 插件

    很早之前宝路已将nmon监控功能集成到了JMeter中,自己在使用旧版本时,也有诸多不满意的地方.趁着五一假期(基本都是晚上,白天要陪孩子),对插件底层代码进行了重构,自己还要反复测试调整,最晚的一次 ...

  6. I.MX6 mkuserimg.sh hacking

    /*********************************************************************** * I.MX6 mkuserimg.sh hackin ...

  7. I.MX6 eMMC 中启动U-boot存放的首地址

    /************************************************************************************ * I.MX6 eMMC 中 ...

  8. I.MX6 Linux U-boot 环境变量解析

    /********************************************************************************** * I.MX6 Linux U- ...

  9. I.MX6 mfgtool2-android-mx6q-sabresd-emmc.vbs hacking

    /******************************************************************** * I.MX6 mfgtool2-android-mx6q- ...

随机推荐

  1. docker——安全防护与配置

    Docker是基于Linux操作系统实现的应用虚拟化.运行在容器内的进程,跟运行在本地系统的进程本质上并无区别,配置不合适的安全策略将可能给本地系统带来安全风险,因此,Docker的安全性在生产环境中 ...

  2. JavaScript在页面中的引用方法

    现在前端开发越来越流行,框架也越来越多,像ExtJs.JQuery.Bootstrap等.虽然入行这么多年,但是感觉自己在前端方面还是存在基础不牢的地方,特别是CSS和JS.因此最近打算重新阅读这方面 ...

  3. oracle连接数据库报错:ORA-01034: ORACLE not available(Oracle 不存在),ORA-27101: shared memory realm does not exist

    花一天半的时间解决客户端连接服务端的oracle数据库,无法连接问题.ORA-01034: ORACLE not available(Oracle 不存在),ORA-27101: shared mem ...

  4. ng-深度学习-课程笔记-13: 目标检测(Week3)

    1 目标定位( object localization ) 目标定位既要识别,又要定位,它要做的事就是用一个框框把物体目标的位置标出来. 怎么做这个问题呢,我们考虑三目标的定位问题,假定图中最多只出现 ...

  5. myeclips破解

    MyEclipse官方安装文件,下载地址 http://www.jb51.net/softs/150886.html破解补丁http://www.jb51.net/softs/150887.html ...

  6. java类同时引用父类和接口的成员变量,需要指明是父类的还是接口的

    code: package com.qhong; public class Main extends B implements A{ public static void main(String[] ...

  7. 51Nod 1686 第K大区间(离散化+尺取法)

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1686 题意: 思路: 第K大值,所以可以考虑二分法,然后用尺取法去扫描, ...

  8. SQL语句主要的分类

    SQL语言的命令通常分为四类1.数据定义语言(DDL) 创建.修改或删除数据库中各种对象,包括表.视图.索引等. 命令:CREATE TABLE , CREATE VIEW, CREATE INDEX ...

  9. 判断一个数是否是4的n次方

    def is_Power_of_four(n): while n and not (n & 0b11): n >>= ) print(is_Power_of_four()) pri ...

  10. 解决"No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android"错误

    今天安装了Android Studio 3.2,打开一个旧工程,编译提示"No toolchains found in the NDK toolchains folder for ABI w ...