迅为iTOP-4412精英版之恢复出厂设置(一)

准备工作

虚拟机:VM-Ware 16.2.3;

操作系统:Ubuntu Linux 16.04;

USB转串口(PL2302驱动)及ADB驱动完成;

fastboot烧写工具;

iTOP-4412开发板(精英版);

TF卡一张,读卡器一个

一、前序

1.1 Bootloader和Uboot

Bootloader是嵌入式系统在加电后执行的第一段代码,通过这段小程序,进行硬件初始化,获取内存大小信息等,调整手机到适配状态。在它完成CPU和相关硬件的初始化之后,再将操作系统映像或固化的嵌入式应用程序装在到内存中然后跳转到操作系统所在的空间,启动操作系统运行 。

对于嵌入式系统,Bootloader是基于特定硬件平台来实现的。因此,几乎不可能为所有的嵌入式系统建立一个通用的Bootloader,不同的处理器架构都有不同的Bootloader。Bootloader不但依赖于CPU的体系结构,而且依赖于嵌入式系统板级设备的配置。对于2块不同的嵌入式板而言,即使它们使用同一种处理器,要想让运行在一块板子上的Bootloader程序也能运行在另一块板子上,一般也都需要修改Bootloader的源程序 。

Uboot要能够进行Soc级(Soc内部外设)和板级(Soc外部外设)硬件管理。

Uboot中实现了一部分硬件的控制能力(Uboot中初始化了一部分硬件),因为Uboot为了完成一些任务必须让这些硬件工作。譬如uboot要实现刷机必须能驱动iNand,譬如Uboot要在刷机时LCD上显示进度条就必须能驱动LCD,譬如Uboot能够通过串口提供操作界面就必须驱动串口。譬如Uboot要实现网络功能就必须驱动网卡芯片。

Uboot要能够被借助完成刷机操作。

uboot的入口就是开机自动启动,uboot的唯一出口就是启动内核。

bootloader 与 uboot的区别

BootLoader是嵌入式设备中用来启动操作系统内核的一段程序。

uboot(universal bootloader)是一种可以用于多种嵌入式CPU得BootLoader程序,换言之,uboot是bootloader的一个子集。

uboot的核心作用就是启动操作系统内核,uboot的本质就是一段裸机程序。

1.2 ADB及fastboot基础

fastboot.exe 在烧写系统的时候,我们常常会使用“fastboot”命令,这些 fastboot 命令即“fastboot.exe”小程序, 都是三星在 Google 提供的 ADB 驱动以及“adb.exe”程序的基础上开发的。 当然,fastboot 命令只能用来和 exynos4412 的 uboot 模式进行交互,也就是前面烧写镜像中提到的那些命令。

当开发板启动安卓系统之后,就可以使用 ADB 命令来交互。 总之,ADB 所用的驱动和 fastboot 所用的驱动是一样的,因此在我们安装好 ADB 的驱动以后,自然也可以使用 fastboot 来烧写程序了。

ADB 全称是 Android Debug Bridge,是 android sdk 里的一个工具。它可以用来安装/ 卸载安卓的应用,上传/下载文件等。当然,如果要用 ADB 命令和开发板交互,那么开发板一定要在文件系统模式,也就是开发板必须运行安卓操作系统,并且安卓文件系统已经完全启动。 在 ADB 驱动安装完成后,然后把电脑的 USB 接口和开发板的 OTG 接口相连,打开“cmd.exe”,就可以使用 ADB 功能。

二、fastboot烧写方式及命令

前提:iTOP-4412精英版通电后,连接OTG线,串口线,PC机打开超级终端,启动开发板,进入“iTOP-4412”,或通过终端命令reboot重启开发板后,快速连续按回车进入Uboot模式。

2.1 通过fastboot、OTG方式烧写

1、全部烧写

一个系统启动需要的三个部分是u-boot、kernel、文件系统。

全部烧写,这里需要烧写四个文件 :u-boot-iTOP-4412.bin(u-boot)、zImage(kernel)、ramdisk-uboot.img(ramdisk)、system.img(文件系统)。

温馨提示:不建议烧写Uboot,除非通过TF卡刷机恢复开发板出厂设置。

在超级终端依次键入如下命令(操作在超级终端命令行)。

fdisk -c 0

fatformat mmc 0:1

ext3format mmc 0:2

ext3format mmc 0:3

ext3format mmc 0:4

fastboot

打开迅为提供的文件夹“USB_fastboot_tool”(资源已绑定),双击(右键管理员身份)打开cmd.exe命令窗口,在cmd命令窗口中依次键入如下命令(操作在cmd命令行)。

说明:烧写的镜像文件u-boot-iTOP-4412.bin、zImage、ramdisk-uboot.img及、system.img都在cmd的根目录下,否则需要加上路径。

比如文件在根目录的img文件夹下,文件名前则加上路径信息,为\img\zImage。

在cmd命令窗口分别图输入如下命令。

fastboot.exe flash bootloader u-boot-iTOP-4412.bin

fastboot.exe flash kernel zImage

fastboot.exe flash ramdisk ramdisk-uboot.img

fastboot.exe flash system system.img

fastboot -w

fastboot reboot

2、选择烧写

在cmd命令行,对上述四个文件有选择性的进行烧写,在以下命令中选择输入。

fastboot.exe flash bootloader u-boot-iTOP-4412.bin

fastboot.exe flash kernel zImage

fastboot.exe flash ramdisk ramdisk-uboot.img

fastboot.exe flash system system.img

说明:烧写的镜像文件u-boot-iTOP-4412.bin、system.img、ramdisk-uboot.img及zImage都在cmd的根目录下,否则需要加上路径。

比如文件在根目录的img文件夹下,文件名前则加上路径信息,为\img\zImage。

 接着在cmd命令窗口输入如下命令。

fastboot -w
fastboot reboot

2.2 通过TF卡方式烧写 

提示:通过TF卡烧写之前,预先制作TF卡,将要烧写的文件放入TF卡的文件夹sdupdate中,如下图所示。后续重点讲述,这种烧写方式,所有操作全部在超级终端进行。

这种方式同第一种烧写方式,可以全部烧写或者选择烧写。

1、全部烧写

sdfuse flashall
reset

2、选择替换,可以只选其一

sdfuse flash bootloader u-boot-iTOP-4412.bin
sdfuse flash kernel zImage
sdfuse flash ramdisk ramdisk-uboot.img
sdfuse flash system system.img

最后

reset

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值