All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/8] Raspberry Pi 2 support
@ 2015-12-04  0:00 Andrew Baumann
  2015-12-04  0:29 ` Andrew Baumann
  2015-12-04  6:01 ` [Qemu-devel] [PATCH 1/8] bcm2835_sbm: add BCM2835 mailboxes Andrew Baumann
  0 siblings, 2 replies; 33+ messages in thread
From: Andrew Baumann @ 2015-12-04  0:00 UTC (permalink / raw)
  To: qemu-devel
  Cc: Peter Maydell, Grégory ESTRADE, Stefan Weil,
	Peter Crosthwaite, Andrew Baumann, qemu-arm, Paolo Bonzini

This patch series adds initial support for Raspberry Pi 2
(bcm2836). It is heavily based on the original (out of tree) work of
Gregory Estrade, Stefan Weil and others to support Raspberry Pi 1.

At the end of this series, it is possible to boot a recent raspbian
kernel to a serial console using an invocation such as:

  qemu-system-arm -M raspi2 -kernel raspbian-boot/kernel7.img -sd
  2015-09-24-raspbian-jessie.vhd -append "rw earlyprintk loglevel=8
  console=ttyAMA0 root=/dev/mmcblk0p2" -serial stdio

(where raspbian-boot is the boot partition from the matching image,
and after commenting-out or removing /etc/ld.so.preload to avoid an
unimplemented setend instruction).

I plan to add DMA, USB, framebuffer, timers, and other system devices
(vchiq, power, mphi, aux/uart1) in future patches. In the meantime,
the complete code is available at: https://github.com/0xabu/qemu

Although this series includes many of the peripherals common to Pi1
(aka bcm2835 aka Pi0), it's not yet possible to boot a Pi1, because it
requires additional peripherals, so I'll also add that SoC and machine
in a later patch.

Cheers,
Andrew

Andrew Baumann (8):
  bcm2835_sbm: add BCM2835 mailboxes
  bcm2835_property: add bcm2835 property channel
  bcm2835_ic: add bcm2835 interrupt controller
  bcm2835_emmc: add bcm2835 MMC/SD controller
  bcm2835_peripherals: add rollup device for bcm2835 peripherals
  bcm2836_control: add bcm2836 ARM control logic
  bcm2836: add bcm2836 soc device
  raspi: add raspberry pi 2 machine

 default-configs/arm-softmmu.mak      |   1 +
 hw/arm/Makefile.objs                 |   1 +
 hw/arm/bcm2835_peripherals.c         | 185 ++++++++
 hw/arm/bcm2836.c                     | 135 ++++++
 hw/arm/raspi.c                       | 179 ++++++++
 hw/intc/Makefile.objs                |   1 +
 hw/intc/bcm2835_ic.c                 | 234 ++++++++++
 hw/intc/bcm2836_control.c            | 344 +++++++++++++++
 hw/misc/Makefile.objs                |   2 +
 hw/misc/bcm2835_property.c           | 262 ++++++++++++
 hw/misc/bcm2835_sbm.c                | 280 ++++++++++++
 hw/sd/Makefile.objs                  |   1 +
 hw/sd/bcm2835_emmc.c                 | 800 +++++++++++++++++++++++++++++++++++
 include/hw/arm/bcm2835_arm_control.h | 481 +++++++++++++++++++++
 include/hw/arm/bcm2835_mbox.h        |  19 +
 include/hw/arm/bcm2835_peripherals.h |  42 ++
 include/hw/arm/bcm2836.h             |  33 ++
 include/hw/arm/raspi_platform.h      | 161 +++++++
 include/hw/intc/bcm2835_ic.h         |  26 ++
 include/hw/intc/bcm2836_control.h    |  49 +++
 include/hw/misc/bcm2835_property.h   |  27 ++
 include/hw/misc/bcm2835_sbm.h        |  37 ++
 include/hw/sd/bcm2835_emmc.h         |  56 +++
 23 files changed, 3356 insertions(+)
 create mode 100644 hw/arm/bcm2835_peripherals.c
 create mode 100644 hw/arm/bcm2836.c
 create mode 100644 hw/arm/raspi.c
 create mode 100644 hw/intc/bcm2835_ic.c
 create mode 100644 hw/intc/bcm2836_control.c
 create mode 100644 hw/misc/bcm2835_property.c
 create mode 100644 hw/misc/bcm2835_sbm.c
 create mode 100644 hw/sd/bcm2835_emmc.c
 create mode 100644 include/hw/arm/bcm2835_arm_control.h
 create mode 100644 include/hw/arm/bcm2835_mbox.h
 create mode 100644 include/hw/arm/bcm2835_peripherals.h
 create mode 100644 include/hw/arm/bcm2836.h
 create mode 100644 include/hw/arm/raspi_platform.h
 create mode 100644 include/hw/intc/bcm2835_ic.h
 create mode 100644 include/hw/intc/bcm2836_control.h
 create mode 100644 include/hw/misc/bcm2835_property.h
 create mode 100644 include/hw/misc/bcm2835_sbm.h
 create mode 100644 include/hw/sd/bcm2835_emmc.h

-- 
2.5.3

^ permalink raw reply	[flat|nested] 33+ messages in thread

end of thread, other threads:[~2015-12-24  0:13 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-04  0:00 [Qemu-devel] [PATCH 0/8] Raspberry Pi 2 support Andrew Baumann
2015-12-04  0:29 ` Andrew Baumann
2015-12-04  6:01 ` [Qemu-devel] [PATCH 1/8] bcm2835_sbm: add BCM2835 mailboxes Andrew Baumann
2015-12-04  6:01   ` [Qemu-devel] [PATCH 2/8] bcm2835_property: add bcm2835 property channel Andrew Baumann
2015-12-04  6:01   ` [Qemu-devel] [PATCH 3/8] bcm2835_ic: add bcm2835 interrupt controller Andrew Baumann
2015-12-06  5:19     ` Peter Crosthwaite
2015-12-09  6:25       ` Andrew Baumann
2015-12-04  6:01   ` [Qemu-devel] [PATCH 4/8] bcm2835_emmc: add bcm2835 MMC/SD controller Andrew Baumann
2015-12-06  5:25     ` Peter Crosthwaite
2015-12-09  6:19       ` Andrew Baumann
2015-12-09  7:40         ` Peter Crosthwaite
2015-12-09 18:17           ` Andrew Baumann
2015-12-09 18:54             ` Peter Crosthwaite
2015-12-09 19:01               ` Andrew Baumann
2015-12-09 21:01               ` Peter Maydell
2015-12-09 21:37                 ` Andrew Baumann
2015-12-09 21:38                 ` Peter Crosthwaite
2015-12-09 23:09               ` Kevin O'Connor
2015-12-04  6:01   ` [Qemu-devel] [PATCH 5/8] bcm2835_peripherals: add rollup device for bcm2835 peripherals Andrew Baumann
2015-12-04  6:01   ` [Qemu-devel] [PATCH 6/8] bcm2836_control: add bcm2836 ARM control logic Andrew Baumann
2015-12-04  6:01   ` [Qemu-devel] [PATCH 7/8] bcm2836: add bcm2836 soc device Andrew Baumann
2015-12-04  6:01   ` [Qemu-devel] [PATCH 8/8] raspi: add raspberry pi 2 machine Andrew Baumann
2015-12-07  6:36   ` [Qemu-devel] [PATCH 1/8] bcm2835_sbm: add BCM2835 mailboxes Peter Crosthwaite
2015-12-07 17:24     ` Andrew Baumann
2015-12-21 22:49   ` Peter Crosthwaite
2015-12-21 23:15     ` Andrew Baumann
2015-12-21 23:33       ` Peter Crosthwaite
2015-12-21 23:36         ` Grégory ESTRADE
2015-12-21 23:59         ` Andrew Baumann
2015-12-23 20:32         ` Paolo Bonzini
2015-12-23 23:59           ` Peter Crosthwaite
2015-12-24  0:13             ` Andrew Baumann
2015-12-21 23:34       ` Grégory ESTRADE

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.