d174434fbf6fbfce54f7eabaa54b8296f55527b8 |
|
11-Jul-2014 |
David 'Digit' Turner <digit@google.com> |
android-constants.c: Move constants to single file. This patch refactors the sources slightly to reduce dependency drag between various functions and constant definitions. This is general cleanup work for future patches. Change-Id: I5fc0f53f5c933bc89ddf1a43d67a309d03a03c2d
/external/qemu/Makefile.common
|
0e5ff1bd3073e3847ac8400ba46814878beb8605 |
|
04-Jul-2014 |
David 'Digit' Turner <digit@google.com> |
memcheck: Remove feature entirely This patch removes the memcheck feature from the Android emulator code base. This is for several reasons: - Supporting the feature impacts many QEMU-specific emulation files in subtle ways, that make it difficult to refactor this code to integrate upstream changes. - The feature only works for ARM (32-bit), has no unit tests, and generates massive amounts of false positive messages coming from the platform. - Barely anyone uses it. This feature might make a comeback in the future, but this will be under a different life-form that will have adapted to the new state of the code. + As a bonus, fix the build! Change-Id: Idd19a3bc7923379cb1e82850f14499549b6a991b
/external/qemu/Makefile.common
|
c8e89b5a1998ce74a4863989f0cde2e8925bed06 |
|
23-Jun-2014 |
David 'Digit' Turner <digit@google.com> |
android/filesystems/fstab_parser.h: New file. This patch adds a tiny parser for Linux fstab files in order to extract the format of a given partition. This will be used in the future to extract from ramdisk.img the exact partition format of each partitionm image, instead of trying to guess it from API levels. Change-Id: Ia9d986d1487ea092e05af567fd4abb42b58cc1f6
/external/qemu/Makefile.common
|
716e5e10b4f8c30c4195411e868aa8745d24f59c |
|
21-Jun-2014 |
David 'Digit' Turner <digit@google.com> |
android/filesystems/ramdisk_extractor.h: new file. This patch introduces a new function that can be used to extract single data file content from an Android ramdisk.img image. This will be used to extract fstab.goldfish in a future patch to reliably determine the format of each partition image before the emulator is run. Change-Id: I4e8178ce1cedf0e93b852c632003d089bcd41701
/external/qemu/Makefile.common
|
83942739a98f55db1e83ad39ddee6d294ad329f2 |
|
17-Jun-2014 |
David 'Digit' Turner <digit@google.com> |
android/filesystems/partition_types.h: new header This patch introduces a new header to handle several types of partition images through a simple common interface. This will be used in a future patch to rework the way these images are setup in vl-android.c + Move test support stuff to android/filesystems/testing/ + Add unit tests. Change-Id: Icc1c32258e37731283079adf0e5407fa2e48f661
/external/qemu/Makefile.common
|
dddfa6426c2a3385aea685a200a7a4df1932b207 |
|
12-Jun-2014 |
David 'Digit' Turner <digit@google.com> |
Add android_createEmptyExt4Image() This patch adds a new function to the emulator to create an empty EXT4 partition image of a given size in bytes. + Basic unit test. Change-Id: I5b709c5697fe4a57be76b4344413aff3447b616a
/external/qemu/Makefile.common
|
6ddf87363d66cf12e3f7cd28f4f3b098e2f1078f |
|
12-Jun-2014 |
David 'Digit' Turner <digit@google.com> |
distrib/zlib-1.2.8: Build as static libraries. This small patches adds specific static library module declarations for our zlib sources. This will be used later as dependencies for the test programs of additional third-party libraries like libsparse. Change-Id: I45164dc067ea165aa78d091fbae8572297a386d8
/external/qemu/Makefile.common
|
74efb2c2aa3475d937f631eb8d81aa21e197c049 |
|
17-Jun-2014 |
David 'Digit' Turner <digit@google.com> |
resolve merge conflicts of c5f5903 to master. Conflicts: android/main-emulator.c Change-Id: Iffc6f5aaa95a1cdfcc81a26c43172e6c5ba8111a
|
ee57375c96822790cc7f837b4fdf64a9c1d69b3a |
|
17-Jun-2014 |
David 'Digit' Turner <digit@google.com> |
android/utils/host_bitness.c: android_getHostBitness() This patch moves the host bitness detection code to android/utils/ and also improves it to work properly on Windows, in preparation for Win64 executables. + Ensure 'emulator' launcher uses it. + Add basic unit test. Change-Id: I7d55397efeb749b72c502241c4da4cd16696c082
/external/qemu/Makefile.common
|
bead081e026dc21d65afa0d8c024f0f4a748af9f |
|
12-Jun-2014 |
David 'Digit' Turner <digit@google.com> |
resolve merge conflicts of 598e05b to master. Change-Id: I1e393281f09fed776cf4d856f4858638287dd600
|
482dcac37d9f5915d958b07470e380fb02ebdb2c |
|
11-Jun-2014 |
Greg Hackmann <ghackmann@google.com> |
Revert "android: split private zlib into its own library" This reverts commit 7989f56658ba0ac8b2950f5aa1fae9aa4e4e6cbf. Change-Id: I6d4956bbdb92268d504ad5dfecc02a753f99a6cb
/external/qemu/Makefile.common
|
81edfa7cecb129367d98e4bf9c2ea9a8a5ddc9b9 |
|
11-Jun-2014 |
Greg Hackmann <ghackmann@google.com> |
Revert "android: support generating ext4 partition images" This reverts commit 44f06dffd84c0a626f6c3d539d16a0891240028d. Change-Id: I7694f8373eb91c7c7e3afea202c7f6f8b43bf406
/external/qemu/Makefile.common
|
9669d49a5ebbd71870873c4d09fe40c7e184bade |
|
12-Jun-2014 |
David 'Digit' Turner <digit@google.com> |
Simplify build of 64-bit binaries. This slightly simplifies the build files when it comes to 64-bit module declarations. This is a preliminary change to be able to build Win64 binaries with the new prebuilt w64 toolchain. Change-Id: I61a03b7a23cff24d96e2651c3d797ec233bf0ffc
/external/qemu/Makefile.common
|
44f06dffd84c0a626f6c3d539d16a0891240028d |
|
10-Jun-2014 |
Greg Hackmann <ghackmann@google.com> |
android: support generating ext4 partition images Defer generation to libext4_utils, built using the existing sources in the same style as libgtest. With the emulator now generating valid ext4 images, re-enable support for ext4 cache partitions. Bug: 13115061 Change-Id: I8770f2ddbc95f6beb4ca9655ebf9d8f8a7bdd1b0 Signed-off-by: Greg Hackmann <ghackmann@google.com>
/external/qemu/Makefile.common
|
7989f56658ba0ac8b2950f5aa1fae9aa4e4e6cbf |
|
10-Jun-2014 |
Greg Hackmann <ghackmann@google.com> |
android: split private zlib into its own library In preparation for adding ext4_utils, which also depends on zlib Change-Id: I99d8db12be95ba06c7ff647aa01c1ec16ab83ecd Signed-off-by: Greg Hackmann <ghackmann@google.com>
/external/qemu/Makefile.common
|
52e9ecfca07fab590243832d8de0467b34af724d |
|
24-Apr-2014 |
Ying Wang <wangying@google.com> |
With host mulitilib build now we have HOST_IS_64_BIT. Bug: 13751317 Change-Id: Ic5779fbeebfca5cff59012ccaeeec89f5973740e
/external/qemu/Makefile.common
|
27ff62a645346c58826ce3e7d08727832c1a9e58 |
|
05-May-2014 |
David 'Digit' Turner <digit@google.com> |
Merge "Disable 64-bit Darwin platform build." into idea133 Auto-merge: 5e25267 * commit '5e2526706be97ceee436e6f0b7e6c1c35619b851': Disable 64-bit Darwin platform build. Add '-accel <mode>' and 'no-accel' options. Add misc android/base/ helper classes. Windows: Fix libSDLmain compilation
|
425c53b9015b8f3fa9011a421b2c9d56450ba0c8 |
|
02-May-2014 |
David 'Digit' Turner <digit@google.com> |
Fix 64-bit host platform builds. When performing a 64-bit host platform build, do not pick the 32-bit SDL prebuilt libraries. This relies on the fact that BUILD_HOST_64bit will be set in this case. NOTE: This requires the X11 development headers/libraries to be installed on the machine, since SDL will be rebuilt directly from sources. BUG=14489102 Change-Id: Ia36f73f8477059ea1a0d4c48c42fbe2d60595530
/external/qemu/Makefile.common
|
045bdbe2e68c305f5f819744ccbe75c7478e4e8b |
|
28-Apr-2014 |
David 'Digit' Turner <digit@google.com> |
Add '-accel <mode>' and 'no-accel' options. This patch adds two new options to better control CPU emulation acceleration (i.e. KVM and HAX). More specifically: '-no-accel' can be used to disable acceleration if available. '-accel off' does the same. '-accel on' forces to run with acceleration, or refuses to start the emulator. '-accel auto' probes the system for a working accelerator and uses it when possible (i.e. when emulating x86 or x86_64 images only). Also print some information with -verbose or -debug-init. Note: This adds QEMU-independent probing code for KVM and HAX under android/emulation/ (C++), as well as some glue to use it from C under android/cpu_accelerator.[hc]. Note: HAX is no longer enabled by default when reaching the QEMU main function. Change-Id: Ic91db7a3b213d69296c50fec35cd29a32a8e5779
/external/qemu/Makefile.common
|
97502faffa2e99bf717749a2d249ba3e57d7da4d |
|
28-Apr-2014 |
David 'Digit' Turner <digit@google.com> |
Add misc android/base/ helper classes. This patch adds a few new helper classes under android/base/ that will be used by future patches. - Add a 'clear' method to String class. - Add StringFormat() function to generated String instances from formatted string input, and StringAppendFormat() to append some to an existing instance. - Add ScopedFd to implement a scoped file descriptor wrapper. - Add ScopedHandle to implement a scoped Win32 HANDLE wrapper. Change-Id: I0ae2a1de1123586b23e4faca8f394c6b4dff622e
/external/qemu/Makefile.common
|
fafd1faa7dbc12f2831eac98bbf4739c1a56953b |
|
14-Apr-2014 |
David 'Digit' Turner <digit@google.com> |
block: Remove obsolete files. The Android emulator doesn't use the COW and QCOW block formats. QCOW2 is required for snapshot support at the moment though, so keep it here. Change-Id: Ic27c7d4c45d67e8c71b3b495348ad4d843a7e9b8
/external/qemu/Makefile.common
|
9f82bbb7f5463da5ad5b891fc9012ade60eaed0d |
|
14-Apr-2014 |
David 'Digit' Turner <digit@google.com> |
USB: Remove USB-related sources. The Android emulator doesn't support USB, removing these files reduces the upstream integration work. Change-Id: Id6b40808092e118e11924c30ca77bd366f95d12c
/external/qemu/Makefile.common
|
cd64b0ed78828bd125d69eca70fc78e2f018feb6 |
|
14-Apr-2014 |
David 'Digit' Turner <digit@google.com> |
bluetooth: Remove BT-related sources. The Android emulator doesn't support Bluetooth, so remove any code that is related to it. This reduces the amount of code that needs to be integrated from upstream. If really needed, BT support might be introduced later after the big refactoring is complete. Change-Id: I19d2bdc901aef89bec0418e4f345a5f1758de7a1
/external/qemu/Makefile.common
|
f8f7375ff1f9101ebd22e4bc61109e50bab124e6 |
|
14-Mar-2014 |
David 'Digit' Turner <digit@google.com> |
Move elff to distrib/elff/ The library is mostly generic and is actually also used to build the Android NDK's 'ndk-stack' program, so treat it as a third-party even if the main implementation lives here. Change-Id: I4248c1f3d248207f2f8cfaf5ecc65b28e1681fa3
/external/qemu/Makefile.common
|
c6e0caedac5585546cb68605418eedc9e726b44b |
|
07-Mar-2014 |
David 'Digit' Turner <digit@google.com> |
Support kernels with version >= 3.10 Newer Android Linux kernels modify the way certain devices are named, i.e.: /dev/qemu_pipe is renamed as /dev/goldfish_pipe. /dev/ttyS<num> is renamed as /dev/ttyGF<num> This patch adds support code to the emulator to deal with this as transparently as possible: 1) Add a new hardware property 'kernel.newDeviceNaming', a string which can only take the values 'autodetect', 'no', and 'yes'. 2) Support code to probe the type of a kernel image. IMPORTANT: The kernel implementation depends on the host /usr/bin/file to properly recognize kernel files and extract their version number. This really only works on Linux and OS X, and only for x86 and x86_64 kernel images. A future patch will implement more robust detection by essentially doing its own probing through libmagic or equivalent. Note that there doesn't seem to be any existing libmagic rules to recognize ARM and MIPS kernel images at the moment :-( See android/kernel/kernel_utils* 3) Modify the emulator startup code to perform auto-detection when possible (broken on Windows, and non Intel archs, see comment above). 4) Modify the kernel command line generation to handle the new TTY device naming 5) Modify the Goldfish pipe virtual device implementation (since the device name presented to the kernel also changed). This should be enough to auto-detect Linux 3.10+ x86_64 kernel images on Linux. Change-Id: Ied517f8a1fdeb18d84fa9a12ebcdc3daa1f41d9a
/external/qemu/Makefile.common
|
af061c540b1fe78626ef7d3923bb98e98483f0fd |
|
28-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Build system refinements. This patch contains changes to the standalone build system that are preparing for the ability to build the GPU emulation libraries directly from sources with it. This requires several patches to said GPU emulation sources though. + Add support for auto-generated C++ files. + Add support for host shared libraries. + Cleanup 64-bit build conditionals. + Build SDL and SDLmain as their own static libraries. Change-Id: I88dca965d47432dc6b41428d39869f628632d33d
/external/qemu/Makefile.common
|
c7702eb5df5f3e72ceedfcd5fb60b94c0a945934 |
|
26-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Upgrade libpng to version 1.2.46 (from 1.2.19) Change-Id: Icea84eaf147266915c90b03bcd798df668365d2b
/external/qemu/Makefile.common
|
17b20e6f38ad2263e47a6884c4f68ce9773d8b29 |
|
26-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Upgrade Zlib to 1.2.8 (from 1.2.3) Change-Id: Ib08f21dddffef4a63bc8f7691c155557ed83ba3d
/external/qemu/Makefile.common
|
d3f2c27ff9f611e5047a35cb20ed53f548214fed |
|
19-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
New C++ helper classes. This adds a few useful C++ helper classes to android/base/ that will be used in the future by other patches. + Add android/base/String.h, a slightly more efficient version of std::string. + Add android/base/containers/StringVector.h, an optimized vector of strings that is much more efficient than std::vector<std::string> and should use less memory. + Add android/base/containers/PodVector.h which defines an efficient std::vector<> equivalent for POD-struct compatible types. + Modify PathUtils.h to use StringVector instead of std::vector<std::string>. + Modify android/utils/file_data.c to get rid of valgrind complaints when running the unit test suite. + Add android/base/Limits.h to get reliable integer limit macros in C++. Change-Id: Id9374aec658383c29be70a798ba17867664f69d3
/external/qemu/Makefile.common
|
890f46464b0a35cbee882a5d62bd86a49879cabc |
|
24-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Fix Ext4 filesystem support. This patch fixes the way the emulator handles Ext4 partition images. Before the patch: - The hardware property 'hw.useext4' was used to determine whether the partition images use yaffs2 (for 'no') or ext4 (for 'yes'). The default value was based on the API level, since ext4 is used since Android 4.4 (API level 19), but it was easy to get confused, resulting in the inability to properly boot the AVD. The symptom was not trivial, i.e.: - Mounting /system with the disk image failed, so the system kept using the ramdisk mount. - Later, logcat contained plenty of complaints that some stuff couldn't be found under /system/bin/ After the patch: - The partition format is simply auto-detected by probing the start of the disk image. The hardware property has not been removed because doing this breaks snapshots, but it is now tagged as deprecated. + Move the ext4 probing code from android/avd/util.* to android/filesystems/ext4_utils.* and add proper unit tests. Change-Id: Iab24191e491d4cb8589dd13408618a0d13efeb76
/external/qemu/Makefile.common
|
6aff02b9b67f734329c58db3c2da6304aeb770bf |
|
18-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
opengl: Simplify emulator build. This patch simplifies the emulator build configuration to support OpenGLES emulation. More precisely: - Remove the include of <libOpenGLRender/render_api.h> and provide the corresponding declarations in android/opengles.c in a way that make them easy to call indirectly after using dlopen()/dlsym() to resolve the symbols. This makes the emulator much easier to build as a standalone program (it now only depends on external/gtest, and that's only for unit tests). - Fix android-configure.sh to properly detect the location of host libraries (it was broken for Windows). Also do not error if the libraries cannot be found, since the emulator will simply not enable GPU emulation if they are not available at runtime. - Remove CONFIG_ANDROID_OPENGLES, QEMU_OPENGLES_INCLUDE and QEMU_OPENGLES_LIBS from the build, since they are not needed anymore. Change-Id: Ifd300400df5833091e1f06e56d0507de2b973390
/external/qemu/Makefile.common
|
4403db3f183398aa4cfc252c3b22441f43f41b09 |
|
17-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Merge aosp/master into aosp/idea133 Get latest refactoring changes into our stable tree. Should not alter performance or features at this point. Change-Id: I6af284e7bba7fbbbb969752c97571d772ec1dc4c
|
5ea914899e5dbef4e8a7454b40a3c6648173f086 |
|
13-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Add boot.prop support. This patch allows one to specify a custom list of boot properties that will be injected into the guest system at boot time. The properties must be placed in a file named 'boot.prop', which can appear in the following locations: For AVDs: 1) In the AVD's content directory. 2) Otherwise in the system image's directory. For Android platform builds: 1) In the $ANDROID_BUILD_OUT directory. Note that this is different from build.prop which will be read from $ANDROID_BUILD_OUT/system/ instead (and isn't used to inject any properties). Note that any '-boot-property <name>=<value>' on the command-line will be injected after the content of 'boot.prop', overriding it unless it begins with a 'ro.' prefix. The patch refactors a little how information is retrieved for builds and AVD configurations. It also fixes a few bugs in the auto-detection logic for the target architecture / ABI. BUG=12819077 Change-Id: I9f41f21d9de3e4d25de427f0e5a6bb517f34c5ba
/external/qemu/Makefile.common
|
76bc27e498ecd8e75885308f81cf7b61c8aadfe7 |
|
12-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Fix the emulator build. This patch solves many compilation issues that were not detected locally: - <sys/syscall.h> cannot always be included, so add a _GNU_SOURCE=1 definition and ensure it is only included with CONFIG_SIGNALFD (which is currently undefined). - Remove from the Win32 build. For some reason, this compiled fine with ./android-rebuild.sh --mingw. Change-Id: If572852d0b40fff53a8a9e97456b4d6a42de0426
/external/qemu/Makefile.common
|
11823980b127b345cac5fdf1e2ef0a3bb6c951cb |
|
11-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
android/base/files/PathUtils.h: add new header. This patch adds a new header containing utility routines used to manage file system paths in a consistent way. Change-Id: I77bac2ca1834ab08a500d0f786fb800d0cd97b93
/external/qemu/Makefile.common
|
74f2ec66c299bf9706d209d3fca597afd733a8e1 |
|
05-Feb-2014 |
David 'Digit' Turner <digit@android.com> |
Remove unused util/acl.c Change-Id: Ifdffdcd22b9053d14c1852918807123088662693
/external/qemu/Makefile.common
|
494b129f77a2254e235244c605fe8a21f7188edd |
|
05-Feb-2014 |
David 'Digit' Turner <digit@android.com> |
util/compatfd.c: upstream implementation. Change-Id: I1b4eceddfe65d1112e007f9a440eeb2349e7d396
/external/qemu/Makefile.common
|
086e66e13d37c79da0cd90b92f0127c869aa7b9d |
|
04-Feb-2014 |
David 'Digit' Turner <digit@android.com> |
qemu-thread: use upstream version. Note: some code in cpus.c still uses functions like qemu_thread_signal() that are not implemented anymore, but this is ok as long as CONFIG_IOTHREAD is not defined in our configurations. This will have to be address in a future patch. Change-Id: I74def50e3f3cfba69352072efc467cf23e025f36
/external/qemu/Makefile.common
|
40022d753d452bac40c3df682a37aa34b4af72a3 |
|
04-Feb-2014 |
David 'Digit' Turner <digit@android.com> |
block: Remove unused block drivers. These block drivers were never used, removing the sources will simplify upstream change integration in future patches. Change-Id: I3614027976a5836f087ccad6ee7a35b05868e09b
/external/qemu/Makefile.common
|
aa1180ca05774398245953deb306c0e25829afee |
|
28-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
stub monitor implementation. This removes monitor.c and replaces it with a smaller monitor-android.c which implements only the minimum stubs required for the Android emulator (really snapshot support). NOTE: After this change, the 'monitor' command in the Android console will always return with a KO. Change-Id: I8b631b017d7418cbc3fd3ba36e55147ce2630459
/external/qemu/Makefile.common
|
dc7a2b61b139c3593587fe48a77bbc8735f5daba |
|
28-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
migration: Remove unused sources. Remove most of the migration-related sources, since they're completely unused by the Android emulator build. So much less to actually refactor to upstream level. Change-Id: I1e8ad55366bb220a3da182e7b5cfb8db94f2974b
/external/qemu/Makefile.common
|
c79de3c66b3506a1c6b00daedaea9b616b3e140c |
|
23-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
Get QEMUFile implementation to upstream level. Change-Id: I0c5003876c7df0246118cb903cf6b834fac82687
/external/qemu/Makefile.common
|
73dd5fc7da33280597dc6302ad8116d3723ebf3e |
|
04-Feb-2014 |
David 'Digit' Turner <digit@android.com> |
Rename android/config.h to android/config-file.h This is to avoid naming conflicts later when including "config.h" in android/main.c to get the correct definition of TARGET_X86 and other macros. Change-Id: I4743bf207597721612386213208efe0c7e2f41c5
/external/qemu/Makefile.common
|
67c355655125676a70926c8557a27e79e2d68a18 |
|
16-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
qemu-log.c: upstream integration. Change-Id: I3d999f5ec0ed9cef6c88ce8a21246974251cea09
/external/qemu/Makefile.common
|
2e36f0569aaef439327309aebcf16dfbfac52a9a |
|
16-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
Add a few QOM sources to the build. Change-Id: Ie0cd27c4426978338e0d2f9b1ea60aa604b1e09d
/external/qemu/Makefile.common
|
1befd3440439e8181a31140674e847f2d3e1481e |
|
15-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
Bring <qemu/iov.h> and <qemu/typedefs.h> The location of qemu_iovec_xxx functions has moved from util/cutils.c to a new file util/iov.c, with a few changes in the function's interface, so update all callers. + Bring in <qemu/typedefs.h> and fix the few conflicts there. Change-Id: I851ad31c3e15a0e8a23266cbfd5d1a52630a66b7
/external/qemu/Makefile.common
|
910aea96b67d7f0357f586c47f20848ec435aa1b |
|
15-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
qapi: First integration of qapi definitions. Brings headers (and some sources) related to the QEMU object model up to date with regards to upstream. Note that this misses several implementation files which are currently not used. Also misses qemu/cpu.h since it defines CPUState in a completely different way than our current sources. Change-Id: I8ece10ff9fcab28cb2e7de3493be21b793b3c98a
/external/qemu/Makefile.common
|
a2c14f947951612b45024095afd2210aa7368773 |
|
04-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Cleanup: Remove 100+ compiler warnings. This is a big cleanup that removes compiler warnings by performing the following: - Remove unused functions or variables. - Change pointer cast to be alias safe using unions. - Use __attribute__((unused)) on some local variable definitions when their usage depends on conditional defines that are not always true when compiling the same source several times. - Fix a couple array indexing bugs. There are still a few warnings from the JSON lexer, libjpeg and the TCG helpers though, but the overall compilation is much cleaner. BUG=NONE Change-Id: Ic4483e6402b266ecfd7bca8c92a73d8fcf392a1f
/external/qemu/Makefile.common
|
af81d7432594d8459c4fb9f76c5e8a981f69a94c |
|
03-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Add android/utils/eintr_wrapper.h Add a new Android-specific header that defines two macros to handle EINTR in a consistent way, as well as allow detecting when a system call loops too many times and exit with a fatal error message when that happens. + Unit tests. + Update existing code under android/ which uses to deal directly with EINTR to use the new HANDLE_EINTR() and IGNORE_EINTR() + Remove EINTR checks for functions that call socket_xxx() functions which already loop around EINTR. Change-Id: I1d2ee64d9743a2edc506f616465ea091878db620
/external/qemu/Makefile.common
|
7745b32edeb9ec1c2763030bb42a8fc0c3e6d8c4 |
|
22-Jan-2014 |
David 'Digit' Turner <digit@google.com> |
Fix Windows command-line quoting. When the 'emulator.exe' program invokes the real emulation program (e.g. 'emulator-arm.exe' or 'emulator-x86.exe'), it passes its own command-line arguments through execv(). Unfortunately, on Windows this doesn't work, as the command-line arguments must be quoted in a special way. This is describ is described in detail in the MSDN blog post named "Everyone quotes command line arguments the wrong way" [1] The code under android/main-emulator.c had several problems: - It only quoted the first parameter (the program name), but not any other one. - The quoting was too naive to work in the general case. This patch adds a utility function named win32_cmdline_quote() to perform correct quoting, and changes android/main-emulator.c to use it. Fix for http://b.android.com/18317 [1] http://blogs.msdn.com/b/twistylittlepassagesallalike/archive/2011/04/23/everyone-quotes-arguments-the-wrong-way.aspx Change-Id: I7cfd6ddd10706c7aeb6c7df56e20398277d78409
/external/qemu/Makefile.common
|
f6f50078e3261143aba759697bc2787f9855a51f |
|
14-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
Build both 32-bit and 64-bit binaries in standalone build. This only works for Linux and OS X builds for now, until Windows 64-bit compilation is fixed. + Remove --arch=<name> and --try-64 flags to android-configure.sh and android-rebuild.sh, since they're not needed anymore. + Remove the build of obsolete 'emulator-ui' and 'qemu-android-xxx' programs. We don't need them for now, and it's likely things will change a lot once we want to work on remote display / UI. http://b.android.com/64805 Change-Id: I70be38d53650648f74323eb33284661a8bb77c88
/external/qemu/Makefile.common
|
ef457d2a39ce5f164b1b95c10181e4a99f620a19 |
|
07-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
android/base/StringView.h: Another C++ helper class. Change-Id: I744ad9de0c088238655c786c75261baf9c9c9deb
/external/qemu/Makefile.common
|
7a41eef6b64b2a07cf170844c897e4ae1cda998e |
|
07-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
android/base/Log.h: Add C++ Logging helper class. Android-specific portions of the emulator are going to gradually switch to C++ to make the code easier to structure, test and refactor. This shall not impact anything that QEMU depends on. This is the first patch in a series that will gradually operate these changes. It introduces "android/base/Log.h", which provides useful macros to perform logging and error checks. Change-Id: I3d25bd029009d3e428ed2b5b3a02ac41313325c0
/external/qemu/Makefile.common
|
cef730bbc330b4a0ad84d12c71fdcb010ddb3772 |
|
04-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Cleanup: Remove 100+ compiler warnings. This is a big cleanup that removes compiler warnings by performing the following: - Remove unused functions or variables. - Change pointer cast to be alias safe using unions. - Use __attribute__((unused)) on some local variable definitions when their usage depends on conditional defines that are not always true when compiling the same source several times. - Fix a couple array indexing bugs. There are still a few warnings from the JSON lexer, libjpeg and the TCG helpers though, but the overall compilation is much cleaner. BUG=NONE Change-Id: Ic4483e6402b266ecfd7bca8c92a73d8fcf392a1f
/external/qemu/Makefile.common
|
52e9942c2e0ffac6f7ccc2d2c916c855ad62c33d |
|
03-Feb-2014 |
David 'Digit' Turner <digit@google.com> |
Add android/utils/eintr_wrapper.h Add a new Android-specific header that defines two macros to handle EINTR in a consistent way, as well as allow detecting when a system call loops too many times and exit with a fatal error message when that happens. + Unit tests. + Update existing code under android/ which uses to deal directly with EINTR to use the new HANDLE_EINTR() and IGNORE_EINTR() + Remove EINTR checks for functions that call socket_xxx() functions which already loop around EINTR. Change-Id: I1d2ee64d9743a2edc506f616465ea091878db620
/external/qemu/Makefile.common
|
60d0a1536e4e75cee039c09da65a2e994be2e106 |
|
22-Jan-2014 |
David 'Digit' Turner <digit@google.com> |
Fix Windows command-line quoting. When the 'emulator.exe' program invokes the real emulation program (e.g. 'emulator-arm.exe' or 'emulator-x86.exe'), it passes its own command-line arguments through execv(). Unfortunately, on Windows this doesn't work, as the command-line arguments must be quoted in a special way. This is describ is described in detail in the MSDN blog post named "Everyone quotes command line arguments the wrong way" [1] The code under android/main-emulator.c had several problems: - It only quoted the first parameter (the program name), but not any other one. - The quoting was too naive to work in the general case. This patch adds a utility function named win32_cmdline_quote() to perform correct quoting, and changes android/main-emulator.c to use it. Fix for http://b.android.com/18317 [1] http://blogs.msdn.com/b/twistylittlepassagesallalike/archive/2011/04/23/everyone-quotes-arguments-the-wrong-way.aspx Change-Id: I7cfd6ddd10706c7aeb6c7df56e20398277d78409
/external/qemu/Makefile.common
|
8be0af88999fd0c96e70b7872ce7a9af03905c0a |
|
14-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
Build both 32-bit and 64-bit binaries in standalone build. This only works for Linux and OS X builds for now, until Windows 64-bit compilation is fixed. + Remove --arch=<name> and --try-64 flags to android-configure.sh and android-rebuild.sh, since they're not needed anymore. + Remove the build of obsolete 'emulator-ui' and 'qemu-android-xxx' programs. We don't need them for now, and it's likely things will change a lot once we want to work on remote display / UI. http://b.android.com/64805 Change-Id: I70be38d53650648f74323eb33284661a8bb77c88
/external/qemu/Makefile.common
|
99c07e706aa20eed774d3c19915197351d37df07 |
|
13-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
Really fix the build. Damn. Change-Id: I692c172e30cd374d93edf1c7d5ba3eedf9ba4b2f
/external/qemu/Makefile.common
|
e8d34ee7b651f75127c7234c0404184b1b65c7ef |
|
13-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
Fix emulator build. Change-Id: Ia71146d7e9780a684e9f7b2a8c98c5504b8fbc87
/external/qemu/Makefile.common
|
aa8236dc1b1ea300ab18716db5b8fab42aca3ca7 |
|
10-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
qemu-malloc.c: Remove qemu-specific heap routines. Remove all uses of qemu_malloc/malloc0/realloc/free/strdup/etc to use the equivalent GLib functions (g_malloc, g_free, ...) as per upstream. This also removes qemu-malloc.c since it's no longer required. Change-Id: I3c36a0396b73dd114b8da385b43f56a2e54dbb15
/external/qemu/Makefile.common
|
1d1a2af599bfd91357cbc44b3cf20b1ab104f4ab |
|
10-Jan-2014 |
David 'Digit' Turner <digit@android.com> |
glib: Add mini GLib library sources. Upstream QEMU now depends on GLib, this patch adds a tiny version of the library instead, because integrating the real one in the emulator build is going to be challenging. Change-Id: I4b178547280247310197599a854bb53e2072a865
/external/qemu/Makefile.common
|
d471c920763164fa1cf0d75a5ccecb98ec8c918f |
|
17-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
usb-*.c -> hw/usb/ Change-Id: I5b07162013d6d3bb0f8dfbf026a016058ca32af6
/external/qemu/Makefile.common
|
d7088e94adddcae9dc20db86ce7a69780b54ac4d |
|
17-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
input.c -> ui/ Change-Id: I3a248542d7a521f804fcf3348b0117bbe00e1f49
/external/qemu/Makefile.common
|
6e2eb78f2b52b6fff73a72995bc4356d6e67e773 |
|
15-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
Move tcpdump.h -> include/android/tcpdump.h + tcpdump.c -> android/qemu-tcpdump.c Change-Id: Ib3a19f62f910b6562285fab3bcc98178ea9a4e9e
/external/qemu/Makefile.common
|
e1e03df288d5a44bfbffbd86588395c7cbbc27df |
|
15-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
Move more headers. cbuffer.h, charpipe.h -> include/android/ cbuffer.c, charpipe.c -> android/ qemu_debug.h -> include/android/qemu-debug.h block.h, block_int.h -> include/block/ elf.h -> include/ hax.h -> include/exec/ qemu-lock.h -> include/exec/spinlock.h readline.h -> include/monitor/readline.h qemu-common.h - include qemu-barrier.h -> include/qemu/atomic.h qemu-log.h -> include/qemu/log.h Change-Id: I86b998932461caa35d347cd71b40bd6e4ec7d84d
/external/qemu/Makefile.common
|
cc33b2d8035092608c7cba4154e9c44452727e1b |
|
15-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
Move disas.h to include/disas/ + dis-asm.h -> include/disas/bfd.h + arm-dis.c -> disas/arm.c ppc-dis.c -> disas/ppc.c i386-dis.c -> disas/i386.c mips-dis.c -> disas/mips.c + remove all unused .ld scripts Change-Id: Ie29662b83c09ea17d34e42dda3998691c182b10e
/external/qemu/Makefile.common
|
d413fa5f2916a2a46494edb320340486b262644c |
|
14-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
Move iolooper.h to include/android/ + Move iolooper-select.c to android/ Change-Id: I5154aa491132b43c3b80c248bb8dd968f4d41c2a
/external/qemu/Makefile.common
|
1634ff531961026312bec4b66463bbd8a689c6ea |
|
14-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
Move dynlink.h to include/android/ + Move dynlink-static.c to android/ + Move loadpng.c to android/ + Move linux_keycodes.h to android/ Change-Id: Ibaede71e37223e86393cecc5bc86ac97ea1c97e6
/external/qemu/Makefile.common
|
cc330d4169441727fecf1da08aee806fc021c4e2 |
|
14-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
Move net.h to include/net/ + Move net-android.c and net.c to net/ + Rename net-checksum.c to net/checksum.c + Move sockets.h and shaper.h to include/android/ and sockets.c + shaper.c to android/ + Move vgafont.h to ui/ Change-Id: I2659a919a316d3f95aac0f9924833eeee4cb5592
/external/qemu/Makefile.common
|
1c31e3e43ce4cca85a707dfff631e5e102fdeced |
|
14-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
Even more moves. include/ui + ui/ include/qapi/qmp/ + qobject/ Change-Id: Ief236a08cb234d9dd692e85907757678ef32f035
/external/qemu/Makefile.common
|
e90d665cd63a0bc5c3306e1ee3e98ad362546b16 |
|
14-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
Move more stuff to include/qemu/ and util/ Change-Id: I3d10ae4d5b050f7da565476e2c0f6be5d3348f5d
/external/qemu/Makefile.common
|
37dc41a01f33a1e6aca0458b205c2b1609fe82c3 |
|
14-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
Move more files to include/qemu/ and util/ Change-Id: I79e70241894e8bbeea2de711ff9de742583c23b1
/external/qemu/Makefile.common
|
845691383dd6a0ff71acf7aee0736adba350f6a9 |
|
13-Dec-2013 |
David 'Digit' Turner <digit@android.com> |
Move osdeps.h to include/qemu/osdep.h and osdep.c to util/osdep.c Change-Id: Icaf5cd7dfc8f75cbe7eb324cc9ca91a976f35d57
/external/qemu/Makefile.common
|
9e319a9b83008d7f7a34afb51a548d948bd88672 |
|
28-Nov-2012 |
Raphael Moll <ralf@android.com> |
SDK: fix emulator to build under Cygwin. This focuses on fixing a gcc warning that does not exists on GCC 3.4 (as used by my install of cygwin). There are other compilation issues not resolved here. Change-Id: If6e3f9565b665a716425dd3f90d044a41761557c
/external/qemu/Makefile.common
|
6eb25c716f097615f3c975c22b1b1bfaff914c34 |
|
24-Aug-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Fix mac build Change-Id: Ic80b84d7b29134c9dfad4163321f61302961d179
/external/qemu/Makefile.common
|
33da99a33cab75287d483c2602bb2e40b34b666a |
|
22-Aug-2012 |
Lars Poeschel <poeschel@lemonage.de> |
Fix double optimization on buildsystem for emulator Building the emulator was done with two optimization flags supplied to the compiler. This prevented to do debug builds with unoptimized compilation. This is fixed now. Change-Id: Ie64747fd45fa9a3e2de37ba094b223ef52ef0f19
/external/qemu/Makefile.common
|
83df59cef8e9bb631efec48c8baedce1647e90c1 |
|
25-Jul-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Enable 64-bit emulator for MacOSX host 64-bit emulator can now be enabled for MacOSX host because the newly upgraded sdl-1.2.15 no longer depends on NSQuickDrawView lacking 64-bit implementation. Also rename makefile variable MSDK to OSX_VERSION Change-Id: Ia36863f7708d281f90f5fa40a1507b52b1b68a79
/external/qemu/Makefile.common
|
c60b11434975c424e937fad75275840ef5ec3e81 |
|
18-Jul-2012 |
Jesse Hall <jessehall@google.com> |
Switch to sdl 1.2.15 and build from source on osx Change-Id: I036eefd9789bfe346e9ee5acc15c1d9ffe995c94
/external/qemu/Makefile.common
|
7136b053b7fc7840ec64e01d1d19ab822e1f949a |
|
10-Apr-2012 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Use new SdkController communication protocol for emulation ports android/sdk-control-socket.* has replaced android/android-device.* as the back-bone of communicating with SDK controller on the device. The major differences are: - New communication protocol uses just one (async) socket connection to communicate with the device (the old one used two sockets: one sync, and another - async). - New communication protocol connects to one TCP port (1970 in this CL) for all emulation ports. Channel multiplexing is done by using port names, and assigning a separate socket for communication inside each separate port. The old protocol had separate TCP ports for each emulation ports (1968 for sensors, and 1969 for multi-touch) Change-Id: I779fcbdfba2f9b4c433a9d76a567975708b00469
/external/qemu/Makefile.common
|
183e927350a14945e13ab217e16ab5dce20349f3 |
|
27-Apr-2012 |
Jesse Hall <jessehall@google.com> |
Fix standalone emulator build. - Allow building with OpenGL ES acceleration disabled, avoiding a dependency on stuff outside the QEMU project. - Allow the standalone configure.sh to provide the include/lib path for the OpenGL ES libraries. - Update the default OpenGL ES include path for standalone builds. Change-Id: I03f4627af4c271783b65a116ceb5934385c68cdc
/external/qemu/Makefile.common
|
6699b688d7dbd7ad4a07ca1c1f77db864012010a |
|
18-Apr-2012 |
Jesse Hall <jessehall@google.com> |
Publish and use libOpenglRender interface header The emulator opengles.c file duplicated the function declarations from libOpenglRenderer's render_api.h instead of including it directly. This led to multiple bugs since the declarations didn't actually match, but there was no way for the compiler or dynamic loader to check this. This change makes opengles.c include render_api.h to get function pointer prototypes, and changes the prototypes/implementation as necessary to make both sides actually match. It should be much more difficult to introduce interface mismatch bugs now. Two bugs this change would have prevented: (a) The interface mismatch caused by inconsistent branching which led to GPU acceleration crashing on Windows. With this change, we would have caught the problem at compile time. (b) The emulator verbose log has always been printing "Can't start OpenGLES renderer?" even when the renderer started fine. This is because the renderer was returning a bool (true == success) but the emulator's declaration said it returned int, and the emulator assumed 0 meant success. This difference in return type should now be caught at compile time. Change-Id: I5b3c70c9a40854332d67e37333acd6edb6ad01f6
/external/qemu/Makefile.common
|
cb9b2e8dfe8021bc5bae01c7ad7442eb9bb93f9e |
|
06-Apr-2012 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Merge "Implements SDKCtlSocket that implements communication protocol wih SdkController"
|
c8aa2c570d30098da59f1967d5158024ed28570d |
|
06-Apr-2012 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Implements SDKCtlSocket that implements communication protocol wih SdkController In addition, this CL contains some minor tweaks to async-socket, and async-socket-connector that improve tracebility. Change-Id: Ib1309b19dcd02e96379155fea7015019d93160e7
/external/qemu/Makefile.common
|
20821320ad10844e916ab1096f883db4f58165d7 |
|
04-Apr-2012 |
Xavier Ducrohet <xav@android.com> |
Move stuff from prebuilt to prebuilts/tools Change-Id: I4090d12fc173af3d11cd3e1a449425ed134c5aed
/external/qemu/Makefile.common
|
a7383ef4eb8d3863c8d582ea0d6b2ddb42125cba |
|
29-Mar-2012 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Implements asynchronous socket API This is pretty basic API that allows to asynchronously connect to a socket, and perform asynchronous read from / write to the connected socket. Since all the operations (including connection) are asynchronous, all the operation results are reported back to the client of this API via set of callbacks that client supplied to this API. Change-Id: I2a18f5b9c575ab7825c9e5a086f4cd9fb6b130ec
/external/qemu/Makefile.common
|
9d36fe7e6f0c5ece4de1b29ec78a15c37c158b1d |
|
26-Mar-2012 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Implements an asynchronous socket connector with retries The typical usage of the API is as such: 1. The client creates an async connector instance by calling async_socket_connector_new routine, supplying there address of the socket to connect, and a callback to invoke on connection events. 2. The client then proceeds with calling async_socket_connector_connect that would initiate connection attempts. The main job on the client side falls on the client's callback routine that serves the connection events. Once connection has been initiated, the connector will invoke that callback to report current connection status. In general, there are three connection events passed to the callback: 1. Success. 2. Failure. 3. Retry. Typically, when client's callback is called for successful connection, the client will pull connected socket's FD from the connector, and then this FD will be used by the client for I/O on the connected socket. If socket's FD is pulled by the client, it must return ASC_CB_KEEP from the callback. When client's callback is invoked with an error (ASC_CONNECTION_FAILED event), the client has an opportunity to review the error (available in 'errno'), and either abort the connection by returning ASC_CB_ABORT, or schedule a retry by returning ASC_CB_RETRY from the callback. If client returns ASC_CB_ABORT from the callback, the connector will stop connection attempts, and will self-destruct. If ASC_CB_RETRY is returned from the callback, the connector will retry connection attempt after timeout that was set by the caller in the call to async_socket_connector_new routine. When client's callback is invoked with ASC_CONNECTION_RETRY, the client has an opportunity to cancel further connection attempts by returning ASC_CB_ABORT, or it can allow another connection attempt by returning ASC_CB_RETRY. The client has no control over the lifespan of initialized connector instance. It always self-destructs after client's cllback returns with a status other than ASC_CB_RETRY. Change-Id: I39b0057013e45ee10d1ef98905b8a5210656a26c
/external/qemu/Makefile.common
|
d0f2ab6936edd2601fe5edac934a1af63d0715ae |
|
23-Mar-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Re-enable Linux 64-bit emulator Restore rules in Makefiles for Linux 64-bit emulator, now that all the dependencies are merged (toolchain, lib64*.{a,so}, etc) Change-Id: I25ecc53837ad9f10ceafb89d9e1d7a3124ce2d71
/external/qemu/Makefile.common
|
c69169a69fc72867717eb1f3c09aa57d9ed405c7 |
|
17-Mar-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Revert to previous prebuilt toolchain until new ones are available in AOSP The new prebuilt toolchains prebuilts/tools/gcc-sdk points to aren't available in AOSP yet (*). Without it, 64-bit emulator can't be built. Revert to previous prebuilt toochain and disable 64-bit emulator for now. (*) This git auto-sync to AOSP in short-time Change-Id: I7301bcbcbc1d4505d34ad69b562d0b9e5968093a
/external/qemu/Makefile.common
|
c7389bd69e570a2c8432b37399aff1976b021f0f |
|
13-Mar-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
64-bit emulator Patch to allow emulator searches for emulator64-${ARCH} first on 64-bit OS. If none is found, the original behavior which searchs for 32-bit emulator-${ARCH} is performed as usual. 64-bit emulator (which still emulates Android built in 32-bit) offers up to 20% speedup compared to its 32-bit counterpart. Details: android/main-emulator.c 1) search emulator64 based on the OS 2) dlopen lib64OpenglRender in 64-bit Makefile.* 1) Rules to build 64-bit executable emulator64-{x86,arm} and libraries emulator64-{libui,libqemu,target-i386,target-arm,libelff,common} 2) remove -Wa,-32 3) Changes prebuit toolchain path android-configure.h android/build/common.h 1) no longer force 32-bit build (because now prebuilts/tools/gcc-sdk/gcc can now handle 64-bit 2) set ANDROID_PREBUILTS to correctly locate ccache android/config/*/config-host.h 1) Detect HOST_X86_64 and HOST_X86_64/HOST_I386 Misc 64-bit porting clean-up 1) use %zx to print variable of type size_t in hex 2) use %zu to print variable of type size_t in dec 3) Initialize query_parm to NULL 4) use PRIu64 to replace PDUd64 5) use PRId64/PRIu64/PRIX64 to print 64-bit 6) drop PRUx64 because PRIx64 does the same 7) cast pointer arith to intptr_t before casting to int 8) fixed 1ULL<<63 Change-Id: Ife62a20063a6ec38d4a9b23977e840af1fce149a
/external/qemu/Makefile.common
|
8dd31e8e10fc3ca10192368acf19d2345eeddde7 |
|
16-Feb-2012 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Multi-touch emulation support Change-Id: I311dc55fe10f41637775baa330a7c732ff317f51
/external/qemu/Makefile.common
|
70a18cd874a22452aca9e39e22275ed4538ed20b |
|
01-Feb-2012 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Include JPEG compression / decompression library into emulator build We are going to need JPEG compression for transferring emulator's framebuffers to the multi-touch supporting application running on an android device. The source for JPEG compressor has been copied over from external/jpeg To that I've added distrib/jpeg-6b/sources.make containing build instruction for JPEG compressor. That file gets included into Makefile.common to compile JPEG compressor sources along with the emulator sources. Change-Id: I7bfccb7a10f873f90edabab5d3b1b2ca4dd57449
/external/qemu/Makefile.common
|
db450d73092add519efddcd6d55c7a0e7541ec70 |
|
12-Jan-2012 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Respect HW configs when loading VM from snapshots. Changing HW configuration properties may cause emulator / guest system crash on condition that VM has been loaded from a snapshot. This CL addresses this issue in the following way: 1. Each time a snapshot is saved, a backup copy of HW config is saved with it. 2. Each time a snapshot is loaded, emulator finds an appropriate HW config backup, and compares current HW config with the one that was saved in the backup, and if configs are different, emulator exits with an appropriate error. Change-Id: I730bec0afbe166e88189fdcc4804b76e109e4422
/external/qemu/Makefile.common
|
d86c724b74e6c04a89219d87559d0b580e100445 |
|
10-Dec-2011 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Implement ADB communication over QEMU pipe Change-Id: I62ff5898c7a955aaaa8af8f7ee7ed018af860f80
/external/qemu/Makefile.common
|
db611d57e0da9acd7ecf2a4a9b2a63e7620fe54d |
|
02-Nov-2011 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Implements sensors emulation using a connected Android device There are three major things in this CL: 1. Abstract a connection with an Android device that is connected to the host via USB, and there is a TCP port forwarding to this device via 'adb forward' command. This abstraction is implemented in android/android-device.* 2. A client for android device API that talks to an app on the connected device that provides values for sensors available on the device. This is implemented in android/sensors-port.* 3. Changes to the sensor emulation code in android/hw-sensors.c to use sensors port (when available) for sensors emulation. Change-Id: I12901e8db6b6a6262fc1703ed96a9f714335d666
/external/qemu/Makefile.common
|
955a99781dd7af82e7a55525a4e51ce5d0814021 |
|
13-Oct-2011 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Implemented Mac camera emulation Change-Id: I01609e8bfcdd8ee5ef876344d0a334ecd69a2b7a
/external/qemu/Makefile.common
|
b92b303b5f52b8d71687eef6eeee78dbae9d1d17 |
|
13-Sep-2011 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Fix Mac build Add dummy rutines implementing public camera API on Mac Change-Id: Id3c9d99d863785b0e00d1bdf6deb0a1af49ce91c
/external/qemu/Makefile.common
|
c646f5e40ddda3d49b581ac0c78cf748b5dee74c |
|
04-Sep-2011 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Camera service skeleton Skeleton that implements camera emulation service over QEMU pipe. More meat will be added as the guest camera emulation develops. This is a patch taken from approved AOSP commit that didn't go through because of a merge conflict. Change-Id: I6f0a2e42be4f5f0bd86d3dbf0c2a609e74b200c2
/external/qemu/Makefile.common
|
a40266822068c89910567a91801247a24b08a46c |
|
24-Aug-2011 |
David 'Digit' Turner <digit@android.com> |
Avoid conflicts with SDL_CONFIG variable. Other Android.mk parsed before this one may define SDL_CONFIG in an unexpected way. We only use this variable as input when want to implement the --sdl-config option in ./android-configure.sh Use QEMU_SDL_CONFIG instead to avoid issues. Change-Id: I89d56284017c696227d7c66ea7d7b0acaa73a9ca
/external/qemu/Makefile.common
|
816e53ca385b64c18c9c7cfca569c4d747634e97 |
|
17-Aug-2011 |
David 'Digit' Turner <digit@android.com> |
Add DLL-loading head <android/utils/dll.h> This patch adds several functions to make loading shared libraries dynamically easier. This will be used to load the GLES emulation libraries. Change-Id: Ib401af339530bc647bfa86fb23a2840fe0a201dd
/external/qemu/Makefile.common
|
4ed09fd35085c96ae8edbda87757187f75eeac8d |
|
18-Aug-2011 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Video capturing code for Linux, and Windows Contains API that connects to a camera device, and pulls video frames from it on request from the client. Change-Id: If1d80c57611afff637a7734ce5c3a2c874cfc85a
/external/qemu/Makefile.common
|
66241a6d9487c854e0a4a7cd5a211c176cdfc974 |
|
06-Jul-2011 |
David 'Digit' Turner <digit@android.com> |
Fix build Change-Id: Ic830748a627ffccfb4642cc56ea76496c6a8fb25
/external/qemu/Makefile.common
|
42fc4496541acdcaf49bcdf3fcffe247be985fe0 |
|
29-Jun-2011 |
David 'Digit' Turner <digit@android.com> |
hw-config-defs.h: Remove from source tree + auto-generate This patch modifies the emulator's build system to place the auto-generated file android/avd/hw-config-defs.h into the build directory. Before that, the file was placed in the source tree. + Fix the standalone build system to properly deal with generated source file dependencies + LOCAL_C_INCLUDES Change-Id: I4e77cd20bf4ca21f79d5dd19f27724bd8be53a79
/external/qemu/Makefile.common
|
3b2846ad9f156e62574a0abc5ec489f8f13f1121 |
|
11-May-2011 |
David 'Digit' Turner <digit@android.com> |
qemu-char-android.c: rename to qemu-char.c + convert to QemuOpts* initialization functions. Change-Id: I5a245ed2de068af49fdc92de8e3e834d0f49aa27
/external/qemu/Makefile.common
|
8354d2d35fe4463816dcc52a96fa354940fdd38f |
|
11-May-2011 |
David 'Digit' Turner <digit@android.com> |
vl-android.c: Move code to iohandler.c Change-Id: I28d2025dfa1f7bfc1ab2318f5ff6c0fd56f4b658
/external/qemu/Makefile.common
|
95a83ce7ee413954ba6325584ea659c6685edfd5 |
|
10-May-2011 |
David 'Digit' Turner <digit@android.com> |
savevm: Remove OutputBuffer hack. It's easier to provide a fake Monitor object instead. Change-Id: Ia45267061d489b147497add6120d3caa9234ac11
/external/qemu/Makefile.common
|
317c9d54284844615b33a25834a63248bf1bfa73 |
|
10-May-2011 |
David 'Digit' Turner <digit@android.com> |
qemu-timer.c: upstream integrate Change-Id: I6856ded73b4dcd10fe4831697c8518f958aeffbb
/external/qemu/Makefile.common
|
088edf82b3d34409ed9d9fd09ec1f7e9b933304f |
|
09-May-2011 |
David 'Digit' Turner <digit@android.com> |
os-posix.c + os-win32.c and dependencies + Generate qemu-options.def instead of qemu-options.h Change-Id: I043e6b0c1c58e5cc2e96d05465f39b42f9054b5a
/external/qemu/Makefile.common
|
0a879bf9ba318562e41a1bd4a6f9547f124a9831 |
|
12-May-2011 |
David 'Digit' Turner <digit@android.com> |
Dump hardware config. with -verbose option. This patch dumps the content of the hardware configuration file when the -verbose option (or equivalent -debug-init) is used. This is useful to determine exactly what is launched when debugging emulator issues. Change-Id: I101b87cddb12c603b43420ea72bb357fc33f327d
/external/qemu/Makefile.common
|
c0ac73377011befa8a3e6444d61a80cd6ada2659 |
|
02-May-2011 |
David 'Digit' Turner <digit@android.com> |
Document new QEMU pipe implementation. + Rename android/pipe-net.c to android/hw-pipe-net.c Change-Id: Ia2e2466c3bf3ea812f36639420fad7ce2e0cb61d
/external/qemu/Makefile.common
|
2d238fd9871687b1557f15b8878a6cf3e9634b57 |
|
25-Mar-2011 |
David 'Digit' Turner <digit@android.com> |
Add 'emulator' launcher program. This patch renames the current ARM-specific emulator binary to 'emulator-arm' and introduces a new tiny (less than 20KB) 'emulator' launcher program. The role of 'emulator' is to launch either 'emulator-arm' or 'emulator-x86' based on the target AVD or platform build being used. This program will be replaced in the future by what is currently known as 'emulator-ui', but is a good placeholder until this work is completed. + Move some utility functions from android/avd/info.[hc] to android/avd/util.[hc] so that 'emulator' can use them directly. IMPORTANT: For platform builds, the target architecture is detected automatically by parsing the build.prop file. For SDK AVDs however, there is no easy way to determine the target architecture, so the patch adds a new hw.cpu.arch property which can have value 'arm' or 'x86' Change-Id: I0084c196695a75c8b9230ba716b3cd2e12610ded
/external/qemu/Makefile.common
|
d4d688e926097faba7fd3717d1c0d3f296bdb526 |
|
26-Apr-2011 |
David 'Digit' Turner <digit@android.com> |
New goldfish_pipe virtual device. This adds a new virtual hardware device named "goldfish_pipe" used to implement a very fast communication channel between the guest system and the emulator. IMPORTANT: This depends on a special kernel driver, see: https://review.source.android.com/#change,22496 Usage from the guest is simply the following: fd = open("/dev/qemu_pipe", O_RDWR); const char* pipename = "pipe:<name>"; ret = write(fd, pipename, strlen(pipename)+1); if (ret < 0) { /* could not connect to service named <name> */ } /* now you can read()/write()/close() as a normal * file descriptor to exchange data with the service. */ In addition, this implements the following pipe services in the emulator: tcp:<port> tcp:<hostname>:<port> unix:<path> opengles The 'tcp:' and 'unix:' services simply redirect to a TCP or Unix socket on the host with minimal The 'opengles' service simply connects to tcp:locahost:22468 for now. We may change this to be more configurable in the future, but that's the port number used by the current experimental OpenGL ES hardware emulation host libraries / programs. Benchmarking with a simple ping-pong program shows that the guest <-> emulator can achieve a roundtrip bandwidth of 192 MB/s (on a 2.7 Ghz Xeon PC). Using the tcp: service to talk to a ping-pong server listening on localhost reaches 102 MB/s on the same machine, using a Unix socket reaches 140 MB/s. By contrast, using standard sockets in the guest reaches only 3.8 MB/s on the same machine (and requires special privileges from the application anyway).
/external/qemu/Makefile.common
|
9b4029807c91ea42ff5e84e3616c90e2ce42d6f8 |
|
05-Apr-2011 |
David 'Digit' Turner <digit@android.com> |
Add OpenGLES pipe implementation. Change-Id: I3ad498380de8438dbf430316af2d4391876057cc
/external/qemu/Makefile.common
|
bbb81047a39e39021b3b10e2d86af146d514bf8c |
|
17-Mar-2011 |
David 'Digit' Turner <digit@android.com> |
Add <android/utils/intmap.h> which implements an integer-keyed map of pointers. This will be used later to support QEMUD fast pipes.
/external/qemu/Makefile.common
|
aff94b88c4ec057f20950d5e7a88b90cc4d97dce |
|
07-Feb-2011 |
David 'Digit' Turner <digit@android.com> |
Build arm and x86 binaries at the same time. This patch modifies the way we build the emulator's various programs. It reduces the number of static libraries generated, and better segregates between common, ui, qemu and target-specific code. Note that we build both the arm and x86 binaries at the same time in all build scenarios for now. This is done to catch build regressions as soon as possible. Change-Id: I6240705041e137e32f207e1e2444c614c52aaf05
/external/qemu/Makefile.common
|
fc8ed80ba1362d2ce500003625e1c9c39f765661 |
|
10-Feb-2011 |
Xavier Ducrohet <xav@android.com> |
Revert "Build arm and x86 binaries at the same time." This fails to build on MacOS X This reverts commit a39b10bd2574825a815d6ad854499dd127cfa9cb.
/external/qemu/Makefile.common
|
a39b10bd2574825a815d6ad854499dd127cfa9cb |
|
07-Feb-2011 |
David 'Digit' Turner <digit@android.com> |
Build arm and x86 binaries at the same time. Change-Id: I105c5a097c988cb964b47b40b71c7a08af0d9210
/external/qemu/Makefile.common
|