Commit graph

4769 commits

Author SHA1 Message Date
Hongwei Wang
82e4dc70f4 Removes vehicle.default target
Bug: 72179784
Test: None

Change-Id: Ia96ef01c98565deb8920d1df2eee31149a2a9338
2018-01-25 15:58:11 -08:00
Dmitry Shmidt
b0d95c4bb8 Merge "camera 3_4: Fix compilation errors" am: 7904e9c2d7
am: 8a08d159fd

Change-Id: Id6d08971d1625c0f57143a1d2f33228735d3915b
2018-01-25 22:56:14 +00:00
Dmitry Shmidt
8a08d159fd Merge "camera 3_4: Fix compilation errors"
am: 7904e9c2d7

Change-Id: I5c05336b1899ca7f92ccd548daa5e578c0d4bd89
2018-01-25 22:21:29 +00:00
Treehugger Robot
7904e9c2d7 Merge "camera 3_4: Fix compilation errors" 2018-01-25 20:22:26 +00:00
Dmitry Shmidt
de9c47bdb9 camera 3_4: Fix compilation errors
Compile Error:
hardware/libhardware/modules/camera/3_4/camera.cpp:502:9: error: non-constant-expression cannot be narrowed from type 'std::__1::vector<camera3_stream_buffer, std::__1::allocator<camera3_stream_buffer> >::size_type' (aka 'unsigned long') to 'uint32_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
        request->output_buffers.size(),
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Compile Error:
hardware/libhardware/modules/camera/3_4/v4l2_gralloc.cpp:168:15: error: use of undeclared identifier 'EINVAL'
      return -EINVAL;

Test: Add to device.mk
        USE_CAMERA_V4L2_HAL := true
        PRODUCT_PACKAGES += camera.v4l2
      mma

Change-Id: Ia6bbd6bac06540214d2c6167a8826f3f4c946e57
Merged-In: Ia6bbd6bac06540214d2c6167a8826f3f4c946e57
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2018-01-25 09:42:16 -08:00
Brian C. Young
dc9505de44 Add "Unlocked device required" parameter to keys
Add a keymaster parameter for keys that should be inaccessible when
the device screen is locked. "Locked" here is a state where the device
can be used or accessed without any further trust factor such as a
PIN, password, fingerprint, or trusted face or voice.

This parameter is added to the Java keystore interface for key
creation and import, as well as enums specified by and for the native
keystore process.

Test: go/asym-write-test-plan

Bug: 67752510

Change-Id: Ic1ec3bde05f8a28e20b9443b7f0078749921f297
2018-01-25 08:43:13 -08:00
Shuzhen Wang
bc04a28238 Merge "camera3: Add physical camera id field in capture result" 2018-01-25 15:52:45 +00:00
Courtney Goeltzenleuchter
437ce43787 Add support for HDR metadata (SMPTE2086)
Add HWC interface to pass in SMPTE2086 & CTA 861.3 metadata.
Test: TBD CTS test
Bug: 29940137

Change-Id: Ib99787752441b8a883864cc8adc8431478a15ba7
2018-01-24 19:24:13 -08:00
Shuzhen Wang
1d4c09e83e camera3: Add physical camera id field in capture result
- Add an array of physical camera ids and metadata when physical
cameras are requested within a logical multi-camera.
- Physical camera ids and metadata are only necessary for the final
capture_results, not the partial result.
- Physical camera ids and metadata must not be populated if no physical
camera is requested.

Test: Compile
Bug: 64691172
Change-Id: I78b20fe3d0c6462abf95b8fe7e3b4c66b3acefdf
2018-01-24 18:14:13 -08:00
TreeHugger Robot
6accb1de92 Merge "camera 3_4: Fix compilation errors" 2018-01-24 23:10:34 +00:00
Dmitry Shmidt
9df082e933 camera 3_4: Fix compilation errors
Compile Error:
hardware/libhardware/modules/camera/3_4/camera.cpp:502:9: error: non-constant-expression cannot be narrowed from type 'std::__1::vector<camera3_stream_buffer, std::__1::allocator<camera3_stream_buffer> >::size_type' (aka 'unsigned long') to 'uint32_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
        request->output_buffers.size(),
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Test: Add to device.mk
        USE_CAMERA_V4L2_HAL := true
        PRODUCT_PACKAGES += camera.v4l2
      mma

Change-Id: Ia6bbd6bac06540214d2c6167a8826f3f4c946e57
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2018-01-24 12:34:00 -08:00
TreeHugger Robot
a6e13b1c1d Merge "[HWC] Add setLayerFloatColor API." 2018-01-24 18:19:19 +00:00
Peiyong Lin
fd05d13edc [HWC] Add setLayerFloatColor API.
This patch adds the struct of float color, and setLayerFloatColor API so that
SurfaceFlinger can set the layer color with more bits on each channel.
Currently the display calibration tool require 10-bits support.

BUG: 69970838
Test: make locally and applied on device
Change-Id: I8bab335cc4fbc41a3eb18306a8831d1e9a9a219a
2018-01-24 18:12:41 +00:00
Kevin Rocard
52a0dad79c Merge "Revert "Audio V4: Split system and vendor Audio.h"" 2018-01-24 06:26:16 +00:00
Kevin Rocard
c6ec9486d8 Revert "Audio V4: Split system and vendor Audio.h"
This reverts commit fc9e212f01.

Reason for revert: Breaks multiple devices

Change-Id: I816671fd92246f85c97d00819858a74e36e2929d
2018-01-24 06:04:27 +00:00
TreeHugger Robot
a03b72961d Merge "Camera3: Add new MOTION_TRACKING template enums" 2018-01-24 04:36:33 +00:00
Kevin Rocard
904511aaa2 Merge "Audio V4: Split system and vendor Audio.h" 2018-01-24 04:04:47 +00:00
Eino-Ville Talvala
cc1aa87b19 Camera3: Add new MOTION_TRACKING template enums
Bug: 70565622
Bug: 63629224
Test: Builds, CTS passes
Change-Id: I927776d042b74013cf24c342b107a5aee1ad26a2
2018-01-23 00:23:32 -08:00
Shuzhen Wang
8662c46d71 Merge "camera3: Extend camera capture request for multiple cameras" 2018-01-23 00:36:16 +00:00
Eino-Ville Talvala
34a97f80e2 Add camera-specific OWNER
Test: Builds
Change-Id: I86a08e487745640858028dd24f01e8f2c35aebca
2018-01-22 22:33:54 +00:00
Kevin Rocard
fc9e212f01 Audio V4: Split system and vendor Audio.h
audio.h and its dependencies (audio-effect.h, sound_trigger.h...)
used to be shared between system and vendor code.

This led to multiple problems:

1) Such sharing contradicts the Treble policy of
strict independence of framework and vendor code.

2) When audio.h was changed, every vendor needed to update
its code in the next release. This meant that audio*.h
headers were mostly changed in backward compatible manner.
Nevertheless, for P the HIDL interface and thus the audio.h
interface are changed in backward incompatible way.
(Some enum are becoming 64 bit long).

3) As the headers were common, some API used only by the framework
needed to be visible to the vendors (mostly enum values).

4) Treble policy is to support at least one previous HAL version

As a result the audio*.h headers are now duplicated,
one set for the framework, and one for the vendor.

Each set will evolve independently. After this split,
the framework-only APIs will be removed from the vendor headers
and vice versa.

The split is implements as such:

 + for system code

    - NOT moving the libaudio_system_headers
      Eg: system/audio.h and system/audio_effects/effect_equalizer.h
          are still in system/media/audio

    - the legacy audio HAL API that were in libhardware headers
          are now in libaudiohal_legacy_headers
      Eg: hardware/audio.h and hardware/audio_effect.h
          are now in frameworks/av/media/libaudiohal/legacy/

 + for vendor code

    - moving libaudio_system_headers and the legacy audio HAL API
          that were in libhardware_headers in
          android.hardware.audio.common.legacy@2.0
      Note that those headers are now versioned, so migrating to a @4.0
          HIDL HAL will mean changing the legacy dependency too.
      Eg: system/audio.h, system/audio-effect.h, hardware/audio.h
          are now in hardware/interfaces/audio/common/2.0/legacy

    - the legacy audio effect HAL API that was in libaudioeffects
          is now moved in android.hardware.audio.effect.legacy@2.0
      Eg: audio_effects/effect*.h are now in
          hardware/interfaces/audio/effect/2.0/legacy

    - the legacy sound trigger HAL API that were in libhardware_headers
          is now moved in android.hardware.soundtrigger.legacy@2.0
      Eg: hardware/sound_trigger.h is now in
          hardware/interfaces/audio/effect/2.0/legacy

libaudioutil being used by both system and vendor, had
to be renamed for system to libaudioutil_system.

Vendor libs that now depend on the audio.h of a specific
version and are not extensively referenced in non google code,
append @2.0 to their name.

Note that headers that are not expected to change in the 4.0 HAL are
left in all-versions folder to avoid duplication.
This is an implementation detail as the versioned libraries export
the all-versions headers.

Note that strict vendor-system separation is enforced by the
build-system. The system headers are not available for vendor
libs and vice-versa.

Note that this patch is split between numerous git repository (>10),
all the commits having the same Change-id for searchability.

Note that audio_policy.h is no longer exposed to vendors
as the legacy audio policy HAL API was never officially supported.
As a result the audiopolicy stub implementation has been removed.

Test: compile taimen-userdebug walleye-userdebug
              sailfish-userdebug marlin-userdebug
              gce_x86_phone-userdebug gce_x86_phone
              full-eng aosp_arm aosp_x86-eng
Test: check that the emulator booted and played audio
Test: full QA on sailfish-userdebug and taimen-userdebug
Bug: 38184704
Change-Id: I950f4e0a55613d72e32eba31bd563cb5bafe2d1a
Signed-off-by: Kevin Rocard <krocard@google.com>
2018-01-20 21:39:40 -08:00
Emilian Peev
92261ffa2e camera3: Extend camera capture request for multiple cameras
The legacy camera 3.5 API should allow clients to set individual
settings for specific physical cameras that are part of
a logical multi-camera. 'camera3_capture_request_t' must
include additional arrays containing the required settings
and corresponding camera ids.

Test: Manual using camera application,
camera_client_test
Bug: 64691172

Change-Id: I634f1d5b87a6d97c5a35b8ea633c7a6c22793eaf
2018-01-19 17:28:28 +00:00
Shuzhen Wang
bf39eb54de camera3: Add logical camera support in HAL 3.5
- Add ability to specify the camera id to which a particular camera3_stream belongs.
- Update documentation about the camera characteristics of logical camera.

Test: Camera2.apk and GoogleCamera.apk
Bug: 64691172
Change-Id: Ie2e235e8bc8124596785db8dad25549bec4232aa
2018-01-18 16:53:49 -08:00
Hongwei Wang
1a9044eded Removes deprecated audio property in vehicle hal
Bug: 72054677
Test: lunch gcar_emu-x86 && m -j
Change-Id: Ia70bf17e0343704c5ca3468ad86145e7078696f7
2018-01-18 21:01:13 +00:00
TreeHugger Robot
b11abc155b Merge "Add KM_ALGORITHM_TRIPLE_DES to keymaster_defs.h" 2018-01-17 23:14:11 +00:00
Frank Salim
343f309e0a Add KM_PURPOSE_WRAP to keymaster_defs for wrapped key import
AndroidKeymaster depends on keymaster_defs and needs the new
purpose for secure key import.

Test: system/keymaster/tests/android_keymaster_tests

Change-Id: I8ab6d9756689342bc5865861c89c5ccc87179454
2018-01-16 13:43:29 -07:00
Shawn Willden
2b55708fbb Add KM_ALGORITHM_TRIPLE_DES to keymaster_defs.h
Test: system/keymaster unit tests
Change-Id: I1ed56e543b657155c9194bc30616747d51aef7df
2018-01-16 09:08:51 -07:00
Prashanth Swaminathan
28e0f76353 v4l2 camera: port ARC++ image processing code
Utiltizes ARC++ image processing code to perform the conversion between
the camera format and the requested format from the framework. In order
to support USB devices which may not implement the required formats,
conversion between YUYV/MJPEG to the request format is done on-the-fly.

TEST: All existing unit tests pass. Tested manually with the camera
sample APK, preview/video/capture in both JPEG and YUV formats. Tested
on the RPi v2 Camera, the Logitech C270 and the 180 degree Fisheye USB
camera.
Bug: 37708856, Bug: 69983918
Exempt-From-Owner-Approval: This HAL is owned by AT team.
Change-Id: I1a54581d1170fa3270036ec366fb613fe587a094
2018-01-10 12:39:23 +09:00
TreeHugger Robot
f78d716b89 Merge "Support native camera resolutions" 2018-01-04 06:31:28 +00:00
Josh Gao
9eb0a7b073 Merge "Don't TEMP_FAILURE_RETRY on close." am: e1c003dc11 am: 7f4b73fb1a
am: 619653d7b1

Change-Id: I1f896a59da33be27a5d81362a6a1897f0ec277cf
2017-12-29 00:29:48 +00:00
Josh Gao
619653d7b1 Merge "Don't TEMP_FAILURE_RETRY on close." am: e1c003dc11
am: 7f4b73fb1a

Change-Id: I4ebddbdb360c6c0ce6acede11badc38dc6a228ed
2017-12-29 00:26:46 +00:00
Josh Gao
7f4b73fb1a Merge "Don't TEMP_FAILURE_RETRY on close."
am: e1c003dc11

Change-Id: I0694ca58e011969346047b0c2cd5762714d3038d
2017-12-29 00:23:44 +00:00
Treehugger Robot
e1c003dc11 Merge "Don't TEMP_FAILURE_RETRY on close." 2017-12-29 00:19:21 +00:00
Josh Gao
09a3af5e11 Don't TEMP_FAILURE_RETRY on close.
close always succeeds, even if it was interrupted and "fails" with
EINTR. Retrying will either close a nonexistent fd or stomp on another
thread's newly opened file descriptor.

Bug: http://b/20501816
Test: treehugger
Change-Id: I706d5e8027e60b13f23f9488fdf5cf7cef7b3d3b
2017-12-28 14:21:32 -08:00
Dan Willemsen
844c74a750 Merge "Convert to Android.bp" am: 90e0a80af3 am: 243ba5e7b2
am: 90955e6a6a

Change-Id: I8e4e8c784b4e6630b7d062c4238d8c885111df30
2017-12-28 19:38:41 +00:00
Dan Willemsen
90955e6a6a Merge "Convert to Android.bp" am: 90e0a80af3
am: 243ba5e7b2

Change-Id: I8776702856a3fbfee5e316cf4eb04c99b2ef8c4d
2017-12-28 19:35:39 +00:00
Dan Willemsen
243ba5e7b2 Merge "Convert to Android.bp"
am: 90e0a80af3

Change-Id: Iad8ff5ed73ab4d7739e03962aa3ad6d6aa3e0361
2017-12-28 19:32:39 +00:00
Dan Willemsen
90e0a80af3 Merge "Convert to Android.bp" 2017-12-28 19:30:04 +00:00
Dan Willemsen
86e247ae89 Convert to Android.bp
See build/soong/README.md for more information

Test: mmma hardware/libhardware
Change-Id: Ibb7e2af9d55f581e951d8996cea5e52cd0766b04
2017-12-27 11:05:29 -08:00
Jaesung Chung
932d4dddd9 Support native camera resolutions
This CL makes camera HAL support native camera resoultions up to
3280x2464, which is the maximum camera resolution of RPi3's camera
module version two.

Bug: 69983703
Test: Verified with ThingsCameraQA.apk
Exempt-From-Owner-Approval: V4L2 camera HAL is owned by iot team.
Change-Id: I303e763e87bdfc5ae81d398aac8be0730e57b05d
2017-12-26 03:09:59 +00:00
TreeHugger Robot
6e63df7e51 Merge "camera: Bump device version to 3.5" 2017-12-22 19:18:45 +00:00
Chih-hung Hsieh
fbb4c361fb Merge "Allow warnings in modules/camera/3_4." am: 1d83294190 am: 37724db429
am: 94202cf12e

Change-Id: I714a5fcd60d00f2811d15be614229fa25d50ef85
2017-12-20 02:06:55 +00:00
Chih-hung Hsieh
94202cf12e Merge "Allow warnings in modules/camera/3_4." am: 1d83294190
am: 37724db429

Change-Id: If9cfc40c749bff7d11303543994fde9e2067838b
2017-12-20 02:04:24 +00:00
Chih-hung Hsieh
37724db429 Merge "Allow warnings in modules/camera/3_4."
am: 1d83294190

Change-Id: Ia309376d278d301efe087819705a61683824199d
2017-12-20 02:01:53 +00:00
Chih-hung Hsieh
1d83294190 Merge "Allow warnings in modules/camera/3_4." 2017-12-20 01:56:55 +00:00
Chih-Hung Hsieh
87ef6ef33d Allow warnings in modules/camera/3_4.
* This directory still has many warnings to fix.

Bug: 66996870
Test: normal build
Change-Id: I0e05b78eca9d58dc9081bb3810f5ccabadfc21a7
Exempt-From-Owner-Approval: quick fix for broken build
2017-12-19 17:52:51 -08:00
Chih-Hung Hsieh
3a549d438b Merge "Fix compiler warnings." am: 2623d1370f am: 8f7122a989
am: 28d9d65ffb

Change-Id: I981642310f1a0b7b49315d437c47a8070747fe6d
2017-12-20 00:19:36 +00:00
Chih-Hung Hsieh
28d9d65ffb Merge "Fix compiler warnings." am: 2623d1370f
am: 8f7122a989

Change-Id: Ia01a7af4254c05e41a0edde9b386ec6087dbc5b2
2017-12-20 00:17:38 +00:00
Chih-Hung Hsieh
8f7122a989 Merge "Fix compiler warnings."
am: 2623d1370f

Change-Id: I0905307275eb260a5ec762aa1ed101c00db36468
2017-12-20 00:15:08 +00:00
Treehugger Robot
2623d1370f Merge "Fix compiler warnings." 2017-12-20 00:08:36 +00:00