All Projects → vfdev-5 → qemu-rpi2-vexpress

vfdev-5 / qemu-rpi2-vexpress

Licence: other
QEMU emulation ARMv7

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to qemu-rpi2-vexpress

Rpi23 Gen Image
Advanced Debian "stretch" and "buster" bootstrap script for RPi 0/1/2/3 and QEMU
Stars: ✭ 300 (+1263.64%)
Mutual labels:  rpi, armv7
simonpi
A quick & dirty script to emulate Raspberry PI family devices on your laptop.
Stars: ✭ 61 (+177.27%)
Mutual labels:  rpi, armv7
Brahma
Brahma - Privilege elevation exploit for Nintendo 3DS
Stars: ✭ 34 (+54.55%)
Mutual labels:  armv7
reicast-emulator
Reicast was a multiplatform Sega Dreamcast emulator
Stars: ✭ 1,063 (+4731.82%)
Mutual labels:  armv7
acestream-openelec
Acestream engine for OpenElec / LibreElec on Raspberry Pi (2-3)
Stars: ✭ 31 (+40.91%)
Mutual labels:  rpi
Selfhosted-Google-Photos-Alternative
A complete guide on exiting Google, Amazon or any proprietary service Photos storage with all the features you would want.
Stars: ✭ 143 (+550%)
Mutual labels:  rpi
thpimon
Native ESXi on Arm hardware status driver for the Raspberry Pi.
Stars: ✭ 32 (+45.45%)
Mutual labels:  rpi
Tow-Boot
An opinionated distribution of U-Boot. — https://matrix.to/#/#Tow-Boot:matrix.org?via=matrix.org
Stars: ✭ 338 (+1436.36%)
Mutual labels:  armv7
Fool
Simple Russian voice assistant based on Android Things and Raspberry Pi 3
Stars: ✭ 26 (+18.18%)
Mutual labels:  rpi
rasa-docker-arm
Rasa Docker image for ARMv7. Runs on a Raspberry Pi.
Stars: ✭ 19 (-13.64%)
Mutual labels:  armv7
tensorflow-serving-arm
TensorFlow Serving ARM - A project for cross-compiling TensorFlow Serving targeting popular ARM cores
Stars: ✭ 75 (+240.91%)
Mutual labels:  armv7
how-to-optimize-gemm
row-major matmul optimization
Stars: ✭ 288 (+1209.09%)
Mutual labels:  armv7
dslibris
An ebook reader for the Nintendo DS, DS Lite, and DSi.
Stars: ✭ 31 (+40.91%)
Mutual labels:  armv7
tiller-multiarch
Helm Tiller images for amd64, arm64, and armhf. ⚓️🎉
Stars: ✭ 80 (+263.64%)
Mutual labels:  armv7
discolix
distroless arm docker images
Stars: ✭ 22 (+0%)
Mutual labels:  armv7
opencv3-setup
Raspberry Pi whiptail Menu driven Easy Install and Compile of opencv3 python from source files.
Stars: ✭ 47 (+113.64%)
Mutual labels:  rpi
TensorFlow-Raspberry-Pi
TensorFlow installation wheels for Raspberry Pi 32-bit OS
Stars: ✭ 18 (-18.18%)
Mutual labels:  armv7
elfloader
ARMv7M ELF loader
Stars: ✭ 71 (+222.73%)
Mutual labels:  armv7
docker-opengl
Multi-Arch Docker - Mesa 3D OpenGL Software Rendering (Gallium) - LLVMpipe, and OpenSWR Drivers
Stars: ✭ 68 (+209.09%)
Mutual labels:  armv7
juniEmu
Emulator interface for ARM 32-bit
Stars: ✭ 32 (+45.45%)
Mutual labels:  armv7

Start Raspberry Pi 2 image in QEMU

In this project you can find some scripts to launch QEMU on image from SD card of Raspberry Pi 2 (rpi2) as ARMv7 (vexpress-a9 or vexpress-a15).

For example, you can dump Ubuntu Mate 16.04 armhf to an SD card and start it in QEMU emulator

This project is similar to qemu-rpi-kernel where versatilepb machine used in QEMU (equivalent to ARMv6).

QEMU installation:

You need to use qemu-system-arm, to install qemu execute the following :

sudo apt-get install qemu

Usage :

Important: Certain files on the SD card image are modified in order to start emulation in QEMU.

  • Insert micro SD and findout its device file. For example, device root file is /dev/sdb
  • in terminal start command :
bash start.bash /dev/sdb [--no-verbose]

Image modifications for QEMU:

QEMU emulation requires modification in /etc/fstab and /etc/ld.so.preload files For more details, see, for example, here or here or even here

Thus, start.bash script mounts the device to access its system files, copies original /etc/fstab and /etc/ld.so.preload and comments the lines:

/dev/mmcblk0p2  /               ext4   defaults,noatime  0       1
/dev/mmcblk0p1  /boot/          vfat    defaults          0       2

and

/usr/lib/arm-linux-gnueabihf/libarmmem.so

Details :

The command to launch QEMU emulator on /dev/sdb is

sudo qemu-system-arm -m 2048M -M vexpress-a15 -cpu cortex-a15 -kernel kernel-qemu-4.4.1-vexpress -no-reboot -dtb vexpress-v2p-ca15_a7.dtb -sd /dev/sdb -append "root=/dev/mmcblk0p2 rw rootfstype=ext4"

Linux kernel 4.4.1 and DTB

Linux kernel used with QEMU is a build of Linux 4.4.1 configured on vexpress :


$ cd linux-4.4.1
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- vexpress_defconfig
$ cat >> .config << EOF
> CONFIG_FHANDLE=y
> CONFIG_LBDAF=y
> EOF
$ make -j4 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- all
...
$ cp arch/arm/boot/zImage ../kernel-qemu-4.4.1-vexpress
$ cp arch/arm/boot/dts/vexpress-*.dtb ../

See download_and_compile_kernel.bash for more details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].