No description or website provided.
Switch branches/tags
Clone or download
Pull request Compare This branch is 14127 commits ahead, 37 commits behind mithro:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
accel
audio
backends
block
bsd-user
capstone @ 22ead3e
chardev
contrib
crypto
default-configs
disas
docs
dtc @ e543880
fpu
fsdev
gdb-xml
hw
include
io
libdecnumber
linux-headers
linux-user
migration
nbd
net
pc-bios
po
qapi
qga
qobject
qom
replay
roms
scripts
scsi
slirp
stubs
target
tcg
tests
trace
ui
util
.dir-locals.el
.editorconfig
.exrc
.gdbinit
.gitignore
.gitmodules
.gitpublish
.mailmap
.shippable.yml
.travis.yml
CODING_STYLE
COPYING
COPYING.LIB
Changelog
HACKING
LICENSE
MAINTAINERS
Makefile
Makefile.objs
Makefile.target
README
README.md
VERSION
arch_init.c
balloon.c
block.c
blockdev-nbd.c
blockdev.c
blockjob.c
bootdevice.c
bt-host.c
bt-vhci.c
build-litex-qemu.sh
configure
cpus-common.c
cpus.c
device-hotplug.c
device_tree.c
disas.c
dma-helpers.c
dump.c
exec.c
gdbstub.c
hmp-commands-info.hx
hmp-commands.hx
hmp.c
hmp.h
ioport.c
iothread.c
job-qmp.c
job.c
memory.c
memory_ldst.inc.c
memory_mapping.c
module-common.c
monitor.c
numa.c
os-posix.c
os-win32.c
qdev-monitor.c
qdict-test-data.txt
qemu-bridge-helper.c
qemu-deprecated.texi
qemu-doc.texi
qemu-ga.texi
qemu-img-cmds.hx
qemu-img.c
qemu-img.texi
qemu-io-cmds.c
qemu-io.c
qemu-keymap.c
qemu-nbd.c
qemu-nbd.texi
qemu-option-trace.texi
qemu-options-wrapper.h
qemu-options.h
qemu-options.hx
qemu-seccomp.c
qemu-tech.texi
qemu.nsi
qemu.sasl
qmp.c
qtest.c
replication.c
replication.h
rules.mak
thunk.c
tpm.c
trace-events
version.rc
vl.c
win_dump.c
win_dump.h

README.md

QEmu for LiteX

This repository contains a version of QEmu for emulating LiteX based SoCs. This is mainly targeted at being used with the TimVideos HDMI2USB firmware which can be found here but could be reused with other LiteX based SoCs with some work.

Building

There are two methods for building qemu-litex.

As qemu-litex targets a specific LiteX SoC it currently needs the configuration information from that SoC.

From fresh install, you will need the following packages: sudo apt-get install flex bison autoconf libtool libpixman-1-dev

Building inside HDMI2USB-litex-firmware

  1. Follow "getting started" instructions for getting the gateware setup.
  1. Enter the HDMI2USB-litex-firmware environment with source scripts/enter-env.sh

  2. (Optional) Set PLATFORM and TARGET as needed.

  • For example on the MimasV2 you need to set export PLATFORM=mimasv2.
  1. Run ./scripts/build-qemu.sh. This will;
  • Get the qemu-litex repo.
  • Configure a qemu system for your platform/target in ./build/$PLATFORM_$TARGET_$CPU/qemu.
  • Build qemu.
  • Run the bios+firmware using qemu.

Building outside HDMI2USB-litex-firmware

  1. Clone the git repo with git clone https://github.com/timvideos/qemu-litex.git

  2. Enter the qemu-litex directory.

  3. (Optional) Set the PLATFORM, TARGET and CPUS to your required configuration. The defaults should be fine if you are just playing with things.

  4. Run the ./build-litex-qemu.sh which will

  • Download the configuration information, BIOS and firmware from the HDMI2USB-firmware-prebuilt repo into the build directory.
  • Configure qemu to build in the build directory.
  • Build qemu.
  1. You can then run qemu by following the examples output at the end of the script.

Status