Commit Graph

226 Commits

Author SHA1 Message Date
Guodong Hu
001ede6ffd apr_audio-v2: update dsp interface description
64CH TDM group device is supported from:
ADSP.HT.5.1.c1-00095-SC8180X-1

Change-Id: If0240dd1dd4b4098ca25af0cf3456212d1f2b0a7
Signed-off-by: Guodong Hu <guodhu@codeaurora.org>
2021-01-26 00:10:15 -08:00
Kunlei Zhang
af9c3b565c dsp: adm: change channel number for FLUENCE_NN_COPP_TOPOLOGY
FLUENCE_NN_COPP_TOPOLOGY doesn't support stereo input.
Update channel number to mono for FLUENCE_NN_COPP_TOPOLOGY.

Change-Id: I51c0b55cc2bb7379ea79021fe0fc937ffbea6396
Signed-off-by: Kunlei Zhang <kunleiz@codeaurora.org>
2021-01-13 17:46:15 +08:00
Soumya Managoli
98afffc24d ASoC: Add support to send voice UI port id to afe
As per the current design in afe, if the
afe_get_cal_topology for AFE_TOPOLOGY_CAL
or send_afe_cal_type for AFE_COMMON_TX_CAL
fails, then the voice UI calblock is fetched/sent.
This is resulting in sending voice UI calblock
on a non voice UI port during concurrent usecase scenario.

Fix is to check if the calblock for get/set is for
a voice UI port or not. Added support to send this
port id info from routing driver to afe when usecase
is enabled via mixer_control.

Change-Id: I356aae61e1b9d11324e7b9f9a57953767a64b71e
Signed-off-by: Soumya Managoli <smanag@codeaurora.org>
2020-12-08 17:05:12 +05:30
Tahir Dawson
453c34d2bd ASoC: msm: Add second proxy tx device FE and AFE Rx BE
* Add AFE playback backend with port 0x2002
* Add proxy capture frontend to read data from port 0x2002
* Modify AFE platform and DSP drivers to support dual proxy usecase

Change-Id: I35e33e5e922fb3092cffcc065fb514268c16cc17
Signed-off-by: Alexy Joseph <alexyj@codeaurora.org>
2020-11-25 08:50:14 +08:00
Saurav Kumar
e4463e36c8 dsp: add change to enable preemption at cal_utils_dealloc_cal.
Add change to enable preemption at cal_utils_dealloc_cal.

Change-Id: I3d9304851f4d61d7afb82c0512421159ec788db1
Signed-off-by: Saurav Kumar <sauravk@codeaurora.org>
2020-11-03 12:30:01 +05:30
Manisha Agarwal
da866c30a6 q6afe: add support for lc3 codec playback
Add support for lc3 codec playback.

Change-Id: I96ee7bb869c89c71bf8ee986529bf8575efd4b5b
Signed-off-by: Manisha Agarwal <maniagar@codeaurora.org>
2020-10-12 21:39:47 +05:30
Saurav Kumar
97d18542c1 dsp: add change to handle use-after-free in cal_utils_is_cal_stale
Add change to address the race condition between
pointer dereference and memory deallocation.

Change-Id: Ia1ed47986ec81d3dc2feb3bc874847fadddac292
Signed-off-by: Saurav Kumar <sauravk@codeaurora.org>
2020-10-01 09:35:23 +05:30
Vignesh Kulothungan
26c1ce2fb7 dsp: afe: send cps config after sending topology
Set params for a module should be done after sending
the topology information in which the module resides in.
Send cps configuration after sending afe topology.
Send cps configuration only for speaker protected usecases.

Change-Id: I89c7df9f0d70862813aa7a2bd1ea1afc2ddcc882
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
2020-08-27 17:11:05 -07:00
qctecmdr
5caa78db45 Merge "dsp: add support for SVA to use afe topology deregister" 2020-08-25 11:21:17 -07:00
qctecmdr
694c6f67cc Merge "dsp: adm: change channel number for AUDIO_RX_MONO_VOIP module" 2020-08-17 01:44:20 -07:00
qctecmdr
f5c694ecab Merge "ASoC: lahaina: add support for CPS speaker protection" 2020-08-17 01:44:19 -07:00
Sanjana B
afcc911b4e dsp: add support for SVA to use afe topology deregister
To handle erroneous scenario when audio afe driver registers
a FFNS topology in non-island mode instead of island mode,
add capability for audio afe driver to deregister previously
created topology before registering a new topology for SVA.

Change-Id: Iff871da998847ea5d3bcee417c780b8acaf70ca3
Signed-off-by: Sanjana B <sanjb@codeaurora.org>
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2020-08-13 18:24:08 -07:00
Vignesh Kulothungan
3fa8c9411f dsp: add afe function to send cps configuration
Define cps hw interface configuration structures.
Add AFE_PARAM_ID_CPS_LPASS_HW_INTF_CFG parameter id.
Add a function to send afe cps speaker protection
configuration.

Change-Id: I865e9981b6dd1da4b9ef1a3e18be82cea2996309
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
2020-08-10 16:12:04 -07:00
Kunlei Zhang
13803a3ca6 dsp: adm: change channel number for AUDIO_RX_MONO_VOIP module
AUDIO_RX_MONO_VOIP module in COPreP topology doesn't support
stereo input. Update channel number to mono for
AUDIO_RX_MONO_VOIP_COPP_TOPOLOGY.

Change-Id: I23632808cfcf82496f0e8f9618e28915974fc584
Signed-off-by: Kunlei Zhang <kunleiz@codeaurora.org>
2020-08-10 18:12:36 +08:00
Nirav Khatri
ac1e77dc77 ASoC: Add external mclk mixer support
Add mixer control and callback for selecting external mclk at start of
next playback for a particular BE.

Change-Id: Ifc25eda2f14da564c6b066eb8f76049697bbd44e
Signed-off-by: Nirav Khatri <khatri@codeaurora.org>
2020-08-06 06:17:08 +05:30
Harshal Ahire
2fdf19ac8e dsp: Add support for GET_PARAMS
Add support to query module parameters from ADSP.

Change-Id: Ie63dd95cf27277f9c836becc98952d48971a3ec3
Signed-off-by: Harshal Ahire <hahire@codeaurora.org>
2020-08-04 21:03:04 +05:30
Kunlei Zhang
d9bf6df220 dsp: add support for CMA heap allocation during call
Add support for CMA heap allocation during call.

Change-Id: I65cd291a9db56bf53d9bb9b4e6c7236da9d7288c
Signed-off-by: Kunlei Zhang <kunleiz@codeaurora.org>
2020-07-27 11:53:28 +08:00
Viraja Kommaraju
5fdef1b590 ASoC: msm: Support different POPPs to single COPP
For multi COPP feature it could only allow POPPs with same app_type
to connect single COPP. But it's possible to connect different POPPs
with different app_type to single COPP, to achieve this, it should
skip the app_type check when create copp_idx.

Change-Id: I9da6e84b8ef4a5e13d29d71c016b114ea759b94f
Signed-off-by: Viraja Kommaraju <virajak@codeaurora.org>
2020-07-15 01:33:26 +05:30
qctecmdr
8c500e2d43 Merge "dsp: Fix out of bound memory access." 2020-06-16 20:17:02 -07:00
qctecmdr
7284897e35 Merge "asoc:support for DSD on MI2S interface" 2020-06-16 20:17:02 -07:00
qctecmdr
e0a48cd1e5 Merge "q6afe: add support for handling rx proxy ports concurrency" 2020-06-11 04:15:16 -07:00
Harshal Ahire
c702957fa2 dsp: Add support to dynamically load and unload BT modules
Add new APIs to enable dynamic load and unload of BT
modules before afe_port_start and afe_close.

Change-Id: I74da9a49aac754d4557c7206155de65cf9b6bdaf
Signed-off-by: Harshal Ahire <hahire@codeaurora.org>
2020-06-10 23:02:37 -07:00
Sanjana B
02d1c6dc11 asoc:support for DSD on MI2S interface
Add support for DSD in MI2S interface and corresponding api updates
from ADSP.

Change-Id: I494205763fa429f95e43497ed5b8f91332f5a2a3
Signed-off-by: Sanjana B <sanjb@codeaurora.org>
2020-06-09 23:41:10 -07:00
qctecmdr
6c188e55ac Merge "lsm: add support for SVA multi sound model" 2020-06-09 09:24:19 -07:00
Zhou Song
0a79d42770 q6afe: add support for handling rx proxy ports concurrency
In case of two concurrent active rx proxy ports, add
separate callback data to handle proxy reading.

Change-Id: I4de631b9cfead777c970103a79578964e5950eb9
Signed-off-by: Zhou Song <zhous@codeaurora.org>
2020-06-09 09:43:59 +08:00
qctecmdr
344b47efbe Merge "asoc: lahaina: add support to send power mode for voice usecase" 2020-06-05 01:54:02 -07:00
qctecmdr
f90e291bfd Merge "dsp: adm: change channel number for FLUENCE_SM module" 2020-06-05 01:54:02 -07:00
qctecmdr
1aec879743 Merge "asoc: qcs405: Add dai links for hdmi tx" 2020-06-05 01:54:02 -07:00
Xiaoyu Ye
18ab344528 lsm: add support for SVA multi sound model
Add support in audio drivers to support multiple sound models
to be registered individually to the same module within a single
instance in ADSP.

Change-Id: I7d1abb206c7505ed10f0384b8286d5000416e1be
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2020-06-03 19:52:11 -07:00
qctecmdr
1cb613a506 Merge "asoc: enable TTP generator" 2020-06-01 10:27:01 -07:00
qctecmdr
5481d131cf Merge "asoc: qcs405: add support to set clock drift" 2020-06-01 10:27:00 -07:00
Sanjana B
7f953e1270 asoc: support for audio over hdmi tx
Add support for audio over hdmi tx.

Change-Id: I4f2108fd14eb22ec4e226220787e0defe512bb5f
Signed-off-by: Sanjana B <sanjb@codeaurora.org>
2020-05-29 10:47:10 -07:00
Kunlei Zhang
44c6cc4fdc dsp: Add support to set island cfg and power mode
Add new APIs to set/reset power mode along with
island config before afe_port_start.

Change-Id: Ibd9487b04b691be5ab829cfa32c89953838f3192
Signed-off-by: Kunlei Zhang <kunleiz@codeaurora.org>
2020-05-29 12:35:55 +08:00
Kunlei Zhang
b466b00787 dsp: adm: change channel number for FLUENCE_SM module
FLUENCE_SM module in COPreP topology doesn't support
stereo input. Update channel number to mono for
VPM_TX_VOICE_FLUENCE_SM_COPP_TOPOLOGY.

Change-Id: I7de7b49706387b09031f67e1a0271db1825cb81d
Signed-off-by: Kunlei Zhang <kunleiz@codeaurora.org>
2020-05-27 17:58:10 +08:00
Aditya Bavanari
31aa875405 audio-kernel: Synchronize hw vote and unvote requests
HW vote and unvote is currently called from multiple
clients leading to synchronization issues
during SSR/PDR scenarios. Synchronize all the vote requests
by using digital codec resource manager.

Change-Id: I7e63f69ab5d761a3bb4c7ce70bbef2e8bfd76cfb
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2020-05-18 09:04:25 -07:00
qctecmdr
934188e064 Merge "dsp: afe: add support for codec dma data alignment API" 2020-05-16 03:24:33 -07:00
Surendar Karka
6ea98f1cae dsp: Add support to set clock drift
- Add support to adjust drift in audio interface
  clock source PLL.
- ADSP adjusts the source clock based on clk id. Add support
  in AFE driver to get clk id based on the AFE port.

Change-Id: I45ceb6579bb15e32541051e0ba936a2d903e4923
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
2020-05-15 02:44:36 -07:00
qctecmdr
81b18718b9 Merge "ASoC: dsp: Speaker Protection V4" 2020-05-14 22:04:36 -07:00
qctecmdr
c3c4fd765e Merge "ASoC: update headers for upstream compliance" 2020-05-14 22:04:36 -07:00
qctecmdr
0b521bbfad Merge "asoc: add new fe for hearing aid" 2020-05-14 22:04:36 -07:00
Surendar Karka
c238fc0d74 asoc: enable TTP generator
Add support to enable TTP generator in AFE.

Change-Id: I0186dc18809b87a912a1c3ec9dd7fcd26aa726f5
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
2020-05-12 23:50:02 -07:00
Vangala, Amarnath
00ee526deb ASoC: dsp: Speaker Protection V4
Support for Speaker Protection V4 feature.

Change-Id: I2237836243a716d4ed3288c9c613bc8d4ec5a282
Signed-off-by: Vangala, Amarnath <avangala@codeaurora.org>
2020-05-13 12:00:26 +05:30
Meng Wang
4fed159385 dsp: afe: add support for codec dma data alignment API
Add support for codec dma data alignment API.

Change-Id: Ifcca9454fee4f65dc8787dc39a36acfd4c3af392
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2020-05-13 12:39:45 +08:00
qctecmdr
320ef023a6 Merge "asoc: lahaina: add proxy ports for call screening in machine driver" 2020-05-10 05:35:12 -07:00
Vignesh Kulothungan
e0bdd11269 ASoC: update headers for upstream compliance
Update uapi header reference path to include
path prefix "audio/"

Change-Id: Ic7b1d22910b07be3ffe8d9f02514ed89facea974
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
2020-05-06 11:26:15 -07:00
Ramlal Karra
34a11c755a dsp: q6adm: add ADM_AUDPROC_PERSISTENT cal type
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: I2d1fb219a3748d0ead5ca2199da2b55669f2550e
Signed-off-by: Ramlal Karra <rkarra@codeaurora.org>
2020-04-22 19:19:37 -07:00
Zhou Song
83c6033064 asoc: add new fe for hearing aid
Add a new fe dedicated for hearing aid and the support
of reading data from a new proxy port.

Change-Id: Id2e8ade6bfe5412ca6520d3cff70d6eebad7d7cc
Signed-off-by: Zhou Song <zhous@codeaurora.org>
2020-04-21 16:58:00 +08:00
qctecmdr
4ec39896a8 Merge "dsp: Add support for EOS V2" 2020-04-08 21:02:09 -07:00
qctecmdr
ee9e37d20a Merge "asoc: Set and get lsm port indices on a per session basis" 2020-04-08 21:02:08 -07:00
Aditya Bavanari
33b2108fd6 asoc: Set and get lsm port indices on a per session basis
When multiple LSM sessions are running, lsm port index might
be overwritten with index of different sessions during
concurrent LPI and Non LPI session switches. Maintain
lsm port index on a per session basis to avoid this issue.

Change-Id: I943ea7899b977e06f467a140a9d1c9feb31c58bd
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2020-04-02 22:27:53 -07:00