qemu-irix/hw
Gerd Hoffmann 8ffb1bcf56 qdev: bus walker + qdev_device_add()
This patch implements a parser and qdev tree walker for bus paths and
adds qdev_device_add on top of this.

A bus path can be:
  (1) full path, i.e. /i440FX-pcihost/pci.0/lsi/scsi.0
  (2) bus name, i.e. "scsi.0".  Best used together with id= to make
      sure this is unique.
  (3) relative path starting with a bus name, i.e. "pci.0/lsi/scsi.0"

For the (common) case of a single child bus being attached to a device
it is enougth to specify the device only, i.e. "pci.0/lsi" will be
accepted too.

qdev_device_add() adds devices and accepts bus= parameters to find the
bus the device should be attached to.  Without bus= being specified it
takes the first bus it finds where the device can be attached to (i.e.
first pci bus for pci devices, ...).

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-07-27 08:39:29 -05:00
..
ac97.c qdev: es1370+ac97 description 2009-07-16 17:28:53 -05:00
acpi.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
adb.c
adlib.c
ads7846.c
alpha_palcode.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
an5206.c
apb_pci.c Sparc64: convert APB to qdev 2009-07-21 08:53:35 +00:00
apic.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
arm-misc.h
arm_boot.c
arm_gic.c
arm_pic.c
arm_sysctl.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
arm_timer.c
armv7m.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
armv7m_nvic.c
audiodev.h
axis_dev88.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
baum.c
baum.h
blizzard.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
blizzard_template.h Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
boards.h Add machine type aliases 2009-07-27 08:39:28 -05:00
bt-hci-csr.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
bt-hci.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
bt-hid.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
bt-l2cap.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
bt-sdp.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
bt.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
bt.h Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
cbus.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
cdrom.c
cirrus_vga.c Fix most warnings (errors with -Werror) when debugging is enabled 2009-07-20 17:19:25 +00:00
cirrus_vga_rop.h
cirrus_vga_rop2.h
cris_pic_cpu.c
cs4231.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
cs4231a.c
cuda.c
device-hotplug.c
devices.h
dma.c
dp8393x.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
ds1225y.c
dummy_m68k.c
e1000.c fix for bad macaddr of e1000 in Windows 2003 server with original MS driver 2009-07-16 17:28:54 -05:00
e1000_hw.h Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
ecc.c
eccmemctl.c Sparc32: use hex for version numbers 2009-07-17 11:01:50 +00:00
eepro100.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
eeprom93xx.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
eeprom93xx.h Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
es1370.c qdev: es1370+ac97 description 2009-07-16 17:28:53 -05:00
escc.c Sparc32: fix escc devices broken by ee6847d19b 2009-07-17 11:01:49 +00:00
escc.h
esp.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
etraxfs.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
etraxfs.h
etraxfs_dma.c
etraxfs_dma.h
etraxfs_eth.c
etraxfs_pic.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
etraxfs_ser.c
etraxfs_timer.c
fdc.c Clean up fdc qdev conversion 2009-07-20 06:56:23 +00:00
fdc.h
firmware_abi.h
flash.h
fmopl.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
fmopl.h
framebuffer.c
framebuffer.h
fw_cfg.c Add boot menu control via command line switch 2009-07-16 08:28:12 -05:00
fw_cfg.h Add boot menu control via command line switch 2009-07-16 08:28:12 -05:00
g364fb.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
grackle_pci.c
gt64xxx.c
gumstix.c
gus.c
gusemu.h
gusemu_hal.c
gusemu_mixer.c
gustate.h
heathrow_pic.c
hpet.c Reset HPET config register on hpet_reset 2009-07-16 17:28:50 -05:00
hpet_emul.h
hw.h Add qemu_unregister_reset 2009-07-16 08:28:12 -05:00
i2c.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
i2c.h qdev: rework device properties. 2009-07-16 17:28:51 -05:00
i8254.c
i8259.c Fix most warnings (errors with -Werror) when debugging is enabled 2009-07-20 17:19:25 +00:00
ide.c
integratorcp.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
ioapic.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
iommu.c Sparc32: use hex for version numbers 2009-07-17 11:01:50 +00:00
irq.c
irq.h
isa.h
isa_mmio.c
jazz_led.c
lm832x.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
lsi53c895a.c Add save/restore support to the LSI logic SCSI device model. 2009-07-22 10:58:47 -05:00
m48t59.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
mac_dbdma.c
mac_dbdma.h
mac_nvram.c
macio.c
mainstone.c
mainstone.h
max111x.c
max7310.c
mc146818rtc.c
mcf.h
mcf5206.c
mcf5208.c
mcf_fec.c
mcf_intc.c
mcf_uart.c
microblaze_pic_cpu.c
mips-bios.h
mips.h
mips_int.c
mips_jazz.c
mips_malta.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
mips_mipssim.c
mips_r4k.c
mips_timer.c
mipsnet.c
mpcore.c
msix.c qemu/msi: missing braces 2009-07-10 13:44:30 -05:00
msix.h
msmouse.c
msmouse.h
mst_fpga.c
musicpal.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
nand.c
ne2000.c
nseries.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
nvram.h
omap.h Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
omap1.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
omap2.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
omap_clk.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
omap_dma.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
omap_dss.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
omap_i2c.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
omap_lcd_template.h
omap_lcdc.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
omap_mmc.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
omap_sx1.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
onenand.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
openpic.c Fix most warnings (errors with -Werror) when debugging is enabled 2009-07-20 17:19:25 +00:00
openpic.h
palm.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
parallel.c
pc.c Add a pc-0.11 machine type and make the pc type an alias 2009-07-27 08:39:28 -05:00
pc.h
pci-hotplug.c
pci.c qdev/pci: use qdev_prop_pci_devfn 2009-07-27 08:39:29 -05:00
pci.h
pci_host.h
pci_ids.h Change default PCI class of virtio-console to PCI_CLASS_SERIAL_OTHER 2009-07-16 08:28:10 -05:00
pckbd.c
pcmcia.h
pcnet.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
pcspk.c
petalogix_s3adsp1800_mmu.c
pflash_cfi01.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
pflash_cfi02.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
piix_pci.c
pixel_ops.h
pl011.c
pl022.c
pl031.c
pl050.c
pl061.c
pl080.c
pl110.c
pl110_template.h
pl181.c
pl190.c
poison.h
ppc.c target-ppc: fix typo in _cpu_ppc_load_decr 2009-07-12 23:32:11 +02:00
ppc.h
ppc4xx.h
ppc4xx_devs.c
ppc4xx_pci.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
ppc405.h
ppc405_boards.c
ppc405_uc.c
ppc440.c
ppc440.h
ppc440_bamboo.c
ppc_mac.h Give the kernel more room 2009-07-26 06:31:32 +00:00
ppc_newworld.c PPC: Round VGA BIOS size to page boundary 2009-07-26 06:31:15 +00:00
ppc_oldworld.c PPC: Round VGA BIOS size to page boundary 2009-07-26 06:31:15 +00:00
ppc_prep.c Fix most warnings (errors with -Werror) when debugging is enabled 2009-07-20 17:19:25 +00:00
ppce500.h
ppce500_mpc8544ds.c
ppce500_pci.c Fix build with DEBUG_PCI in pci_host.h enabled 2009-07-20 10:37:51 +00:00
prep_pci.c
primecell.h
ps2.c Initialize PS2 keyboard / mouse state on reset 2009-07-16 17:28:51 -05:00
ps2.h
ptimer.c
pxa.h
pxa2xx.c
pxa2xx_dma.c
pxa2xx_gpio.c
pxa2xx_keypad.c
pxa2xx_lcd.c
pxa2xx_mmci.c
pxa2xx_pcmcia.c
pxa2xx_pic.c
pxa2xx_template.h
pxa2xx_timer.c
qdev-addr.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
qdev-addr.h qdev: rework device properties. 2009-07-16 17:28:51 -05:00
qdev-properties.c qdev/prop: add pci devfn property 2009-07-27 08:39:29 -05:00
qdev.c qdev: bus walker + qdev_device_add() 2009-07-27 08:39:29 -05:00
qdev.h qdev: bus walker + qdev_device_add() 2009-07-27 08:39:29 -05:00
r2d.c
rc4030.c
realview.c
realview_gic.c
rtl8139.c
sb16.c
sbi.c Sparc32: convert SBI to qdev 2009-07-21 19:25:59 +00:00
scsi-disk.c Fix most warnings (errors with -Werror) when debugging is enabled 2009-07-20 17:19:25 +00:00
scsi-disk.h
scsi-generic.c
scsi.h
sd.c
sd.h
serial.c
sh.h
sh7750.c
sh7750_regnames.c
sh7750_regnames.h
sh7750_regs.h
sh_intc.c
sh_intc.h
sh_pci.c
sh_serial.c
sh_timer.c
sharpsl.h
shix.c
slavio_intctl.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
slavio_misc.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
slavio_timer.c Fix most warnings (errors with -Werror) when debugging is enabled 2009-07-20 17:19:25 +00:00
sm501.c
sm501_template.h
smbios.c
smbios.h
smbus.c
smbus.h
smbus_eeprom.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
smc91c111.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
soc_dma.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
soc_dma.h Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
sparc32_dma.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
sparc32_dma.h Sparc32: convert sparc32_dma to qdev 2009-07-15 20:45:19 +00:00
spitz.c
ssd0303.c
ssd0323.c
ssi-sd.c
ssi.c
ssi.h
stellaris.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
stellaris_enet.c
stellaris_input.c
sun4c_intctl.c Sparc32: convert Sun4c interrupt controller to qdev 2009-07-21 19:57:32 +00:00
sun4m.c Sparc32: convert Sun4c interrupt controller to qdev 2009-07-21 19:57:32 +00:00
sun4m.h Sparc32: convert Sun4c interrupt controller to qdev 2009-07-21 19:57:32 +00:00
sun4u.c Sparc32/64: use 64 bit type for memory size 2009-07-21 11:20:11 +00:00
syborg.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
syborg.h
syborg_fb.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
syborg_interrupt.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
syborg_keyboard.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
syborg_pointer.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
syborg_rtc.c
syborg_serial.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
syborg_timer.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
syborg_virtio.c
sysbus.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
sysbus.h Sparc32: convert slavio interrupt controller to qdev 2009-07-16 14:15:34 +00:00
tc6393xb.c
tc6393xb_template.h Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
tc58128.c
tcx.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
tmp105.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
tosa.c
tsc210x.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
tsc2005.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
tusb6010.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
twl92230.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
unin_pci.c
usb-bt.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
usb-hid.c
usb-hub.c
usb-msd.c
usb-musb.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
usb-net.c
usb-ohci.c Fix most warnings (errors with -Werror) when debugging is enabled 2009-07-20 17:19:25 +00:00
usb-serial.c
usb-uhci.c Fix most warnings (errors with -Werror) when debugging is enabled 2009-07-20 17:19:25 +00:00
usb-wacom.c
usb.c
usb.h
versatile_pci.c
versatilepb.c
vga.c Fix most warnings (errors with -Werror) when debugging is enabled 2009-07-20 17:19:25 +00:00
vga_int.h
vga_template.h
virtio-balloon.c
virtio-balloon.h
virtio-blk.c
virtio-blk.h
virtio-console.c
virtio-console.h
virtio-net.c notify io_thread at the end of rx handling 2009-07-22 10:58:49 -05:00
virtio-net.h
virtio-pci.c qdev/compat: virtio-net-pci 0.10 compatibility. 2009-07-16 17:28:53 -05:00
virtio.c
virtio.h
vmmouse.c
vmport.c
vmware_vga.c
watchdog.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
watchdog.h Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
wdt_i6300esb.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
wdt_ib700.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
wm8750.c
xen.h
xen_backend.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
xen_backend.h
xen_blkif.h
xen_common.h
xen_console.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
xen_devconfig.c
xen_disk.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
xen_domainbuild.c
xen_domainbuild.h
xen_machine_pv.c
xen_nic.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
xenfb.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
xilinx.h qdev: rework device properties. 2009-07-16 17:28:51 -05:00
xilinx_ethlite.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
xilinx_intc.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
xilinx_timer.c qdev: rework device properties. 2009-07-16 17:28:51 -05:00
xilinx_uartlite.c
zaurus.c Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00