This patch series adds support for the AUX (second UART), framebuffer and DMA controller on Raspberry Pi 2, and enables booting Windows on this device. As with the previous series, it is heavily based on the original (out of tree) work of Gregory Estrade, Stefan Weil and others to support Raspberry Pi 1.
After this series, it is possible to boot Windows by following the instructions at https://github.com/0xabu/qemu/wiki. You also boot Raspbian to the GUI using a command such as: qemu-system-arm -M raspi2 -kernel raspbian-boot/kernel7.img -sd 2015-09-24-raspbian-jessie.img -append "rw earlyprintk loglevel=8 console=ttyAMA0 dwc_otg.lpm_enable=0 root=/dev/mmcblk0p2 rootwait" -dtb raspbian-boot/bcm2709-rpi-2-b.dtb -serial stdio I plan to add USB, and remaining timers / system devices in future patch series, along with support for pi1 (bcm2835). In the meantime, the complete code is available at https://github.com/0xabu/qemu v2: * added DMA controller * revised per PMM's review feedback * rebased on top of the patch for fixing ldl_phys/stl_phys in raspi devices, presently in target-arm.next Cheers, Andrew Andrew Baumann (5): bcm2835_peripherals: enable sdhci pending-insert quirk for raspberry pi bcm2835_aux: add emulation of BCM2835 AUX (aka UART1) block bcm2835_fb: add framebuffer device for Raspberry Pi bcm2835_property: implement framebuffer control/configuration properties bcm2835_dma: add emulation of Raspberry Pi DMA controller hw/arm/bcm2835_peripherals.c | 100 ++++++++- hw/arm/bcm2836.c | 2 + hw/arm/raspi.c | 12 +- hw/char/Makefile.objs | 1 + hw/char/bcm2835_aux.c | 316 ++++++++++++++++++++++++++ hw/display/Makefile.objs | 1 + hw/display/bcm2835_fb.c | 424 +++++++++++++++++++++++++++++++++++ hw/dma/Makefile.objs | 1 + hw/dma/bcm2835_dma.c | 408 +++++++++++++++++++++++++++++++++ hw/misc/bcm2835_property.c | 139 +++++++++++- include/hw/arm/bcm2835_peripherals.h | 6 + include/hw/char/bcm2835_aux.h | 33 +++ include/hw/display/bcm2835_fb.h | 47 ++++ include/hw/dma/bcm2835_dma.h | 47 ++++ include/hw/misc/bcm2835_property.h | 5 +- 15 files changed, 1529 insertions(+), 13 deletions(-) create mode 100644 hw/char/bcm2835_aux.c create mode 100644 hw/display/bcm2835_fb.c create mode 100644 hw/dma/bcm2835_dma.c create mode 100644 include/hw/char/bcm2835_aux.h create mode 100644 include/hw/display/bcm2835_fb.h create mode 100644 include/hw/dma/bcm2835_dma.h -- 2.5.3