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
Merged-In: Ia81312dda340b6b5cbdd7a3c21e1d323bda39a4a
Change-Id: Ia81312dda340b6b5cbdd7a3c21e1d323bda39a4a
(cherry picked from commit b0907a6bb8)
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
Merged-In: Ia81312dda340b6b5cbdd7a3c21e1d323bda39a4a
Change-Id: Ia81312dda340b6b5cbdd7a3c21e1d323bda39a4a
(cherry picked from commit b0907a6bb8)
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
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
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
The stopAllRecognitions API is not used at the layers above the HAL, and
it requires the HAL to own the state of all active recognitions. This
API causes discontinuity with the upper layers also maintaining state
information.
The VTS requirement is being removed.
Bug: 151281377
Test: atest VtsHalSoundtriggerV2_0TargetTest
&& atest VtsHalSoundtriggerV2_1TargetTest
Change-Id: If14ed8177e0ff2730d2ed78ba8fbbbd058c4d57a
SoundTrigger VTS tests were duplicated in minor version updates.
This is not required and thus removed.
Bug: 151281377
Test: atest VtsHalSoundtriggerV2_0TargetTest
&& atest VtsHalSoundtriggerV2_1TargetTest
Change-Id: I60cfbe664cf7c38b2894d3e5f0df824737854c82
Update the documentation and usage when HAL implementation wants to
convey the parameter ID is not supported.
Bug: 141929369
Test: build and boot smoke test
&& verify unsupported parameter use case with test app
Change-Id: I2124d8e5e9b136bd0797c16e71aa0b4049c9ed58
add support for model parameter control APIs with THRESHOLD_FACTOR
as the first supported parameter
Bug: 141929369
Test: Tested manually with test app, GTS test
gts-tradefed run gts-dev -m GtsAssistIntentTestCases
and VTS test
vts-tradefed run vts-hal -m VtsHalSoundtriggerV2_3Target
Change-Id: I79d2b6365cc63fbdfe06fa94f1d0878903cbf554
Convert VtsHalSoundtriggerV2_*TargetTest to be parameterized test
and add it to vts-core
Bug: 142397658
Test: $atest VtsHalSoundtriggerV2_0TargetTest
$atest VtsHalSoundtriggerV2_1TargetTest
$atest VtsHalSoundtriggerV2_2TargetTest
Change-Id: Ibd9dec2b1aaa5ea0f5ca3fe2976b500048b3e426
Packages which contain some non-supported Java types can still have
their Java-supported types used in Java.
Bug: 143566068
Test: mma
Change-Id: I2afc5cc8d0a1bd981108ee2b87d6033fd48bdb37
Since these were combined into libhidlbase.
Bug: 135686713
Test: build only (libhwbinder/libhidltransport are empty)
Change-Id: I075670b64eebbbbd6a6ae0e84ad51bf1c6f5ba36
This is causing C++ compiles of this interface to fail now that these
comments get copied into the output.
Bug: 130911129
Test: compilation now succeeds
Change-Id: Iaa3877620b032b7144e3bab114fbcd1e1483bc8e
hidl-generated makefiles are now generated such that bpfmt(file) == file.
Bug: 67417008
Test: enable bpfmt hook
Change-Id: I53e5bf67a0d314e1b10c0ba0c7172a7af358ddcc
hidl-generated makefiles are now generated such that bpfmt(file) == file.
Bug: 67417008
Test: enable bpfmt hook
Change-Id: I1f69d292bc23a7cc293a66110cb02d597e1019ad
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
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
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
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>
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
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
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
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
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
Removing whenever I see these in code reviews.
Test: none
Merged-In: I4322f533a837d55618ec2ed2125e8966ace9d61d
Change-Id: I4322f533a837d55618ec2ed2125e8966ace9d61d
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
And use VtsHalTargetTestDefaults.
Bug: 64040096
Test: crop out all non-affected tests from vts-hal-hidl.xml and run
vts-tradefed run commandAndExit vts-hal-hidl --skip-all-system-status-check
--skip-preconditions
2 failures, same as without this change:
GatekeeperHidlTest.DeleteAllUsersTest
GatekeeperHidlTest.DeleteUserTest
Change-Id: I8f6995e9536a9aefe283ee3effec9f5a7f03b620
Update the Android.bp generated with hidl-gen.
Test: build with and without BOARD_VNDK_VERSION=current
Bug: 63866913
Change-Id: I1a9db1df49e0f13c5790da2b118ae9ec63ba34a7
Allow HAL definition libs to be static.
Bug: 32920003
Bug: 64040096
Test: update-all-google-makefiles.sh
Change-Id: I1483d572bea6799717d1614fb7d52fe225e31104
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
"default" implies using "primary" legacy device module.
This doesn't change anything for binderized mode, because
the server was only registering itself as "sound_trigger.primary",
so it was the only possibility anyways.
Usage of "stub" (debugging) module is still possible
if audioflinger and corresponding services are built with
USE_LEGACY_LOCAL_AUDIO_HAL=true (added makefile check to ensure
that).
Test: "Ok Google" from screen off state on sailfish
Bug: 36570720
Change-Id: I88f1ebd4c1efd0f91e37458746c336a4beef33ae
Remove dummy Union definition added as work around for JAVA build
problem.
Bug: 34109137
Test: make
Change-Id: I5a8107de2deab1f4f62c3e0ae654dd768cf0e307
Files relying on transitive include of utils/Log.h (and things that it
includes) from MQDescriptor.h
Test: pass
Merged-In: Iff316b21bef556bb026378b7f89e97ded3febef4
Change-Id: Iff316b21bef556bb026378b7f89e97ded3febef4