Commit Graph

61 Commits

Author SHA1 Message Date
Deru Wang
7903818708 asoc: add AFE logging PID and APIs
The current AFE logging point is global, once enabled all active
AFE ports will log its data through DIAG to PC, However, diag
logging throughput is limited.
Need add kcontrol for enable/disable AFE logging by AFE port
per direction.

Change-Id: I05a12f2eb4bc5b5a3ad39b8bbf2f4148bec05002
Signed-off-by: Deru Wang <deruwang@codeaurora.org>
2021-03-14 19:29:33 -07:00
Sanjana B
a15df0900e dsp: Add support to update and store clk src values
Add support to update clk src array from machine driver.
Update clk src for different be ids based on clock
frequency at playback.

Change-Id: Ifa09d556fd50f9e2ddef39b5e3ddd25f579f8f6e
Signed-off-by: Sanjana B <sanjb@codeaurora.org>
2021-01-11 11:01:49 +05:30
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
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
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
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
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
qctecmdr
e0a48cd1e5 Merge "q6afe: add support for handling rx proxy ports concurrency" 2020-06-11 04:15:16 -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
1aec879743 Merge "asoc: qcs405: Add dai links for hdmi tx" 2020-06-05 01:54:02 -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
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
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
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
Saurav Kumar
a2efe09c14 asoc: add change for proxy playback and capture BE DAIs
Add change to support BE DAI link based on proxy
ports.

Change-Id: Id7ca274e330f025ac015567de86403fb14781cd0
Signed-off-by: Saurav Kumar <sauravk@codeaurora.org>
2020-03-25 11:02:24 +05:30
Laxminath Kasam
688db8aa06 dsp: q6afe: Update lpass hw votes to maintain separate handles
lpass client handle variable stores latest lpass hw vote.
During PDR, core hw vote release proceed to call unvote
for stale handle since above variable is set to non-zero
as part of audio hm vote. Maintain separate handles for
respective lpass hw votes inorder to fix this.

Change-Id: I432ce38b253ce6d18a25f9845fa694912718c74f
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-11-05 13:15:45 +05:30
Ralf Herz
43c0abd0c0 dsp: Add support for META MI2S ports
QCS405 can group data lines of several MI2S interfaces.
This feature is used with new META MI2S ports.

Change-Id: I0d8c2de742e04d7348e40e1026b1640c3f987479
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
2019-08-23 20:12:48 +02:00
Zhou Song
450ee1b712 dsp: q6afe: add tws mono switch for aptx adaptive encoder
Add support to switch tws channel mode for aptx adaptive
encoder.

Change-Id: Ife4170be56b152d34758a1cfd20fa4ec203742db
Signed-off-by: Zhou Song <zhous@codeaurora.org>
2019-08-06 10:17:23 +08:00
Sudheer Papothi
ba445bfe2d ASoC: codecs: Add support for LPASS Audio HW vote
Add support for LPASS Audio HW vote needed for low power AMIC
VA usecase.

Change-Id: If6642d418dbf2cc9773fbd0ec0fe35c30afac140
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-05-31 10:37:27 +05:30
qctecmdr
cbadda916f Merge "dsp: add senary MI2S and TDM port IDs" 2019-05-21 20:36:44 -07:00
qctecmdr
d12578a0ab Merge "asoc: send VAD enable or disable" 2019-05-07 22:35:09 -07:00
Karthikeyan Mani
3bbd2ee907 dsp: add senary MI2S and TDM port IDs
Add MI2S/TDM AFE senary port IDs for Kona target.

Change-Id: I8dafa4516c31040aad0bca30cfdc9acbdf460bf1
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-05-06 11:19:29 -07:00
Mangesh Kunchamwar
27baab0fb9 asoc: send VAD enable or disable
Updates to send VAD enable or disable to AFE port.
Send VAD and island configuration based on the ports
on which these features are supported in Vipertooth
machine.

Change-Id: Ib3e6d46fed3bf9e822f350c9ec0dc629cd82547e
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2019-04-15 02:51:36 -07:00
Cong Tang
b84eea3768 audio-driver: support tdm multi lane for sa8155
Support group tdm multi lane configuration for TDM interface.
With valid lane mask tdm interface support delivery audio channels
through different data lines.

Change-Id: I63e8ba1106b89c6bcaca0a8359a1def696c334ad
Signed-off-by: Cong Tang <congt@codeaurora.org>
2019-04-15 02:42:21 -07:00
Laxminath Kasam
36384ecca2 dsp: get excursion logging at afe close for wsa and log data
Trigger xt logging getparam at every playback close
and store data. When app queries sys/class node, return
stored values and reset to 0 for some params as per
app requirement.

Change-Id: Ice1a3e9a7e03062390f1c36184a971635e55d450
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-03-20 00:07:28 -07:00
Aditya Bavanari
740b4839cb dsp: afe: Implement get param for excursion logging parameters
Implement get param for AFE_PARAM_ID_SP_RX_TMAX_XMAX_LOGGING
in order to get excursion params from DSP.

Change-Id: I5129938c51c6f6ede9d4703d13be60d04d26f5e3
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2019-03-15 15:56:01 +08:00
Mangesh Kunchamwar
cdd68dbe72 msm: vote for LPASS core while access LPASS registers
When ADSP is in power collapse or island state, it would fail
to access LPASS codec register.Vote for LPASS core to avoid
LPASS power collapse with pmruntime approach while accessing
LPASS registers & TLMM.

Change-Id: I74d037e499fb6f1245b9a1bd1b0a77200608c27b
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2019-03-06 08:50:31 +08:00
Xiaoyu Ye
8341eefc48 dsp: afe: add support for VA macro codec DMA interface
VA macro on Kona has three TX codec DMA interface. The
current AFE driver only supports two codec DMA interface.
Add support to enable the third one in AFE driver.

Change-Id: Ie0f6241ef37bc03ad9adb1c4fe82f82468caec25
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2019-01-03 14:57:47 -08:00
Linux Build Service Account
af3c54713f Merge "ASoC: Add TWS+ mono mode support" 2018-12-12 08:52:01 -08:00
Linux Build Service Account
bed688a58c Merge "asoc: add support to get Direction of Arrival target scores" 2018-12-12 08:51:56 -08:00
Chaithanya Krishna Bacharaju
8c6a184189 dsp: add support to get Direction of Arrival target scores
Add support to get DOA tracking monitor data.
This is required to support SVA LED display feature with
FFECNS/FFNS enabled.

Change-Id: I7e39c2f3998fcc3f9ed0767c0090f862e1ba7539
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
2018-12-11 00:02:27 -08:00
Surendar Karka
d47fda4407 asoc: add support for afe_loopback_tx BE dai
Add dai driver and routing driver changes for
afe loopback BE. This BE is used to capture
EC reference data.

Change-Id: Ia57f335bde5f8a47de0030fbf1cdb784c8821e17
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
2018-12-10 23:58:04 -08:00
Manisha Agarwal
d99fac0210 ASoC: Add TWS+ mono mode support
Add support to enable mono mode when one TWS+ earbud is
connected. Change the encoder config when device switches from two
earbuds to single earbud.

CRs-Fixed: 2341876
Change-Id: I880aa6a2767d88e99be2d80afff0e5fbec94b8a4
Signed-off-by: Manisha Agarwal <maniagar@codeaurora.org>
2018-12-10 23:36:26 -08:00
Meng Wang
43bbb87652 asoc: Update file header to GPL-2.0-only
Update file header to GPL-2.0-only.

Change-Id: Ic1542a3209a5fe73c937a5b36491ede4a451936d
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2018-12-10 14:49:34 +08:00
Meng Wang
61af6849e9 ASoC: switch audio drivers to SPDX identifier
Switch audio drivers to SPDX identifier on msm-4.19.

Change-Id: Ic3f0230a516db251b8d81e8a7e73dbc04d66fe1b
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2018-12-07 15:47:32 +08:00
Dieter Luecking
fa7687b233 dsp: Update AFE driver to support 16 ch
AFE supports now MI2S interfaces with up to 16 channels.
Add new APR API functions to support this.
Add support for senary PCM/MI2S ports.

Change-Id: I18d48eed4e9a0476363220e959a0f254aa292056
Signed-off-by: Dieter Luecking <dieterl@codeaurora.org>
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2018-10-04 15:42:53 +02:00
Surendar Karka
b0dd21f1a3 dsp: add support for Slimbus 9 port in AFE
Add support for SLIMBUS_9 Rx and Tx ports in AFE
driver.

Change-Id: I7a21c06fd67984ef60e7d40b61a100ddc48371fc
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2018-10-03 03:47:47 -07:00
Ramprasad Katkam
250075f808 dsp: afe: add support for swr wakeup irq events
Add support for soundwire wakeup irq registration and event
notification from afe.

Change-Id: I97abe0a8bb571b997a52f90e0a0f57a26c714251
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-09-03 10:18:26 -07:00
Linux Build Service Account
6baee220f0 Merge "asoc: Update mixer control for island mode setting" 2018-08-02 08:23:15 -07:00
Aditya Bavanari
348a4a6d2a dsp: afe: Add support for Rx and TX codec dma interface
New codec dma interfaces have been introduced to connect
LPASS and Codec macros. This change is to add Rx and Tx
codec dma interface related updates to Q6 AFE native driver.

CRs-Fixed: 2281591
Change-Id: I2edbe904cd4c13801f06cdd7bd226a82db5d6d51
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2018-07-31 11:22:48 +05:30