Commit graph

45 commits

Author SHA1 Message Date
Changyeon Jo
cb877f950b Use more inclusive terms
Updating language to comply with the inclusive language guidance

Bug: 162326641
Test: m -j
Change-Id: I627c22c3a0f89879255f1c65cfa314aebc70417e
2020-08-06 15:24:03 -07:00
Dan Shi
ff985a85a8 Suppress gtest error for tests without any instance
Bug: 162052785
Test: m -j vts
Change-Id: I58bc808a82b2128bb8774f762f9b9fcecd2614fb
2020-07-29 09:46:36 -07:00
Jooyung Han
b0907a6bb8 update hidl .bp
HIDL libs are not necessarily part of VNDK now. Because some are
used by VNDK libs, they are still VNDK. But rest are now just
vendor-available.

.hidl_for_test files are also removed because they are used to exclude
test-purpose hidl libs from VNDK libs.

Instead, .hidl_for_system_ext files are added to tests/lazy to
distinguish them from others which are installed /system.

Bug: 143933769
Test: update-makefiles.sh && m com.android.vndk.current
Change-Id: Ia81312dda340b6b5cbdd7a3c21e1d323bda39a4a
2020-07-02 09:18:17 +09:00
TreeHugger Robot
cd3bb63ab7 Merge "Reserves memory for external buffers" into rvc-dev am: 5f86b51408 am: 79de2730fe am: 502d371abe am: 4c6985a336
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/11925286

Change-Id: I43cc12095ad88307a1d3a9f9da0223df1f568d1d
2020-06-22 19:03:23 +00:00
TreeHugger Robot
502d371abe Merge "Reserves memory for external buffers" into rvc-dev am: 5f86b51408 am: 79de2730fe
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/11925286

Change-Id: Ifc63ef6b30b04421bf0f7498841e4b1fddbb77d8
2020-06-22 18:39:27 +00:00
Changyeon Jo
4d35fd1e66 Merge "Adds a EvsEvent type for general streaming error" into rvc-dev am: fda881504a am: 27f667ebe1 am: 63b4fc1d7d am: 2b8fe23d7c
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/11838590

Change-Id: If94e5ffe579aeb7916f0ed8fad9fc9fb940a3de5
2020-06-19 05:44:23 +00:00
Changyeon Jo
63b4fc1d7d Merge "Adds a EvsEvent type for general streaming error" into rvc-dev am: fda881504a am: 27f667ebe1
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/11838590

Change-Id: I39f26b8e2ada2f670f0b3545a38b0922d6b19a0c
2020-06-19 04:59:34 +00:00
Changyeon Jo
523e37e638 Reserves memory for external buffers
This change adds a line to reserve memory to hold externally
allocated EVS frame buffers for CameraStreamExternalBuffering test.

Fix: 159399273
Test: vts-tradefed run commandAndExit -m VtsHalEvsV1_1TargetTest
Change-Id: I9e6b29580ac8357efd32b8fec434456e40cbaa58
2020-06-18 21:06:19 -07:00
Changyeon Jo
e98bce8cec Adds a EvsEvent type for general streaming error
Bug: 142891447
Test: m -j android.hardware.automotive.evs@1.1
Change-Id: I102c48e689cd567701bc33e379f545e8aff880e9
2020-06-18 13:51:23 -07:00
Dan Shi
aad51fa000 Rename vts-core to vts
Bug: 151896491
Test: local build
Exempt-From-Owner-Approval: This CL update suite name vts-core to vts as
the suite name is updated. This CL won't change test logic or behavior.

Change-Id: I562b4dc50765e953800a814a8fd84a01c1b9352b
Merged-In: I562b4dc50765e953800a814a8fd84a01c1b9352b
2020-04-07 16:37:40 -07:00
Dan Shi
3a8a650c61 Rename vts-core to vts
Bug: 151896491
Test: local build
Exempt-From-Owner-Approval: This CL update suite name vts-core to vts as
the suite name is updated. This CL won't change test logic or behavior.

Change-Id: I562b4dc50765e953800a814a8fd84a01c1b9352b
2020-04-07 18:03:49 +00:00
Changyeon Jo
8b06871849 Add CameraStreamExternalBuffering test case
This change adds a VTS test case to validate a new
IEvsCamera::importExtenralBuffers() API.  New test case allocates
graphic buffers and passes them via a new API call.

Bug: 152493110
Test: vts-tradefed VtsHalEvsV1_1_TargetTest
Change-Id: I157f3cf45092a9a4ca8bf5bf9ea54aa62d15225c
2020-04-01 10:54:45 -07:00
Changyeon Jo
3e69744f0f User allocated EVS camera capture buffers
This change introduces a new API to import frame capture buffers
allocated by the clients.

Bug: 152493110
Test: m -j and run /system/bin/evs_app --test --extmem
Change-Id: I679c61719e4d0e3a7d0c41110afe66e0a4ccb305
2020-03-31 17:45:22 -07:00
Changyeon Jo
6912b90613 Using VINTF manifest fragment
Bug: 152703657
Test: m check-vintf-all -j
Change-Id: I44fd1b7c2269891d0b4447cf1be7d8d5fbb8889a
2020-03-29 22:59:08 -07:00
Changyeon Jo
fae91b1bb9 Fix a resource clean-up routine
When a test case is being terminated, VTS framework calls TearDown() to
clean up all resources.  VtsHalEvsV1_1TargetTest stores weak references
to opened hardware cameras for this and tries to close them explicitly
when it can promote them.  However, it was observed that VirtualCamera's
destructor is not called yet even it fails to promote.

Therefore, this change modifies a container to hold a strong pointer and
explictly removes it after a test case calls closeCamera().

Also, this change corrects a bug in checking setExtendedInfo_1_1()
results.

Bug: 150893461
Test: vts-trafed VtsHalEvsV1_1_TargetTest
Change-Id: I23b55b2f2282834fb5a9d364f4eb176060027de1
2020-03-05 17:52:16 -08:00
Changyeon Jo
e6477dc808 Use Google-style C++ loggers
This change replaces ALOG* usages in VtsHalEvsV1_1 with Google-style
C++ loggers.

Bug: 150893461
Test: Run VtsHalEvsV1_1TargetTest
Change-Id: Ia93c5a00d580bae99d15a7a893e57e0f1e2397d5
2020-03-05 17:12:54 -08:00
Changyeon Jo
2056c2da3b Parameterize VtsEvsHalV1_1TargetTest
Bug: 142397658
Bug: 142275664
Test: VtsHalEvsV1_1Target
Change-Id: I5e0a65e6200626c606c1c015942274d2098ee7ed
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-02-23 19:21:37 -08:00
Tanmay Patil
5cd7390407 Merge changes from topic "UltrasonicsEVS"
* changes:
  Add VTS for Ultrasonics to EVS 1.1
  Adds default implementation for ultrasonics HAL
  Adds HAL for ultrasonics to EVS 1.1
2020-02-21 23:33:42 +00:00
Tanmay Patil
d91f1c3e97 Add VTS for Ultrasonics to EVS 1.1
Bug: 148619310

Test:  atest VtsHalEvsV1_1TargetTest

Change-Id: If91bce64cf06fd374b3829b0f01804bdc375197d
2020-02-20 17:50:35 -08:00
Tanmay Patil
b97cceb495 Adds default implementation for ultrasonics HAL
- Replicates logic from camera for default impl.

Bug: 148619310
Fixes: b/148608401
Test: Builds, VTS passes.

Change-Id: I5c1b4c615f98cb7405a9a233a7853daba09cc63d
2020-02-20 16:50:58 -08:00
Tanmay Patil
496b86ccbb Adds HAL for ultrasonics to EVS 1.1
- Adds new structs in types.h
- Adds two new .hal IEvsUltrasonicsArray and IEvsUltrasonicsArrayStream
- Adds new APIs calls in IEvsEnumerator
- Adds empty default implementation for all

Bug: 148619310

Test: Build and functionality tested with demo app.

Change-Id: I8b501c7328d4c02cc694b5a2c73a519ca6d87710
2020-02-19 12:36:58 -08:00
Changyeon Jo
93594abef3 Add the camera extended info getter/setter methods
This change declares and implement newer version of methods to
manage vendor-defined camera extended information.

Bug: 142888670
Test: m -j android.hardware.automotive.evs@1.1-service
Change-Id: If6baf9cea7eefd13fd269ca8bb5af715cc3a8bab
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-02-17 15:05:45 -08:00
Changyeon Jo
043a7a027f Add a method to support multi-display usages
- Add getDisplayIdList() and openDisplay_1_1() to IEvsEnumerator.
- Add getDisplayInfo_1_1() to IEvsDisplay.
- Update CameraToDisplayRountTrip test case to use new methods.
- Update default implementation.

Bug: 141886260
Bug: 146567078
Bug: 147553536
Test: VtsHalEvsV1_1TargetTest
Change-Id: I3c17aecc482770074159f7ccaf8e00cadf711e76
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-02-16 05:56:10 -08:00
Changyeon Jo
5a53659077 Add a metadata field to BufferDesc
This change adds a variable-length metadata field to BufferDesc.  This
new data is owned by EVS Camera HAL implementations and opaque to EVS
manager.

Change-Id: If9b25093afa55ea0782af776a3f67923664e0058
Fix: 142891952
Bug: 142888671
Test: Build successful
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-02-06 08:50:05 -08:00
Zhaoming Yin
cafc24b5a5 Merge "Add fuzzer for EVS HAL" 2020-01-31 02:24:51 +00:00
TreeHugger Robot
230a2eb1d6 Merge "Use regex names for EVS HAL implementations" 2020-01-30 23:08:21 +00:00
Zhaoming Yin
838c4c19d3 Add fuzzer for EVS HAL
Bug: 147513710
Test: Follow go/android-fuzzing to build and test

Change-Id: Ia2a64f73d3928bc529a1785e999ed7f032446f8a
2020-01-30 13:14:38 -08:00
Changyeon Jo
b0e72927dc Change the location of a configuration file
Move a configuration xml file from /system/etc to /vendor/etc.

Bug: 148424402
Test: m -j selinux_policy
Test: check violations while EVS service is running.
Change-Id: I17c74798564bb0f5684157c483b45857b39ab6bd
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-01-30 09:00:35 -08:00
Changyeon Jo
8bcb492309 Use regex names for EVS HAL implementations
This change deprecates EvsEnumeratorHw, which has been a name for
EVS HAL Enumerator implementations, and uses regex names for them.

New method, isHardware(), is added to IEvsEnumerator and the clients
should use this method to tell whether current service is EVS manager
or driver.

Bug: 147010694
Test: m -j
Test: atest VtsHalEvsV1_1TargetTest
Change-Id: I89441936734fde0f0cc2f0151ee9b6622f61814d
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-01-29 19:59:48 -08:00
Changyeon Jo
6caf74b061 Implement getPhysicalCameraInfo() method
This change adds a new method, getPhysicalCameraInfo(), to IEvsCamera
interface, implements it in the default implementation, and update
corresponding VTS test cases.

Bug: 142275664
Test: VtsHalEvsV1_1TargetTest
Change-Id: Ic993d5670c34f05ef8d807708f27dec75008b04b
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-01-04 09:56:06 -08:00
Changyeon Jo
a203a13bf3 Update EVS VTS test cases
This change updates existing EVS VTS test cases to verify the logical
camera device.

Bug: 142275664
Test: VtsHalEvsV1_1TargetTest
Change-Id: Ieebb09a3bbf948ab60d0498a359be8f8c726735c
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-01-04 09:56:06 -08:00
Changyeon Jo
273c37d303 Fix EVS frame handler for VTS
This change updates FrameHandler to handle and count delivered EVS
frames correctly.

Bug: 142275664
Test: VtsHalEvsV1_1TargetTest
Change-Id: I098bcf8155c9e4211ec0152b2a828520b6c22dc2
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-01-04 09:56:06 -08:00
Changyeon Jo
3e80b3b528 Fix EVS VTS test cases
This change modifies logics to verify test results that need to parse
events from EVS manager.  Especially, test cases that run multiple
camera clients spawn threads to listen EVS events.

Also, this updates waitForEvent() method to return more precise results.

Bug: 142275664
Test: VtsHalEvsV1_1Target
Change-Id: Ic328217be1e49a3a862facf783a5356ac34ce9ed
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-01-04 09:56:06 -08:00
Changyeon Jo
56c9b37795 Prerequsite changes for EVS multi-camera support
This change modifies existing methods and data types for upcoming EVS
multi-camera support.
- deliverFrame_1_1() and doneWithFrame_1_1() are modified to take
  multiple buffer descriptors.
- setIntParameter() and getIntParameter() are changed to return multiple
  parameter values.
- Device ID and timestamp fields are added to BufferDesc.
- EvsEvent is renamed as EvsEventDesc and Device Id is added.

Bug: 142275664
Test: VtsHalEvsV1_1TargetTest
Change-Id: I0415b2cb0642d1377f4d23a4e154080a66c81187
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-01-04 09:56:06 -08:00
Changyeon Jo
63cddfc13f Explictly cast size_t into a long data type
This change explictly casts size_t type variables to long data type in
ALOG*, to avoid any build error due to inconsistent size_t type
declarations between different build targets.

Bug: 142545867

Change-Id: I587c7006a6ab69970b3a507a6160b3decd4bfd5a
Signed-off-by: Changyeon Jo <changyeon@google.com>
2019-10-12 05:27:34 -07:00
Changyeon Jo
c6fa0abf51 Revert "Revert "Revert "Revert "Extend EVS interfaces and data types""""
This reverts commit 468cc1d476.

Change-Id: If7e80111213ba02bf2c49f17f9880cd9cd14429e
2019-10-12 05:25:49 -07:00
Changyeon Jo
468cc1d476 Revert "Revert "Revert "Extend EVS interfaces and data types"""
This reverts commit 47b45af32c.
2019-10-12 05:18:16 -07:00
Changyeon Jo
47b45af32c Revert "Revert "Extend EVS interfaces and data types""
This reverts commit 1b73d28c04.
2019-10-11 14:00:36 -07:00
Changyeon Jo
1b73d28c04 Revert "Extend EVS interfaces and data types"
This reverts commit e6976fce80.
2019-10-11 10:13:38 -07:00
Changyeon Jo
e6976fce80 Extend EVS interfaces and data types
This change extends the definition of CameraDesc with the additional
camera metadata field that various camera module informaiton will be
stored.

IEvsEnumerator is extended with three new methods:
    - getCameraList_1_1() returns a list of new camera descriptors
    - openCamera_1_1() tries to open a camera device with a given
      stream configuration.

IEvsCameraStream has below changes:
    - deliverFrame_1_1() method is added to handle a frame in new
      BufferDesc.
    - Rename notifyEvent() as notify().

IEvsCamera also has below new methods:
    - getCameraInfo_1_1() returns a new camera descriptor.
    - getParameterList() returns a list of camera control parameters
      supported by the camera device.
    - getIntParameterRange() returns a valid range of parameter values.
    - Parameter setter and getter methods are renamed.

VTS test cases are updated to use new methods and below test cases are
added to validate their behaviors:
    - CameraUseStreamConfigToDisplay verifies end-to-end video stream
      with a stream configuration it finds from CameraDesc's metadata.
    - MultiCameraStreamUseConfig verifies two clients can start and
      stop video streams on the same underlying camera with same stream
      configuration.

Bug: 128851019
Test: VtsHalEvsV1_1Target
Change-Id: Ia6b0b94aff869129cb400d0a4c4df91e72682784
Signed-off-by: Changyeon Jo <changyeon@google.com>
2019-10-11 04:41:25 -07:00
Steven Moreland
82b84148c7 Remove libhwbinder/libhidltransport deps
Since these were combined into libhidlbase.

Bug: 135686713
Test: build only (libhwbinder/libhidltransport are empty)
Change-Id: I878a4d04e65ef13f3a0ebaf64177f673958d213c
2019-10-02 12:50:29 -07:00
Changyeon Jo
0d0228de5a Add a method to override a master
EVS considers the client, which owns the display, as the high priority
client and allows it to steal a master role from existing master that
does not own the display.

Bug: 139536751
Test: VtsHalEvsV1_1Target
Change-Id: Idecaeedd90f187de57de912a09f4782bfb81a996
Signed-off-by: Changyeon Jo <changyeon@google.com>
2019-08-19 10:59:31 -07:00
Changyeon Jo
5830754d35 Add MASTER_RELEASED EVS event
This change adds new event to notify that a master role becomes
available and implements corresponding test cases.

Bug: 138328396
Test: VTS
Change-Id: Iddea2931a71fef2c7f5847eda12362e88cd52e5b
Signed-off-by: Changyeon Jo <changyeon@google.com>
2019-08-16 04:48:21 -07:00
Changyeon Jo
d2a82466d8 Add methods to get or set camera parameters
This change adds new methods to set and get camera parameters.  As the
vendor may handle a parameter set request with invalid value, a set
method returns an effective value with a status code.

Bug: 138328396
Test: VTS
Change-Id: I278dad6c285fb9b341be3517cde09359da14cda6
Signed-off-by: Changyeon Jo <changyeon@google.com>
2019-08-16 04:48:21 -07:00
Changyeon Jo
2400b69b85 Add EVS v1.1 interface
Extends existing v1.0 interfaces to support more functionalities and
adds corresponding test cases.

Bug: 135472573
Test: VTS
Change-Id: I5245238e6a18ddc2c0451aaa21a9cce55c6207eb
Signed-off-by: Changyeon Jo <changyeon@google.com>
2019-07-31 07:54:25 -07:00