aboutsummaryrefslogtreecommitdiffstats
path: root/android
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix qemu pipe's 'poll' callbacksVladimir Chtchetkine2011-08-252-4/+4
| | | | | | | | | Throughout emulator's code pipe's 'poll' callback was returning PIPE_WAKE_XXX, instead of PIPE_POLL_XXX flags. This created whole sort of issues with the qemu pipe service <-> client communications. This is also a fix for http://b/issue?id=5196348 Change-Id: I92202cf4ef4554559eb022c4410ee93923edec1b
* Merge "Fix the darwin build"Vladimir Chtchetkine2011-08-242-2/+5
|\
| * Fix the darwin buildVladimir Chtchetkine2011-08-242-2/+5
| | | | | | | | Change-Id: I87bd356f7673bdbcc8e5f196f4a89182b3a36cbe
* | Merge "Fix build break: make sure darwin build picks up on required ↵Vladimir Chtchetkine2011-08-242-3/+3
|\ \ | |/ | | | | declarations"
| * Fix build break: make sure darwin build picks up on required declarationsVladimir Chtchetkine2011-08-242-3/+3
| | | | | | | | Change-Id: I801d56668d8591e599994c65fb47b9c3ea77ff73
* | Merge "Fix the build by #ifdefing linux-only includes"Vladimir Chtchetkine2011-08-241-2/+4
|\ \ | |/
| * Fix the build by #ifdefing linux-only includesVladimir Chtchetkine2011-08-241-2/+4
| | | | | | | | Change-Id: Ia4b6b45ad305307f28858f834f284b07be7d134d
* | emulator: probe shared library search pathDavid 'Digit' Turner2011-08-241-0/+128
|/ | | | | | | | | | | | | | | | | | | | This patch modifies the 'emulator' launcher program to probe for a adequate directory containing shared libraries that will be required by the emulator core to implement GLES emulation properly. It does that by looking for a library named libOpenglRender.so (or .dll, or .dylib depending on the platform) in various directories around the one containing the executable program. When such a directory is found, it modifies the value of the PATH or LD_LIBRARY_PATH environment variable before calling exec() This is necessary because there is no way to change the list of search directories at runtime, i.e. between the program's start and the moment it calls dlopen() to load such a library. Change-Id: I7346d26597382f44931cdf08936b051e74d3641a
* Add DLL-loading head <android/utils/dll.h>David 'Digit' Turner2011-08-244-0/+299
| | | | | | | | 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
* Merge "Video capturing code for Linux, and Windows"Vladimir Chtchetkine2011-08-248-0/+1468
|\
| * Video capturing code for Linux, and WindowsVladimir Chtchetkine2011-08-188-0/+1468
| | | | | | | | | | | | | | Contains API that connects to a camera device, and pulls video frames from it on request from the client. Change-Id: If1d80c57611afff637a7734ce5c3a2c874cfc85a
* | Revert "Revert "Merge c80340 from master to r13: Move charmap to hardware ↵Xavier Ducrohet2011-08-228-44/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | properties"..." This reverts commit cccd28ca5064a7bd14282cd774ee5bb7126d5845. c80340 add a CL to tools_r13 that broken the build. It was therefore reverted with cccd28. This revert was merged into tools_r13 but shouldn't have been. This reverts the revert to put back the CL in master. Change-Id: I95fcefedb77596cfdf76269f248b2ae80c85c830
* | Fix an emulator crash due to closed qemud pipeVladimir Chtchetkine2011-08-181-25/+51
|/ | | | | | | | | It looks like goldfish_pipe may make a call to the pipe after client has been disconnected and QemudClient instance freed. This results in a sudden death of the emulator, because _qemudPipe_recvBuffers doesn't know that the client for that call is gone. Change-Id: Ie1dd5481a01fd5bbb58d8c2d4e1bbe1ecfeca38a
* opengles: improve throughput of TCP socketDavid Turner2011-08-151-16/+16
| | | | | | | | | | | | | | Disable the TCP Nagle algorithm to drastically improve the throughput of small packets when creating the TCP socket used to talk with the OpenGLES renderer library. Coupled with a corresponding change in the server part of the code, this improves performance of most applications significantly. + get rid of shouldSetSockOpt field, by performing the buffer adjustment just after the socket is created. Change-Id: Ibacca834ff98d1e9a92fb735f450b925e373fdc0
* Merge "Fix fron report on unexpected qemud char channel close."Vladimir Chtchetkine2011-08-121-1/+15
|\
| * Fix fron report on unexpected qemud char channel close.Vladimir Chtchetkine2011-08-121-1/+15
| | | | | | | | Change-Id: Ib6a1f3ff7a77ae35d6b3b264752f9f62122e60fc
* | merge from tools_r13The Android Open-Source Project2011-08-118-70/+44
|\ \ | |/ |/| | | Change-Id: Iabd0b49a5c3ad991da1b4f636ecdf881b1c271aa
| * Revert "Merge c80340 from master to r13: Move charmap to hardware ↵Xavier Ducrohet2011-08-118-70/+44
| | | | | | | | | | | | | | | | properties". do not merge. This reverts commit f490aee025b3bab5bcdb065e5fc1b1abecf16b97. Change-Id: I59a0b2aebc8ab2b788a820a206c6eb4fc6e6e6d2
| * Merge c80340 from master to r13: Move charmap to hardware propertiesDavid 'Digit' Turner2011-08-058-44/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * 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
| * 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
| * 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
| * 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
| * 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
* | Fic minor bug, and update docs.Vladimir Chtchetkine2011-08-081-4/+2
| | | | | | | | Change-Id: Ifdc2b019c499d995c8dc493dd4684dd21d0cf995
* | Enable QEMUD over pipe.Vladimir Chtchetkine2011-08-041-42/+432
| | | | | | | | | | | | | | | | | | | | | | In addition to the currently implemented QEMUD over serial port, this CL adds capability to connect with guest clients via pipe device. The connection is established in request from the guest, that opens a "qemud:service-name" on /dev/qemu-pipe, which in turn invikes a callback in the emulator requesting to create a client for a service "service-name". Note that serial port version of QEMUD is fully preserved here. Change-Id: I6621f141cf9b4eb93bfa7cb1a689d80154922c87
* | Fix Windows space-in-path handling for 'emulator'.David Turner2011-07-151-2/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: If291c5a8bd507f96b40634ecbc946ba38346ee4e
* | Added GTV related keysMaciek Molerus2011-07-125-14/+84
| | | | | | | | | | | | | | | | Adds the definitions for keys present in GoogleTV. Standard linux definitions are used to send notifications to emulated system. Change-Id: Id87aebfc86c5ce8b7331314352f2640a00ef36ae
* | opengles qemu-pipe perforance on windowsGuy Zadickario2011-07-081-2/+20
| | | | | | | | | | | | | | | | | | | | Set the socket send buffer size to 128k on windows to allow higher throuput when sending large blocks over the pipe. On Linux the default value is already 128k. Might want to enable this for all 'tcp" pipes, currently it is only for the opengles pipe. Change-Id: I0c6868b6af54b4df1a0257bfe591baab6f76e14a
* | Fix window scaling issue.David 'Digit' Turner2011-07-081-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: Icea04a7152b8fa5d81cb70cc215c0cd95aed2142
* | Merge "Fix a small bug in the -sysdir handling."David 'Digit' Turner2011-07-071-1/+1
|\ \
| * | Fix a small bug in the -sysdir handling.David 'Digit' Turner2011-07-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The issue was that auto-configuration would set the value of -system to point to the full path of the system image (e.g. <sysdir>/system.img). Later, the emulator would try to load the <sysdir>/<sysdir>/system.img due to this. Change-Id: Id77ea9bdc55bb99c1bfbd2ade291ec41f31ec65d
* | | hw-pipe-net.c: only support connecting to localhost ports.David 'Digit' Turner2011-07-071-30/+4
|/ / | | | | | | | | | | | | | | | | | | | | Don't allow the 'tcp' pipe service to connect to anything other than localhost IPv4 addresses, for security reasons. Moreover, resolving host addresses is a blocking operation that could freeze the emulation for significant time, which is not acceptable. Change-Id: I0151a4a72befdc9f1d1526e1f68ef99f0b9e4464
* | Move charmap to hardware propertiesDavid 'Digit' Turner2011-07-078-44/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | hw-config-defs.h: Remove from source tree + auto-generateDavid 'Digit' Turner2011-07-053-305/+18
| | | | | | | | | | | | | | | | | | | | | | 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
* | Fix -audio <name> and -no-audio processing.David 'Digit' Turner2011-06-273-7/+19
| | | | | | | | | | | | | | | | | | Turns out that the string passed to putenv() must not be modified :-/ We provide our own win32 implementation for emulator-ui that doesn't embed the os-win32.c QEMU-specific file. Change-Id: I7260fbc37d23a5340dab589dfde577ef5eb10005
* | android-configure.sh: Better platform build detection.David 'Digit' Turner2011-06-231-2/+2
| | | | | | | | Change-Id: I3de10b579507165160e93c644023ce06bc557ba7
* | Fix -sysdir handling.David 'Digit' Turner2011-06-232-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: I32398bec0d7a28ead234f63c847d3ec95ed14b63
* | qemu pipes: fix Windows network pipes.David 'Digit' Turner2011-06-211-12/+8
| | | | | | | | | | | | | | | | | | Never use read() or write() when using sockets on Windows, use recv() / send() instead. + Remove compiler warning on Windows. Change-Id: I53de04ceb3bad20dfebcbd8279506db87388a578
* | Merge "Auto-adjust scale and window position when needed."David 'Digit' Turner2011-06-203-10/+59
|\ \
| * | Auto-adjust scale and window position when needed.David 'Digit' Turner2011-06-173-10/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: I8e5a624446d064038b5b9ad16556db8328244906
* | | Fixes dataPartition size problemMaciek Molerus2011-06-171-1/+4
|/ / | | | | | | | | | | | | | | Fixes the problem when disk.systemPartition.size avd setting gets overrided by default 66 MBytes hardcoded in qEmu. Change-Id: Ideb7ca172cb72076c83037f823b86ede2442d6f9
* | arm: Automic ARMv7-A support for platform builds.David 'Digit' Turner2011-06-165-4/+82
|/ | | | | | | | | | | | | | | | | This patches forces the emulator-arm program to emulate a Cortex A8 when it detects that it is launching a platform build that was built for the ARMv7-A architecture. This is done by parsing the build.prop file and comparing the target ABI to the value 'armeabi-v7a'. When this is the case, this will also automatically adjust which prebuilt kernel image is selected from the Android tree. Note that nothing is changed for SDK AVDs in this change. They will still need to define 'hw.cpu.model = cortex-a8' in their config.ini to enable ARMv7-A support. Change-Id: Ibba2a9a4bafbea3c33cb2dd365a881d488de15a9
* Update desc on hw.lcd.density to include 213/320Xavier Ducrohet2011-06-101-1/+1
| | | | Change-Id: Ib5f7644242c9f02f3a8eed51aa1d24d1e98ff2aa
* 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
* 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
* trace.h: rename to trace-android.hDavid 'Digit' Turner2011-06-012-2/+2
| | | | | | | This is done to allow for future integration of the upstream auto-generated "trace.h" header file. Change-Id: I9d1bba3320d9e8acfd7359540d3ed6695773061e
* ramblocks: integrate upstream implementation (sophisticated)David 'Digit' Turner2011-06-014-0/+4
| | | | Change-Id: I49e96e2d5ae571849b0b6fef0a30b41ecdee8d23
* savevm: Remove OutputBuffer hack.David 'Digit' Turner2011-06-011-28/+28
| | | | | | It's easier to provide a fake Monitor object instead. Change-Id: Ia45267061d489b147497add6120d3caa9234ac11