aliguori [Mon, 22 Dec 2008 21:06:23 +0000 (21:06 +0000)]
Properly handle the case of SetPixelEncodings with a length of zero.
This commit addresses CORE-2008-1210/CVE-2008-2382.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6121
c046a42c-6fe2-441c-8c8c-
71466251a162
malc [Mon, 22 Dec 2008 20:33:55 +0000 (20:33 +0000)]
Use the ARRAY_SIZE() macro where appropriate.
Change from v1:
Avoid changing the existing coding style in certain files.
Signed-off-by: Stuart Brady <stuart.brady@gmail.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6120
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Sun, 21 Dec 2008 16:00:20 +0000 (16:00 +0000)]
hw/slavio_misc.c remove address from debug trace (Robert Reif)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6119
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Sun, 21 Dec 2008 10:46:23 +0000 (10:46 +0000)]
add Arbiter Enable Register support to sparc iommu (Robert Reif)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6118
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Sun, 21 Dec 2008 01:37:01 +0000 (01:37 +0000)]
Update to latest Bochs BIOS
A number of our patches have been merged so we can now remove them from our
queue.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6117
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Sun, 21 Dec 2008 01:30:22 +0000 (01:30 +0000)]
Remove obsolete VGABIOS patch.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6116
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sat, 20 Dec 2008 23:41:32 +0000 (23:41 +0000)]
softfloat-native: fix type of float_rounding_mode
fegetround() and fesetround() are using an int type. Change the type of
float_rounding_mode and floatx80_rounding_precision in the float_status
structure for consistency.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6115
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sat, 20 Dec 2008 23:40:35 +0000 (23:40 +0000)]
target-ppc: modify hw/ppc_oldword.c to use qemu_ram_alloc()
This patch uses qemu_ram_alloc() to allocate RAM, VGA RAM and VGA BIOS.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Laurent Vivier <Laurent@lvivier.info>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6114
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sat, 20 Dec 2008 23:39:46 +0000 (23:39 +0000)]
target-ppc: default to a G3 cpu when emulating a G3 PowerMac
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6113
c046a42c-6fe2-441c-8c8c-
71466251a162
ths [Sat, 20 Dec 2008 19:44:31 +0000 (19:44 +0000)]
A first attempt on supporting snapshots for the MIPS target.
Signed-off-by: Thiemo Seufer <ths@networkno.de>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6112
c046a42c-6fe2-441c-8c8c-
71466251a162
ths [Sat, 20 Dec 2008 19:42:14 +0000 (19:42 +0000)]
Fix remaining compiler warnings for mips targets.
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6111
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Fri, 19 Dec 2008 18:59:10 +0000 (18:59 +0000)]
Add patch to allow Bochs patch queue to be built from another directory.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6110
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Fri, 19 Dec 2008 16:22:03 +0000 (16:22 +0000)]
Add BIOS build instructions (Andre Przywara)
aliguori: did a little indenting and motion for aesthics.
Signed-off-by: Andre Przywara <andre.przywara@amd.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6109
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Fri, 19 Dec 2008 16:17:10 +0000 (16:17 +0000)]
Make sure ACPI structures are byte-aligned
Apparently, guests are very tolerant of corrupt ACPI tables because our
tables have been badly corrupted for some time now. A version of
Knoppix using a 2.6.11 kernel refused to boot and it turned out it was
due to the interrupt override table introduced by the recent HPET
commit.
This patch updates the BIOS and introduces a patch to pack the ACPI
tables. If you have a guest that used to work and is broken by the this
commit, let me know. We have some weird hacks in the tables that I
suspect are work arounds for this bug.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6108
c046a42c-6fe2-441c-8c8c-
71466251a162
pbrook [Fri, 19 Dec 2008 14:33:59 +0000 (14:33 +0000)]
Implement flush-to-zero mode (denormal results are replaced with zero).
Signed-off-by: Paul Brook <paul@codesourcery.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6107
c046a42c-6fe2-441c-8c8c-
71466251a162
pbrook [Fri, 19 Dec 2008 13:53:37 +0000 (13:53 +0000)]
Implement default-NaN mode.
Signed-off-by: Paul Brook <paul@codesourcery.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6106
c046a42c-6fe2-441c-8c8c-
71466251a162
pbrook [Fri, 19 Dec 2008 13:37:53 +0000 (13:37 +0000)]
Implement ARMv7 cp15 cache ID registers.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6105
c046a42c-6fe2-441c-8c8c-
71466251a162
pbrook [Fri, 19 Dec 2008 13:18:36 +0000 (13:18 +0000)]
Implement (very) basic Thumb2-EE support. This doesn't actually implement
EE state, just the associated system coprocessor registers. It is sufficient
to keep OS setup and context switching code happy.
Signed-off-by: Paul Brook <paul@codesourcery.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6104
c046a42c-6fe2-441c-8c8c-
71466251a162
pbrook [Fri, 19 Dec 2008 13:02:08 +0000 (13:02 +0000)]
Fix VFP fixed point conversion routines.
Signed-off-by: Paul Brook <paul@codesourcery.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6103
c046a42c-6fe2-441c-8c8c-
71466251a162
pbrook [Fri, 19 Dec 2008 12:59:28 +0000 (12:59 +0000)]
Correctly normalize values and handle zero inputs to scalbn functions.
Signed-off-by: Paul Brook <paul@codesourcery.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6102
c046a42c-6fe2-441c-8c8c-
71466251a162
edgar_igl [Fri, 19 Dec 2008 12:57:18 +0000 (12:57 +0000)]
ETRAX: Correct the frequency of the free-running counter.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6101
c046a42c-6fe2-441c-8c8c-
71466251a162
pbrook [Fri, 19 Dec 2008 12:49:13 +0000 (12:49 +0000)]
When -icount is used and a TB is recompiled due to an IO access
shortly after an IRQ has been raised, env->exception_index will still be set
to EXCP_IRQ when cpu_io_recompile calls cpu_resume_from_signal.
This causes qemu to repeat the IRQ trap, with disasterous consequences.
I suspect this "works" most of the time because linux tends to drop back to
svc mode before doing actual IRQ processing, and be fairly
tolerant of spurious IRQ traps.
Signed-off-by: Paul Brook <paul@codesourcery.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6100
c046a42c-6fe2-441c-8c8c-
71466251a162
pbrook [Fri, 19 Dec 2008 12:39:00 +0000 (12:39 +0000)]
Implement ARMv7 MMU access permissions.
Signed-off-by: Paul Brook <paul@codesourcery.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6099
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:51:31 +0000 (22:51 +0000)]
target-ppc: add gen_avr_ptr function.
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6098
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:44:21 +0000 (22:44 +0000)]
target-ppc: use float_flag_divbyzero instead of checking the operands
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6097
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:44:13 +0000 (22:44 +0000)]
User-mode GDB stub improvements - handle signals
Handle signals in the user-mode GDB stub. Report them to GDB, and
allow it to change or cancel them. Also correct the protocol numbering;
it happens to match Linux numbering for SIGINT and SIGTRAP, but that's
just good fortune.
Signed-off-by: Daniel Jacobowitz <dan@codesourcery.com>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6096
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:44:04 +0000 (22:44 +0000)]
User-mode GDB stub improvements - handle fork
Close gdbserver in child processes, so that only one stub tries to talk
to GDB at a time. Updated from an earlier patch by Paul Brook.
Signed-off-by: Daniel Jacobowitz <dan@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6095
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:43:56 +0000 (22:43 +0000)]
new monitor func status
Attached is a small patch that adds the new info subcommand - status.
The status indicates if the VM is running or paused this info makes
life for (stateless) Qemu/KVM frontends easier.
(Philipp Wehrheim)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6094
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:43:48 +0000 (22:43 +0000)]
consolidate definition for tap script and smb support
Since the introduction of net.c in r5581 there had been 2 places where
the location of the TAP helper scripts and SMB daemon are defined.
The following patch move those definitions to net.h so they are accessible
for net.c and vl.c but defined only once
(Carlo Marcelo Arenas Belon)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6093
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:43:40 +0000 (22:43 +0000)]
PCI: Mask writes to RO bits in the command reg of PCI config space
The Command register in the PCI config space has some read-only bits.
Any writes to those bits should be masked out.
Signed-off-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6092
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:43:33 +0000 (22:43 +0000)]
PCI: Mask writes to RO bits in the status reg of PCI config space
The Status register in the PCI config space has some read-only bits.
Any writes to those bits should be masked out.
Signed-off-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6091
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:43:25 +0000 (22:43 +0000)]
target-ppc: fix type of spe_acc.
ACC is a 64-bit register and needs to be specified as such regardless of
the target.
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6090
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:43:16 +0000 (22:43 +0000)]
fp: fix float32_is_infinity()
Thanks to Laurent Desnogues for the hint.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6089
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:43:07 +0000 (22:43 +0000)]
target-ppc: fix a typo
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6088
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:42:58 +0000 (22:42 +0000)]
target-ppc: add Altivec logical operations
Use opc2/opc3 instead of one big xo field. Do this consistency with the
rest of translate.c
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6087
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:42:51 +0000 (22:42 +0000)]
KVM: Silence unused s warning
Move s under #ifdef to avoid compiler warning.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6086
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:42:43 +0000 (22:42 +0000)]
Remove trailing spaces introduced by commit 6081
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6085
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:42:34 +0000 (22:42 +0000)]
Fix warnings introduced by commit 6081
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6084
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 18 Dec 2008 22:42:23 +0000 (22:42 +0000)]
target-ppc: fix fres, fsqrte and remove useless code
- fres and fsqrte should not assign a float32 number to a float64 value.
- fre, fres and fsqrte are checking for cases already taken into account
by softfloat and softfloat native. Remove those useless tests.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6083
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 18 Dec 2008 01:56:22 +0000 (01:56 +0000)]
Fix the build for non-x86/ppc targets
Since pci.c creates network devices, anything that links against pci.c
(everything) has to link against all network devices. Since virtio-net
also requires virtio, we might as well link every target against all of
the virtio devices.
This suggests that the pci.c network device creation function needs some
refactoring.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6082
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 17 Dec 2008 23:28:44 +0000 (23:28 +0000)]
Add HPET emulation to qemu (Beth Kon)
This patch adds HPET emulation. It can be disabled with -disable-hpet. An hpet
provides a more finely granular clocksource than otherwise available on PC.
This means that latency-dependent applications (e.g. multimedia) will generally
be smoother when using the HPET.
Signed-off-by: Beth Kon <eak@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6081
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 17 Dec 2008 22:32:52 +0000 (22:32 +0000)]
Handle suspend in qemu (Gleb Natapov)
Reset a PC and tell BIOS that resume from ram is required on the next boot.
Signed-off-by: Gleb Natapov <gleb@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6080
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 17 Dec 2008 22:29:37 +0000 (22:29 +0000)]
Update VGA BIOS
Now built from the kernel.org git tree.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6079
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 17 Dec 2008 22:15:34 +0000 (22:15 +0000)]
Use git mirror instead of repo.or.cz. The kernel.org git
mirror is updated more regularly and reliably.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6078
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 17 Dec 2008 21:35:49 +0000 (21:35 +0000)]
Update to the latest Bochs BIOS
Update the PC BIOS to the latest version, split out the patches into
patch series, and update the README to point to the new location of the
Bochs BIOS source tree.
Also update the gitignore to allow the patch queue directory to be used.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6077
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 17 Dec 2008 21:32:37 +0000 (21:32 +0000)]
This should have been added in Gerd's previous commit.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6076
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 17 Dec 2008 19:45:40 +0000 (19:45 +0000)]
Use saner types for virtio-net
This was spotted by malc
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6075
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 17 Dec 2008 19:17:17 +0000 (19:17 +0000)]
Add support for tap vectored send
This is adapted from kvm-userspace. It allows readv to be used with tap when
the host supports it.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6074
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 17 Dec 2008 19:13:11 +0000 (19:13 +0000)]
virtio-net support
This adds virtio-net support. This is based on the virtio-net driver
that exists in kvm-userspace. This also adds a new qemu_sendv_packet
which virtio-net requires.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6073
c046a42c-6fe2-441c-8c8c-
71466251a162
malc [Wed, 17 Dec 2008 19:00:18 +0000 (19:00 +0000)]
Do not rely on BSD style echo (which accepts -n option)
http://www.opengroup.org/onlinepubs/
7990989775/xcu/echo.html
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6072
c046a42c-6fe2-441c-8c8c-
71466251a162
pbrook [Wed, 17 Dec 2008 00:33:41 +0000 (00:33 +0000)]
Mark bamboo.dtb as a binary file.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6071
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Wed, 17 Dec 2008 00:03:01 +0000 (00:03 +0000)]
Add bamboo.dtb compiled from bamboo.dts
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6070
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 16 Dec 2008 10:44:29 +0000 (10:44 +0000)]
target-ppc: add comments about constants introduced in revision 6046
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6069
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 16 Dec 2008 10:44:22 +0000 (10:44 +0000)]
target-ppc: fix a typo introduced in revision 6058
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6068
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 16 Dec 2008 10:44:14 +0000 (10:44 +0000)]
target-ppc: IBM PowerPC 440EP Bamboo reference board emulation
Since most IO devices are integrated into the 440EP chip, "Bamboo support"
mostly entails implementing the -kernel, -initrd, and -append options.
These options are implemented by loading the guest as if u-boot had done it,
i.e. loading a flat device tree, updating it to hold initrd addresses, ram
size, and command line, and passing the FDT address in r3.
Since we use it with KVM, we enable the virtio block driver and include hooks
necessary for KVM support.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6067
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 16 Dec 2008 10:44:06 +0000 (10:44 +0000)]
target-ppc: PowerPC 440EP SoC emulation
Wire up the system-on-chip devices present on 440EP chips.
This patch is a little unusual in that qemu doesn't actually emulate the 440
core, but we use this board code with KVM (which does). If/when 440 core
emulation is supported, the kvm_enabled() hack can be removed.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6066
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 16 Dec 2008 10:43:58 +0000 (10:43 +0000)]
target-ppc: Enable KVM for ppcemb.
Implement hooks called by generic KVM code.
Also add code that will copy the host's CPU and timebase frequencies to the
guest, which is necessary on KVM because the guest can directly access the
timebase.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Acked-by: Anthony Liguori <aliguori@us.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6065
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 16 Dec 2008 10:43:48 +0000 (10:43 +0000)]
Implement device tree support needed for Bamboo emulation
To implement the -kernel, -initrd, and -append options, 4xx board emulation
must load the guest kernel as if firmware had loaded it. Where u-boot would be
the firmware, we must load the flat device tree into memory and set key fields
such as /chosen/bootargs.
This patch introduces a dependency on libfdt for flat device tree support.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6064
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 23:15:56 +0000 (23:15 +0000)]
target-ppc: create a helper function to allow more flexible RAM allocation for PPC 4xx
The 4xx SDRAM controller supports a small number of banks, and each bank must
be one of a small set of sizes. The number of banks and the supported sizes
varies by SoC.
This function uses the user-specified RAM size to fill in the "ram_bases" and
"ram_sizes" arrays required by ppc4xx_sdram_init().
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6063
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 22:59:45 +0000 (22:59 +0000)]
target-ppc: rename ppc405_sdram_init() to ppc4xx_sdram_init()
The SDRAM controller is shared across almost all 405 and 440 embedded
processors, with some slight differences such as the sizes supported for each
memory bank.
Rename only; no functional changes.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6062
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 22:59:34 +0000 (22:59 +0000)]
target-ppc: move PPC4xx SDRAM controller emulation from ppc405_uc.c to ppc4xx_devs.c
The SDRAM controller is shared across almost all 405 and 440 embedded
processors, with some slight differences such as the sizes supported for each
memory bank.
Code movement only; no functional changes.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6061
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 15 Dec 2008 22:20:42 +0000 (22:20 +0000)]
kvm: sync vcpu state during initialization (Hollis Blanchard)
Currently on x86, qemu initializes CPUState but KVM ignores it and does its
own vcpu initialization. However, PowerPC KVM needs to be able to set the
initial register state to support the -kernel and -append options.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6060
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 22:07:50 +0000 (22:07 +0000)]
softfloat-native: improve correctness of floatXX_is_neg()
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6059
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 21:48:27 +0000 (21:48 +0000)]
target-ppc: update comment about precise emulation
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6058
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Mon, 15 Dec 2008 20:24:25 +0000 (20:24 +0000)]
Revert part of r5853
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6057
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Mon, 15 Dec 2008 17:58:49 +0000 (17:58 +0000)]
Fix mremap, based on patch by Kirill A. Shutemov
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6056
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:14:58 +0000 (17:14 +0000)]
target-ppc: remove dead code
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6055
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:14:50 +0000 (17:14 +0000)]
target-ppc: enable PRECISE_EMULATION by default
With this option enabled, all glibc math tests pass.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6054
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:14:43 +0000 (17:14 +0000)]
target-ppc: fmadd/fmsub/fmnadd/fmnsub can generate VXIMZ or VXIZI exceptions
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6053
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:14:35 +0000 (17:14 +0000)]
target-ppc: fadd/fsub: correctly propagate NaN
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6052
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:14:27 +0000 (17:14 +0000)]
target-ppc: use the new fp functions
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6051
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:14:20 +0000 (17:14 +0000)]
fp: add floatXX_is_infinity(), floatXX_is_neg(), floatXX_is_zero()
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6050
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:14:12 +0000 (17:14 +0000)]
softfloat-native: fix *nan()
Fix float64_is_nan()
Fix floatx80_is_signaling_nan()
Add floatx80_is_nan()
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6049
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:14:05 +0000 (17:14 +0000)]
target-ppc: correctly propagate NaN in division
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6048
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:13:55 +0000 (17:13 +0000)]
target-ppc: fix fload_invalid_op_excp()
The argument is a value, not a flag. Update the tests accordingly. Also
set a correct default value for NaN.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6047
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:13:48 +0000 (17:13 +0000)]
target-ppc: use a correct value to represent 1.0
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6046
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:13:39 +0000 (17:13 +0000)]
target-ppc: update nip before calling an helper in FP instructions
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6045
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:13:31 +0000 (17:13 +0000)]
target-ppc: fix TCGv type in fcmpu/fcmpo
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6044
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 17:13:19 +0000 (17:13 +0000)]
configure: also switch ppc64abi32 and ppcemb to CONFIG_SOFTFLOAT
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6043
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 07:03:06 +0000 (07:03 +0000)]
target-ppc: add signed fields to ppc_avr_t.
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6042
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 06:34:37 +0000 (06:34 +0000)]
configure: switch to CONFIG_SOFTFLOAT for PPC
softfloat-native currently only supports one FPU context, while we need
at least 3 of them for the PPC target (FPU, SPE, AVR).
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6041
c046a42c-6fe2-441c-8c8c-
71466251a162
balrog [Mon, 15 Dec 2008 03:15:36 +0000 (03:15 +0000)]
configure: close stdout for the remaining calls to cc.
r5953 managed to quite most colorgcc errors leakage to console
but not all of them.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6040
c046a42c-6fe2-441c-8c8c-
71466251a162
balrog [Mon, 15 Dec 2008 02:12:20 +0000 (02:12 +0000)]
Add ARM board names still missing from qemu-doc.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6039
c046a42c-6fe2-441c-8c8c-
71466251a162
balrog [Mon, 15 Dec 2008 02:05:00 +0000 (02:05 +0000)]
ARM: basic SX1-cellphone sysemu support (Jean-Christophe PLAGNIOL-VILLARD).
The TSC2102 chip is not included in documentation because a patch is
pending.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6038
c046a42c-6fe2-441c-8c8c-
71466251a162
balrog [Mon, 15 Dec 2008 01:35:39 +0000 (01:35 +0000)]
Fix the PXA2xx LCD dirty page detection a little more.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6037
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 01:00:17 +0000 (01:00 +0000)]
target-ppc: fix frsp instruction
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6036
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 15 Dec 2008 00:30:28 +0000 (00:30 +0000)]
target-ppc: fix mtfsf and mtfsfi instructions
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6035
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sun, 14 Dec 2008 19:34:09 +0000 (19:34 +0000)]
target-ppc: fix fcmp{o,u} instructions
The instructions are specified to update the condition register even if
an error is to be signaled because of NaN input.
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6034
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sun, 14 Dec 2008 18:59:08 +0000 (18:59 +0000)]
target-ppc: remove FPRF optimization
FPRF optimization is totally broken, remove it.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6033
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sun, 14 Dec 2008 18:40:58 +0000 (18:40 +0000)]
target-ppc: fix mtfsb0 and mtfsb1
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6032
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sun, 14 Dec 2008 18:40:49 +0000 (18:40 +0000)]
target-ppc: display FPSCR in register dump
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6031
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sun, 14 Dec 2008 17:30:18 +0000 (17:30 +0000)]
Revert "target-ppc: use -Werror to make sure no new warning is added"
This reverts commit 6028.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6030
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sun, 14 Dec 2008 17:29:58 +0000 (17:29 +0000)]
tcg: kill two warnings
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6029
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sun, 14 Dec 2008 11:12:28 +0000 (11:12 +0000)]
target-ppc: use -Werror to make sure no new warning is added
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6028
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sun, 14 Dec 2008 11:12:20 +0000 (11:12 +0000)]
target-ppc: fix mbar opcode
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6027
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sun, 14 Dec 2008 11:12:10 +0000 (11:12 +0000)]
target-ppc: fix fsel instruction
Fix fsel instruction. Eliminate unneeded temporaries while we're at it,
too.
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6026
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sun, 14 Dec 2008 11:12:02 +0000 (11:12 +0000)]
Use float_relation_* constants
Use float_relation_* constants rather than magic numbers in
softfloat-native comparison routines.
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6025
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Sun, 14 Dec 2008 10:32:11 +0000 (10:32 +0000)]
Ignore .pc and patches used by quilt
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6024
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Sun, 14 Dec 2008 09:30:41 +0000 (09:30 +0000)]
Use a hex value instead of possibly ambiguous 8 bit character
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6023
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Sun, 14 Dec 2008 09:22:41 +0000 (09:22 +0000)]
SVN property and .gitignore fixes (Stuart Brady)
Remove dyngen and dyngen.dSYM from svn property svn:ignore
Add *-bsd-user and qemu-nbd.pod to the svn property svn:ignore and .gitignore
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6022
c046a42c-6fe2-441c-8c8c-
71466251a162