aboutsummaryrefslogtreecommitdiffstats
path: root/android/hw-qemud.c
Commit message (Collapse)AuthorAgeFilesLines
* Fixes emulator crash due to premature pipe client destruction.Vladimir Chtchetkine2011-12-071-9/+26
| | | | | | | | | The pipe client should really be closed (and destructed) only when the guest closes its handle to the pipe. When pipe client is closed from within the emulator, it should only notify the guest about disconnection, and wait for the guest to explicitly close the pipe handle. Change-Id: I6bde3ae1e05ff5dc40e9903282c3fc46df0b9b57
* Fix snapshot crashDavid 'Digit' Turner2011-11-081-26/+177
| | | | | | | | | | | | | | | - Add snapshot load/save support to QEMU Pipes This adds the ability to save and load QEMU Pipe connections with snapshots. Note that by default, all loaded pipe client connections are force-fully closed on load. We don't have a good way to save the state of network connections to persistent storage. Properly implements snapshot save / load for qemu pipe clients. Change-Id: Ie5767f8ce40c8341b958cc5844e724dd4fc1ed2b
* Fix snapshotsVladimir Chtchetkine2011-10-051-13/+17
| | | | Change-Id: Ib3891704ece2cea0c5a80b468b2514e6c4d13216
* Fix for a _qemudPipe_recvBuffers bugVladimir Chtchetkine2011-09-071-3/+7
| | | | | | | | | | | | | When filling in qemud buffers in the loop, current offset in the current qemud buffer (off_in_buff variable) has not been accounted for when calculating number of bytes to copy from the message to qemud buffer. This caused data corruption, because number of bytes copied has exceeded the capacity of qemud buffer. Also, off_in_buff has not been reset when switching to the next qemud buffer. Also fixed _qemud_char_service_connect routine to accept a client parameter string Change-Id: I2f5a7ca5924c0b79d8755f4777145044567f3e8d
* Enable qemud clients to pass connection parameters to emulator.Vladimir Chtchetkine2011-08-251-12/+64
| | | | | | | | | | | | This is useful for qemud pipe clients to be able to pass parameters to the emulator service when connecting. In particular, this would be extremely useful for camera emulation clients, which can pass name of the camera device, and other parameters that may be required to connect to the camera. Parameters are passed when opening the qemud pipe in form: /dev/qemu_pipe/camera:/dev/video0 I.e. parameters follow the service name, separated from it by ':' Change-Id: I67f0ef0ff27008e2b52652e58d72d5216b244646
* Fix qemu pipe's 'poll' callbacksVladimir Chtchetkine2011-08-251-2/+2
| | | | | | | | | 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
* 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
* Fix fron report on unexpected qemud char channel close.Vladimir Chtchetkine2011-08-121-1/+15
| | | | Change-Id: Ib6a1f3ff7a77ae35d6b3b264752f9f62122e60fc
* 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
* qemud: prevent recursive closure of clients.David 'Digit' Turner2011-04-111-2/+8
| | | | | | + add android/hw-qemud-pipe.h Change-Id: Icf7b316137cd9f1ce46e4c3642addccea6222a24
* x86: Add x86 support. Rebase the change (20906/1) due to a minor conflict.Jun Nakajima2011-02-021-1/+5
| | | | | | | Change-Id: Ic73cca0fc6c6e5cf74f63daa6080d00aa7c392bb Signed-off-by: Xiaohui Xin <xiaohui.xin@intel.com> Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com> Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
* Added state snapshot support for QemuD.Ot ten Thije2010-10-141-36/+519
| | | | | | | | | | | | | | | | | With this patch, both modem and sensor functionality are correctly restored when a state snapshot is loaded. This was not the case previously because communication with either of these services is done using the qemud daemon, which did not support snapshots. The boot-properties and charpipe services have no specific save/load functionality yet, since the framework itself should be reviewed first. Adding support for bootproperties should not be difficult though, and charpipe may not need it. For a description of the high-level process for saving and loading, consult section IV "State snapshots" in docs/ANDROID-QEMUD.TXT. Change-Id: I5b06d88b911ca096e78060163174904c48a01c66
* Fix a memory corruption bug that can happen if a qemud service decides toDavid 'Digit' Turner2010-06-251-3/+8
| | | | | | close the connection during a clie_recv() call. Change-Id: I5cedde24c5b15081453c1537c679ca1f9c697ad9
* This adds the '-prop <name>=<value>' option which is used to setDavid 'Digit' Turner2009-05-261-7/+9
| | | | | | | | | | boot-time system properties from the command line. This is done by implementing a new 'boot-properties' qemud service in the emulator. This is to be used by the 'qemu-props' helper program that will be invoked by /system/etc/init.goldfish.rc to read a list of system properties from the emulator and set them in the emulated system during boot.
* AI 146315: am: CL 146314 modify GSM emulation to accomodate 1.0 and 1.1 ↵David Turner2009-04-151-0/+7
| | | | | | | | | | | system images. without this, networking doesn't work well when using the 1.1 add-on with the cupcake sdk Original author: digit Merged from: //branches/cupcake/... Automated import of CL 146315
* AI 145976: am: CL 145806 Add qemud-version auto-detection logic to ↵David Turner2009-04-131-84/+198
| | | | | | | | | | | | | | | | android/hw-qemud.c Document the supported QEMUD services in known Android systems Print "Press F6 to exit trackball mode..." in the window title bar when one activates the persistent trackball mode. The actual text depends on your key binding configuration. Refine the skin directory auto-search paths when an AVD name is not given on the command line. This makes the following work correctly: tools/emulator -sysdir platforms/android-1.5/images -data foo.img Original author: digit Merged from: //branches/cupcake/... Automated import of CL 145976
* AI 144596: am: CL 144595 Fix the AVD configuration code to support ↵David Turner2009-04-051-18/+23
| | | | | | | | | | | | | | "sdcard.path" in config.ini to indicate an explicit SD Card image file (instead of using the one in the content directory) Note that this also fix a bug where the SD Card image was not properly locked in the previous implementation. Allow the http-proxy support code to actually manage to receive chunked encoding data, instead of complaining needlessly. Introduce a new CharBuffer object that is used indirectly by "-radio <hostdevice>" and "-gps <hostdevice>" options Add new documentation for QEMUD and CharDriverState objects Update the Audio documentation with ASCII graphics (because I'm an artist too) Original author: digit Merged from: //branches/cupcake/... Automated import of CL 144596
* auto import from //branches/cupcake_rel/...@140373The Android Open Source Project2009-03-181-0/+1194