Commit graph

114 commits

Author SHA1 Message Date
mike dooley
93e4a086db Hooking up Hal Soundtrigger V2_2 VTS test
Bug: 117309670
Test: vts-tradefed run commandAndExit vts -m VtsHalSoundtriggerV2_2Target
Change-Id: Id320d15a39a6a22cbbcdb00b3b4658d690ab1fe0
2019-04-25 15:49:25 +02:00
Steven Moreland
7f4e21adda Merge "Update makefies: no 'types'" am: 4ee5ec1469 am: bab622f6a6
am: 7224bc9bcf

Change-Id: I434939e0770afa436c532a945542fce30a71ef7d
2019-03-04 16:05:59 -08:00
Steven Moreland
a878aee9ab Update makefies: no 'types'
Bug: 123976090
Test: N/A
Change-Id: I30fb04c81889b62775e1b764b965fdb0f893de17
2019-03-04 11:27:17 -08:00
mike dooley
2f0da26cd5 Enabling sound trigger V2_2
V2_2 has the same functionality as V2_1 except it adds one new
api, getModelState.

Note: V2_1 will be removed in a subsequent cl.

Test: built android and tested using SoundTriggerTestApp

Bug: 70206501
Change-Id: Ia1567bfc988482195b89b8d6a0901d51e870bfbf
2019-01-17 20:49:38 +01:00
mike dooley
25ed3e826f Fixing memory corruption bug in sound trigger V2_2
The PhraseSoundModel was being cast to the V2_1 version instead
of V2_0, resulting in memory corruption.

Test: manual test using the SoundTriggerTestApp
Bug: 121265082
Change-Id: If30acd06dd5e2abfdb831287a6f76760e70b20fb
2018-12-19 20:20:56 +01:00
Keun Soo YIM
68ae05dd2d pack VTS cc_test binaries as general-tests
Test: make general-tests
Bug: 120093339
Merged-In: I363450d205868f900e4925ccff1430e2a569f2a4
Change-Id: I363450d205868f900e4925ccff1430e2a569f2a4
2018-12-07 10:49:56 -08:00
Keun Soo YIM
ff84c37bc1 pack VTS cc_test binaries as general-tests
Test: make general-tests
Bug: 120093339
Change-Id: I363450d205868f900e4925ccff1430e2a569f2a4
2018-11-27 16:11:41 -08:00
mike dooley
74a792ecc7 Converting sound trigger v2.2 getModelState to be asynchronous
Test: built android with checkbuild flag

Change-Id: I68bebde980d2c3a76765cee4c70e213f4430dec1
Bug-Id: 70206501
2018-11-09 10:41:27 +01:00
mike dooley
e9529987fc Adding getModelState API to sound trigger with new build fix.
This version copies the V2_0 and V2_1 implementations instead of trying
to extend them.

Test: built with the forrest tool, ie. forrest --force_cherry_pick \
build th🆑5288240:aosp_x86-eng:git_master-without-vendor

Change-Id: Iec18b6a29c8d3d495b24fc07b5f7db95a8057f30
Bug-Id: 70206501
2018-10-20 21:17:11 +02:00
Michael Dooley
ecac112323 Revert "Adding getModelState to soundtrigger with build fix."
This reverts commit 0320d560ea.

Reason for revert: broke build

Change-Id: I69cda44f90985b57e69455a8d04cec71f2675831
2018-09-28 07:25:12 +00:00
mike dooley
0320d560ea Adding getModelState to soundtrigger with build fix.
original cl was ag/4879522

Bug: 70206501
Test: Built android
Change-Id: I11f164d8ade66cd7e56f1fa4e46dafa1d56db8cd
2018-09-27 11:10:16 +02:00
Michael Dooley
b7326db5c9 Revert "Adding getModelState API to sound trigger"
This reverts commit 73e63e662c.

Reason for revert: fix build breakage

Change-Id: I37d33bd2536f1917ced8a1ba816f336e7c9bb4e8
2018-09-14 16:10:12 +00:00
mike dooley
73e63e662c Adding getModelState API to sound trigger
Test: built android
Bug-Id: 70206501
Change-Id: I8f45fd86bc14544c676c94daeea71a0ecebdbe03
2018-09-12 08:14:45 +02:00
Zhuoyao Zhang
32cbe3edb9 Convert soundtrigger hal test to use VtsHalHidlTargetTestEnvBase
Bug: 64203181
Test: make vts
      vts-tradefed run vts -m VtsHalSoundtriggerV2_0Target
      vts-tradefed run vts -m VtsHalSoundtriggerV2_1Target

Change-Id: I747d674e4c0016cd8a1c373c8d7f744a022a98d8
2018-02-12 17:17:18 -08:00
Kevin Rocard
72993ce086 Merge "Revert "Audio V4: Split system and vendor Audio.h"" 2018-01-24 06:26:16 +00:00
Kevin Rocard
8bdafc1b5c Revert "Audio V4: Split system and vendor Audio.h"
This reverts commit 49c56de516.

Reason for revert: Breaks the build of multiple devices

Change-Id: Iebd868467948b8afa5907462ccc0720cd9c4871e
2018-01-24 06:12:44 +00:00
Kevin Rocard
cd603ca9e8 Merge "Audio V4: Split system and vendor Audio.h" 2018-01-24 04:04:47 +00:00
Kevin Rocard
49c56de516 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-22 22:00:56 -08:00
Mikhail Naganov
387bdf02cb soundtrigger: Remove get/setParameters interface methods
These methods are not aligned with "structured interface"
approach.

Bug: 68823037
Test: make
Change-Id: Id73d676e0386125bca678e7c7c2ea006c73a1365
2018-01-23 01:25:08 +00:00
Mikhail Naganov
dd49a1b129 soundtrigger: Add VTS tests for v2.1
Re-tests the implementation of the inherited methods from v2.0.

Adds tests for the methods introduced in v2.1.

Bug: 68823037
Test: VtsHalSoundtriggerV2_1TargetTest
Change-Id: Iab4d397d2581da1ff9e0d87c7f8d4fa8b483cdd5
2018-01-17 17:24:21 -08:00
Mikhail Naganov
2b228bb378 soundtrigger: Default implementation for version 2.1
Wrapped around the 2.0 default implementation. Added functionality
for retrieving and sending the data via shared memory.

Bug: 68823037
Test: compiles
Change-Id: Ie38dd261dc8c635462a7e2ee26672a83af915e84
2018-01-17 09:31:57 -08:00
Mikhail Naganov
dfdc3bbccd soundtrigger: Refactor the default implementation to be extensible
Introduce an inner "trampoline" class that implements
ISoundTriggerHw. This allows minor uprev implementation to inherit
from SoundTriggerHalImpl and reuse its functionality.

Split SoundModelClient into an abstract common part and
version-specific part. This allows the client to be redefined for
the types used in callback interface extensions.

Split the impl library into "core" part and the part implementing
HIDL_FETCH_ISoundTriggerHw function to avoid clash with the same
function introduced in minor uprev implementation.

Bug: 68823037
Change-Id: Ibec647f1aa7bc6a2a0bdfd1c9f9a066e4779a1bf
Test: make
2018-01-17 09:31:57 -08:00
Mikhail Naganov
0bbc4aa61f soundtrigger: Apply clang-format to 2.0 default implementation
The implementation needs to be updated to become extensible.
The current coding style is not consistent with the style
required for hardware/interfaces.

Reformatted with:
   clang-format -style=file -i <...>/SoundTriggerHalImpl.*
No manual changes.

Bug: 68823037
Change-Id: I5f5cbb599190a515dec8afe9026ca835b8fd20fa
Test: make
2018-01-17 09:31:57 -08:00
Mikhail Naganov
882d2377ec soundtrigger: Define v2.1 HAL
SoundTrigger 2.1 HAL is an extension to 2.0 fixing
the issue with of data blobs of arbitrary size that
can't outgrow HwBinder's IPC transaction size limit.
Instead of vectors, shared memory handles are used.

Added methods for getting and setting parameters.
The parameters are opaque to the framework, it does
not interpret them.

Bug: 68823037
Change-Id: I01c0c867e1d13023a22ccf408e84da78947d3bc2
Test: run hardware/interfaces/update-makefiles.sh
2018-01-17 09:31:57 -08:00
Steven Moreland
fcca4e23b7 Remove subdirs
Removing whenever I see these in code reviews.

Test: none
Merged-In: I4322f533a837d55618ec2ed2125e8966ace9d61d
Change-Id: I4322f533a837d55618ec2ed2125e8966ace9d61d
2017-11-28 14:22:43 -08:00
Chih-Hung Hsieh
1bf3cfc11d Merge "Use -Werror in hardware/interfaces" am: 02804915fb am: 8e736c21de
am: f53fe9317b

Change-Id: Ifc0a5be285be1a57d998db3c032e392b307cfa80
2017-11-28 19:31:03 +00:00
Chih-Hung Hsieh
8e736c21de Merge "Use -Werror in hardware/interfaces"
am: 02804915fb

Change-Id: Id73af9532487a85ad1d1170dbce809761d4a93a8
2017-11-28 19:24:00 +00:00
Chih-Hung Hsieh
3f2ea62d06 Use -Werror in hardware/interfaces
* Use hidl_defaults, which has -Wall -Werror.

Bug: 66996870
Test: build with WITH_TIDY=1
Change-Id: Ifbca0e176a8e031acc27256eb46d23b89cdf1a0e
2017-11-20 10:49:11 -08:00
Xin Li
bb9e38fef9 Merge commit '1a06284b24f5eb7bb9c1fea0817da8898b3b1bff' from
oc-mr1-dev-plus-aosp into stage-aosp-master

Change-Id: I2a044eb8c9981d0a8198ffe2df55559afbd76341
Merged-In: I4fb9f18884f7ef21162015a0032c4431444f7025
2017-11-14 12:08:38 -08:00
Steven Moreland
8db261bc99 Updating makefiles for hidl_interface.
Bug: 64487114
Test: manual
Merged-In: Ie13d9e014cf2b81c18c67f551b4644fb9f0ba812
Change-Id: Ie13d9e014cf2b81c18c67f551b4644fb9f0ba812
2017-11-13 10:00:18 -08:00
Steven Moreland
a1169dd600 Update makefiles for hidl_interface.
Bug: 35570956
Test: manual
Change-Id: I7a220b78ee081240e1dc30ef5672ba39e3e98375
2017-11-10 09:06:55 -08:00
Steven Moreland
1d7374c5e1 Update for Soong java makefiles. am: c3e80fa01e am: 0fff75dee1 am: 6c811964a1
am: 116161d94e

Change-Id: I33643636e2511de77fdf7de57777eb67edee2e52
2017-10-11 16:39:21 +00:00
Steven Moreland
116161d94e Update for Soong java makefiles. am: c3e80fa01e am: 0fff75dee1
am: 6c811964a1

Change-Id: I85ccbb4a15cd18938607f5bca4e065b9d7e0182b
2017-10-11 16:31:07 +00:00
Steven Moreland
c3e80fa01e Update for Soong java makefiles.
Test: pass
Bug: 33420795
Change-Id: Id9b1919a19b8ff682738cfb0869a479b4dbb4293
2017-10-10 23:07:20 +00:00
Steven Moreland
9b019ac4fe Merge "Remove useless Android.mk files." am: 75d5cf515a am: f27cfa15d7 am: 33dc30ce49
am: 0653f3b212

Change-Id: I7c2da3cf30da7b4a1eda7e5369e9caa5ebab2462
2017-10-05 21:52:50 +00:00
Steven Moreland
0653f3b212 Merge "Remove useless Android.mk files." am: 75d5cf515a am: f27cfa15d7
am: 33dc30ce49

Change-Id: Ia35d20e0fc1df6f7c46b5581537d7ed387965899
2017-10-05 21:51:13 +00:00
Treehugger Robot
75d5cf515a Merge "Remove useless Android.mk files." 2017-10-05 21:40:27 +00:00
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
70bfb9d250 Merge "Update for hidl adapter module defaults." am: 988c977079 am: 861651985f am: b53e6ad535
am: 9a17f41f6f

Change-Id: I78d9292068b372238554fd9d35128e69f5b5f9d2
2017-10-04 21:54:11 +00: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
91799c6cc7 Merge "Fix typo in update makefiles." am: 9960148420 am: f07e364ce3 am: 71a193a425
am: 9fdd241905

Change-Id: I1c852fa6600fecc44d5afd1a65a5f51c43ecf71c
2017-09-27 00:02:52 +00: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
Steven Moreland
7741c0e17b Update makefiles for hidl adapter. am: 26a0bb2762 am: 73949c1d7e am: b94d0c7290
am: 97228c0b7d

Change-Id: Ic4b459b7c1a4325453945b0b00db8f44e4e77c26
2017-09-26 13:36:09 +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
Eric Laurent
a6920307f1 sound trigger: fix array overflow in HAL wrapper
Bug: 65383689
Test: make
Change-Id: I9d62eb9be096222bcc3e1734a21f6ade0005b180
2017-09-07 12:48:41 -07:00
Tri Vo
b65c5ceff2 VTS tests now static link to HAL def libs.
And use VtsHalTargetTestDefaults.
This is a partial cherry-pick of ag/2657080.

Bug: 64040096
Test: compiles, works fine in internal master
Merged-In: I8f6995e9536a9aefe283ee3effec9f5a7f03b620
Change-Id: I76d47d8546416b57055841851a9d343026cd3210
2017-08-25 11:48:10 -07: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