Skip to content

Instantly share code, notes, and snippets.

@habibutsu
Created June 6, 2017 12:46
Show Gist options
  • Save habibutsu/e68f0ff0e2ee09ac989c42a6e3428787 to your computer and use it in GitHub Desktop.
Save habibutsu/e68f0ff0e2ee09ac989c42a6e3428787 to your computer and use it in GitHub Desktop.
Running Raspberry in QEmu
IMAGE_TAG=2017-04-10
data/${IMAGE_TAG}-raspbian-jessie-lite.img:
mkdir -p data
wget \
-O data/${IMAGE_TAG}-raspbian-jessie-lite.zip \
http://director.downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-${IMAGE_TAG}/${IMAGE_TAG}-raspbian-jessie-lite.zip
unzip data/${IMAGE_TAG}-raspbian-jessie-lite.zip -d ./data
data/kernel-arm.img:
mkdir -p data
wget \
-O data/kernel-arm.img \
https://github.com/dhruvvyas90/qemu-rpi-kernel/raw/master/kernel-qemu-4.4.34-jessie
data/kernel-aarch64.img:
mkdir -p data
wget \
-O data/kernel-aarch64.img \
http://people.linaro.org/~alex.bennee/images/aarch64-current-linux-kernel-only.img
pi2: data/kernel-arm.img data/${IMAGE_TAG}-raspbian-jessie-lite.img
@echo "=> Running emulation of 'Raspberry PI 2'..."
@echo "For configuration use 'sudo raspi-config'"
qemu-system-arm \
-machine versatileab \
-cpu arm1176 \
-m 256 \
-no-reboot \
-k en-us \
-kernel ./data/kernel-arm.img \
-append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" \
-drive "file=data/${IMAGE_TAG}-raspbian-jessie-lite.img,index=0,media=disk,format=raw" \
-net nic -net user,hostfwd=tcp::2222-:22
experimental_pi3: data/kernel-aarch64.img data/${IMAGE_TAG}-raspbian-jessie-lite.img
@echo "=> Running emulation of 'Raspberry PI 3'..."
@echo "For configuration use 'sudo raspi-config'"
qemu-system-aarch64 \
-machine virt \
-cpu cortex-a57 \
-m 1024 \
-no-reboot \
-nographic \
-k en-us \
-kernel data/kernel-aarch64.img \
-append 'root=/dev/vda2 panic=1 rootfstype=ext4 rw' \
-drive 'file=data/${IMAGE_TAG}-raspbian-jessie-lite.img,index=0,media=disk,format=raw' \
-net nic -net user,hostfwd=tcp::2222-:22
doc:
@echo '* https://github.com/raspberrypi/linux'
@echo '* http://tiriboy.blogspot.com.by/2015/04/compiling-arm1176-for-qemu-raspberry-pi.html'
@echo '* https://www.bennee.com/~alex/blog/2014/05/09/running-linux-in-qemus-aarch64-system-emulation-mode/'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment