diff options
author | Amit Pundir <amit.pundir@linaro.org> | 2020-09-28 12:43:59 +0530 |
---|---|---|
committer | Amit Pundir <amit.pundir@linaro.org> | 2020-11-18 21:30:18 +0530 |
commit | e6732bb951290bc8cdf8241dde06b0195fde6ea8 (patch) | |
tree | 2200b77d698424d9dd209475c37eb01bdea9f270 /audio/fifo_wrapper.h | |
parent | 6e1a73e3ae7bcc31248b4fee9f7e5b4fa0cee3bb (diff) |
audio: Kang audio HAL from amlogic yukawa device
Copied from device/amlogic/generic/hal/audio/ minus the
speaker equalizer filter file.
It is a generic and more feature rich HAL, plus it fixes
the occasional static noise we hear on db845c and PocoF1.
Removed the mixer control settings from qcom/init.qcom.rc
and added HDMI out mixer control in etc/mixer_paths.xml
to start with. ** Analog audio out is not tested yet. **
ToDo:
1. Fallback to Analog audio port if the monitor doesn't
support HDMI audio out.
2. Mic AEC support is integrated deep in this HAL, so I
didn't remove it. Might as well test and use that
feature on Pixel 3 and Poco F1. Same with speaker EQ,
though we may end up never using this equalizer
feature at all.
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
Change-Id: I85614abdd684ab67f405f4c0e48380668ade4e06
Diffstat (limited to 'audio/fifo_wrapper.h')
-rw-r--r-- | audio/fifo_wrapper.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/audio/fifo_wrapper.h b/audio/fifo_wrapper.h new file mode 100644 index 0000000..e9469ef --- /dev/null +++ b/audio/fifo_wrapper.h @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2019 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _AUDIO_FIFO_WRAPPER_H_ +#define _AUDIO_FIFO_WRAPPER_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +void *fifo_init(uint32_t bytes, bool reader_throttles_writer); +void fifo_release(void *fifo_itfe); +ssize_t fifo_read(void *fifo_itfe, void *buffer, size_t bytes); +ssize_t fifo_write(void *fifo_itfe, void *buffer, size_t bytes); +ssize_t fifo_available_to_read(void *fifo_itfe); +ssize_t fifo_available_to_write(void *fifo_itfe); +ssize_t fifo_flush(void *fifo_itfe); + +#ifdef __cplusplus +} +#endif +#endif /* #ifndef _AUDIO_FIFO_WRAPPER_H_ */ |