Michael Walle [Mon, 25 Apr 2011 22:24:07 +0000 (00:24 +0200)]
configure: support target dependent linking
This patch is the first attempt to make configure more intelligent with
regard to how it links to libraries. It divides the softmmu libraries into
two lists, a general one and a list which depends on the target
architecture.
Signed-off-by: Michael Walle <michael@walle.cc>
Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Tue, 26 Apr 2011 21:23:02 +0000 (23:23 +0200)]
Merge branch 'linux-user-for-upstream' of git://gitorious.org/qemu-maemo/qemu
* 'linux-user-for-upstream' of git://gitorious.org/qemu-maemo/qemu:
linux-user: untie syscalls from UID16
linux-user: add s390x to llseek list
linux-user: add ioctl(SIOCGIWNAME, ...) support.
linux-user: convert ioctl(SIOCGIFCONF, ...) result.
linux-user: improve traces
[v2] linux-user: bigger default stack
Peter Maydell [Tue, 26 Apr 2011 15:56:40 +0000 (16:56 +0100)]
configure: Make epoll_create1 test work around SPARC glibc bug
Work around a SPARC glibc bug which caused the epoll_create1 configure
test to wrongly claim that the function was present. Some versions of
SPARC glibc provided the function in the library but didn't declare
it in the include file; the result is that gcc warns about an implicit
declaration but a link succeeds. So we reference the function as a
value rather than a function call to induce a compile time error
if the declaration was not present.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Anthony Liguori [Tue, 26 Apr 2011 13:07:49 +0000 (08:07 -0500)]
Merge remote-tracking branch 'stefanha/tracing' into staging
Brad Hards [Sat, 23 Apr 2011 11:50:06 +0000 (21:50 +1000)]
vl: trivial spelling fix
Signed-off-by: Brad Hards <bradh@frogmouth.net>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Lluís [Wed, 6 Apr 2011 18:34:11 +0000 (20:34 +0200)]
trace: [trace-events] fix print formats in some events
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Lluís [Wed, 6 Apr 2011 18:34:03 +0000 (20:34 +0200)]
trace: [ust] fix generation of 'trace.c' on events without args
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Lluís [Wed, 6 Apr 2011 18:33:56 +0000 (20:33 +0200)]
docs/tracing.txt: minor documentation fixes
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Stefan Hajnoczi [Thu, 14 Apr 2011 17:24:50 +0000 (18:24 +0100)]
docs: Trace events must not expect pointer dereferencing
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Stefan Hajnoczi [Thu, 14 Apr 2011 17:11:00 +0000 (18:11 +0100)]
trace: Remove %s in grlib trace events
Trace events cannot use %s in their format strings because trace
backends vary in how they can deference pointers (if at all). Recording
const char * values is not meaningful if their contents are not recorded
too.
Change grlib trace events that rely on strings so that they communicate
similar information without using strings.
A follow-up patch explains this limitation and updates docs/tracing.txt.
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Paolo Bonzini [Fri, 15 Apr 2011 13:23:59 +0000 (15:23 +0200)]
tracetool: allow ) in trace output string
Be greedy in matching the trailing "\)*" pattern. Otherwise, all the
text in the trace string up to the last closed parenthesis is taken as
part of the prototype.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Riku Voipio [Mon, 18 Apr 2011 12:23:06 +0000 (15:23 +0300)]
linux-user: untie syscalls from UID16
Quite a number of uid/gid related syscalls are only defined on systems
with USE_UID16 defined. This is apperently based on the idea that these
system calls would never be called on non-UID16 systems. Make these
syscalls available for all architectures that define them.
drop alpha hack to support selected UID16 syscalls. MIPS and PowerPC
were also defined as UID16, to get uid/gid syscalls available, drop
this error as well.
Change QEMU to reflect this.
Cc: Ulrich Hecht <uli@suse.de>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Alexander Graf <agraf@suse.de>
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Alexander Graf [Fri, 15 Apr 2011 15:32:45 +0000 (17:32 +0200)]
linux-user: add s390x to llseek list
We keep a list of host architectures that do llseek with the same
syscall as lseek. S390x is one of them, so let's add it to the list.
Original-patch-by: Ulrich Hecht <uli@suse.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Laurent Vivier [Tue, 29 Mar 2011 23:35:23 +0000 (01:35 +0200)]
linux-user: add ioctl(SIOCGIWNAME, ...) support.
Allow to run properly following program from linux-user:
/* cc -o wifi wifi.c */
#include <stdio.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <linux/wireless.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <string.h>
int main(int argc, char **argv)
{
int ret;
struct ifreq req;
struct sockaddr_in *addr;
int s;
if (argc != 2) {
fprintf(stderr, "Need an interface name (like wlan0)\n");
return 1;
}
s = socket( AF_INET, SOCK_DGRAM, 0 );
if (s < 0) {
perror("Cannot open socket");
return 1;
}
strncpy(req.ifr_name, argv[1], sizeof(req.ifr_name));
ret = ioctl( s, SIOCGIWNAME, &req );
if (ret < 0) {
fprintf(stderr, "No wireless extension\n");
return 1;
}
printf("%s\n", req.ifr_name);
printf("%s\n", req.ifr_newname);
return 0;
}
$ ./wifi eth0
No wireless extension
$ ./wifi wlan0
wlan0
IEEE 802.11bg
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Laurent Vivier [Tue, 29 Mar 2011 22:12:12 +0000 (00:12 +0200)]
linux-user: convert ioctl(SIOCGIFCONF, ...) result.
The result needs to be converted as it is stored in an array of struct
ifreq and sizeof(struct ifreq) differs according to target and host
alignment rules.
This patch allows to execute correctly the following program on arm
and m68k:
#include <stdio.h>
#include <sys/ioctl.h>
#include <net/if.h>
#include <alloca.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int main(void)
{
int s, ret;
struct ifconf ifc;
int i;
memset( &ifc, 0, sizeof( struct ifconf ) );
ifc.ifc_len = 8 * sizeof(struct ifreq);
ifc.ifc_buf = alloca(ifc.ifc_len);
s = socket( AF_INET, SOCK_DGRAM, 0 );
if (s < 0) {
perror("Cannot open socket");
return 1;
}
ret = ioctl( s, SIOCGIFCONF, &ifc );
if (s < 0) {
perror("ioctl() failed");
return 1;
}
for (i = 0; i < ifc.ifc_len / sizeof(struct ifreq) ; i ++) {
struct sockaddr_in *s;
s = (struct sockaddr_in*)&ifc.ifc_req[i].ifr_addr;
printf("%s\n", ifc.ifc_req[i].ifr_name);
printf("%s\n", inet_ntoa(s->sin_addr));
}
}
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Laurent Vivier [Wed, 6 Apr 2011 22:25:32 +0000 (00:25 +0200)]
linux-user: improve traces
Add trace details for getpid(), kill(), _llseek(), rt_sigaction(),
rt_sigprocmask(), clone().
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Riku Voipio [Fri, 4 Mar 2011 13:27:29 +0000 (15:27 +0200)]
[v2] linux-user: bigger default stack
PTHREAD_STACK_MIN (16KB) is somewhat inadequate for a new stack for new
QEMU threads. Set new limit to 256K which should be enough, yet doesn't
increase memory pressure significantly.
Signed-off-by: Riku Voipio <riku.voipio@nokia.com>
Reviewed-by: Nathan Froyd <froydnj@codesourcery.com>
Brad Hards [Sun, 24 Apr 2011 07:19:56 +0000 (17:19 +1000)]
doc: fix slirp description
net/slirp.c says:
/* default settings according to historic slirp */
struct in_addr net = { .s_addr = htonl(0x0a000200) }; /* 10.0.2.0 */
struct in_addr mask = { .s_addr = htonl(0xffffff00) }; /* 255.255.255.0 */
struct in_addr host = { .s_addr = htonl(0x0a000202) }; /* 10.0.2.2 */
struct in_addr dhcp = { .s_addr = htonl(0x0a00020f) }; /* 10.0.2.15 */
struct in_addr dns = { .s_addr = htonl(0x0a000203) }; /* 10.0.2.3 */
Which I think is not what the documentation says.
Signed-off-by: Brad Hards <bradh@frogmouth.net>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Benjamin Poirier [Wed, 20 Apr 2011 23:39:02 +0000 (19:39 -0400)]
rtl8139: add format attribute to DPRINTF
gcc can check the format string for correctness even when debugging output is
not enabled.
Have to make sure arguments are always available. They are optimized out if
unneeded.
Signed-off-by: Benjamin Poirier <benjamin.poirier@gmail.com>
Cc: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Benjamin Poirier [Wed, 20 Apr 2011 23:39:01 +0000 (19:39 -0400)]
rtl8139: use variadic macro for debug statements
Removes double (( )) to make DEBUG_PRINT compatible with real function calls.
Change the name to DPRINTF to be consistent with other DPRINTF macros
throughout qemu.
Include the "RTL8139: " prefix in the macro. This changes some debug output
slightly since the prefix wasn't present on all lines.
Part of the change was done using the "coccinelle" tool with the following
small semantic match:
@@ expression E; @@
- DEBUG_PRINT((E))
+ DPRINTF(E)
Signed-off-by: Benjamin Poirier <benjamin.poirier@gmail.com>
Cc: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Benjamin Poirier [Wed, 20 Apr 2011 23:39:00 +0000 (19:39 -0400)]
rtl8139: use TARGET_FMT_plx in debug messages
Prevents a compilation failure when DEBUG_RTL8139 is defined:
CC libhw32/rtl8139.o
cc1: warnings being treated as errors
hw/rtl8139.c: In function ‘rtl8139_cplus_transmit_one’:
hw/rtl8139.c:1960: error: format ‘%8lx’ expects type ‘long unsigned int’, but argument 5 has type ‘target_phys_addr_t’
make[1]: *** [rtl8139.o] Error 1
Signed-off-by: Benjamin Poirier <benjamin.poirier@gmail.com>
Cc: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Peter Maydell [Wed, 20 Apr 2011 10:19:15 +0000 (11:19 +0100)]
linux-user/arm/nwfpe: rename REG_PC to ARM_REG_PC
The REG_PC constant used in the ARM nwfpe code is fine in the kernel
but when used in qemu can clash with a definition in the host system
include files (in particular on Ubuntu Lucid SPARC, including signal.h
will define a REG_PC). Rename the constant to avoid this issue.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Peter Maydell [Mon, 18 Apr 2011 18:07:12 +0000 (19:07 +0100)]
target-arm: Handle UNDEF cases for Neon VLD/VST multiple-structures
Correctly UNDEF for Neon VLD/VST "multiple structures" forms where the
align field is not valid.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Peter Maydell [Mon, 18 Apr 2011 18:07:11 +0000 (19:07 +0100)]
target-arm: Handle UNDEFs for Neon single element load/stores
Handle the UNDEF and UNPREDICTABLE cases for Neon "single element to
one lane" VLD and "single element from one lane" VST.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Anthony Liguori [Mon, 25 Apr 2011 15:26:10 +0000 (10:26 -0500)]
Merge remote-tracking branch 'awilliam/ipxe' into staging
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: switch to softfloat
This increase the correctness (precision, NaN values, corner cases) on
non-x86 machines, and add the possibility to handle the exception
correctly.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: fix constants wrt softfloat
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: fix helper_fprem() and helper_fprem1() wrt softfloat
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: fix logarithmic and trigonometric helpers wrt softfloat
Use the new CPU86_LDouble <-> double conversion functions to make logarithmic
and trigonometric helpers working with softfloat.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: add CPU86_LDouble <-> double conversion functions
Add functions to convert CPU86_LDouble to double and vice versa. They
are going to be used to implement logarithmic and trigonometric function
until softfloat implement them.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: replace approx_rsqrt and approx_rcp by softfloat ops
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: fix helper_fsqrt() wrt softfloat
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: fix helper_fdiv() wrt softfloat
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: fix helper_fxtract() wrt softfloat
With softfloat it's not possible to play with the overflow of an
unsigned value to get the 0 case partially correct. Use a special case
for that. Using a division to generate an infinity is the easiest way
that works for both softfloat and softfloat-native.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: fix helper_fbld_ST0() wrt softfloat
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
target-i386: fix helper_fscale() wrt softfloat
Use the scalbn softfloat function to implement helper_fscale(). This
fixes corner cases (e.g. NaN) and makes a few more GNU libc math tests
to pass.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
softfloat-native: add float*_is_any_nan() functions
Add float*_is_any_nan() functions to match the softfloat API.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:23 +0000 (13:04 +0200)]
softfloat-native: fix float*_scalbn() functions
float*_scalbn() should be able to take a status parameter. Fix that.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:22 +0000 (13:04 +0200)]
softfloat: fix float*_scalnb() corner cases
float*_scalnb() were not taking into account all cases. This patch fixes
some corner cases:
- NaN values in input were not properly propagated and the invalid flag
not correctly raised. Use propagateFloat*NaN() for that.
- NaN or infinite values in input of floatx80_scalnb() were not correctly
detected due to a typo.
- The sum of exponent and n could overflow, leading to strange results.
Additionally having int16 defined to int make that happening for a very
small range of values. Fix that by saturating n to the maximum exponent
range, and using an explicit wider type if needed.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:22 +0000 (13:04 +0200)]
softfloat: add floatx80_compare*() functions
Add floatx80_compare() and floatx80_compare_quiet() functions to match
the softfloat-native ones.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:22 +0000 (13:04 +0200)]
softfloat-native: add a few constant values
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:22 +0000 (13:04 +0200)]
softfloat: add pi constants
Add a pi constant for float32, float64, floatx80. It will be used by
target-i386 and later by the trigonometric functions.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:22 +0000 (13:04 +0200)]
softfloat: add floatx80 constants
Add floatx80 constants similarly to float32 or float64.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:22 +0000 (13:04 +0200)]
softfloat: fix floatx80_is_infinity()
With floatx80, the explicit bit is set for infinity.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Aurelien Jarno [Wed, 20 Apr 2011 11:04:22 +0000 (13:04 +0200)]
softfloat: fix floatx80 handling of NaN
The floatx80 format uses an explicit bit that should be taken into account
when converting to and from commonNaN format.
When converting to commonNaN, the explicit bit should be removed if it is
a 1, and a default NaN should be used if it is 0.
When converting from commonNan, the explicit bit should be added.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Juan Quintela [Thu, 2 Dec 2010 23:07:26 +0000 (00:07 +0100)]
vmstate: port mac_dbdma
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 23:04:02 +0000 (00:04 +0100)]
mac_dbdma: create DBDMAState instead of passing one array around
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 15:59:33 +0000 (16:59 +0100)]
vmstate: port piix4
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 15:26:56 +0000 (16:26 +0100)]
piix4: create PIIX4State
It only contains a PCIDevice by know, but it makes easy to use migration code
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Fri, 3 Dec 2010 00:59:09 +0000 (01:59 +0100)]
vmstate: port mac_nvram
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Fri, 3 Dec 2010 00:54:21 +0000 (01:54 +0100)]
mac_nvram: size is a size, no need to be a target dependent type
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Fri, 3 Dec 2010 00:50:10 +0000 (01:50 +0100)]
vmstate: port nand
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Fri, 3 Dec 2010 00:39:22 +0000 (01:39 +0100)]
nand: pin values are uint8_t
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Fri, 3 Dec 2010 00:03:59 +0000 (01:03 +0100)]
vmstate: port max111x
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Fri, 3 Dec 2010 00:03:10 +0000 (01:03 +0100)]
max111x: input field is only used as uint8_t
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 15:11:24 +0000 (16:11 +0100)]
vmstate: port pxa2xx_lcd
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 15:01:57 +0000 (16:01 +0100)]
pxa2xx_lcd: up field is used as a bool and migrated as an uint8_t
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 14:56:04 +0000 (15:56 +0100)]
pxa2xx_lcd: name anonymous struct
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 13:07:44 +0000 (14:07 +0100)]
vmstate: stellaris use unused for placeholder entries
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 01:36:38 +0000 (02:36 +0100)]
vmstate: port stellaris gamepad
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 21:51:07 +0000 (22:51 +0100)]
vmstate: port syborg_keyboard
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Fri, 3 Dec 2010 01:10:53 +0000 (02:10 +0100)]
vmstate: port syborg_serial
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Fri, 3 Dec 2010 00:27:58 +0000 (01:27 +0100)]
vmstate: port stellaris_adc
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 23:37:35 +0000 (00:37 +0100)]
vmstate: port syborg_pointer
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 16:27:49 +0000 (17:27 +0100)]
vmstate: port ppc4xx_pci
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 14:29:42 +0000 (15:29 +0100)]
vmstate: port ppce500_pci
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 13:54:38 +0000 (14:54 +0100)]
vmstate: port pxa2xx_pm
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 13:36:57 +0000 (14:36 +0100)]
vmstate: port pxa2xx_mm
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 13:31:14 +0000 (14:31 +0100)]
vmstate: port pxa2xx_cm
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 13:14:56 +0000 (14:14 +0100)]
vmstate: port pxa2xx_i2s
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 13:07:01 +0000 (14:07 +0100)]
vmstate: port stellaris gptm
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 12:53:24 +0000 (13:53 +0100)]
vmstate: port cuda
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 12:17:23 +0000 (13:17 +0100)]
vmstate: port heathrow_pic
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 11:43:50 +0000 (12:43 +0100)]
vmstate: port pl022 ssp
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 02:03:11 +0000 (03:03 +0100)]
vmstate: port stellaris sys
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 01:51:29 +0000 (02:51 +0100)]
vmstate: port stellaris ssi bus
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 01:48:43 +0000 (02:48 +0100)]
vmstate: port stellaris i2c
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 01:17:33 +0000 (02:17 +0100)]
vmstate: port armv7m nvic
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 00:50:33 +0000 (01:50 +0100)]
vmstate: port pl011
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Thu, 2 Dec 2010 00:06:08 +0000 (01:06 +0100)]
vmstate: port pxa2xx_keypad
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 23:44:28 +0000 (00:44 +0100)]
vmstate: port syborg_rtc
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 22:51:14 +0000 (23:51 +0100)]
vmstate: port pmtimer
It was a half conversion. Finish it.
enabled can only get values of 0, 1 or 2, was declared as an int but
sent as an unint8_t, change its type.
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 22:18:59 +0000 (23:18 +0100)]
vmstate: port sysborg_timer
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 22:15:41 +0000 (23:15 +0100)]
vmstate: port arm_timer
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 22:12:32 +0000 (23:12 +0100)]
vmstate: port arm sp804
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 22:02:56 +0000 (23:02 +0100)]
vmstate: port mipsnet
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 23:16:33 +0000 (00:16 +0100)]
vmstate: port m48t59
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 21:03:06 +0000 (22:03 +0100)]
vmstate: port ads7846
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 20:56:35 +0000 (21:56 +0100)]
vmstate: port adb_mouse
Signed-off-by: Juan Quintela <quintela@redhat.com>
Juan Quintela [Wed, 1 Dec 2010 20:54:04 +0000 (21:54 +0100)]
vmstate: port adb_kbd
Signed-off-by: Juan Quintela <quintela@redhat.com>
Peter Maydell [Tue, 19 Apr 2011 16:30:55 +0000 (17:30 +0100)]
target-arm: Set Invalid flag for NaN in float-to-int conversions
When we catch the special case of an input NaN in ARM float to int
helper functions, set the Invalid flag as well as returning the
correct result.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Peter Maydell [Tue, 19 Apr 2011 15:32:34 +0000 (16:32 +0100)]
hw/arm_boot.c: move initrd load address up to accommodate large kernels
Newer kernels are large enough that they can overlap the address
where qemu places the initrd. Move the initrd up so that there is
enough space for the kernel again.
Unfortunately it's not possible to automatically determine the
size of the kernel if it is compressed, so this is the best we
can do.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Dmitry Eremin-Solenikov [Tue, 19 Apr 2011 14:56:46 +0000 (18:56 +0400)]
Basic implementation of Sharp Zaurus SL-5500 collie PDA
Add very basic implementation of collie PDA emulation. The system lacks
LoCoMo and graphics/sound emulation. Linux kernel boots up to mounting
rootfs (theoretically it can be provided in pflash images).
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Dmitry Eremin-Solenikov [Tue, 19 Apr 2011 14:56:45 +0000 (18:56 +0400)]
Implement basic part of SA-1110/SA-1100
Basic implementation of DEC/Intel SA-1100/SA-1110 chips emulation.
Implemented:
- IRQs
- GPIO
- PPC
- RTC
- UARTs (no IrDA/etc.)
- OST reused from pxa25x
Everything else is TODO (esp. PM/idle/sleep!) - see the todo in the
hw/strongarm.c
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Stefan Weil [Mon, 18 Apr 2011 06:39:53 +0000 (06:39 +0000)]
Remove unused function parameter from cpu_restore_state
The previous patch removed the need for parameter puc.
Is is now unused, so remove it.
Cc: Aurelien Jarno <aurelien@aurel32.net>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Stefan Weil [Mon, 18 Apr 2011 06:39:52 +0000 (06:39 +0000)]
Remove unused function parameters from gen_pc_load and rename the function
Function gen_pc_load was introduced in commit
d2856f1ad4c259e5766847c49acbb4e390731bd4.
The only reason for parameter searched_pc was
a debug statement in target-i386/translate.c.
Parameter puc was needed by target-sparc until
commit
d7da2a10402f1644128b66414ca8f86bdea9ae7c.
Remove searched_pc from the debug statement and remove both
parameters from the parameter list of gen_pc_load.
As the function name gen_pc_load was also misleading,
it is now called restore_state_to_opc. This new name
was suggested by Peter Maydell, thanks.
v2: Remove last parameter, too, and rename the function.
v3: Fix [] typo in target-arm/translate.c.
Fix wrong SHA1 object name in commit message (copy+paste error).
Cc: Aurelien Jarno <aurelien@aurel32.net>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Alexander Graf [Fri, 15 Apr 2011 15:32:50 +0000 (17:32 +0200)]
s390x: virtio machine storage keys
For emulation (and migration) we need to know about the guest's storage keys.
These are separate from actual RAM contents, so we need to allocate them in
parallel to RAM.
While touching the file, this patch also adjusts the hypercall function
to a new syntax that aligns better with tcg emulated code.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Alexander Graf [Fri, 15 Apr 2011 15:32:49 +0000 (17:32 +0200)]
s390x: Dispatch interrupts to KVM or the real CPU
The KVM interrupt injection path is non-generic for now. So we need to push
knowledge of how to inject a device interrupt using KVM into the actual device
code.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Alexander Graf [Fri, 15 Apr 2011 15:32:48 +0000 (17:32 +0200)]
s390x: Enable s390x-softmmu target
This patch adds some code paths for running s390x guest OSs without the
need for KVM.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Alexander Graf [Fri, 15 Apr 2011 15:32:47 +0000 (17:32 +0200)]
s390x: Prepare cpu.h for emulation
We need to add some more logic to the CPU description to leverage emulation
of an s390x CPU. This patch adds all the required helpers, fields in CPUState
and constant definitions required for user and system emulation.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>