qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 0/6] machvirt dynamic sysbus device instantiation
@ 2014-09-09  7:54 Eric Auger
  2014-09-09  7:54 ` [Qemu-devel] [PATCH v3 1/6] hw/misc/dyn_sysbus_binding: helpers for sysbus device dynamic binding Eric Auger
                   ` (5 more replies)
  0 siblings, 6 replies; 36+ messages in thread
From: Eric Auger @ 2014-09-09  7:54 UTC (permalink / raw)
  To: eric.auger, christoffer.dall, qemu-devel, a.rigo, kim.phillips,
	marc.zyngier, manish.jaggi, joel.schopp, agraf, peter.maydell,
	pbonzini, afaerber
  Cc: patches, eric.auger, will.deacon, stuart.yoder, Bharat.Bhushan,
	alex.williamson, a.motakis, kvmarm

This patch series enables machvirt to dynamically instantiate sysbus
devices from command line (using -device option).

It applies on top of Alex Graf's series
- "Dynamic sysbus device allocation support"
  http://lists.gnu.org/archive/html/qemu-ppc/2014-07/msg00047.html

and transposes the work done for PPC e500 on machvirt.

The code related to dynamic sysbus device IRQ/mmio region binding,
originally located in PPC e500.c, is moved into
hw/misc/dyn_sysbus_binding new module

for ARM only, the code related to device tree node generation is
moved into hw/arm/dyn_sysbus_devtree module.

Both e500 and machvirt are adapted to use dyn_sysbus_binding helper
routines.

integrated branch can be found on
http://git.linaro.org/people/eric.auger/qemu.git,
branch vfio_integ_v6

A related discussion can be found at
https://lists.nongnu.org/archive/html/qemu-devel/2014-07/msg04065.html

For e500 the device tree generation is kept in the machine file,
according to Alex will.

For machvirt we use dyn_sysbus_devtree since the code becomes large
with the expected support of vfio devices.

Best Regards
Eric

v2 -> v3:
- patch now applies on top of Alex full patchset
- dyn_sysbus_devtree: add arm_prefix to emphasize the fact those
  functions are arm specific; arm_sysbus_device_create_devtree
  becomes static
- load_dtb renamed into arm_load_dtb
- add copyright in hw/arm/dyn_sysbus_devtree.c

v1 -> v2:
- device node generation no more in sysbus device but in
  dyn_sysbus_devtree
- VFIO region shrinked to 4MB and relocated in machvirt to avoid PCI
  shrink (dynamic vfio-mmio support might come latter)
- platform_bus_base removed from PlatformDevtreeData


Alexander Graf (1):
  PPC: e500: use dyn_sysbus_binding helper routines

Eric Auger (5):
  hw/misc/dyn_sysbus_binding: helpers for sysbus device dynamic binding
  hw/arm/dyn_sysbus_devtree: helpers for sysbus device dynamic dt node  
      generation
  hw/arm/boot: load_dtb becomes non static arm_load_dtb
  hw/arm/virt: new add_fdt_*_node functions
  hw/arm/virt: Support dynamically spawned sysbus devices

 hw/arm/Makefile.objs                 |   1 +
 hw/arm/boot.c                        |   4 +-
 hw/arm/dyn_sysbus_devtree.c          |  92 ++++++++++++++++++
 hw/arm/virt.c                        | 129 +++++++++++++++++++-----
 hw/misc/Makefile.objs                |   1 +
 hw/misc/dyn_sysbus_binding.c         | 163 +++++++++++++++++++++++++++++++
 hw/ppc/e500.c                        | 183 +++--------------------------------
 hw/ppc/e500.h                        |   7 +-
 hw/ppc/e500plat.c                    |  13 ++-
 include/hw/arm/arm.h                 |   1 +
 include/hw/arm/dyn_sysbus_devtree.h  |  16 +++
 include/hw/misc/dyn_sysbus_binding.h |  24 +++++
 12 files changed, 426 insertions(+), 208 deletions(-)
 create mode 100644 hw/arm/dyn_sysbus_devtree.c
 create mode 100644 hw/misc/dyn_sysbus_binding.c
 create mode 100644 include/hw/arm/dyn_sysbus_devtree.h
 create mode 100644 include/hw/misc/dyn_sysbus_binding.h

-- 
1.8.3.2

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

end of thread, other threads:[~2014-10-20 14:42 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-09  7:54 [Qemu-devel] [PATCH v3 0/6] machvirt dynamic sysbus device instantiation Eric Auger
2014-09-09  7:54 ` [Qemu-devel] [PATCH v3 1/6] hw/misc/dyn_sysbus_binding: helpers for sysbus device dynamic binding Eric Auger
2014-09-09 10:56   ` Paolo Bonzini
2014-09-09 15:25     ` Eric Auger
2014-09-09 15:59       ` Paolo Bonzini
2014-09-09 16:11         ` Eric Auger
2014-09-10  9:31         ` Alexander Graf
2014-09-10  9:43           ` Paolo Bonzini
2014-09-10  9:56             ` Alexander Graf
2014-09-10 10:05               ` Paolo Bonzini
2014-09-10 10:09                 ` Alexander Graf
2014-09-10 10:21                   ` Paolo Bonzini
2014-09-10 10:26                     ` Alexander Graf
2014-09-10 10:34                       ` Paolo Bonzini
2014-09-10 13:51                   ` Eric Auger
2014-09-10 14:18                     ` Paolo Bonzini
2014-09-10 14:38                       ` Alexander Graf
2014-09-10 14:39                         ` Paolo Bonzini
2014-09-10 15:21                           ` Alexander Graf
2014-09-10 10:06               ` Paolo Bonzini
2014-09-09  7:54 ` [Qemu-devel] [PATCH v3 2/6] hw/arm/dyn_sysbus_devtree: helpers for sysbus device dynamic dt node generation Eric Auger
2014-09-09 11:04   ` Paolo Bonzini
2014-09-09 14:39     ` Peter Crosthwaite
2014-09-09 15:56     ` Eric Auger
2014-09-09 16:00       ` Peter Maydell
2014-09-09 16:08         ` Eric Auger
2014-09-09 16:03       ` Paolo Bonzini
2014-09-09 16:11         ` Eric Auger
2014-09-09  7:54 ` [Qemu-devel] [PATCH v3 3/6] PPC: e500: use dyn_sysbus_binding helper routines Eric Auger
2014-09-09  7:54 ` [Qemu-devel] [PATCH v3 4/6] hw/arm/boot: load_dtb becomes non static arm_load_dtb Eric Auger
2014-09-09  7:54 ` [Qemu-devel] [PATCH v3 5/6] hw/arm/virt: new add_fdt_*_node functions Eric Auger
2014-09-09 11:06   ` Paolo Bonzini
2014-09-09  7:54 ` [Qemu-devel] [PATCH v3 6/6] hw/arm/virt: Support dynamically spawned sysbus devices Eric Auger
2014-09-09 11:11   ` Paolo Bonzini
2014-09-09 11:17     ` Peter Maydell
2014-10-20 14:41     ` Eric Auger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).