Commit graph

57 commits

Author SHA1 Message Date
Yuexi Ma
ed2bb4e8f8 Change vts target base test class name
Test: make vts succeed, vts kernel tests and nfc hal tests passed
Change-Id: I95f10ad7a66f261c9030357edd411fe6d94150e8
2017-03-10 21:14:48 +00:00
Steven Moreland
48c52249e4 hidl_default to all targets.
find hardware/interfaces -type f -not -path "*/.git/*" \
-exec sed -i -e '/cc_[A-Za-z_]\+/ { N; s/$/\n    defaults:
\["hidl_defaults"\],/ }' {} \;
./hardware/interfaces/update-makefiles.sh

Test: pass
Bug: 35840847
Change-Id: If10c464d2f000b85c8d698fe11a4f3fc4cfad282
2017-03-08 19:31:53 -08:00
Yuexi Ma
50d7e27b3c change all vts hidl tests to use VtsHalHidlTargetBaseTest (internal master)
Bug: 33385836
Test: mma
Change-Id: Ide3ebc4a9db76257f33bcfb0c1f13d2ee33eeaa8
2017-02-28 22:27:28 +00:00
Steven Moreland
7e73d5b908 Remove viral dependency on libhwbinder. (2/2)
find hardware/interfaces -name Android.mk -exec sed -i -e '/libhwbinder
\\/d' {} \;
find hardware/interfaces -name Android.bp -exec sed -i -e
'/"libhwbinder"/d' {} \;
./hardware/interfaces/update-makefiles.sh

Note, automotive has some actual dependencies on libhwbinder, filed
b/35758626 for this.

Test: everything links
Test: (sanity) booted marlin on internal master with these changes
Bug: 35710429
Change-Id: I6d0726c8130d00684b978efbdd48e3ae396f12e5
2017-02-24 12:18:01 -08:00
Zhuoyao Zhang
8422f6aa04 Update the test binary and source file name on master.
* To confirm with Vts naming convention.

Bug: 35273456
Test: mma
Change-Id: I845da64085253cd02480465479618308045a52ed
2017-02-21 20:47:18 -08:00
Chris Phoenix
549ca2bbe8 audio_effect HAL uses "default" service name
The getService() and registerAsService() methods of interface objects
now have default parameters of "default" for the service name. HALs
will not have to use any service name unless they want to register
more than one service.

Test: builds; VTS HalAudioEffectHidlTargetBasicTest passes

Bug: 33844934
Change-Id: I7796982c4cad976aeeabf7708ec0104505332cad
2017-02-21 17:09:58 -08:00
Steven Moreland
a0da1a1c3d Move hidl shims to the vendor partition. (2/2)
We need google shims on the vendor partition because they are providing
an implementation of a vendor defined interface. They were written by
google just as a courtesy/to make the transition easier. They're
basically a set for vendors to assemble their hal implementations
from.

Bug: 34135607
Test: marlin persist.hal.binderization on/off
Change-Id: I2e2af5af39264cf290259755bb9b2eb9827a21f5
2017-02-13 15:03:41 -08:00
TreeHugger Robot
86fa244c12 Merge "Update makefiles to use filgroup syntax." 2017-02-10 23:25:52 +00:00
TreeHugger Robot
b2e8954c7c Merge "audio: Remove timeout from waits on event flags in HAL driver threads" 2017-02-10 23:24:54 +00:00
Tri Vo
85120c9490 Update makefiles to use filgroup syntax.
Test: mmma hardware/interfaces
Change-Id: I9f4457c78b7820c242d46359f0debe05d1b3e482
2017-02-10 12:45:19 -08:00
Mikhail Naganov
e867456982 audio: Remove timeout from waits on event flags in HAL driver threads
This fixes a power regression caused by periodic wakeups of
the driver threads even when the device is idle.

The timeout is really not needed, it used to be there to ensure that
the thread exits its loop, but then an explicit wake-up call before
closing the thread had been added for this purpose.

Bug: 34682579
Test: Follow repro steps from the bug, compare power consumption
      to the legacy version of the audio HAL.

Change-Id: I0bfc2079a449894c5d0bd6ef19b53ca425795a9e
2017-02-10 08:37:19 -08:00
Andreas Huber
d38f147c35 Updated makefiles
Java intermediates are now created in the common rather than the device-
specific generated sources subdirectory.

Bug: 33842609
Test: make
Change-Id: I16af4cd19bf0b24baa0ad9ebfdb86b4d959c8672
2017-02-09 17:20:45 -08:00
Tri Vo
ce608bec74 Migrate driver/profiler to test/vts-testcase/hal.
Bug: 34893894
Test: mmma hardware/interfaces

Change-Id: Ic72716577a5f93700c5056986aff55a76b170b5d
2017-02-07 19:13:28 -08:00
Mikhail Naganov
9bb90a55d6 Merge "audiohal: Make closing of effects and streams fast" 2017-02-06 16:34:42 +00:00
Keun Soo Yim
7b9b6ca18f move VTS stub files and non-functional tests
Test: mma
Bug: 34976004
Change-Id: I20273bdc3a05e2986fcf921f65d2afd6d72781e4
2017-02-04 02:45:25 +00:00
Zhuoyao Zhang
e9b43bbe2d Update Andriod.bp for hals.
* Add driver/profiler build rule for all hals.

Test: mma
Change-Id: I98325f7af14fec7dd1bb64b1668de8c7c20ace92
2017-02-03 10:03:01 -08:00
Mikhail Naganov
b0abafbf0a audiohal: Make closing of effects and streams fast
There were two problems:

1. Joining of reader / writer / process threads (the threads that
   interact with HAL) was taking up to 1 second because the thread
   was usually waiting for an event flag to be toggled, or a 1s
   timeout.

2. Calling IStream.close or IEffect.close shouldn't tax the caller.
   Changed the code so a call to close only signals the thread that
   it's time to exit, and then the thread is only joined in the
   effect or stream destructor.

Bug: 34800063
Bug: 34499806
Test: see repro steps in the bugs
Change-Id: Ife20524a1eba4ec9a78152e89862526e8cd5c960
2017-02-02 17:00:42 -08:00
Keun Soo Yim
b21bdc8b9f use the device's default binder/passthrough mode in vts tests
Test: mma
Change-Id: I3f2775873f5b6c091f70413adbdf7b7ae298ff44
2017-01-25 15:08:12 -08:00
Mikhail Naganov
f4f2ff3974 audiohal: Fix volume changes handling
Some legacy implementations of the effects HAL use the condition
of the reply buffer being NULL as an indication that they shouldn't
apply attenuation to the input audio data. Therefore, separate
methods are needed to distinguish the use cases of delegating the
volume control to the effect, and just informing the effect of the
volume changes.

A new method added to IEffect: volumeChangeNotification that implements
the second use case. The contract of setAndGetVolume method has been
updated to indicate that it is only called in the first use case.

Also updated the wrapper for a generic IEffect commands to pass NULL
pointers to the command and reply buffers in case when the size
of the input or output data is 0, to preserve compatibility with
direct calls from the framework.

Bug: 34368451
Test: volume control works when both Bass Boost and Equalizer are
      enabled in the NXP implementation of the effects

Change-Id: I3c9a5bbdff561802bc94080c51703385a8903282
2017-01-19 12:52:27 -08:00
Keun Soo Yim
5d406a3a37 Merge "add target-side profiling test for multimedia HIDL HALs" 2017-01-19 02:25:34 +00:00
Keun Soo Yim
e64871a894 add target-side profiling test for multimedia HIDL HALs
Test: mma
Change-Id: I14aeb000e2a17381c28ea2115d67a7e8eb84e375
2017-01-18 23:23:49 +00:00
Steven Moreland
96232e327f Revert "Revert "move VTS HIDL HAL tests to the corresponding interface directories""
This reverts commit 070e8d2116.

Change-Id: I66dd4e6cf875e39e58b0d91724a603b37d32c0ac
2017-01-14 00:00:26 +00:00
Ruchi Kandoi
070e8d2116 Revert "move VTS HIDL HAL tests to the corresponding interface directories"
Test: No
This reverts commit ec7746fa80.

Change-Id: I9ec4493403d71419df99fe9761211eab057cdb0a
2017-01-13 15:17:32 -08:00
Ryan Campbell
f276d1923e Remove coverage from test configurations.
Remove converage from test configs or entire config if not used
to define other test params. Tested each one individually to ensure
coverage still works.

Test: run vts -m (each test affected)
Change-Id: Ic1495a38ae9d1b32e851bc646f9c8e778eee2df1
2017-01-11 16:20:44 -08:00
TreeHugger Robot
a8d358fb63 Merge changes from topic 'bphwfoo'
* changes:
  Bp/nFoo -> Bp/nHwFoo.
  Bp/nFoo -> Bp/nHwFoo
2017-01-11 23:43:16 +00:00
Yifan Hong
a18049ad13 Bp/nFoo -> Bp/nHwFoo.
Test: mma
Bug: 33554989
Change-Id: I4b3f852d20fdfc49f2da671dd3c12d618ffb4140
2017-01-11 13:14:59 -08:00
Mikhail Naganov
a331de1421 audiohal: Re-implement effect process using FMQ and IMemory
Result: no hwbinder calls due music processing.

Added IEffect.close method for explicitly freeing up of resources
consumed by the effect before automatic server objects reaping
gets to it.

Added IEffect.setProcessBuffers method for updating the input /
output buffers on the go.

Test: make, use Play Music with effects, check traces
Bug: 30222631
Change-Id: Ia1e1bc7098fab59aa970e0ce4acdb48007409644
2017-01-09 18:21:21 -08:00
Keun Soo Yim
f755f46ca8 add coverage config to audio effect VTS test
Test: mma
Change-Id: I5d3854e124df2054860a1bcba65e79ce2d858694
2017-01-05 10:21:26 -08:00
Steven Moreland
b643842192 Return<*> getStatus().isOk() -> isOk()
Bug: 31348667
Test: compiles
Change-Id: If8d5a23f80dbc04127635b49f1ef77398fc9f8a1
2017-01-04 10:40:05 -08:00
Yifan Hong
6a56e38e08 Moved operator== to be autogen'd by hidl-gen.
Test: audio_effect_hidl_hal_test
Bug: 32834072
Change-Id: I58e8eb6ed85f8f1adce8c9334f7934146174e981
2016-12-22 15:18:50 -08:00
Yifan Hong
f35ee3b192 Revert "Revert "Update makefiles for Java package path.""
This reverts commit a8789f27cb.

Change-Id: I69980b580a556188ba868bb096ae1590b01759f5
2016-12-13 22:20:16 +00:00
Yifan Hong
a8789f27cb Revert "Update makefiles for Java package path."
This reverts commit ab0792ccdc.

Change-Id: I47fc272d9fa8875e3d7ccb10cb748c738fbf8135
2016-12-13 22:18:34 +00:00
Yifan Hong
ab0792ccdc Update makefiles for Java package path.
use V1_0 instead of 1.0.

Bug: 33554192

Test: hidl_test_java
Change-Id: Ic2d95265df10914a60a5bb743d75e839948838c3
2016-12-13 11:32:56 -08:00
Yifan Hong
501839495f Update makefiles for hidlizing IBase.
A new dependency android.hidl.base@1.0 is added for
all projects.

Test: mma

Change-Id: Ia70d0eb0d74de06475a339698386d383d491a43a
2016-12-03 01:01:14 -08:00
Yifan Hong
7bdce32513 Merge "Update to use the correct logging library." 2016-12-02 18:42:01 +00:00
Yifan Hong
f9d303435d Update to use the correct logging library.
Test: mma compiles
Change-Id: Idb33dea5faaf1a5e54719c2a5a683d2d47e9b8e8
2016-12-01 17:47:02 -08:00
Mikhail Naganov
a9a58c150d Merge "Audio HAL: fixes for issues discovered after client conversion" 2016-12-02 00:06:16 +00:00
Mikhail Naganov
6e81e9bb3c Audio HAL: fixes for issues discovered after client conversion
Several issues addressed:

  -- added IDevice.supportsAudioPatches to query whether
     create/removeAudioPatch is actually supported by HAL;

  -- IStreamOutCallback proxy needs to be owned by IStreamOut
     implementation. In order for the client to reset the reference,
     added method IStreamOut.clearCallback;

  -- IDevice.open{Input|Output}Stream need to return a "suggested" audio
     config from HAL;

  -- code for converting between system/audio.h and HIDL
     data structures has been moved to
     android.hardware.audio.common@2.0-util library for reuse;

  -- added a workaround for the issue with QC effects HAL trying to write
     into the input parameters buffer, which is r/o by Binder design.

Bug: 30222631
Change-Id: I64af24d79c12d6ac3b0f87d085a821913e29237b
Test: tried using with WIP HIDL client on N5X
2016-12-01 13:48:58 -08:00
TreeHugger Robot
32094ca29f Merge changes I0b1a0979,I4aa89a39
* changes:
  Added AOSP license headers.
  Remove HIDL_GENERATED from things written by hand.
2016-11-30 18:15:48 +00:00
Steven Moreland
d6e4f03acf Remove HIDL_GENERATED from things written by hand.
find . -name "*.h" -exec sed -i 's/HIDL_GENERATED_\(.*\)_H_/\U\1_H/g' {}
+

They now match what would be generated by -Lc++-impl. This prevents
confusion over whether or not the files are autogenerated.

Change-Id: I4aa89a39907024aa9525df71ff3715979f431357
Similar commit: https://android-review.googlesource.com/#/c/305996/
Test: pass
2016-11-29 15:05:31 -08:00
Steven Moreland
d26dc50abb Always specify underlying enum type.
Bug: 33197891
Test: compiles
Change-Id: I3d4822ea9a665708302d3bd1460425fddf1dcda9
2016-11-29 14:22:10 -08:00
Steven Moreland
bbff14d4bb Merge "Update makefiles for logging." 2016-11-22 17:25:36 +00:00
Keun Soo Yim
b74aac8107 Merge "move VTS HIDL HAL tests to the corresponding interface directories" 2016-11-22 16:41:27 +00:00
Martijn Coenen
70b9a15df0 Use newly introduced hidl_handle.
Bug: 32089785
Test: builds
Change-Id: I27c7d3945e1fe390661bf322987011a00fe9b3fe
2016-11-22 09:03:11 +01:00
Keun Soo Yim
8a36c0b01c move VTS HIDL HAL tests to the corresponding interface directories
Bug: 32783461
Test: vts-tradefed; run vts-hal-hidl
Change-Id: Iead44eaf65dcd4de2286267467c4a4a322a88205
2016-11-21 19:16:12 -08:00
Steven Moreland
f8d68ec855 Update makefiles for logging.
Bug: 32943424
Test: pass
Change-Id: Ic88ce6adf04e0e36db53e4cc06ac2ec5a90c011c
2016-11-21 16:28:54 -08:00
Yifan Hong
6b920e43d3 Split libhidl into base and transport.
Bug: 32756130

Test: mma
Change-Id: Id21cf23abe2910f26bb7895511862443b93dc112
2016-11-18 00:00:54 -08:00
Mikhail Naganov
1054829502 Implement audio devices and streams HAL delegating to legacy HAL
Changes made to the .hal definition:

  - introduce Effect ID returned by the IEffectsFactory that
    needs to be passed to IStream.{add|remove}Effect; otherwise
    it's impossible to retrieve the underlying HAL effect handle;

  - change "bus address" in DeviceAddress to "string" type;

  - fix signature of some methods w.r.t. returning Result;

  - remove unused "struct AudioPatch".

Bug: 30222631
Test: make
Change-Id: Icb51729ef57bb2a5b0b78609735e7481bc04f95c
2016-11-15 08:52:39 -08:00
Mikhail Naganov
bf39317f37 Add simple target-side VTS test for IEffectFactory.hal
Bug: 32022706
Change-Id: Id8a5a3ba8d48967beba0ef2e232624ebc185e5c6
Test: build & run test
2016-11-14 09:41:03 -08:00
Yifan Hong
c2f2779d9d Update Android.bp to reexport dependent packages.
Test: mma
Change-Id: Iaca7300c366c2c9e860a29e6a111248d315cc5b4
2016-11-09 10:28:38 -08:00