From: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: Peter Crosthwaite <peter.crosthwaite@petalogix.com>,
peter.maydell@linaro.org, qemu-devel@nongnu.org,
afaerber@suse.de, agraf@suse.de
Subject: Re: [Qemu-devel] [RFC] Proposal for hw/ split
Date: Mon, 11 Mar 2013 12:52:19 +0100 [thread overview]
Message-ID: <20130311115219.GA19147@zapo> (raw)
In-Reply-To: <1363000640-13398-1-git-send-email-pbonzini@redhat.com>
On Mon, Mar 11, 2013 at 12:17:20PM +0100, Paolo Bonzini wrote:
> The general ideas are (earlier rules override the later, and exceptions
> are of course possible):
>
> - Board files go in hw/ARCH/ (already done).
>
> - Files go in hw/ARCH/ if they reference that arch's CPUState (already done)
>
> - Files already in a subdirectory are not moved (examples: some PPC/S390
> files, USB devices).
>
> - Files go in hw/ARCH/ if they used to be in hw/ARCH/Makefile.objs and
> they define multiple devices (example: hw/arm/tc6393xb.c)
>
> - Directories are created by "subsystem" (e.g. hw/pci) and "device type"
> (hw/audio), with the "device type" taking priority.
>
> Here is the list of .c files in hw/ and the corresponding destination.
>
> Maintainers that wish to have more files in hw/ARCH are welcome to take
> a look at the list of hw/misc devices and suggest changes.
>
> As a general rule, composite devices ought to be split into multiple
> devices with a small stub in hw/ARCH to build up the result. For
> example, hw/display/sm501.c could be split into hw/display/sm501_crt.c
> and the rest moved into hw/sh4/r2d.c.
>
> == hw/acpi ==
> hw/acpi.c hw/acpi/core.c
> hw/acpi_ich9.c hw/acpi/ich9.c
> hw/acpi_piix4.c hw/acpi/piix4.c
>
> == hw/audio ==
> hw/ac97.c hw/audio/ac97.c
> hw/adlib.c hw/audio/adlib.c
> hw/cs4231a.c hw/audio/cs4231a.c
> hw/cs4231.c hw/audio/cs4231.c
> hw/es1370.c hw/audio/es1370.c
> hw/fmopl.c hw/audio/fmopl.c
> hw/gus.c hw/audio/gus.c
> hw/gusemu_hal.c hw/audio/gusemu_hal.c
> hw/gusemu_mixer.c hw/audio/gusemu_mixer.c
> hw/hda-audio.c hw/audio/hda-codec.c
> hw/intel-hda.c hw/audio/intel-hda.c
> hw/lm4549.c hw/audio/lm4549.c
> hw/marvell_88w8618_audio.c hw/audio/marvell_88w8618.c
> hw/milkymist-ac97.c hw/audio/milkymist-ac97.c
> hw/pcspk.c hw/audio/pcspk.c
> hw/pl041.c hw/audio/pl041.c
> hw/sb16.c hw/audio/sb16.c
> hw/wm8750.c hw/audio/wm8750.c
>
> == hw/block ==
> hw/block-common.c hw/block/block.c
> hw/cdrom.c hw/block/cdrom.c
> hw/dataplane/Makefile.objs hw/block/dataplane/Makefile.objs
> hw/dataplane/hostmem.c hw/block/dataplane/hostmem.c
> hw/dataplane/ioq.c hw/block/dataplane/ioq.c
> hw/dataplane/virtio-blk.c hw/block/dataplane/virtio-blk.c
> hw/dataplane/vring.c hw/block/dataplane/vring.c
> hw/ecc.c hw/block/ecc.c
> hw/fdc.c hw/block/fdc.c
> hw/hd-geometry.c hw/block/hd-geometry.c
> hw/m25p80.c hw/block/m25p80.c
> hw/nand.c hw/block/nand.c
> hw/onenand.c hw/block/onenand.c
> hw/pc_sysfw.c hw/block/pc_sysfw.c
> hw/pflash_cfi01.c hw/block/pflash_cfi01.c
> hw/pflash_cfi02.c hw/block/pflash_cfi02.c
> hw/tc58128.c hw/block/tc58128.c
> hw/virtio-blk.c hw/block/virtio-blk.c
> hw/xen_disk.c hw/block/xen_disk.c
>
> == hw/bt ==
> hw/bt-hci-csr.c hw/bt/hci-csr.c
> hw/bt-hci.c hw/bt/hci.c
> hw/bt-hid.c hw/bt/hid.c
> hw/bt-l2cap.c hw/bt/l2cap.c
> hw/bt-sdp.c hw/bt/sdp.c
> hw/bt.c hw/bt/core.c
>
> == hw/char ==
> hw/cadence_uart.c hw/char/cadence_uart.c
> hw/debugcon.c hw/char/debugcon.c
> hw/escc.c hw/char/escc.c
> hw/etraxfs_ser.c hw/char/etraxfs_ser.c
> hw/exynos4210_uart.c hw/char/exynos4210_uart.c
> hw/grlib_apbuart.c hw/char/grlib_apbuart.c
> hw/imx_serial.c hw/char/imx_serial.c
> hw/ipack.c hw/char/ipack.c
> hw/ipoctal232.c hw/char/ipoctal232.c
> hw/lm32_juart.c hw/char/lm32_juart.c
> hw/lm32_uart.c hw/char/lm32_uart.c
> hw/mcf_uart.c hw/char/mcf_uart.c
> hw/milkymist-uart.c hw/char/milkymist-uart.c
> hw/omap_uart.c hw/char/omap_uart.c
> hw/parallel.c hw/char/parallel.c
> hw/pl011.c hw/char/pl011.c
> hw/s390x/sclpconsole.c hw/char/sclpconsole.c
> hw/serial-isa.c hw/char/serial-isa.c
> hw/serial-pci.c hw/char/serial-pci.c
> hw/serial.c hw/char/serial.c
> hw/sh_serial.c hw/char/sh_serial.c
> hw/spapr_vty.c hw/char/spapr_vty.c
> hw/tpci200.c hw/char/tpci200.c
> hw/virtio-console.c hw/char/virtio-console.c
> hw/virtio-serial-bus.c hw/char/virtio-serial-bus.c
> hw/xen_console.c hw/char/xen_console.c
> hw/xilinx_uartlite.c hw/char/xilinx_uartlite.c
>
> == hw/core ==
> hw/empty_slot.c hw/core/empty_slot.c
> hw/irq.c hw/core/irq.c
> hw/loader.c hw/core/loader.c
> hw/null-machine.c hw/core/null-machine.c
> hw/ptimer.c hw/core/ptimer.c
> hw/qdev-addr.c hw/core/qdev-addr.c
> hw/qdev-properties-system.c hw/core/qdev-properties-system.c
> hw/qdev-properties.c hw/core/qdev-properties.c
> hw/qdev.c hw/core/qdev.c
> hw/stream.c hw/core/stream.c
> hw/sysbus.c hw/core/sysbus.c
>
> == hw/display ==
> hw/ads7846.c hw/display/ads7846.c
> hw/blizzard.c hw/display/blizzard.c
> hw/cirrus_vga.c hw/display/cirrus_vga.c
> hw/exynos4210_fimd.c hw/display/exynos4210_fimd.c
> hw/framebuffer.c hw/display/framebuffer.c
> hw/g364fb.c hw/display/g364fb.c
> hw/jazz_led.c hw/display/jazz_led.c
> hw/milkymist-tmu2.c hw/display/milkymist-tmu2.c
> hw/milkymist-vgafb.c hw/display/milkymist-vgafb.c
> hw/omap_dss.c hw/display/omap_dss.c
> hw/omap_lcdc.c hw/display/omap_lcdc.c
> hw/pl110.c hw/display/pl110.c
> hw/pxa2xx_lcd.c hw/display/pxa2xx_lcd.c
> hw/qxl-logger.c hw/display/qxl-logger.c
> hw/qxl-render.c hw/display/qxl-render.c
> hw/qxl.c hw/display/qxl.c
> hw/sm501.c hw/display/sm501.c
> hw/ssd0303.c hw/display/ssd0303.c
> hw/ssd0323.c hw/display/ssd0323.c
> hw/tcx.c hw/display/tcx.c
> hw/vga-isa-mm.c hw/display/vga-isa-mm.c
> hw/vga-isa.c hw/display/vga-isa.c
> hw/vga-pci.c hw/display/vga-pci.c
> hw/vga.c hw/display/vga.c
> hw/vmware_vga.c hw/display/vmware_vga.c
> hw/xenfb.c hw/display/xenfb.c
>
> == hw/dma ==
> hw/dma.c hw/dma/i8257.c
> hw/etraxfs_dma.c hw/dma/etraxfs_dma.c
> hw/omap_dma.c hw/dma/omap_dma.c
> hw/pl080.c hw/dma/pl080.c
> hw/puv3_dma.c hw/dma/puv3_dma.c
> hw/pxa2xx_dma.c hw/dma/pxa2xx_dma.c
> hw/rc4030.c hw/dma/rc4030.c
> hw/soc_dma.c hw/dma/soc_dma.c
> hw/sparc32_dma.c hw/dma/sparc32_dma.c
> hw/sun4m_iommu.c hw/dma/sun4m_iommu.c
>
> == hw/gpio ==
> hw/max7310.c hw/gpio/max7310.c
> hw/omap_gpio.c hw/gpio/omap_gpio.c
> hw/pl061.c hw/gpio/pl061.c
> hw/puv3_gpio.c hw/gpio/puv3_gpio.c
> hw/zaurus.c hw/gpio/zaurus.c
>
> == hw/i2c ==
> hw/bitbang_i2c.c hw/i2c/bitbang_i2c.c
> hw/exynos4210_i2c.c hw/i2c/exynos4210_i2c.c
> hw/i2c.c hw/i2c/core.c
> hw/omap_i2c.c hw/i2c/omap_i2c.c
> hw/pm_smbus.c hw/i2c/pm_smbus.c
> hw/smbus.c hw/i2c/smbus.c
> hw/smbus_eeprom.c hw/i2c/smbus_eeprom.c
> hw/smbus_ich9.c hw/i2c/smbus_ich9.c
> hw/versatile_i2c.c hw/i2c/versatile_i2c.c
>
> == hw/input ==
> hw/adb.c hw/input/adb.c
> hw/hid.c hw/input/hid.c
> hw/lm832x.c hw/input/lm832x.c
> hw/milkymist-softusb.c hw/input/milkymist-softusb.c
> hw/pckbd.c hw/input/pckbd.c
> hw/pl050.c hw/input/pl050.c
> hw/ps2.c hw/input/ps2.c
> hw/pxa2xx_keypad.c hw/input/pxa2xx_keypad.c
> hw/stellaris_input.c hw/input/stellaris_input.c
> hw/tsc2005.c hw/input/tsc2005.c
> hw/tsc210x.c hw/input/tsc210x.c
> hw/vmmouse.c hw/input/vmmouse.c
>
> == hw/intc ==
> hw/apic.c hw/intc/apic.c
> hw/apic_common.c hw/intc/apic_common.c
> hw/arm_gic.c hw/intc/arm_gic.c
> hw/arm_gic_common.c hw/intc/arm_gic_common.c
> hw/armv7m_nvic.c hw/intc/armv7m_nvic.c
> hw/etraxfs_pic.c hw/intc/etraxfs_pic.c
> hw/exynos4210_combiner.c hw/intc/exynos4210_combiner.c
> hw/exynos4210_gic.c hw/intc/exynos4210_gic.c
> hw/grlib_irqmp.c hw/intc/grlib_irqmp.c
> hw/heathrow_pic.c hw/intc/heathrow_pic.c
> hw/i8259.c hw/intc/i8259.c
> hw/i8259_common.c hw/intc/i8259_common.c
> hw/imx_avic.c hw/intc/imx_avic.c
> hw/ioapic.c hw/intc/ioapic.c
> hw/ioapic_common.c hw/intc/ioapic_common.c
> hw/lm32_pic.c hw/intc/lm32_pic.c
> hw/omap_intc.c hw/intc/omap_intc.c
> hw/openpic.c hw/intc/openpic.c
> hw/pl190.c hw/intc/pl190.c
> hw/puv3_intc.c hw/intc/puv3_intc.c
> hw/realview_gic.c hw/intc/realview_gic.c
> hw/sbi.c hw/intc/sbi.c
> hw/sh_intc.c hw/intc/sh_intc.c
> hw/slavio_intctl.c hw/intc/slavio_intctl.c
> hw/sun4c_intctl.c hw/intc/sun4c_intctl.c
> hw/xilinx_intc.c hw/intc/xilinx_intc.c
>
> == hw/isa ==
> hw/apm.c hw/isa/apm.c
> hw/applesmc.c hw/isa/applesmc.c
> hw/debugexit.c hw/isa/debugexit.c
> hw/i82374.c hw/isa/i82374.c
> hw/i82378.c hw/isa/i82378.c
> hw/isa-bus.c hw/isa/isa-bus.c
> hw/isa_mmio.c hw/isa/isa_mmio.c
> hw/lpc_ich9.c hw/isa/lpc_ich9.c
> hw/pc-testdev.c hw/isa/pc-testdev.c
> hw/pc87312.c hw/isa/pc87312.c
> hw/piix4.c hw/isa/piix4.c
> hw/sga.c hw/isa/sga.c
> hw/vmport.c hw/isa/vmport.c
> hw/vt82c686.c hw/isa/vt82c686.c
>
> == hw/misc ==
> hw/a9scu.c hw/misc/a9scu.c
> hw/arm_l2x0.c hw/misc/arm_l2x0.c
> hw/arm_sysctl.c hw/misc/arm_sysctl.c
> hw/cbus.c hw/misc/cbus.c
> hw/cuda.c hw/misc/macio/cuda.c
> hw/eccmemctl.c hw/misc/eccmemctl.c
> hw/exynos4210_pmu.c hw/misc/exynos4210_pmu.c
> hw/imx_ccm.c hw/misc/imx_ccm.c
> hw/lm32_sys.c hw/misc/lm32_sys.c
> hw/mac_dbdma.c hw/misc/macio/mac_dbdma.c
> hw/macio.c hw/misc/macio/macio.c
> hw/max111x.c hw/misc/max111x.c
> hw/milkymist-hpdmc.c hw/misc/milkymist-hpdmc.c
> hw/milkymist-pfpu.c hw/misc/milkymist-pfpu.c
> hw/mst_fpga.c hw/misc/mst_fpga.c
> hw/omap_clk.c hw/misc/omap_clk.c
> hw/omap_gpmc.c hw/misc/omap_gpmc.c
> hw/omap_l4.c hw/misc/omap_l4.c
> hw/omap_sdrc.c hw/misc/omap_sdrc.c
> hw/omap_tap.c hw/misc/omap_tap.c
> hw/puv3_pm.c hw/misc/puv3_pm.c
> hw/pxa2xx_pcmcia.c hw/misc/pxa2xx_pcmcia.c
> hw/slavio_misc.c hw/misc/slavio_misc.c
> hw/tmp105.c hw/misc/tmp105.c
> hw/zynq_slcr.c hw/misc/zynq_slcr.c
>
> == hw/net ==
> hw/cadence_gem.c hw/net/cadence_gem.c
> hw/dp8393x.c hw/net/dp8393x.c
> hw/e1000.c hw/net/e1000.c
> hw/eepro100.c hw/net/eepro100.c
> hw/etraxfs_eth.c hw/net/etraxfs_eth.c
> hw/lan9118.c hw/net/lan9118.c
> hw/lance.c hw/net/lance.c
> hw/mcf_fec.c hw/net/mcf_fec.c
> hw/milkymist-minimac2.c hw/net/milkymist-minimac2.c
> hw/mipsnet.c hw/net/mipsnet.c
> hw/ne2000-isa.c hw/net/ne2000-isa.c
> hw/ne2000.c hw/net/ne2000.c
> hw/opencores_eth.c hw/net/opencores_eth.c
> hw/pcnet-pci.c hw/net/pcnet-pci.c
> hw/pcnet.c hw/net/pcnet.c
> hw/rtl8139.c hw/net/rtl8139.c
> hw/smc91c111.c hw/net/smc91c111.c
> hw/spapr_llan.c hw/net/spapr_llan.c
> hw/stellaris_enet.c hw/net/stellaris_enet.c
> hw/vhost_net.c hw/net/vhost_net.c
> hw/virtio-net.c hw/net/virtio-net.c
> hw/xen_nic.c hw/net/xen_nic.c
> hw/xgmac.c hw/net/xgmac.c
> hw/xilinx_axidma.c hw/net/xilinx_axidma.c
Hi Paulo,
hw/xilinx_axidma.c is a generic DMA unit, should probably
go under hw/dma.
Best regards,
Edgar
next prev parent reply other threads:[~2013-03-11 11:52 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-11 11:17 [Qemu-devel] [RFC] Proposal for hw/ split Paolo Bonzini
2013-03-11 11:31 ` Peter Maydell
2013-03-11 11:54 ` Paolo Bonzini
2013-03-11 12:39 ` Peter Maydell
2013-03-11 12:44 ` Paolo Bonzini
2013-03-11 13:08 ` Peter Maydell
2013-03-11 13:12 ` Paolo Bonzini
2013-03-11 13:19 ` Markus Armbruster
2013-03-11 11:52 ` Edgar E. Iglesias [this message]
2013-03-11 13:37 ` Stefan Hajnoczi
2013-03-12 6:48 ` Richard Henderson
2013-03-12 7:33 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130311115219.GA19147@zapo \
--to=edgar.iglesias@gmail.com \
--cc=afaerber@suse.de \
--cc=agraf@suse.de \
--cc=pbonzini@redhat.com \
--cc=peter.crosthwaite@petalogix.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.