aboutsummaryrefslogtreecommitdiffstats
path: root/android
Commit message (Collapse)AuthorAgeFilesLines
* Add -audio-test-out option to the core.David 'Digit' Turner2011-01-022-0/+125
| | | | | | | | | | | | | This option can be used to quickly check audio output (without having to boot a full AVD and launch a sound-playing application). Usage: emulator <other-options> -qemu -audio-test-out qemu-android <other-options> -audio-test-out This simply generates an ugly saw signal, but that's enough for us. Change-Id: I060300b4000b9705d181c6262de8d4d13c749e69
* Remove obsolete -audio-in and -audio-out options.David 'Digit' Turner2011-01-024-80/+0
| | | | | | Use -audio <backend> to select the audio driver. Change-Id: I71c837e4c78241711be5f38ef9b03294a69145bd
* Pass bits per pixel tu UI when it gets attached to core framebufferVladimir Chtchetkine2010-12-217-14/+76
| | | | | | | Instead of passing bits per pixel property in each and every framebuffer notification message, do it once when UI attaches to the core's framebuffer service. Change-Id: Ic1f6d9796b64d40518f09f5a5341f8359ff817b7
* Resubmit framebuffer service implementationVladimir Chtchetkine2010-12-2015-20/+803
| | | | Change-Id: I184e27a1e8d88835bc9f0502eccfa3f64a7aaf9e
* Merge "Add 'gsm signal' command, to set rssi and ber"Tim Baverstock2010-12-171-0/+65
|\
| * Add 'gsm signal' command, to set rssi and berTim Baverstock2010-12-151-0/+65
| | | | | | | | Change-Id: I24d4738f6e5135437af25d22e2fa68617f5632fa
* | Merge "Implement core display deriving it from android display"Vladimir Chtchetkine2010-12-152-0/+125
|\ \ | |/ |/|
| * Implement core display deriving it from android displayVladimir Chtchetkine2010-12-142-0/+125
| | | | | | | | | | | | | | Core display is a framebuffer client that receives framebuffer updates and dispatches them to the UI attached to the core. Change-Id: Iff1e0609cbe66240031e3670934a6796a9ae3b15
* | Send unsolicited time response to first signal strength query after loadvmTim Baverstock2010-12-145-1/+20
|/ | | | Change-Id: I9c6260493d42564ee3aa34799313368bb2de7d4d
* Submit mergedVladimir Chtchetkine2010-12-068-31/+795
| | | | | | | | | | | | | | Squashed commit of the following: commit aeefab810c6331e2f96e81f20e4408b39dd3a2ca Author: Vladimir Chtchetkine <vchtchetkine@google.com> Date: Thu Dec 2 07:40:34 2010 -0800 Implement -attach-core UI option Change-Id: I4168e2d707cab1b4873ee16d86d5126c1a316abf Change-Id: I2da1ef5d53641f3c60d83d8d5ddf3aff34b0c6c7
* Merge "Add -no-snapshot-load option to permit reboot."Tim Baverstock2010-12-034-12/+32
|\
| * Add -no-snapshot-load option to permit reboot.Tim Baverstock2010-12-024-12/+32
| | | | | | | | | | | | | | | | | | This is a workaround for the emulator not being able to detect the guest's power-down situation, and simply lingering like a zombie: on exit it's saved as a zombie, and is restored as a zombie which isn't useful. Denying autoload forces a reboot. Change-Id: I48f32600f5ce18cd5c71aa01d1b71b382102f227
* | Merge "Correct command arguments for 'geo fix', but support backward ↵Tim Baverstock2010-12-031-17/+21
|\ \ | |/ |/| | | compatible use."
| * Correct command arguments for 'geo fix', but support backward compatible use.Tim Baverstock2010-12-011-17/+21
| | | | | | | | Change-Id: Id4f427dfb918d69e3fb52725cbe88bce1666dddc
* | Merge "Augment the auto-loadvm behaviour with corresponding ↵Tim Baverstock2010-12-024-10/+22
|\ \ | | | | | | | | | auto-savevm-on-exit behaviour."
| * | Augment the auto-loadvm behaviour with corresponding auto-savevm-on-exit ↵Tim Baverstock2010-12-014-10/+22
| |/ | | | | | | | | | | | | | | | | | | | | | | behaviour. Autosave fires when loadvm would have been tried - whether it succeeded or not - in order to bootstrap from an empty snapshot file. - New autosave behaviour inhibited with -no_snapshot_save flag. - Underlying behaviour implemented with a new qemu option -savevm_on_exit Change-Id: If64d89f004565ecbb431bc7e96ecc37e27876d67
* | Implement line reading on syncsocketVladimir Chtchetkine2010-12-022-4/+139
| | | | | | | | Change-Id: I1fa22c34203b163e1b0a78240be73a4a7473691e
* | Implement helper routines for syncronous socket operationsVladimir Chtchetkine2010-12-012-0/+206
|/ | | | Change-Id: I93af5f740decb1fb0f6e037a76223fa8dd5305ac
* Enable snapshot behaviourTim Baverstock2010-11-251-1/+1
| | | | Change-Id: I383927c7805e840031d83ef7154c335519e1f5a4
* Separate main.c used to build the emulator from main-ui.c used to build the UIVladimir Chtchetkine2010-11-242-108/+1808
| | | | Change-Id: I1c7baeaa8447fe1df895869bfb6b74631b765845
* Parallelize -list-cores implementation.David 'Digit' Turner2010-11-191-97/+63
| | | | | | | | | | | Modify the implementation of list_cores() to perform all 16 connection requests in parallel, using a generic looper and and asyncConsoleConnector per probed port, with a global timeout of half a second. This is also a demonstration of the new asynchronous helpers. Change-Id: Ib09adf44b00d0694ec29d7ed0b26b44eef77f88a
* Introduce asynchronous operation helpers.David 'Digit' Turner2010-11-194-0/+663
| | | | | | | | | | <android/async-utils.h> contains generic helpers to read, write and connect to sockets. <android/async-console.h> contains a helper class to connect to Android console port asynchronously. Change-Id: I5d0a49a770ad974c5d4382438d75e9eb624368d1
* Fix generic looper implementationDavid 'Digit' Turner2010-11-193-19/+100
| | | | | | | | | | | | | | | + allow looper_run() to return a value that indicates why it exited. + add looper_runWithDeadline() and looper_runWithTimeout() in the case where you want to run only for a limited time. looper_runWithTimeout(looper,0) can be used to poll the event state and return asap after firing all the callbacks. + fix iolooper_modify() Change-Id: Iba3b0385a7fd8d90f4f3334ebf313e79267f7b3d
* Allow safe deletion during iteration of an ARefSet.David 'Digit' Turner2010-11-183-15/+55
| | | | | | | + make AREFSET_FOREACH take the name of an existing type variable which avoids an annoying type-cast in each statement. Change-Id: Icf9d886601a9876fa29c15eb0e60a9bf6c8ec163
* Implementation of event loop abstraction.David 'Digit' Turner2010-11-185-0/+1175
| | | | | | | | | | | | | | | This patch adds "android/looper.h" which provides an abstraction for event loops: - android/looper-qemu.c implements it on top of the QEMU main event loop. - android/looper-generic.c implements it on top of an IoLooper object. The main idea is to move the UI-related code to use the abstraction to handle timers and asynchronous (network) i/o. NOTE: Code compiles but has not been heavily tested. Change-Id: Ib6820c1b9a9950dc22449a332bc1b066a07af203
* Merge "Update android/utils/ with misc. new features."David 'Digit' Turner2010-11-1813-128/+927
|\
| * Update android/utils/ with misc. new features.David 'Digit' Turner2010-11-1713-128/+927
| | | | | | | | | | | | | | | | | | | | | | | | This introduces a few new features to android/utils/ that will be used in later patches. + <android/utils/assert.h> to handle assertions + <android/utils/vector.h> to handle dynamic arrays + <android/utils/reflist.h> slightly updated (more docs) + <android/utils/refset.h> implements a set of pointers Change-Id: Iebc14cfefd1c0e8aaecda9958a980d40f0be610a
* | Add env var ANDROID_TMP to override /tmp/android location.Raphael2010-11-161-1/+4
|/ | | | | | | | | | | | This is needed if there's already a /tmp/android which the current user can't access on the system. It would prevent the emulator from starting with a cryptic error message: NAND: could not create temp file for system NAND disk image: Permission deniedemulator: User-config was not changed. SDK Bug: 3154431 Change-Id: Iefe7fd6a5139da545aaef5670fb7f42d210d0edc
* Implement -list-cores UI optionVladimir Chtchetkine2010-11-103-0/+159
| | | | | | | Also fixed a bug in iolooper-select.c (io_looper_del_write was buggy) Also switched iolooper-select.c to use malloc/free instead of qemu_xxx Change-Id: Ief47608f30a863d624af6363620e93e903cbdadc
* Add command line flag to show list of snapshots.Ot ten Thije2010-10-285-3/+392
| | | | | | | | | | | | | | This patch introduces the flag '-snapshot-list', which causes the emulator to output a table of snapshots in the currently mounted snapshot storage file. The snapshot file is accessed with a very simple driver for the Qcow2 file system, independent of Qemu's block driver framework. This way, the flag is available in the emulator-ui builds as well. Using Qemu's framework would have resulted in adding a lot of Qemu dependencies to the UI build, which we are explicitly trying to avoid. Change-Id: I059b9ac53e2f8e051757a5c637761eccf8ea17cb
* Control state snapshots from Android console.Ot ten Thije2010-10-281-9/+126
| | | | | | | | | | | | | This patch exposes Qemu's save, load, delete and list commands for state snapshots on the Android console. A level of indirection is added by means of the OutputChannel construct. This allows us to show the output of the Qemu commands on the console rather than on the monitor, while minimizing the differences with the upstream codebase. The new commands are exposed only when the configuration constant CONFIG_ANDROID_SNAPSHOTS is not 0. Change-Id: I558d5cd505d321fe2da5835713d341d151f60534
* Fix invalid "geo fix" formatting bug.David 'Digit' Turner2010-10-271-2/+2
| | | | | | | See http://code.google.com/p/android/issues/detail?id=2928 for details. Change-Id: If192fe2f8dba9e5bd11f0f7fdc6a7445a8573623
* Load state snapshot rather than booting to start emulator.Ot ten Thije2010-10-226-35/+219
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for an optional file "snapshots.img" in the data directory of an AVD. This file should be an image formatted with the qcow2 file system and will be mounted on -hdb when the emulator starts up. If present, the emulator will attempt to load the snapshot named "default-boot" from this image, rather than going through the full boot procedure. To control the behaviour of this functionality, this patch introduces the following new command line options for the emulator: -snapstorage <file>: override the default location of the snapshot storage file. -no-snapstorage: do not load the snapshots file, even if an explicit path is given. -snapshot <name>: instead of loading "default-boot", load the state snapshot with the given name. -no-snapshot: do not load a snapshot, but force a full boot sequence, even if a snapshots file is mounted. Useful for creating snapshots. Note that this functionality is experimental and will be enabled only if the constant CONFIG_ANDROID_SNAPSHOTS in android/config/config.h is set to "1" before building. It is turned off by default. Change-Id: Iee2e9096a27f3414bacfc271f90ef93a98730c82
* Merge "Added state snapshot support for QemuD service "boot properties"."Ot ten Thije2010-10-211-19/+177
|\
| * Added state snapshot support for QemuD service "boot properties".Ot ten Thije2010-10-211-19/+177
| | | | | | | | Change-Id: I12383de77917c31d6227fc223753c1dcab31fb56
* | Fix linux-x86_64 build.David 'Digit' Turner2010-10-215-8/+131
|/ | | | | | | | | Fix various 64-bitness issues in the source code to make the --try-64 option work again on Linux. Note that the generated binary is not faster than its 32-bit variant when it comes to benchmarking the boot sequence. Change-Id: Iad248e033757d4cd25524a438a5dbe1cf3aca6cf
* Fix incorrect orientation at boot.David 'Digit' Turner2010-10-204-11/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The goldfish kernel's event driver is very picky about the state of the virtual device it talks to. Essentially, it can only listen to h/w events if the corresponding IRQ is raised _after_ it has completed some initial setup. If the IRQ is raised before, the driver will refuse to listen to events, and any interaction becomes impossible. We changed the way our UI windows are built and managed previously, and this had the unfortunate effect of sending one h/w event too soon, which, in the old code, would raise the IRQ prematurely. This resulted in an input freeze. To work around this the UI code was modified to not send the initial h/w event, but this resulted in bad orientation of the home screen at the end of the boot sequence. This change allows the virtual device to wait for the kernel driver before raising the IRQ, in the case any h/w event has been buffered. It also removes the hack in the UI code, allowing the send of the initial h/w event at startup. BONUS MINOR CHANGES: EsounD probe: fix error message. console: fix compiler warnings libpng: proper handling of MMX support. android-configure.sh: fix --ignore-audio handling The option didn't do anything if the audio development packages are properly installed on the system. Change-Id: Ib134158873d5cb72290c9676d92d20233226c889
* emulator-ui: Remove dependencies from qemu sources.David 'Digit' Turner2010-10-197-34/+33
| | | | | | This change removes some QEMU-specifics that crept into the UI code. Change-Id: Ib1974dc64e54a35dc0cd01aec1eb547a9263a0c8
* Merge "Added state snapshot support for QemuD."David Turner2010-10-155-46/+674
|\
| * Added state snapshot support for QemuD.Ot ten Thije2010-10-145-46/+674
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | standalone builds: windows executables end in .exeDavid 'Digit' Turner2010-10-141-1/+1
|/ | | | | | | | | | | | | | | | This change only applies to the stand-alone build system. It ensures that when one does the following under Linux: ./android-configure.sh --mingw make then, the Windows executables that are generated have their name ending in .exe (e.g. objs/emulator.exe instead of objs/emulator) This does not affect the Android build system which already does the right thing (and is used to build SDK binaries). Change-Id: If9597e550f0bceec04d334eb84199a0f024a3fdf
* Merge "emulator-ui: fix crash on exit"David 'Digit' Turner2010-10-131-3/+0
|\
| * emulator-ui: fix crash on exitDavid 'Digit' Turner2010-10-131-3/+0
| | | | | | | | | | | | | | | | + remove net_cleanup() call in qemu_main(). It is not needed since the corresponding function only deals with the virtual LAN management and was causing build issues on some machines. Change-Id: I63896b9886c59259f75025277601711b450b2c0d
* | Merge changes Ieab04778,Idb0e3c52,I3f426352,Ied07f9dbDavid Turner2010-10-132-0/+141
|\ \ | |/ |/| | | | | | | | | | | * changes: Don't build MMX stuff on PowerPC Add SDL_config.h for PPC (generated by android-configure.sh) Add config-host.h for PPC (generated by android-configure.sh) Fix detection of host endianness
| * Add SDL_config.h for PPC (generated by android-configure.sh)Marcus Comstedt2010-10-051-0/+123
| | | | | | | | Change-Id: Idb0e3c52100693958f4856568969985899d0aedd
| * Add config-host.h for PPC (generated by android-configure.sh)Marcus Comstedt2010-10-051-0/+18
| | | | | | | | Change-Id: I3f42635204bed9f078577d668da4a01263d1ba86
* | qemu: Multimode supportJaime Lopez2010-10-081-0/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Preliminary implementation of a Multimode modem - Added the +CTEC AT command which allows querying and setting the current technology - Added preliminary NVRAM file support Add cdma subscription source support - Add support to save the subscription source preference to nv. - Add command 'cdma ssource' to switch subscription source from the emulator console Implement AT+WRMP command Implement the AT+WRMP command to set and get the roaming preference Implement Emergency Callback Mode Implement the +WSOS command and unsol to notify Emergency Callback Mode status Implement +WPRL AT Command Enable PRL update notification by implementing the AT+WPRL query command Implement a console command to send +WPRL unsolicited response Change-Id: I5c036c1b0832b94c0b7675931f6a18b5d9ca7436
* | Make core initialization replying to the UI at the end of initialization.Vladimir Chtchetkine2010-10-082-0/+140
|/ | | | | | Also, this CL contains a minor fix to formatting boot options passed to the kernel Change-Id: I267172d82094a0cbbbced2cee7a2990bb7fa3793
* Remove compiler warnings when building the emulator.David 'Digit' Turner2010-09-227-14/+26
| | | | | | | This forces -Wall during the build. Note that this patch doesn't remove all warnings, but most of the remaining ones are from upstream anyway. Change-Id: I8808d8495e99866e156ce5780d2e3c305eab491f
* update linux-x86 and windows config-host.hDavid 'Digit' Turner2010-09-133-35/+25
| | | | | | + remove obsolete 'Linux' config directory. Change-Id: Ib0cc7e2ab6b5b90a2cfe43bd0afced692b29d6dc