Bootstrap

qemu模拟orangepi

前言

由于qemu目前只支持orange pipc单板,也就是H3型号,故我们就拿这个型号做测试

环境搭建

linux主机环境

我这里采用win10 + WSL,且环境用的是openeuler的,在选择服务器类型可以按照自己喜好选择,也就是包安装方式的区别,其他没啥太大区别
传送门

编译环境搭建

传送门

qemu安装

qemu模拟arm单板需要用到qemu模拟arm的包 需要安装如下2个包
qemu-img是我们在做sd卡镜像的时候镜像文件必须要64Mqemu要求,所以如果img不够64M需要用qemu-img工具给他扩大到64M。

sudo yum install qemu-system-aarch64.x86_64
sudo yum install qemu-img.x86_64

在这里插入图片描述

镜像文件制作

orangepi h3的uboot等镜像的编译参考传送门

成功编译后制作sd卡启动文件

在uboot 目录下
dd if=spl/sunxi-spl.bin of=img bs=1k seek=8 conv=notrunc  
dd if=u-boot.img of=img bs=1k seek=40 ;qemu-img resize -f raw img 64M

qemu运行

qemu-system-aarch64 -machine orangepi-pc  -vnc :1  -monitor telnet:127.0.0.1:6666,server,nowait  -serial stdio -sd img

在这里插入图片描述
可以看出,spl完美运行,uboot没起来是我自己的仓库问题,uboot镜像没有编译成功,仓库是老的uboot主线,用的还是python2,为了适配orange pipc2 魔改的。
用主线uboot库上的应该就没问题。qemu模拟能进uboot

主线最新uboot编译尝试

下载最新uboot代码,链接开源组件链接地址
https://ftp.denx.de/pub/u-boot/
我们整一个7月份的
在这里插入图片描述

编译

见传送门传送

运行主线上的uboot

;