| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Fix CPU architecture reported in HW config
Change-Id: I2d31168ca05e1214df708fd107143fa4908e2889
|
|
|
|
|
|
| |
Use different macro for KVM
Change-Id: I6d53aac7de92d8991f7cf0cf34484a0083f642a5
|
|
|
|
|
|
|
|
|
|
|
| |
Fix QEMU pipe on KVM
The issue was that CPU registers (CR3 in particular) in QEMU were out of sync with KVM
at the time when virtual address to physical address translation was performed. This
caused translation failure, and the subsequent crash. The fix was to explicitly sync
QEMU registers with KVM registers just before calling VA->PA translation.
Change-Id: I469da1d95d1e2f10e372b100ba93cd448b4b4551
|
|
|
|
|
|
| |
Fix windows build
Change-Id: I6b82dd84860a5b634fb5215a0ef250e9e13bc2a2
|
|
|
|
|
|
|
|
|
| |
Check that first two cameras are facing in opposite direction.
Currently camera app will crash on an attempt to switch cameras if camera 0 and 1 are
facing in the same direction. So, user should be warned about that on emulator start.
Change-Id: I6211093296806cb03be02e543e21154508693eab
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Timeout frame capturing.
It has been observed on some of the MS camera devices, that device may got stuck on something
that would alwais return EAGAIN when queried for the next video frame. This requires us to
timeout the loop that repeats attempts to acquire first frame from the device. Also added
detection and reporting of I/O errors occurred during frame capturing.
Also, this CL contains some cosmetick changes to error and warning reporting.
Change-Id: I90e4c664734e8980f1e2ee5ee5cf43a651503dc7
|
|
|
|
|
|
| |
Properly reset camera device between capture requests
Change-Id: I1f283b90d08b59cd4dd94f569a8c31c1ab574d37
|
|
|
|
|
|
|
|
|
| |
Fix video recording on Windows
Reseting capture windows on each "stop capture" + setting capture parameters allow to
change video frame dimensions.
Change-Id: Ie6f4cdbcd5d2ef9121ca372944bc6c518afac5bf
|
|
|
|
|
|
|
|
|
| |
Fix captured frame pixel format on Windows
Apparently, bitmap obtained through the capXxx + clipboard API is formatted
with BRG, not RGB format.
Change-Id: Id68f705aabd7aa24671df4691bcd3cc2351f5d5e
|
|
|
|
|
|
| |
Also adds support for YU12 pixel format that is used in video frames
Change-Id: I613beef8b3e2296fd1fab7e2b9d2956fba1ac788
|
|
|
|
| |
Change-Id: I94939964890c4304a47ba86c582baf3a9544b5aa
|
|
|
|
| |
Change-Id: I8d074590bb1efd68789e341e37356bc9fb2c9c08
|
|
|
|
| |
Change-Id: I0acc651be93eb9b5bea49280a7dccd18c1386d48
|
|
|
|
| |
Change-Id: I68abaa8b89e2b46dc57bff1d7dbd6d9fda213dc8
|
|
|
|
|
|
| |
-webcam name=<name>[,dir=<direction>] options controls web cameras to use for emulation.
Change-Id: I961fd399c7e041541adda040dd24f194cc383cb9
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current conversion implementation was laking flexibility as far as adding support
for new formats was concerned. In particular, adding support for each new format meant
adding four converter routines: new format <--> RGB, new format <--> YUV. This was not
scalable, so had to be rewritten.
The new conversion implementation consists of four generic converters between different
flavors og RGB/YUV formats, and array of descriptors for each supported format. Each
descriptor contains information that is sufficient for the converter routines to perform
its job. So, adding new format is just creating a new descriptor for that format, and
adding it to the array of supported descriptors.
Change-Id: Ica107d14fa03fa8f41eb9192f2c023a97f54b62c
|
|
|
|
| |
Change-Id: I4bea0f3678b2ac21f3c6cf80581e997145e2a58d
|
|\ |
|
| |
| |
| |
| |
| |
| | |
This improves performance of various benchmarks by 5%
Change-Id: If2d2be0e9849429ecffe52b7d482cfbee4008473
|
| |
| |
| |
| |
| |
| |
| |
| | |
Apparently, video driver doesn't allow frame size change, once it has been
explicitly set. In order to get around this we need to reset the handle to the
camera device by closing, and then reopening it.
Change-Id: Icfd37b3c196d2643507218b965c5015884ed455b
|
|/
|
|
|
|
|
| |
- Enable / Disable fake camera
- Set fake camera facing direction: back, or front
Change-Id: Iab741a694daf2bf752e91e23df566a83ac7a97e7
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
By default, GPU emulation is still disabled. You can
still try to force it with '-gpu on' for experimentation
purpose (alternatively, you can define hw.gpu.enabled to
'true' in your AVD config.ini)
Change-Id: I87efdf45337a80aeadd94b3922312b3f564c1608
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| | |
This is necessary ot initialize qemu pipes when running an
emulated x86 system. Required to try OpenGLES emulation
for x86.
Change-Id: I4fa38648dcdd4e85d1794b131238b27b4dd4b91e
|
|/
|
|
|
|
|
|
|
| |
Some processors don't have full features set as in 'qemu32',
eg. AMD doesn't have SSSE3 extensions yet.
Added code which restricts CPU features set in KVM
mode to those it actually has.
Change-Id: I37c2d44a03e4445a607b723b0f63c91989c251dc
|
|
|
|
|
|
|
| |
For some reason, there was a bug, where the option was being ignored
if set from the command-line.
Change-Id: I61c6e3127b469f4ec661b834b15c4da0841551af
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently NAND device driver need 8 MMIO access for goldfish nand device access.
MMIO access is expensive in virtualization environment because each MMIO access
will cause a context switch from in-kernel module to qemu user space process.
Through introducing a new batch command, these multiple MMIO access can be
combined into one, thus improve virtualization perofrmance. The booting time in
KVM environment is reduced from 25~26 seconds to 20~21 seconds.
A kernel patch is required to utilize this new batch command.
The patched kernel will detect the batch support through a new flags in
goldfish nand device, while current kernel is not impacted.
Change-Id: Ia460b1ba3c6fde5b1fc6101bb66f8f58e46e6a78
Signed-off-by: Xin Xiaohui <xiaohui.xin@intel.com>
Signed-off-by: Zhang Xiantao <xiantao.zhang@intel.com>
Signed-off-by: Jiang Yunhong <yunhong.jiang@intel.com>
Signed-off-by: Nakajima Jun <jun.nakajima@intel.com>
|
|/
|
|
| |
Change-Id: I5ca4b1393211c1d8a5caba332c3f6164afb4661b
|
|
|
|
|
|
| |
Remove Windows artifact
Change-Id: I2ffd5979674619786742f14995edbf10edfff23a
|
|
|
|
|
|
| |
Add dummy rutines implementing public camera API on Mac
Change-Id: Id3c9d99d863785b0e00d1bdf6deb0a1af49ce91c
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is fully functional camera service implementation, that works (tested) on both,
Linux and Windows.
Fixed little/big endian bugs in the coverter code. Moved preview frames to use RGB32
instead of RGB565: RGB32 conversions are simpler and faster in the guest.
Made "payload size send" a separate routine
Change-Id: I96954f4c2cb4e4ef4dd6a20e41897d79c5037bae
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|\
| |
| |
| |
| |
| | |
* changes:
Add hw.gpu.enabled hardware property
Fix a crash when GPU emulation doesn't work.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds a new hardware property to enable GPU emulation
(named hw.gpu.enabled). It is currently disabled by default.
It also modifies the UI code to display the GL output properly
inside the UI window. And sets the kernel parameter qemu.gles
to either 0 or 1 to indicate to the guest system's GLES libraries
whether to use GPU emulation or fallback to the software renderer.
A future patch will also add auto-detection of desktop GL capabilities.
For example, if the emulator is started on a headless server without
an X11/GL display, hw.gpu.enabled will be forced to 'no', forcing the
guest to use the software renderer.
Another patch will allow to change the property from the command-line
for debugging purpose.
NOTE: If you want to test GPU emulation, change the default value of
the property in android/avd/hardware-properties.ini from 'no'
to 'yes'. You will need to run a ToT master AOSP tree with
the following pending patches applied:
https://review.source.android.com/25797
https://review.source.android.com/25154
https://review.source.android.com/25759
Change-Id: I1fa3512be24395244fd5068f2bf59ad54db5c7d5
|
|/
|
|
|
|
|
| |
This patch fixes a simple segmentation fault in the case
where we can't connect to the GPU emulation rendering library.
Change-Id: I47df0cae9029aee4738fd89083750e3baca5f032
|
|\ |
|
|/
|
|
| |
Change-Id: I746147ab0c441a05055f7fc878eda3e035c0da14
|
|\ |
|
|/
|
|
|
|
|
|
|
|
|
|
| |
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
|
|\ |
|
|/
|
|
|
|
|
|
|
| |
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
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I87bd356f7673bdbcc8e5f196f4a89182b3a36cbe
|
|\ \
| |/
| |
| | |
declarations"
|
| |
| |
| |
| | |
Change-Id: I801d56668d8591e599994c65fb47b9c3ea77ff73
|
|\ \
| |/ |
|
| |
| |
| |
| | |
Change-Id: Ia4b6b45ad305307f28858f834f284b07be7d134d
|