Commit graph

252 commits

Author SHA1 Message Date
Steven Moreland
4b60470f1a Remove useless Android.mk files.
These have been c/p'd all over the place.

Test: m -j nothing
Bug: 33420795
Change-Id: I77979866dbb2345a41a873c84ec3fccd7b127510
2017-10-04 15:52:40 -07:00
Steven Moreland
9a17f41f6f Merge "Update for hidl adapter module defaults." am: 988c977079 am: 861651985f
am: b53e6ad535

Change-Id: I23269fb7a9bdd352e670a80f390527d9eef31412
2017-10-04 21:51:00 +00:00
Steven Moreland
527fd76a0e Update for hidl adapter module defaults.
Test: pass
Change-Id: Idc6a943149a279bf17cfcfd0f2571473e53bbbbf
2017-10-04 12:47:03 -07:00
Steven Moreland
9fdd241905 Merge "Fix typo in update makefiles." am: 9960148420 am: f07e364ce3
am: 71a193a425

Change-Id: I45ae43f07323254212532acbf0f891d11143b05f
2017-09-26 23:58:51 +00:00
Steven Moreland
a5299ee739 Fix typo in update makefiles.
Bug: 37518178
Test: pass
Change-Id: Ic401b3a473f15ca4c01e58b3072e19db7c31b653
2017-09-26 21:59:43 +00:00
Kevin Rocard
69a76b1dfa Audio VTS: improve audio policy validation error messages
If multiple config are found, each will be validated before failing the
test.
Also add a missing new line before dumping libxml2 errors.

Test: run the following script to check for regressions and test that
      invalid config make the test fail.

    runTest() {(
      set -xu
      local readonly MODULE=$1
      local readonly TEST=$2
      local readonly XML=$3
      runVTS() { vts-tradefed run commandAndExit vts \
            --skip-all-system-status-check --primary-abi-only \
            --skip-preconditions --module $MODULE -t $TEST |
                 awk '/FAILED: 0/{e=1} {print} END {exit !e}'; }

      local FAIL=0 # used instead of return if clean up is needed

      echo "# Test valid config"
      runVTS || return 1

      echo "# Test multiple invalid match"
      adb shell touch /system/etc/$XML
      runVTS && FAIL=2
      adb shell rm /system/etc/$XML

      echo "# Test multiple valid match (not supported if xinclude)"
      if !adb shell grep -q xi:include /vendor/etc/$XML; then
        adb shell cp /{vendor,system}/etc/$XML
        runVTS || FAIL=3
        adb shell rm /system/etc/$XML
      fi

      echo "# Test invalid config"
      adb shell sed -i "'2i<fuu/>'" /vendor/etc/$XML
      runVTS && FAIL=4
      adb shell sed -i 2d /vendor/etc/$XML

      echo "#Test no config"
      adb shell mv /vendor/etc/$XML{,.hide}
      runVTS && FAIL=5
      adb shell mv /vendor/etc/$XML{.hide,}

      echo "# Test that the test did not break the config"
      runVTS || FAIL=6

      return $FAIL
    )}
    runTest VtsHalAudioV2_0Target CheckConfig.audioPolicyConfigurationValidation audio_policy_configuration.xml &&
    runTest VtsHalAudioEffectV2_0Target CheckConfig.audioEffectsConfigurationValidation audio_effects.xml &&
    echo TEST PASSED

Bug: 64881365
Change-Id: If0443f85e0d687eed04819337519e4d9f09f5ca9
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-09-26 17:15:59 +00:00
Steven Moreland
97228c0b7d Update makefiles for hidl adapter. am: 26a0bb2762 am: 73949c1d7e
am: b94d0c7290

Change-Id: If766cffbcc003cc0cc5eb98969b924aa918fff44
2017-09-26 12:53:13 +00:00
Steven Moreland
26a0bb2762 Update makefiles for hidl adapter.
Bug: 37518178
Test: manual
Change-Id: I50e999907d3c64d2b039272b823971998da64d1b
2017-09-25 18:35:56 +00:00
Tri Vo
c619cac2be Merge "Audio test statically links to dependencies." into oc-mr1-dev 2017-08-16 17:33:24 +00:00
Tri Vo
eb8dfd8c01 Audio test statically links to dependencies.
This test now statically links to libs not guaranteed to be on the
device.

Bug: 64040096
Test: vts-tradefed run commandAndExit vts --skip-all-system-status-check 
--primary-abi-only --skip-preconditions 
--module VtsHalAudioEffectV2_0Target
Test: vts-tradefed run commandAndExit vts --skip-all-system-status-check 
--primary-abi-only --skip-preconditions 
--module VtsHalAudioV2_0Target

Change-Id: I331d7e4abdf7e520df6d508a8059b6358ad4398f
2017-08-15 17:38:58 +00:00
Steven Moreland
dfd8287506 Updating all makefiles.
Bug: 64487114
Test: none
Merged-In: I8608c8f636c35f21e4246a805a9eff6d14124e0a
Merged-In: I2fa89b6661c39859ec4fb62c4bb0a05a35e645f0
Merged-In: Ifdc3c17cb2b85c18b37dac2d03bb5c8935c23180
Change-Id: I170fa1c4fe39f8109b1670db58ef99bb11afc0be
2017-08-14 20:25:09 +00:00
Justin Yun
608d773ef8 Update make file for vndk enabled.
Update the Android.bp generated with hidl-gen.

Test: build with and without BOARD_VNDK_VERSION=current
Bug: 63866913
Change-Id: I1a9db1df49e0f13c5790da2b118ae9ec63ba34a7
2017-08-04 14:12:23 +09:00
Tri Vo
f5d136c231 Update Android.bp HIDL makefiles
Allow HAL definition libs to be static.

Bug: 32920003
Bug: 64040096
Test: update-all-google-makefiles.sh
Change-Id: I1483d572bea6799717d1614fb7d52fe225e31104
2017-08-03 00:30:01 +00:00
Kevin Rocard
60012203d3 Audio VTS: Change test utility from dyn to static lib
Bug: 63801053

In order to avoid having to instruct vts-tradefed to push the test
utility library on the target before runing the audio VTS,
duplicating the makefile declaration,
make the library static.

Test: make vts
Test: vts-tradefed run commandAndExit vts --module VtsHalAudioV2_0Target
Change-Id: I7a98b2aaf0e0f6f91a92b7f01df1c630540ad697
Merged-In: I7a98b2aaf0e0f6f91a92b7f01df1c630540ad697
(cherry picked from commit 921d12ea6d)
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-07-20 10:01:44 -07:00
Mikhail Naganov
afae464376 Add OWNERS for audio-related HAL default implementations
Test: not needed
Change-Id: Idefe7be10bde22866be82f87118b9b54e74c3f40
2017-07-14 17:14:53 +00:00
Mikhail Naganov
6301fc325e Add VTS test for validating audio effects config against XML schema
If the device contains /vendor/etc/audio_effects.xml (the new XML
format for the audio effects configuration), the test validates
this config against the schema contained in
audio/effect/2.0/xml/audio_effects_conf_V2_0.xsd
(pushed to the device by the VTS test runner)

Change-Id: Ib57d30e3c1e32ce5d74f906a216f9bb8f635a28c
Test: this is a test
Bug: 37492580
2017-07-07 17:45:15 -07:00
Kevin Rocard
6a0af3c51b Can not specify an audio effect for the default stream
The default stream is an alias to an other stream.
One can not allocate effects for it in the configuration
as it could conflict with the stream it aliases.

Test: run xmllint against all audio effect configs
Bug: 37492580
Change-Id: Ia2bbc13b5cf2a0a40e5eeff7ee22a7423ec16767
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-07-07 17:45:15 -07:00
Kevin Rocard
3296cee7e5 Configure audio effects libraries with relative path
audio effects.conf legacy format had the libraries specified
in absolute path.
Nevertheless those libraries must be in specific folders.
The .conf loader used to strip the prefix of the paths then
try to load the libraries in those specific folders.

With new xml format the user only has to specify the name of the library
and the loader will load it from the known folders.

Test: run xmllint against a config with absolute paths
Bug: 37492580
Change-Id: I2863e04b3cdf0c6758d9f7be33796621fee527ed
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-07-07 17:45:15 -07:00
Kevin Rocard
627fdaae3d Audio effect XSD: Give effect proxy its own tag
Effect and effect proxy do not have the same xml structure.
As they had the same xml tag, it was impossible to discriminate them in
the xsd. Leading to xsd validating incorrect xml.

This patch changes the xsd to force proxy effect to have the type
<effectProxy> instead of <element>.

With this patch, effects have to be explicit about being a proxy and
they are forced to have a hw *and* a sw library.

Bug: 37492580
Test: validated xsd against converted effects.conf
Test: vendor/box/user/mnaganov/audio-effects-conf/test.sh
Change-Id: Idf8a1040feccbfd6a346ab9bc892f3b7e87df530
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-07-07 17:45:15 -07:00
Mikhail Naganov
7a5614bc9e Revert "Revert of "Audio: Add XML schema for audio effects configuration""
Add the configuration back on the master development branch.

This reverts commit d5196af814.

Bug: 37492580
Change-Id: Ie2d3218d942a995aec4d6b73fb7813e76604066b
Test: not needed
2017-07-07 17:45:03 -07:00
Mikhail Naganov
d5196af814 Revert of "Audio: Add XML schema for audio effects configuration"
The schema file isn't used anywhere, safe to revert.

Bug: 37492580
Bug: 63169864
Test: not needed
Change-Id: I97e6e2d5be5324efe87475e04a916afeeec53631
2017-07-05 12:46:12 -07:00
Mikhail Naganov
7cd76c1469 VTS Audio Effect: Do not check the result of IEffect::offload method am: 5abb15e987
am: dd5605c4fb

Change-Id: I98d3bd958af9266b97830c098d282f4760974cef
2017-06-02 18:31:08 +00:00
Mikhail Naganov
dd5605c4fb VTS Audio Effect: Do not check the result of IEffect::offload method
am: 5abb15e987

Change-Id: I266ac43808d0e9002822ea4d589d17bfc9995d84
2017-06-02 18:23:54 +00:00
Mikhail Naganov
5abb15e987 VTS Audio Effect: Do not check the result of IEffect::offload method
HAL may not support offloading, and a call to IEffect::offload
is allowed to return an error code.

Update the test to only check that the call to the method doesn't
crash.

Bug: 38437110
Test: still passes
Change-Id: I6cfd25998edb9c68d2e585e572ba8ba3a3427e98
2017-06-02 15:54:43 +00:00
Mikhail Naganov
61de2b1f4a Audio: Add XML schema for audio effects configuration
The schema describes the new XML format for audio effects
configuration.

Bug: 37492580
Test: schema is parsed with xmllint with no errors
Change-Id: I5dd33c6806cace5cb66457e1a072bda51ee11294
2017-05-24 20:02:29 +00:00
Steven Moreland
f203167814 Update makefiles. (2/2)
am: 76cfb84140

Change-Id: I24d21438a5b2f447d2160929c6ff6e17b2b66820
2017-05-22 17:15:20 +00:00
Steven Moreland
76cfb84140 Update makefiles. (2/2)
Adds default configuration for all hals.

Bug: 38415912
Test: pass
Change-Id: Idd1f3a2b7b16ad956d31784a513e93a066cdd02e
2017-05-19 15:54:03 -07:00
Mikhail Naganov
2d6f470495 Merge "VTS Audio Effect: Allow 'NOT_SUPPORTED' from IEffect::offload method" into oc-dev
am: 2bb2add8a9

Change-Id: I4002f571964e615ec0e8357468cbf037fbdb0a43
2017-05-19 20:35:34 +00:00
Mikhail Naganov
c11724572e VTS Audio Effect: Allow 'NOT_SUPPORTED' from IEffect::offload method
HAL may not support offloading, and a call to IEffect::offload
is allowed to return an error code.

Update the test to accept either OK or NOT_SUPPORTED.

Bug: 38437110
Test: still passes
Change-Id: I1822010eed73f61bb0e0ae1852739b47fa72eade
2017-05-19 11:29:28 -07:00
Steven Moreland
a32ebce372 Update makefiles for c++-sources and c++-headers. (2/2)
am: bc71124120

Change-Id: Icf36068a4d863a8520854c7a83e51f960c188e12
2017-05-11 00:48:55 +00:00
Steven Moreland
bc71124120 Update makefiles for c++-sources and c++-headers. (2/2)
Test: pass
Bug: 38174080
Change-Id: Icad451f9f9ad5f46412356a4171a8a1222f8e545
2017-05-09 19:58:43 -07:00
Steven Moreland
5c63b11f76 Remove redundant dependencies
android.hidl.base@1.0 and android.hidl.manager@1.0 are built into libhidltransport.

Test: links
Bug: 33276472
Merged-In: I08aaad80f7e2fc262aa3a8b66fe932e8133a928d
Change-Id: I08aaad80f7e2fc262aa3a8b66fe932e8133a928d
2017-05-02 15:29:30 -07:00
Mikhail Naganov
c8c6a81f0f audiohal: Support stateful downmixer effects
Fraunhofer's downmixer has additional buffering, this is incompatible
with how DownmixerBufferProvider used to process incomplete buffers.

Now the effects HIDL wrapper delivers frameCount updates in
audiobuffers to the server side. This fixes playback of multichannel
sound streams.

Bug: 36181621
Test: play 5.1 track from Play Music
Change-Id: Iffe3327c6eedef85151eec2b41e0aedfb7ffa6dc
2017-04-27 12:37:28 -07:00
Mikhail Naganov
95344ba2f5 Merge "audiohal: Fix handling of invalid arguments in 'debugDump' methods" into oc-dev 2017-04-26 22:53:33 +00:00
Mikhail Naganov
3e6fe754f6 audiohal: Fix handling of invalid arguments in 'debugDump' methods
Add checks for validity of the passed in native handle.

Bug: 37590777
Change-Id: If906f0086c3442819e1844cc521215d5b74af015
Test: VTS
(cherry picked from commit 7bae6a0b63)
2017-04-25 20:21:37 +00:00
Mikhail Naganov
3a2470f82d audiohal: Fix typos in comments, add missing comments
These changes are in comments only, no ABI breaking changes.

Bug: 32238101
Test: make
Change-Id: Iead4ba01dae1a1c05d8fbed7f194182128e9e6ad
2017-04-25 10:59:53 -07:00
Steven Moreland
a8a9cc6606 audio hal: explicitly import headers
Test: works with BOARD_VNDK_VERSION := current
Bug: 33241851
Change-Id: I34983a5527a16e8e9f5a6a87edac0b741aeb67d6
2017-04-17 15:56:52 -07:00
Andreas Huber
6fa374ad30 Changed the naming scheme for Treble java libraries (both static and dynamic)
android.hardware.foo@1.0-java => android.hardware.foo-V1.0-java

Bug: 37207894
Test: make
Change-Id: I177f4cfd42f635aaf096107af8309d1a82ed41c0
Merged-In: I8b91881dfaf507c0d852d56ebbb53ff0987e5a34
2017-04-13 15:23:46 -07:00
Steven Moreland
3b36a83a2e Update makefiles (2/2).
Test: pass
Change-Id: Ic7e6289c7b69785491708ce0acbb657f4c704229
2017-04-11 09:58:03 -07:00
Andreas Huber
40d3a9bd8c Convert all comments into "doxygen-ready" comments.
Bug: 36453077
Test: mma
Change-Id: I0b1f77dfae5d2258969e33d85ecf45401ffbdfaa
2017-03-29 08:53:58 -07:00
Steven Moreland
561b602a99 Update makefiles for hwtypes.h
Test: pass
Change-Id: I8e17eb8fec5d2f04c526476a866c8dd54ccb556c
2017-03-28 15:18:20 +00:00
TreeHugger Robot
8b624737d7 Merge "audiohal: Add crash tests for some methods of IEffect" 2017-03-27 17:57:55 +00:00
Mikhail Naganov
05fa0d0312 audiohal: Add crash tests for some methods of IEffect
For methods that can't be meaningfully tested, add tests
verifying that they at least don't crash.

Bug: 32022706
Change-Id: I234c2ae4b6bc173450cf50e8749ea966cbc2d2a2
Test: this is a test
2017-03-24 17:06:25 -07:00
Mikhail Naganov
b0dd076c60 audiohal: Remove stale TODOs
Bug: 34109709
Change-Id: I9b30ffa2ed06be8cf31cdbfbcc0f4cb0dac7be54
Test: make
2017-03-22 10:36:14 -07:00
Mikhail Naganov
9f2890458a Add VTS tests for audio effects
Added tests covering IEffect, IEqualizerEffect, and
ILoudnessEnhancer interfaces.

Minor corrections in the interface definitions and implementations:

 - fixed descriptions and @callflow annotations in IEffect;

 - fixed type used for band levels in IEqualizerEffect;

 - fixed specification of frequencies in IEqualizerEffect;

 - fixed some bugs in previously non-execrices Effects code;

 - warning messages changed to error messages.

Test: this is a test
Bug: 32022706
Change-Id: I0e0bc111b07d944ad8a0321e8b1ec703f8d1a73e
2017-03-14 17:25:17 -07:00
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
Mikhail Naganov
0522f89c8e Merge "Implement audio effects HAL delegating to legacy HAL" 2016-11-07 18:50:54 +00:00
Colin Cross
b785f5b82e Support genrules with multiple tools
To allow genrules with more than one tool, rename the tool property to
tools and make it an array, replace $tool with $(location <label>),
and use $() for other variables for consistency.

Bug: 31948427
Test: compare build.ninja
Change-Id: I3d714f70a2af0dc60faeee10e09b6ed166601f1d
2016-11-04 22:49:15 -07:00
Mikhail Naganov
7cbf2f1fb1 Implement audio effects HAL delegating to legacy HAL
Changes made to the .hal definition:

  - added missing generated Result for methods implemented via legacy
    "command" function;

  - fixed Aux Channels feature definition;

  - added "size" parameter for reply data in cases where the wrapper
    needs to allocate a reply buffer;

  - added method for generic support of feature configs;

  - added new Result type;

  - use arrays instead of strings in effect descriptor to ease
    conversion from / to legacy HAL;

  - added missing method to the Preset Reverb interface;

  - fixed names of the Visualizer enums to avoid clashes with defines
    from the legacy HAL file.

The implementation isn't hooked up to the server yet. Need to implement
devices and streams first.

Bug: 30222631
Change-Id: I75bb42f19ac3303759e918b6d6a91646b1555f8c
Test: make
2016-11-04 10:55:42 -07:00
Steven Moreland
fcd74ebcdc Running update makefiles.
https://android-review.googlesource.com/#/c/298160/

Test: pass
Change-Id: I14fcde2d3aacc8f8cd9221f2d69e2feae9ae1226
2016-11-02 10:24:33 -07:00
Steven Moreland
69727778a7 Stop all these merge conflicts.
Test: mma -j64
Change-Id: I319198af32adf1fef180c5c2c22ba4b360fa7609
2016-10-26 12:04:37 +02:00
Mikhail Naganov
c115895154 Remove redundant prefixes from enums in audio common types and effects HAL
Since in generated C++ code class enums are used, the names of enum
values are scoped anyway, thus carrying the prefix only clutters
code.

For C enums, newly introduced "value_prefix" annotation is used
to add the required prefix.

Added annotations for effects HAL types are just informational,
but can be used would C headers generation ever be required.

Also:

  - renamed AudioInputFlags -> AudioInputFlag for consistency;

  - moved AUDIO_INTERLEAVE_... constants into their own enum.

Bug: 31800672
Change-Id: I5b325f3440e0057ca98c4617040c7e5a89d2283d
Test: make
2016-10-11 08:54:01 -07:00
Mikhail Naganov
40be06cdf3 Define HAL for audio effects
Created after hardware/audio_effect.h with the following changes:

 - names changed to satisfy HAL style guide;

 - defined an interface per effect, an interface method
   per command, and getter / setter methods for properties;

 - retained methods for executing proprietary commands
   and accessing proprietary properties, only to be used
   for third-party software effects;

 - HIDL vector type is used instead of count / array pairs;

 - provider callback changed to be used over RPC;

 - 'dump' is method is already defined by generated code.

Note that audio data is currently transferred using AudioBuffers,
which is not effective due to memory copy and HwBinder transaction
involved. The transfer method will be changed to FastMessageQueue.

Bug: 30222631
Test: make
Change-Id: Ic8ea5c19688610ebe642c7597d2bcfa3226977e7
2016-10-07 15:11:25 -07:00