[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Discussion 00/10] about API hierarchy
From: |
Xuebing Wang |
Subject: |
[Qemu-devel] [Discussion 00/10] about API hierarchy |
Date: |
Tue, 4 Mar 2014 10:47:20 +0800 |
Hi Community,
Q1) Is it helpful for the document docs/api_hierarchy.txt I wrote? Would you
please help review/correct it?
Q2) Does it make sense to remove NEED_CPU_H from qemu-common.h?
Q3) In include/sysemu/kvm.h, CONFIG_KVM is used thus considering dependency
we should include "config-target.h", what is the best conditional to use?
Or we don't use any conditional and assume architecture-independent code
should NOT include include/sysemu/kvm.h?
Q4) Is it better for include/qemu-common.h to only include C99 API and QEMU
basic API declared in include/qemu/*?
Q5) Should we move exec/def-helper.h => tcg/def-helper.h and
exec/spinlock.h => include/qemu/spinlock.h, to reflect the definition of
exec is: memory API, translation API and cpu API?
After this patchset, cpu-all.h and exec-all.h should ONLY be included from
target-xxx/*.
Thanks.
Xuebing Wang (10):
docs: add docs/api-hierarchy.txt
NEED_CPU_H: remove '#include "cpu.h"' from include/qemu-common.h
NEED_CPU_H: remove unnecessary use of NEED_CPU_H
memory_mapping: make this architecture-independent
NEED_CPU_H: remove unnecessary inclusion of "cpu.h" in root
memory: move contents in include/exec/address-spaces.h => memory.h
memory: remove file include/exec/address-spaces.h
exec: move TranslationBlock API from exec-all.h => translate.h
exec: remove the unnecessary include of "exec-all.h"
translate: remove file translate-all.h
arch_init.c | 2 -
cpu-exec.c | 7 +-
cputlb.c | 8 +-
disas.c | 7 +-
docs/api-hierarchy.txt | 93 +++++++++
dump.c | 2 -
exec.c | 5 -
gdbstub.c | 8 +-
hw/acpi/ich9.c | 1 -
hw/acpi/pcihp.c | 1 -
hw/acpi/piix4.c | 1 -
hw/alpha/typhoon.c | 1 -
hw/arm/boot.c | 1 -
hw/arm/collie.c | 1 -
hw/arm/digic_boards.c | 1 -
hw/arm/exynos4_boards.c | 1 -
hw/arm/gumstix.c | 1 -
hw/arm/highbank.c | 1 -
hw/arm/integratorcp.c | 1 -
hw/arm/kzm.c | 1 -
hw/arm/mainstone.c | 1 -
hw/arm/musicpal.c | 1 -
hw/arm/nseries.c | 1 -
hw/arm/omap_sx1.c | 1 -
hw/arm/palm.c | 1 -
hw/arm/realview.c | 1 -
hw/arm/spitz.c | 1 -
hw/arm/stellaris.c | 1 -
hw/arm/tosa.c | 1 -
hw/arm/versatilepb.c | 1 -
hw/arm/vexpress.c | 1 -
hw/arm/virt.c | 1 -
hw/arm/xilinx_zynq.c | 1 -
hw/arm/z2.c | 1 -
hw/block/onenand.c | 1 -
hw/block/pflash_cfi01.c | 1 -
hw/block/pflash_cfi02.c | 1 -
hw/char/mcf_uart.c | 1 -
hw/char/omap_uart.c | 1 -
hw/char/serial.c | 1 -
hw/char/sh_serial.c | 1 -
hw/core/loader.c | 1 -
hw/core/sysbus.c | 1 -
hw/cris/axis_dev88.c | 1 -
hw/display/sm501.c | 1 -
hw/dma/etraxfs_dma.c | 1 -
hw/dma/pl080.c | 1 -
hw/dma/soc_dma.c | 5 +
hw/dma/sun4m_iommu.c | 1 -
hw/i386/pc.c | 1 -
hw/i386/pc_piix.c | 1 -
hw/i386/pc_q35.c | 1 -
hw/intc/armv7m_nvic.c | 1 -
hw/intc/openpic_kvm.c | 1 -
hw/isa/isa-bus.c | 1 -
hw/isa/lpc_ich9.c | 1 -
hw/isa/vt82c686.c | 1 -
hw/lm32/lm32_boards.c | 1 -
hw/lm32/milkymist.c | 1 -
hw/m68k/an5206.c | 1 -
hw/m68k/dummy_m68k.c | 1 -
hw/m68k/mcf5206.c | 1 -
hw/m68k/mcf5208.c | 1 -
hw/m68k/mcf_intc.c | 1 -
hw/microblaze/petalogix_ml605_mmu.c | 1 -
hw/microblaze/petalogix_s3adsp1800_mmu.c | 1 -
hw/mips/gt64xxx_pci.c | 1 -
hw/mips/mips_fulong2e.c | 1 -
hw/mips/mips_jazz.c | 1 -
hw/mips/mips_malta.c | 1 -
hw/mips/mips_mipssim.c | 1 -
hw/mips/mips_r4k.c | 1 -
hw/misc/arm_integrator_debug.c | 1 -
hw/misc/omap_gpmc.c | 1 -
hw/misc/vfio.c | 1 -
hw/moxie/moxiesim.c | 1 -
hw/net/mcf_fec.c | 1 -
hw/net/ne2000-isa.c | 1 -
hw/openrisc/openrisc_sim.c | 1 -
hw/pci-host/apb.c | 1 -
hw/pci-host/bonito.c | 1 -
hw/pci-host/ppce500.c | 1 -
hw/pci-host/prep.c | 1 -
hw/pci-host/versatile.c | 1 -
hw/pci/pci.c | 1 -
hw/pci/pcie_host.c | 1 -
hw/ppc/e500.c | 1 -
hw/ppc/mac_newworld.c | 1 -
hw/ppc/mac_oldworld.c | 1 -
hw/ppc/ppc405_boards.c | 1 -
hw/ppc/ppc405_uc.c | 1 -
hw/ppc/ppc440_bamboo.c | 1 -
hw/ppc/ppc4xx_devs.c | 1 -
hw/ppc/ppc4xx_pci.c | 1 -
hw/ppc/prep.c | 1 -
hw/ppc/spapr.c | 1 -
hw/ppc/spapr_iommu.c | 1 -
hw/ppc/spapr_pci.c | 1 -
hw/ppc/virtex_ml507.c | 1 -
hw/s390x/css.c | 1 -
hw/s390x/s390-virtio-ccw.c | 1 -
hw/s390x/s390-virtio.c | 1 -
hw/sh4/r2d.c | 1 -
hw/sh4/sh7750.c | 1 -
hw/sh4/sh_pci.c | 1 -
hw/sh4/shix.c | 1 -
hw/sparc/leon3.c | 1 -
hw/sparc64/sun4u.c | 1 -
hw/timer/m48t59.c | 1 -
hw/timer/sh_timer.c | 1 -
hw/tpm/tpm_tis.c | 1 -
hw/unicore32/puv3.c | 1 -
hw/virtio/dataplane/vring.c | 1 -
hw/virtio/vhost.c | 1 -
hw/virtio/virtio-balloon.c | 1 -
hw/virtio/virtio.c | 1 -
hw/xen/xen_platform.c | 1 -
hw/xen/xen_pt.c | 1 -
hw/xtensa/xtensa_lx60.c | 1 -
hw/xtensa/xtensa_sim.c | 1 -
include/disas/disas.h | 6 +-
include/exec/address-spaces.h | 41 ----
include/exec/cpu-all.h | 6 +
include/exec/cpu-common.h | 5 +
include/exec/exec-all.h | 302 +----------------------------
include/exec/gdbstub.h | 4 +-
include/exec/memory.h | 19 +-
include/exec/ram_addr.h | 5 +
include/exec/softmmu_template.h | 1 -
include/exec/translate.h | 310 ++++++++++++++++++++++++++++++
include/hw/arm/allwinner-a10.h | 1 -
include/hw/arm/omap.h | 6 +
include/hw/hw.h | 13 +-
include/hw/i386/apic.h | 6 +
include/hw/i386/apic_internal.h | 6 +
include/hw/sh4/sh_intc.h | 2 +-
include/hw/xen/xen.h | 4 +-
include/migration/vmstate.h | 11 ++
include/qemu-common.h | 11 --
include/qemu/log.h | 7 +-
include/qom/cpu.h | 14 --
include/sysemu/dma.h | 1 -
include/sysemu/kvm.h | 12 +-
include/sysemu/memory_mapping.h | 3 +-
ioport.c | 1 -
kvm-all.c | 1 -
kvm-stub.c | 1 -
memory.c | 1 -
memory_mapping.c | 7 +-
monitor.c | 1 -
target-sparc/mmu_helper.c | 1 -
target-xtensa/op_helper.c | 1 -
tcg/README | 2 +-
tcg/tcg.h | 6 +
tci.c | 2 +-
translate-all.c | 10 +-
translate-all.h | 27 ---
ui/input.c | 2 -
user-exec.c | 7 +-
xen-all.c | 1 -
160 files changed, 552 insertions(+), 563 deletions(-)
create mode 100644 docs/api-hierarchy.txt
delete mode 100644 include/exec/address-spaces.h
create mode 100644 include/exec/translate.h
delete mode 100644 translate-all.h
--
1.7.9.5