No description
Find a file
aliguori dd8edf0122 Add 64-bit Block Move support (Direct & Table Indirect) (Ryan Harper)
This patch adds support for 64-bit Block Move instructions.  There are multiple
modes for 64-bit Block moves, direct, indirect, and table indirect.  This patch
implements Direct and Table indirect moves which are needed by 64-bit windows
and SYM_CONF_DMA_ADDRESSING_MODE=2 for the Linux sym53c8xx_2 driver respectively.

Two helper functions are included to check which mode the guest is using.  For
 64-bit direct moves, we fetch a 3rd DWORD and store the value in the DBMS
register.  For Table Indirect moves, we look into the table for which register
contains the upper 32-bits of the 64-bit address.  This selector value indicates
which register to pull the value from and into dnad64 register.

Finally, lsi_do_dma is updated to use the approriate register to build a 64-bit
DMA address if required.

With this patch, Windows XP x64, 2003 SP2 x64, can now install to scsi devices.
Linux SYM_CONF_DMA_ADDRESSING_MODE=2 need a quirk fixup in Patch 4 to function
properly.

Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>



git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5969 c046a42c-6fe2-441c-8c8c-71466251a162
2008-12-10 15:38:47 +00:00
audio
bsd-user
darwin-user
fpu
gdb-xml
hw Add 64-bit Block Move support (Direct & Table Indirect) (Ryan Harper) 2008-12-10 15:38:47 +00:00
keymaps
linux-user linux-user: mremap(): handle MREMAP_FIXED and MREMAP_MAYMOVE correctly 2008-12-08 18:12:40 +00:00
pc-bios
slirp
target-alpha
target-arm
target-cris
target-i386 target-i386: Fix jmp im on x86_64 when executing 32-bit code 2008-12-10 15:02:16 +00:00
target-m68k
target-mips
target-ppc target-ppc: enable SPE and Altivec in user mode 2008-12-10 15:02:33 +00:00
target-sh4
target-sparc
tcg
tests
.gitignore
a.out.h
aes.c
aes.h
aio.c
alpha-dis.c
alpha.ld
arm-dis.c
arm-semi.c
arm.ld
balloon.h
block-bochs.c
block-cloop.c
block-cow.c
block-dmg.c
block-nbd.c
block-parallels.c
block-qcow.c
block-qcow2.c
block-raw-posix.c
block-raw-win32.c
block-vmdk.c
block-vpc.c
block-vvfat.c
block.c
block.h
block_int.h
bswap.h
bt-host.c
bt-vhci.c
buffered_file.c
buffered_file.h
Changelog
check_ops.sh
cocoa.m
configure Disable KVM support if the kernel modules have broken memory slot handling 2008-12-09 19:59:09 +00:00
console.c
console.h
COPYING
COPYING.LIB
cpu-all.h KVM: Coalesced MMIO support 2008-12-09 20:09:57 +00:00
cpu-defs.h
cpu-exec.c
cris-dis.c
curses.c
curses_keys.h
cutils.c
d3des.c
d3des.h
def-helper.h
dis-asm.h
disas.c
disas.h
dyngen-exec.h
elf.h
elf_ops.h
exec-all.h
exec.c KVM: Coalesced MMIO support 2008-12-09 20:09:57 +00:00
feature_to_c.sh
gdbstub.c
gdbstub.h
gen-icount.h
host-utils.c
host-utils.h
hostregs_helper.h
hpet.h
hppa-dis.c
hppa.ld
i386-dis.c
i386.ld
ia64.ld
keymaps.c
kqemu.c
kqemu.h
kvm-all.c KVM: Coalesced MMIO support 2008-12-09 20:09:57 +00:00
kvm.h KVM: Coalesced MMIO support 2008-12-09 20:09:57 +00:00
LICENSE
loader.c
m68k-dis.c
m68k-semi.c
m68k.ld
MAINTAINERS
Makefile
Makefile.target
migration-exec.c
migration-tcp.c
migration.c
migration.h
mips-dis.c
mips.ld
mipsel.ld
monitor.c Accept password as an argument to 'change vnc password' monitor command (Chris Webb) 2008-12-10 15:14:13 +00:00
nbd.c
nbd.h
net-checksum.c
net.c
net.h
osdep.c
osdep.h
ppc-dis.c
ppc.ld
ppc64.ld
qemu-aio.h
qemu-binfmt-conf.sh
qemu-char.c
qemu-char.h
qemu-common.h
qemu-doc.texi Accept password as an argument to 'change vnc password' monitor command (Chris Webb) 2008-12-10 15:14:13 +00:00
qemu-img.c
qemu-img.texi
qemu-lock.h
qemu-log.h
qemu-malloc.c
qemu-nbd.c
qemu-nbd.texi
qemu-sockets.c
qemu-tech.texi
qemu-timer.h
qemu-tool.c
qemu_socket.h
readline.c
README
s390-dis.c
s390.ld
savevm.c
sdl.c
sdl_keysym.h
sh4-dis.c
softmmu-semi.h
softmmu_defs.h
softmmu_exec.h
softmmu_header.h
softmmu_template.h
sparc-dis.c
sparc.ld
sparc64.ld
sys-queue.h
sysemu.h
tap-win32.c
texi2pod.pl
thunk.c
thunk.h
TODO
translate-all.c
uboot_image.h
usb-bsd.c
usb-linux.c
usb-stub.c
VERSION
vgafont.h
vl.c
vnc.c
vnc_keysym.h
vnchextile.h
x86_64.ld
x_keymap.c

Read the documentation in qemu-doc.html.

Fabrice Bellard.