Add support for new A2DP profile aptX adaptive.
This is just like any other A2DP profiles.
CRs-fixed: 2272343
Change-Id: I219dec038e84b7b98ebb2d5233ddf576c8bbe70a
Signed-off-by: Sharad Sangle <assangle@codeaurora.org>
Add kernel symlink creation $(KERNEL_USR) as make-style
dependency. The LOCAL_ADDITIONAL_DEPENDENCIES flag in
place is not active for the generated-source mechanism.
Change-Id: I9b93679bf73cf28c244119ec34a440775579b18a
If MSM_QDSP6_NOTIFIER is not enabled for a target, audio_notifier
feature will not be available for that target. Whenever a call is
made to audio_notifier when its not supported, returning error from
stubbed function may confuse the error with real failure (even though
the feature is not enabled on the target). Avoid returning error code
from stubbed function, when feature is disabled.
Change-Id: I37eb2e25e45b25948aff55f2a231195a22b16f05
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Set topology info to q6core service in ADSP so that the
modules in a topology can be loaded before the usecase starts,
thus reducing usecase setup latency. The same topology is
unloaded before vocproc or copp is destroyed or replaced.
Change-Id: I5f8872130fb09f049e080c61edb8bb0b05e5e2de
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
Enhance APIs to get instance id and stage info from userspace,
required for multi-stage Voice Activation in ADSP.
Change-Id: Ie39a3d002a56fb8df0c241089a50d55ef700a538
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
Enhance APIs to get instance id and stage info from userspace,
required for multi-stage Voice Activation in ADSP.
Change-Id: I82703c63214925173f3f978339188ccddff8ba91
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
Existing software supports only high AANC level with minimum noise.
Requirement is to support different noise levels when AANC is
enabled for better AANC effect.
Change-Id: I343d00473937f68eb86533e88b25083d554b79b1
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Update module id used in get/set for sound focus and source tracking.
CRs-Fixed: 2262638
Change-Id: Ieb35c12b8f6ec8a5db6f699f70bf85ef29b29178
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to dynamically configure channel mixing weightage
coefficients for both ASM and LSM sessions.
Currently the code is executed only for LSM session and can be
extended to ASM as well.
Change-Id: I727ea6fa2d3a99bbf6811005c5733535f680891b
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
ADM supports certain modules that can have very large calibration sizes,
in such cases the calibration is expected to be persistent in memory.
Add new cal type for this purpose.
Change-Id: Ieb2e941036595b7dff4b8bfb341f2ec152cf648a
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
New cal type ADM_LSM_AUDPROC_PERSISTENT is added to enable
the larger calibration sizes for ADM that need to be kept
persistent in memory.
Change-Id: Ie23f52d6aad45dc1133a4a6fa692c1331b93d3e8
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
With multichannel voice activation support in LSM, it could be possible
that the input media format/hw_params to LSM would be different than
the output media format/hw_params. This change decouples the input
and output hw_params for LSM. The output hw_params are obtained through
ALSA pcm_hw_params operation, whereas the input hw_params are obtained
though the LSM_SET_INPUT_HW_PARAMS ioctl to LSM.
At the same time, the below parameter IDs are added to send the channel
information to LSM service:
- LSM_PARAM_ID_MEDIA_FMT_V2
- LSM_PARAM_ID_LAB_OUTPUT_CHANNEL_CONFIG
Change-Id: Ie53a087b0ec54e83c4eba93a0828f9bdd6cc147d
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
Listen v3.0 adds new algorithm and multichannel support. The
input and output of LSM could have different media format,
especially number of channels. Add required support to obtain
input hardware params from userspace. Existing pcm_hw_params
operations will be used to obtain the lsm output hw params.
Change-Id: I3feca50b4b13ece59ceb39787199e2cec17b3cae
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
soundwire bus driver changes to support new soundwire
master driver for Talos/vipertooth.
Change-Id: I70e52a72edd80abc72ccb99b29b1a642debec257
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Update to AFE native driver to send VAD calibration
to DSP. Add support for per service API version query
in q6core driver.
Change-Id: I6234879054e7b5622a40912da16072fd8dbd83fe
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
New codec dma interfaces have been introduced to connect LPASS and
Codec macros. This change is to add codec dma interface related
updates to Q6 AFE native driver.
Change-Id: Ia3d1e5e80c694c8c4a7f904151adfcb504964b08
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
Add a common function handle to send uevents from q6 layer.
Add functions to initialize and cleanup the kernel object required
to send uevents.
CRs-Fixed: 2211324
Change-Id: I9dceb4eb16d6941600455602f78f4f1498171d19
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to register with ADSP for DC detection event
in speaker protection module.
Add support to notify audio driver clients when DC detection occurs.
CRs-Fixed: 2244131
Change-Id: Ieb467f62207546a785eac2e9b96ca677e0b10565
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to set custom encoder in ASM which
can be enabled through compress capture path.
Change-Id: I563c59eb3a0213c26ce69d3c2f8d650cf3c7d32d
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
ADSP detection engine module can raise Generic Detection Event to
provide variable payload data based on the information requested by
userspace. Adding new API/interface to provide support for Generic
Detection Event in LSM drivers.
Change-Id: Id5541f959ecdcf862dcfa1de1c1a1b3a796f260c
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
For DP audio Multi Stream Transport, add an interface
to set DP controller and DP stream index for display
port audio AFE port.
Change-Id: I6efbb6937a7849e5840a93541961414eb9049863
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
ADSP detection engine module can raise Generic Detection Event to
provide variable payload data based on the information requested by
userspace. Adding required structs and macros in the LSM UAPI header
file to expose them to userspace.
Change-Id: I454fb26b53f821310b5138a0ed9f1cbe516e63c3
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Audio calibration data supports 32 channels now so update
maximum number of channels supported to 32.
Change-Id: I0b94e23fe88c4382d78db85014a81e440f720660
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
Add support for adaptive bitrate with A2DP offload.
Set up Tx feedback path on SLIMBUS_7_TX from BT SoC
to LPASS. Configure AFE encoder and decoder for ABR.
Add bit width support to configure AFE port with
32bit for BT A2DP.
Change-Id: I8e0afaf52561e5dc70318240ba238fc42844501f
Signed-off-by: Aniket Kumar Lata <alata@codeaurora.org>
After applying calibration on DSP, cal block
is marked stale to ensure same calibration is not
reused for future usecase.
Change-Id: I9f446c0602f4ab34ca71b9d2611319624fb19cd2
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
Add support to set and get audio effects module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.
CRs-Fixed: 2151551
Change-Id: I0fdba2560950c931a2ec6f152499fd4bb9f59086
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to set and get ASM module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.
CRs-Fixed: 2151551
Change-Id: I633ce10a83d9033d42fadb7bad0b26842459df84
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to set and get dap modules params with
Instance ID support for both Dolby and DS2.
Maintain support for non Instance ID set and get param
structures as well. Use common pack and set param
functions to set and get parameters to DSP instead of
handling them at an individual module level.
CRs-Fixed: 2151551
Change-Id: I1633b63a1a598c0e4ea874d00655b09a240a47e3
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to set and get ADM module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.
CRs-Fixed: 2151551
Change-Id: I5ef920448dd827d8a315e248087997f703061263
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to set and get rtac params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.
CRs-Fixed: 2151551
Change-Id: Ic96e83477e72dc5ffa4d87a1e98c34814bbd0b8d
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to set and get AFE module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.
CRs-Fixed: 2151551
Change-Id: I15dac800bdf7f860d0fbeeff86f986c42a9eae34
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to set and get voice module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.
CRs-Fixed: 2151551
Change-Id: I045e27710d69304f234ace1ff6c80afdd4a4041c
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to set and get LSM module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
CRs-Fixed: 2151551
Change-Id: Id9aa5ee89bab1a4e15ff1f7868bceb42d6c25d19
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add common structures and definitions used to support
instance ID.
Add helper function to populate header based on instance ID
support and pack it with payload data.
CRs-Fixed: 2151551
Change-Id: If9b7e497d0e8fdfed7d62a1ee34c415baabdda07
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Expose APIs to get and set instance ID support by exposing a
mixer control for userspace to set the support status as well
as APIs for kernel components to querry for instance ID support.
CRs-Fixed: 2151551
Change-Id: I3b462a4c0f31152a2865af8f4e9664a6c4d324c3
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Create a audio_kernel_headers target so that all audio UAPI
header files can be copied to the right target specific OUT
directory and make it easy for clients to mark dependency on
the header files.
Change-Id: I09ca422cbdd067e6e56fff13deaa4e92de3de1fc
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>