GUI 5774dcac8f [bsp/qemu-virt64-aarch64] Fixup VirtIO queue align size (#6096) %!s(int64=3) %!d(string=hai) anos
..
applications 5774dcac8f [bsp/qemu-virt64-aarch64] Fixup VirtIO queue align size (#6096) %!s(int64=3) %!d(string=hai) anos
driver 5774dcac8f [bsp/qemu-virt64-aarch64] Fixup VirtIO queue align size (#6096) %!s(int64=3) %!d(string=hai) anos
.config 8fa16f968a [bsp/qemu-virt64-aarch64] Add more VirtIO drivers (#6091) %!s(int64=3) %!d(string=hai) anos
Kconfig 0a8dd10b0b [libcpu/aarch64] add gtimer frq set and stack align (#5642) %!s(int64=3) %!d(string=hai) anos
README.md 8fa16f968a [bsp/qemu-virt64-aarch64] Add more VirtIO drivers (#6091) %!s(int64=3) %!d(string=hai) anos
README_zh.md 8fa16f968a [bsp/qemu-virt64-aarch64] Add more VirtIO drivers (#6091) %!s(int64=3) %!d(string=hai) anos
SConscript b7dd004de0 [bsp/virt64/aarch64] Add 'qemu-virt64-aarch64' bsp %!s(int64=4) %!d(string=hai) anos
SConstruct b0f6c2fbae [update] CFLAGS %!s(int64=4) %!d(string=hai) anos
link.lds 77900ab420 [update] Updated the Cortex-A of linker scripts for the new version of GCC(4.7)。 %!s(int64=3) %!d(string=hai) anos
qemu-graphic.bat 8fa16f968a [bsp/qemu-virt64-aarch64] Add more VirtIO drivers (#6091) %!s(int64=3) %!d(string=hai) anos
qemu-graphic.sh 8fa16f968a [bsp/qemu-virt64-aarch64] Add more VirtIO drivers (#6091) %!s(int64=3) %!d(string=hai) anos
qemu.bat f587a55bc2 [libcpu/aarch64] add gicv3 support and bsp/rockchip/rk3568 (#5722) %!s(int64=3) %!d(string=hai) anos
qemu.sh f587a55bc2 [libcpu/aarch64] add gicv3 support and bsp/rockchip/rk3568 (#5722) %!s(int64=3) %!d(string=hai) anos
rtconfig.h 8fa16f968a [bsp/qemu-virt64-aarch64] Add more VirtIO drivers (#6091) %!s(int64=3) %!d(string=hai) anos
rtconfig.py 8fa16f968a [bsp/qemu-virt64-aarch64] Add more VirtIO drivers (#6091) %!s(int64=3) %!d(string=hai) anos

README.md

QEMU/AArch64 VIRT BSP Introduction

中文页 | English

1. Introduction

The AArch64 execution state was introduced with the ARMv8 ISA for machines executing A64 instructions. This project ported RT-Thread on QEMU AArch64 VIRT machine.

2. Compiling

Usage ARM Developer GNU ToolChain, it support Linux and Windows:

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

Download the xxx-aarch64-none-elf of x86_64 hosted platform,set the RTT_EXEC_PATH is system environment after decompress the binary.

Enter directory rt-thread/bsp/qemu-virt64-aarch64 and input:

scons

3. Execution

The project execution tool is qemu-system-aarch64, the project can be configured to Cortex-A53/A57/A72, GIC supports V2/V3 version, and V2 of GIC can use 8 processors max.

Download Windows platform from website:

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

On Linux platform (Ubuntu, Deepin and so on), install QEMU by apt.

sudo apt update
sudo apt install qemu-system-arm

Please fixup the exec scripts if modify the default configuration of the project. Run qemu.bat or qemu.sh in terminal:

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 />

4. Condition

Driver Condition Remark
UART Support UART0
RTC Support -
VIRTIO BLK Support -
VIRTIO NET Support -
VIRTIO GPU Support 2D
VIRTIO Input Support Keyboard, Mouse, Tablet