aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge c80340 from master to r13: Move charmap to hardware propertiesDavid 'Digit' Turner2011-08-059-62/+73
| | | | | | | | | | | | | | | | | | | The name of the emulated charmap must be passed to the guest kernel because it is used by the guest input handling code to load the proper charmap files from the system partition. This mandates that the name becomes a hardware property for the sake of supporting proper snapshotting and ui/core separation. From now on, the charmap name found in a skin will be ignored completely. This shouldn't be a problem in practice because all skins used the default name (qwerty2) anyway. The only reason to change the default value would be if emulating a guest system image that depends on a different charmap during emulation. Change-Id: If571684000b159ae9e9849661c9ff18e19b4cc75
* merge 62ffc42 from master to r13: Added GTV related keysMaciek Molerus2011-08-055-14/+84
| | | | | | | | Adds the definitions for keys present in GoogleTV. Standard linux definitions are used to send notifications to emulated system. Change-Id: Iafb84b68a270b6566361d1822b8e1098ee870280
* Merge "Fix Windows space-in-path handling for 'emulator'." into tools_r13David Turner2011-08-051-2/+46
|\
| * Fix Windows space-in-path handling for 'emulator'.David Turner2011-08-041-2/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a back-port from master to tools_r13 This modifies the 'emulator' launcher program to work correctly on Windows when it is installed in a path that contains spaces. The program computed the path of the program to be launched correctly, but it turns out that the problem is in the implementation of execv() in either mingw or MSVCRT.DLL: experimentation shows that one needs to quote argv[0] when it contains spaces. However, you must *not* quote the first argument to execv(), otherwise the call will fail. Change-Id: Icf66426c88424f2f5d6274a25fc8530ca489f908 Orig-Change-Id: If291c5a8bd507f96b40634ecbc946ba38346ee4e
* | Merge "Fix window scaling issue." into tools_r13David 'Digit' Turner2011-08-051-6/+10
|\ \ | |/
| * Fix window scaling issue.David 'Digit' Turner2011-08-041-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a back-port from master to tools_r13 This patch fixes a bug in the MMX scaling code. The MMX state was not properly empties when we started the scaling functions. The end result was that, if the hardware FPU was in a certain state, rendering would be be erratic. Fixes http://code.google.com/p/android/issues/detail?id=18299 This bug was hard to reproduce, but the fact that it never happens when building a debug version (with -O0) of the emulator indicated a problem in the generated instruction stream. Glad this isn't a compiler error though :) Change-Id: I19d3b35215120b41d92c85473e419b624ffa0f5f Orig-Change-Id: Icea04a7152b8fa5d81cb70cc215c0cd95aed2142
* | Merge "Fix -sysdir handling." into tools_r13David 'Digit' Turner2011-08-053-2/+14
|\ \ | |/
| * Fix -sysdir handling.David 'Digit' Turner2011-08-043-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a back-port from master to tools_r13 This patch fixes the processing of the -sysdir option. Previously, using -sysdir <path> would imply that the -system <path>/<path>/system.img is used, which is incorrect. Also fixes the skin search for the case where we are using the emulator without a pre-existing AVD outside of platform builds (e.g. when running tests). This happens with stuff like: emulator -sysdir /path/to/known/sdk/platforms/<name>/images The patch ensures that the /path/to/known/sdk/platforms/<name>/skins directory is probed (this was the behaviour of the Tools R11 emulator). Change-Id: Ibf7ad97de8e1da375f1049600807e0b3d30bfaaa Orig-Change-Id: I32398bec0d7a28ead234f63c847d3ec95ed14b63 Orig-Change-Id: Id77ea9bdc55bb99c1bfbd2ade291ec41f31ec65d
* | Merge "Auto-adjust scale and window position when needed." into tools_r13David 'Digit' Turner2011-08-053-10/+59
|\ \ | |/
| * Auto-adjust scale and window position when needed.David 'Digit' Turner2011-08-043-10/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a backport from master to tools_r13 This patch changes the emulator's default behaviour in two ways: - Automatically compute the window scale to ensure that the emulator's window can be displayed within the current screen. This ensures that it remains usable when emulating a large-resolution device on a small display (e.g. on a 13" laptop running at 1024x768). This check and auto-correction do not happen if you use the -scale or -dpi-monitor options. - When re-centering an out-of-focus window, ensure that the top of the window is visible (which generally includes the window's title bar). This allows the window to be easily moved or minimized by the user is needed. This fixes three bugs: http://code.google.com/p/android/issues/detail?id=16399 http://code.google.com/p/android/issues/detail?id=16398 http://code.google.com/p/android/issues/detail?id=16397 Change-Id: Ibbc3c8458bd99718e4902d0a032b154c7cff4757 Orig-Change-Id: I8e5a624446d064038b5b9ad16556db8328244906
* | Merge "Fixes dataPartition size problem" into tools_r13David Turner2011-08-051-1/+4
|\ \ | |/
| * Fixes dataPartition size problemMaciek Molerus2011-08-041-1/+4
|/ | | | | | | | | | | This is a back-port from master to tools_r13 Fixes the problem when disk.systemPartition.size avd setting gets overrided by default 66 MBytes hardcoded in qEmu. Change-Id: Ie15a820c60f48320ee8ca2ea60e4dcb65b762cf9 Orig-Change-Id: Ideb7ca172cb72076c83037f823b86ede2442d6f9
* Merge "Update desc on hw.lcd.density to include 213/320"Xavier Ducrohet2011-06-101-1/+1
|\
| * Update desc on hw.lcd.density to include 213/320Xavier Ducrohet2011-06-101-1/+1
| | | | | | | | Change-Id: Ib5f7644242c9f02f3a8eed51aa1d24d1e98ff2aa
* | Merge "target-arm: integrate upstream ARM translator."David 'Digit' Turner2011-06-1020-3078/+5213
|\ \ | |/ |/|
| * target-arm: integrate upstream ARM translator.David 'Digit' Turner2011-06-0820-3078/+5213
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new translator has the following benefits: - faster emulation of ARMv5TE code (through improved JIT) - proper support for ARMv7 and NEON - rebuilding the full-eng platform images for ARMv7-A results in additionnal speed increases (a.k.a. Thumb-2 rocks!). Note that, as an interesting side effect, NEON machine code is generally slower than the equivalent C code it is supposed to replace when run inside the emulator. This can be explained by the fact that for now the translator simply translates each NEON instruction into a series of sequential host instructions (and also requires over-head for packing/unpacking/saturation/ etc...). This change has been tested by running the "full-eng" platform image rebuilt for ARMv7-A and Neon and using an appropriate kernel image (prebuilt/android-arm/kernel/kernel-qemu-armv7). The system could boot and seems to work perfectly. Not a single issue has been experienced during testing. On a 2.4 GHz Xeon CPU, the image boots in about 25 seconds (compared to 40 seconds for a vanilla one without this emulator patch). Thanks to Peter Maydell at Linaro and ARM with his hard work to make this happen (first in upstream, and now on Android). This integration is based on the Meego git repository (git://gitorious.org/qemu-maemo/qemu.git) using the following hash: 7e2d65b0c95c865b1fa6d3d4948e8e822b9ac2fd On top of which, the following upstream patch has been applied (with recommendation from Peter): b7fa9214d8d4f57992c9acd0ccb125c54a095f00 (We chose this repository because it was the closest to the previous integrate. We will probably use the Linaro ones for future work on this part of the emulator). Change-Id: I54837e3d2e908b2380d158411d7a9813630e7e4e
* | Merge "Sensor Command Line Interface implementation."David Turner2011-06-083-39/+344
|\ \ | |/ |/|
| * Sensor Command Line Interface implementation.Tim Wan2011-06-083-39/+344
|/ | | | | | | Implement an unified sensor command line interface(CLI) on emulator to check all available sensors, and get/set specified sensor data. Change-Id: Ibb3c3522dc6c88e42fa1c7dffa32fbb675596b08
* Merge "Add support for the TV DPI."Xavier Ducrohet2011-06-032-9/+15
|\
| * Add support for the TV DPI.Xavier Ducrohet2011-06-032-9/+15
| | | | | | | | | | | | | | | | This is the dpi for the 720p resolution used by Google TV. It's a special dpi, not a bucket dpi like the other one so the handling is a bit different. Change-Id: Id9a245422855c2dba82c267beca203006f6fd864
* | Merge "target-arm: move vstrcpy() to helper-android.c"David 'Digit' Turner2011-06-032-13/+14
|\ \ | |/ |/|
| * target-arm: move vstrcpy() to helper-android.cDavid 'Digit' Turner2011-06-032-13/+14
|/ | | | Change-Id: I76844f4f61ddc26832344d3fb03fb2dd33a93c07
* Merge "upstream integration"David 'Digit' Turner2011-06-01160-11611/+12672
|\
| * upstream integrationDavid 'Digit' Turner2011-06-01160-11611/+12672
| |\ |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is a merge of a series of 42 upstream integration patches into the emulator's master branch. The individual patches come from the 'upstream-integrate' branch that was uploaded separately on kernel.org. The reference upstream sources used for this integration come from http://meego.gitorious.org/qemu-maemo/qemu using the following hash: 7243fbd089cce3c06ca24ed173a251f32644863c In a nutshell, the goal is to make our source tree closer to upstream in order to use various improvement there. Unfortunately, we're not to the point where we can use the upstream ARMv7-A / NEON translator, though we're getting close. Major changes are: - integrate upstream TCG and softfloat - target-arm: Move most Android-specific helper functions to helper-android.c and translate-android.h. This is in preparation of a _major_ integration of the upstream ARM translator. - moving various functions to different files (e.g. cpus.c, qemu-os-posix.c, qemu-os-win32.c, arch_init.c, etc) - qemu-char-android.c is now gone. We're using qemu-char.c with slight modifications embedded within CONFIG_ANDROID-guarded ifdef blocks. - rename "trace.h" to "android-trace.h". We still need to keep "trace.h" and "trace_common.h" until we also update sdk/emulator/tools/qtools/ to use the new header names. After this, we will integrate in a future integration the auto-generated trace.h used by upstream. - remove the OutputChannel hack. Instead, implement a "fake Monitor" object that can be used with any function that takes a Monitor as input. The fake Monitor is used to collect output into a dynamic buffer (e.g. during snapshot save/load). - convert to upstream QEMUTimer API changes. - implement physical memory with RAMBlock lists (instead of a single array). Short log of individual changes: 406a59b trace.h: rename to trace-android.h 288208c target-arm/translate.c: move Android-specific stuff out. f1d9bf1 tcg: integrate upstream version 280afa0 ramblocks: integrate upstream implementation (sophisticated) ae3098a vl-android.c: move arch-specific functions to arch_init.c 23ca2ae vl-android.c: move cpu functions to cpus.c c1ac40a vl-android.c: use os-specific setup routines e49c3f3 compatfd.c: minor integrate 4276038 cpu-exec.c: minor integrate 3b2846a qemu-char-android.c: rename to qemu-char.c f645f7d cpu_restore_state: remove un-necessary argument. f0753ac qjson.c: minor integrate 8354d2d vl-android.c: Move code to iohandler.c d3d4468 translate-all.c: minor integrate 1f9ec0f qemu-config.c: minor integrate d09775c monitor.c: minor integrate 9f64011 disas.c: minor integrate 69ed952 device_tree.c: minor integrate e1c0948 bswap.h + others: minor integrate 6b9236d buffered_file.c: minor integrate 95a83ce savevm: Remove OutputBuffer hack. 986acc9 savevm.c: minor integrate 39373b1 arm-semi.c: minor integrate fb955c7 README: minor integrate 8ee4e5e trace: simplify code and avoid conflicts 65d1521 acl.c: minor integrate c98cf7b arm-dis.c: minor integrate bfec547 fpu: upstream integrate 9bfb3d5 json-lexer.c, json-parser.c: minor integrate 6eaacfb trace.h: minor C compatibility fixes. 17410ee qemu-char.h, console.h: upstream integration 5973c77 qemu-timer.c: rename qemu_timer_new_scale() 317c9d5 qemu-timer.c: upstream integrate 47dc1f4 qerror: minor integrate 488bfd5 qemu-error: minor integrate 1646b4e posix-aio-compat.c: minor integrate 088edf8 os-posix.c + os-win32.c and dependencies 795bb19 qemu-common.h: other intergrates 45c3be0 integrate: qemu-common.h changes Change-Id: If5771dd4b030c602b99845d7489d1f55406bf159
| * trace.h: rename to trace-android.hDavid 'Digit' Turner2011-06-0112-213/+217
| | | | | | | | | | | | | | This is done to allow for future integration of the upstream auto-generated "trace.h" header file. Change-Id: I9d1bba3320d9e8acfd7359540d3ed6695773061e
| * target-arm/translate.c: move Android-specific stuff out.David 'Digit' Turner2011-06-017-260/+304
| | | | | | | | Change-Id: Id14c6b106dbac9b4016b7423327e9eb22e21fe75
| * tcg: integrate upstream versionDavid 'Digit' Turner2011-06-0124-2206/+4356
| | | | | | | | Change-Id: Ifcdebc2e7179fbc64b46a9150e6dae62f86eba3c
| * ramblocks: integrate upstream implementation (sophisticated)David 'Digit' Turner2011-06-0118-823/+449
| | | | | | | | Change-Id: I49e96e2d5ae571849b0b6fef0a30b41ecdee8d23
| * vl-android.c: move arch-specific functions to arch_init.cDavid 'Digit' Turner2011-06-016-400/+777
| | | | | | | | Change-Id: I4908006f3492aab199466c501dedff2bd835d647
| * vl-android.c: move cpu functions to cpus.cDavid 'Digit' Turner2011-06-015-1386/+675
| | | | | | | | Change-Id: Ib422f24224c2e75dd126689c67dbbb187d7c1670
| * vl-android.c: use os-specific setup routinesDavid 'Digit' Turner2011-06-013-565/+32
| | | | | | | | | | | | Also fixes a bug in os-posix.c Change-Id: If2c6fb94d3e48d1db051aa9141dc2f69bdca35a8
| * compatfd.c: minor integrateDavid 'Digit' Turner2011-06-012-60/+64
| | | | | | | | Change-Id: I93f921bfb2778bb592c9a4ce1e8c26ff5a5b6a97
| * cpu-exec.c: minor integrateDavid 'Digit' Turner2011-06-011-14/+39
| | | | | | | | Change-Id: Id8bef52e4cf42c4ca4e56d34d103ba09dba28b96
| * qemu-char-android.c: rename to qemu-char.cDavid 'Digit' Turner2011-06-018-2585/+183
| | | | | | | | | | | | + convert to QemuOpts* initialization functions. Change-Id: I5a245ed2de068af49fdc92de8e3e834d0f49aa27
| * cpu_restore_state: remove un-necessary argument.David 'Digit' Turner2011-06-016-72/+66
| | | | | | | | Change-Id: I01cef0743cc9db9d21c2b7feb9f2a877ac4d2b35
| * qjson.c: minor integrateDavid 'Digit' Turner2011-06-012-12/+51
| | | | | | | | Change-Id: Id2c8a26a772d7fe76b8ec6a339a32111946d1350
| * vl-android.c: Move code to iohandler.cDavid 'Digit' Turner2011-06-015-217/+215
| | | | | | | | Change-Id: I28d2025dfa1f7bfc1ab2318f5ff6c0fd56f4b658
| * translate-all.c: minor integrateDavid 'Digit' Turner2011-06-015-13/+6
| |
| * qemu-config.c: minor integrateDavid 'Digit' Turner2011-06-012-1/+120
| | | | | | | | Change-Id: I17546b84cc79151651cf663620a565fc485aa4c8
| * monitor.c: minor integrateDavid 'Digit' Turner2011-06-012-9/+12
| | | | | | | | Change-Id: I75b9f973655637234466725d7af94f2dd2281fa2
| * disas.c: minor integrateDavid 'Digit' Turner2011-06-012-18/+14
| | | | | | | | Change-Id: I35f0c5abbd89588d9d72168d5c03f428eedc7ea5
| * device_tree.c: minor integrateDavid 'Digit' Turner2011-06-012-3/+2
| | | | | | | | Change-Id: Icdf8faee825c68ab572311d74c981b07495c4875
| * bswap.h + others: minor integrateDavid 'Digit' Turner2011-06-014-3/+16
| | | | | | | | Change-Id: I8706d2e3f2d722bae368e70d3adf6bd335dd8e58
| * buffered_file.c: minor integrateDavid 'Digit' Turner2011-06-011-1/+0
| | | | | | | | Change-Id: Ibe4acc763527d5323a06b8254190cabc990c67ce
| * savevm: Remove OutputBuffer hack.David 'Digit' Turner2011-06-0110-211/+147
| | | | | | | | | | | | It's easier to provide a fake Monitor object instead. Change-Id: Ia45267061d489b147497add6120d3caa9234ac11
| * savevm.c: minor integrateDavid 'Digit' Turner2011-06-013-108/+167
| | | | | | | | Change-Id: I16103c65ac7b15b2dc58dcc7dd6b3052004aa31a
| * arm-semi.c: minor integrateDavid 'Digit' Turner2011-06-011-31/+49
| | | | | | | | Change-Id: I85eee449af2f990bb95028efd5db59c1e8618280
| * README: minor integrateDavid 'Digit' Turner2011-06-011-22/+2
| | | | | | | | Change-Id: I36267e0f78a0d27903c13d0ac306461793bd5425
| * trace: simplify code and avoid conflictsDavid 'Digit' Turner2011-06-017-471/+103
| | | | | | | | Change-Id: I8f93e06038bd6e35a2972e3fef351046c247e4ee
| * acl.c: minor integrateDavid 'Digit' Turner2011-06-011-1/+0
| | | | | | | | Change-Id: Id1e6f7848a2286a9595442279261b8b06674780b