我们有一个已经运行过Yocto系统的开发板。并且我们希望它运行android系统,我们已经用Yocto内核编译了android映像,该内核具有android的一些补丁。
我们不知道如何将android映像(例如system.img boot.img和recovery.img等)刷新到开发板,因为Yocto系统分区与android系统不同。
我们可以使用fastboot工具将Yocto系统闪存到EVB。我们想知道:
如何对eMMC进行分区,我们可以使用fastboot工具来flash系统。我们需要修改Little Kernel代码吗?以及如何在Yocto系统中修改它。
如何启动Android系统?
如果您提供任何有用的信息,将不胜感激。
由于
答案 0 :(得分:1)
如何对eMMC进行分区,我们可以使用fastboot工具来刷新android系统。
您需要一个可以对eMMC进行分区的工具。考虑到您使用的是yocto,最好的选择是 gptfdisk 包。 gptfdisk配方位于路径poky / meta / recipes-devtools / fdisk / gptfdisk_1.0.0.bb。 gptfdisk提供以下文本模式分区工具
您可以使用其中一种工具在分区表中重新创建分区。
以及如何在Yocto系统中修改它。
在conf文件中执行IMAGE_INSTALL_append = " gptfdisk "
以使此程序包的工具成为您图像的一部分。
如何启动Android系统?
你需要3个分区
每个工具在Linux上都有一个手册页。您可以使用man sgdisk
,man gdisk
,man cgdisk
和man fixparts
阅读手册。 sgdisk
sgdisk -p </dev/sda>
- 打印磁盘上的所有分区sgdisk --delete=partnum </dev/sda>
- 删除分区。此操作将删除分区表中的条目答案 1 :(得分:0)
分区eMMC有很多方法,它取决于你的系统:通过USB,SD卡,nfs,uboot ......
我认为您可以查看meta-variscite,尤其是在scripts文件夹中。他们有Yocto poky图像的flash脚本和android图像(在同一块板上)。它们从SD卡闪存到eMMC。
我将这些脚本移植到uboot上使用:我运行命令ums mmc 0
以通过USB OTG启动大容量存储模式,并在我的PC上运行安装脚本,该脚本使用dd擦除分区,fdisk用于创建分区,mkfs格式化我的设备通过USB连接。
您也可以在uboot中使用mmc part
,但我从未测试过此选项。