adding Irix (and, to a lesser extent, Solaris) userland emulation to QEMU
Go to file
Gerd Hoffmann 891fb2cd45 usb: claim port at device initialization time.
This patch makes qemu assign a port when creating the device, not when
attaching it.  For most usb devices this isn't a noticable difference
because they are in attached state all the time.

The change affects usb-host devices which live in detached state while
the real device is unplugged from the host.  They have a fixed port
assigned all the time now instead of getting grabbing one on attach and
releasing it at detach, i.e. they stop floating around at the usb bus.

The change also allows to simplify usb-hub.  It doesn't need the
handle_attach() callback any more to configure the downstream ports.
This can be done at device initialitation time now.  The changed
initialization order (first grab upstream port, then register downstream
ports) also fixes some icky corner cases.  For example it is not possible
any more to plug the hub into one of its own downstream ports.

The usb host adapters must care too.  USBPort->dev being non-NULL
doesn't imply any more the device is in attached state.  The host
adapters must additionally check the USBPort->dev->attached flag.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2011-09-07 09:58:26 +02:00
QMP
audio Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
block Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
bsd-user Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
darwin-user darwin-user: Remove two unused variables 2011-08-07 09:37:49 +00:00
default-configs
docs Merge remote-tracking branch 'stefanha/tracing' into staging 2011-09-02 10:08:48 -05:00
fpu softfloat: Use uint32 consistently 2011-09-03 17:47:14 +00:00
fsdev use readdir_r instead of readdir for reentrancy 2011-08-22 09:44:52 +05:30
gdb-xml
hw usb: claim port at device initialization time. 2011-09-07 09:58:26 +02:00
libcacard Fix spelling in comments and debug messages (recieve -> receive) 2011-08-29 11:47:33 +01:00
linux-headers
linux-user Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
net Allow overriding the location of Samba's smbd. 2011-09-03 17:45:48 +00:00
pc-bios seabios: update to master 2011-08-10 17:34:13 +02:00
qapi Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qga Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
roms seabios: update to master 2011-08-10 17:34:13 +02:00
scripts simpletrace: fix process() argument count 2011-09-01 10:34:54 +01:00
slirp Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
sysconfigs/target
target-alpha Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
target-arm Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
target-cris Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
target-i386 Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
target-lm32 Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
target-m68k Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
target-microblaze microblaze: Add an MSR_PVR constant and use it. 2011-08-25 22:44:25 +02:00
target-mips mips: Support the MT TCStatus IXMT irq disable flag 2011-09-06 11:09:39 +02:00
target-ppc PPC: E500: Set ESR values 2011-08-23 22:24:40 +02:00
target-s390x Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
target-sh4 Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
target-sparc Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
target-unicore32 Fix conversions from pointer to tcg_target_long 2011-08-21 15:32:21 +00:00
tcg tcg/ppc/tcg-target.c: Avoid 'set but not used' gcc warnings 2011-09-01 21:20:50 +04:00
tests Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
trace trace: [stderr] add support for dynamically enabling/disabling events 2011-09-01 10:34:54 +01:00
ui sdl: Don't release input on mouse mode change in full-screen mode 2011-08-22 14:37:04 -05:00
.gitignore coroutine: add test-coroutine automated tests 2011-08-02 15:53:40 +02:00
.gitmodules
CODING_STYLE CODING_STYLE: explicitly allow braceless 'else if' 2011-07-29 09:33:56 -05:00
COPYING
COPYING.LIB
Changelog
HACKING Convert last qemu_free and qemu_malloc uses 2011-08-21 18:42:08 +00:00
LICENSE
MAINTAINERS MAINTAINERS: add entry for Xen 2011-08-05 10:57:34 -05:00
Makefile Rename qemu -> qemu-system-i386 2011-09-02 10:34:55 -05:00
Makefile.dis
Makefile.hw Revert "Merge remote-tracking branch 'qemu-kvm/memory/batch' into staging" 2011-08-25 14:39:18 -05:00
Makefile.objs trace: [stderr] add support for dynamically enabling/disabling events 2011-09-01 10:34:54 +01:00
Makefile.target Rename qemu -> qemu-system-i386 2011-09-02 10:34:55 -05:00
Makefile.user
README
TODO
VERSION Open 1.0 development branch. 2011-07-23 11:57:53 -05:00
a.out.h Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
acl.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
acl.h
aes.c
aes.h
aio.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
alpha-dis.c
alpha.ld
arch_init.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
arch_init.h
arm-dis.c
arm-semi.c
arm.ld Fix linker scripts 2011-08-27 15:42:35 +00:00
async.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
balloon.c balloon: Reject negative balloon values 2011-08-04 16:43:09 -05:00
balloon.h balloon: Don't allow multiple balloon handler registrations 2011-08-04 16:43:09 -05:00
bitmap.c
bitmap.h Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
bitops.c
bitops.h
block-migration.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
block-migration.h
block.c Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
block.h block: latency accounting 2011-08-26 18:18:38 +02:00
block_int.h block: latency accounting 2011-08-26 18:18:38 +02:00
blockdev.c block: parse cache mode flags in a single place 2011-08-23 14:15:17 +02:00
blockdev.h
bswap.h move unaligned memory access functions to bswap.h 2011-07-29 08:25:45 -05:00
bt-host.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
bt-host.h
bt-vhci.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
buffered_file.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
buffered_file.h
cache-utils.c
cache-utils.h
check-qdict.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
check-qfloat.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
check-qint.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
check-qjson.c
check-qlist.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
check-qstring.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
cmd.c
cmd.h
compatfd.c Register Linux dyntick timer as per-thread signal 2011-07-23 11:26:12 -05:00
compatfd.h Register Linux dyntick timer as per-thread signal 2011-07-23 11:26:12 -05:00
compiler.h Add new macro QEMU_PACKED for packed C structures 2011-09-03 10:45:46 +00:00
config.h
configure Allow overriding the location of Samba's smbd. 2011-09-03 17:45:48 +00:00
console.c char: remove qemu_chr_send_event() 2011-08-22 10:17:44 -05:00
console.h Introduce a 'client_add' monitor command accepting an open FD 2011-07-23 11:19:02 -05:00
coroutine-gthread.c Convert last qemu_free and qemu_malloc uses 2011-08-21 18:42:08 +00:00
coroutine-ucontext.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
coroutine-win32.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
cpu-all.h fix QLIST usage for RAM list 2011-08-12 13:07:58 +01:00
cpu-common.h Merge remote-tracking branch 'agraf/xen-next' into staging 2011-07-29 09:42:12 -05:00
cpu-defs.h
cpu-exec.c
cpus.c main: force enabling of I/O thread 2011-09-02 10:34:55 -05:00
cpus.h
cris-dis.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
cursor.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
cursor_hidden.xpm
cursor_left_ptr.xpm
cutils.c Fix up some style nits of last uq/master merge 2011-08-25 09:21:35 +01:00
def-helper.h
device_tree.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
device_tree.h
dis-asm.h
disas.c disasm: update comment 2011-08-25 09:21:48 +01:00
disas.h
dma-helpers.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
dma.h move QEMUSGList typedef 2011-08-04 15:51:22 +02:00
dyngen-exec.h dyngen-exec.h: cleanup 2011-08-28 07:17:08 +00:00
elf.h
envlist.c
envlist.h
error.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
error.h Error: Fix build when qemu-common.h is not included 2011-07-21 16:48:13 -03:00
error_int.h
exec-all.h Fix unassigned memory access handling 2011-07-20 21:28:08 +00:00
exec-memory.h Integrate I/O memory regions into qemu 2011-08-08 10:15:53 -05:00
exec.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
gdbstub.c char: rename qemu_chr_close() -> qemu_chr_delete() 2011-08-22 10:17:43 -05:00
gdbstub.h
gen-icount.h
hmp-commands.hx trace: always compile support for controlling and querying trace event states 2011-09-01 10:34:54 +01:00
host-utils.c
host-utils.h
hpet.h
hppa-dis.c
hppa.ld Fix linker scripts 2011-08-27 15:42:35 +00:00
i386-dis.c
i386.ld Fix linker scripts 2011-08-27 15:42:35 +00:00
ia64-dis.c
ia64.ld
input.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
iohandler.c main: switch qemu_set_fd_handler to g_io_add_watch 2011-09-01 13:12:33 -05:00
ioport-user.c
ioport.c ioport: register ranges by byte aligned addresses always 2011-07-29 08:25:44 -05:00
ioport.h report serial devices created with -device in the PIIX4 config space 2011-07-23 10:56:55 -05:00
iorange.h
iov.c Add iov_clear() 2011-08-04 15:51:22 +02:00
iov.h Add iov_clear() 2011-08-04 15:51:22 +02:00
json-lexer.c
json-lexer.h
json-parser.c
json-parser.h
json-streamer.c
json-streamer.h
kvm-all.c main: force enabling of I/O thread 2011-09-02 10:34:55 -05:00
kvm-stub.c
kvm.h
libfdt_env.h
linux-aio.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
m68k-dis.c
m68k-semi.c Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
m68k.ld
memory.c memory: Fix memory_region_get_ram_ptr for ROM devices 2011-08-30 11:20:18 +03:00
memory.h memory: add opaque parameter to memory_region_init_rom_device() 2011-08-26 00:35:15 +03:00
microblaze-dis.c
migration-exec.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
migration-fd.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
migration-tcp.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
migration-unix.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
migration.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
migration.h
mips-dis.c
mips.ld Fix linker scripts 2011-08-27 15:42:35 +00:00
module.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
module.h qapi: add module init types for qapi 2011-07-21 16:48:13 -03:00
monitor.c trace: always compile support for controlling and querying trace event states 2011-09-01 10:34:54 +01:00
monitor.h
nbd.c Wrap recv to avoid warnings 2011-07-25 14:38:56 +00:00
nbd.h Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
net.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
net.h Allow overriding the location of Samba's smbd. 2011-09-03 17:45:48 +00:00
notify.c notifier: Pass data argument to callback 2011-07-23 11:26:06 -05:00
notify.h notifier: Pass data argument to callback 2011-07-23 11:26:06 -05:00
os-posix.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
os-win32.c w32: Fix format string regression 2011-08-21 15:33:33 +00:00
osdep.c
osdep.h w64: Add definition of FMT_pid 2011-08-21 15:33:22 +00:00
oslib-posix.c Add missing trace call to oslib-posix.c:qemu_vmalloc() 2011-07-29 09:33:48 -05:00
oslib-win32.c
path.c
pci-ids.txt
pflib.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
pflib.h
poison.h Avoid CPU endian memory accesses in devices 2011-07-20 21:22:43 +00:00
posix-aio-compat.c posix-aio-compat: fix latency issues 2011-08-23 17:41:14 +02:00
ppc-dis.c
ppc.ld Fix linker scripts 2011-08-27 15:42:35 +00:00
ppc64.ld Fix linker scripts 2011-08-27 15:42:35 +00:00
qapi-schema-guest.json guest agent: add guest agent RPCs/commands 2011-07-21 16:48:15 -03:00
qapi-schema-test.json qapi: test schema used for unit tests 2011-07-21 16:48:14 -03:00
qbool.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qbool.h
qdict-test-data.txt
qdict.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qdict.h
qemu-aio.h
qemu-barrier.h
qemu-char.c char: remove qemu_chr_send_event() 2011-08-22 10:17:44 -05:00
qemu-char.h char: document the functions that will be the public interface 2011-08-22 10:17:44 -05:00
qemu-common.h Remove qemu_malloc/qemu_free 2011-08-20 23:01:08 -05:00
qemu-config.c trace: add "-trace events" argument to control initial state 2011-09-01 10:34:54 +01:00
qemu-config.h
qemu-coroutine-int.h coroutines: Locks 2011-08-02 15:53:40 +02:00
qemu-coroutine-lock.c coroutine: Add CoRwlock support 2011-08-23 14:15:17 +02:00
qemu-coroutine.c coroutine: introduce coroutines 2011-08-01 12:14:09 +02:00
qemu-coroutine.h coroutine: Add CoRwlock support 2011-08-23 14:15:17 +02:00
qemu-doc.texi sdl: Add zoom hot keys 2011-08-05 10:57:35 -05:00
qemu-error.c
qemu-error.h
qemu-ga.c Fix spelling in comments and debug messages (recieve -> receive) 2011-08-29 11:47:33 +01:00
qemu-img-cmds.hx qemu-img: Require larger zero areas for sparse handling 2011-08-29 14:42:39 +02:00
qemu-img.c qemu-img: Require larger zero areas for sparse handling 2011-08-29 14:42:39 +02:00
qemu-img.texi qemu-img: Require larger zero areas for sparse handling 2011-08-29 14:42:39 +02:00
qemu-io.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qemu-lock.h
qemu-log.h
qemu-nbd.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qemu-nbd.texi
qemu-objects.h
qemu-option.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qemu-option.h
qemu-options.h
qemu-options.hx Allow overriding the location of Samba's smbd. 2011-09-03 17:45:48 +00:00
qemu-os-posix.h
qemu-os-win32.h
qemu-progress.c
qemu-queue.h
qemu-sockets.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qemu-tech.texi
qemu-thread-posix.c
qemu-thread-posix.h
qemu-thread-win32.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qemu-thread-win32.h
qemu-thread.h
qemu-timer-common.c
qemu-timer.c main: force enabling of I/O thread 2011-09-02 10:34:55 -05:00
qemu-timer.h qemu-timer: Introduce clock reset notifier 2011-07-23 11:26:12 -05:00
qemu-tool.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qemu-x509.h
qemu.sasl
qemu_socket.h
qerror.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qerror.h Introduce a 'client_add' monitor command accepting an open FD 2011-07-23 11:19:02 -05:00
qfloat.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qfloat.h
qint.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qint.h
qjson.c
qjson.h
qlist.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qlist.h qlist: add qlist_first()/qlist_next() 2011-07-21 16:48:13 -03:00
qmp-commands.hx block: latency accounting 2011-08-26 18:18:38 +02:00
qobject.h
qstring.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qstring.h
range.h
readline.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
readline.h
rules.mak build: sort objects to remove duplicates for link 2011-09-01 13:12:51 -05:00
rwhandler.c Revert "Merge remote-tracking branch 'qemu-kvm/memory/batch' into staging" 2011-08-25 14:39:18 -05:00
rwhandler.h Revert "Merge remote-tracking branch 'qemu-kvm/memory/batch' into staging" 2011-08-25 14:39:18 -05:00
s390-dis.c
s390.ld
savevm.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
sh4-dis.c
softmmu-semi.h Correct spelling of licensed 2011-07-23 11:26:12 -05:00
softmmu_defs.h
softmmu_exec.h
softmmu_header.h
softmmu_template.h
sparc-dis.c
sparc.ld Fix linker scripts 2011-08-27 15:42:35 +00:00
sparc64.ld
spice-qemu-char.c char: rename qemu_chr_can_read() -> qemu_chr_be_can_read() 2011-08-22 10:17:16 -05:00
sysemu.h Poll main loop after I/O events were received 2011-08-22 14:37:02 -05:00
targphys.h
tcg-runtime.c
test-coroutine.c coroutine: add test-coroutine --benchmark-lifecycle 2011-08-02 15:53:40 +02:00
test-qmp-commands.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
test-visitor.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
thunk.c
thunk.h
trace-events usb: claim port at device initialization time. 2011-09-07 09:58:26 +02:00
translate-all.c
uboot_image.h
usb-bsd.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
usb-linux.c usb-host: parse port in /proc/bus/usb/devices scan 2011-09-07 09:58:16 +02:00
usb-redir.c char: rename qemu_chr_close() -> qemu_chr_delete() 2011-08-22 10:17:43 -05:00
usb-stub.c
user-exec.c Remove unused is_softmmu parameter from cpu_handle_mmu_fault 2011-08-07 09:32:01 +00:00
version.rc
vgafont.h
vl.c rename qemu_malloc and related to glib names for coherence 2011-09-02 10:35:41 -05:00
x86_64.ld Fix linker scripts 2011-08-27 15:42:35 +00:00
xen-all.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
xen-mapcache.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
xen-mapcache.h xen: fix xen-mapcache build on non-Xen capable targets 2011-07-22 17:43:42 +00:00
xen-stub.c

README

Read the documentation in qemu-doc.html.

Fabrice Bellard.