rt-thread-official/bsp/qemu-virt64-aarch64/README_zh.md

2.1 KiB
Raw Blame History

QEMU/AArch64 VIRT板级支持包说明

中文页 | English

1. 简介

AArch64是一种采用ARMv8 ISA用于执行A64指令的机器的64位执行模式。本工程是在QEMU的AArch64 VIRT版本上进行的一份移植。

2. 编译说明

建议使用ARM Developer GNU交叉编译工具链目前支持Linux/Windows平台

https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads/

下载x86_64 Hosted平台下载对应的xxx-aarch64-none-elf二进制包,解压后设置RTT_EXEC_PATH环境变量为该编译器的bin目录下即可。

进入到rt-thread/bsp/qemu-virt64-aarch64目录进行输入:

scons

可以看到正常生成rtthread.elfrtthread.bin文件。

3. 执行

本工程执行环境为qemu-system-aarch64模拟器,工程可配置为使用Cortex-A53/A57/A72等芯片GIC支持V2/V3版本,其中V2最多可配置8个处理器。

Windows平台下可以在此获取到QEMU

https://www.qemu.org/download/

Linux平台下以Ubuntu、Deepin系列发行版为例可通过该命令安装QEMU

sudo apt update
sudo apt install qemu-system-arm

工程默认配置修改后请注意修改运行脚本。在终端执行qemu.bat或qemu.sh可以看到程序运行

heap: [0x40042aa0 - 0x40142aa0]

 \ | /
- RT -     Thread Operating System
 / | \     4.0.4 build Aug  6 2021
 2006 - 2021 Copyright by rt-thread team
Hi, this is RT-Thread!!
msh />

如果需要使用VirtIO-Console请在新终端使用以下命令连接控制台

telnet 127.0.0.1 4321

如果使用tap网卡模式以设备tap0为例将qemu运行脚本

-netdev user,id=net0

修改为

-netdev tap,id=net0,ifname=tap0

4.支持情况

驱动 支持情况 备注
UART 支持 UART0
RTC 支持 -
GPIO 支持 -
VIRTIO BLK 支持 -
VIRTIO NET 支持 -
VIRTIO Console 支持 -
VIRTIO GPU 支持 2D
VIRTIO Input 支持 Keyboard, Mouse, Tablet