Commit graph

1,552 commits

Author SHA1 Message Date
Aditya Bavanari
b2b9d42ce1 asoc: enable MDF initialization in qcs405 target
Enable MultiDSP framework (MDF) initialization during
qcs405 machine driver registration. Add MDF config
to enable compilation of MDF platform driver.

Change-Id: I227a0a7b3dd284dcf750c7b424b240f8c3cd1202
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2018-08-06 07:16:29 -07:00
Vatsal Bucha
6824cec26b Asoc: swr: Handle MBHC and IRQ interrupts from tx slave
Interrupts will be handled by slave driver. This
needs slave pointer to store virtual interrupt and
pass it as a parameter to handle_nested_irq.

Change-Id: I356102a04b4fda7e5863f809cd848d7a82b82f36
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2018-08-06 07:16:23 -07:00
Aditya Bavanari
542582cba2 dsp: support mdf memory share cmd
Add support for MultiDSP framework (MDF) memory
share command in q6core driver.

Change-Id: Iff0da10fe835f1fce50d2725960ded5c96237955
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2018-08-06 19:45:45 +05:30
Mangesh Kunchamwar
9c8f0f495f asoc: qcs405: Fix end to end playback on WSA
Fix set sampling rate for RX codec dma interface.

Change-Id: Id0e7719a3f6a6a815228f2327d4e11dd93722c07
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2018-08-03 15:46:04 +05:30
Linux Build Service Account
2e628184b9 Merge "asoc: bolero: Fix compile errors on rx/tx macro" 2018-08-02 23:45:43 -07:00
Linux Build Service Account
340b1f9238 Merge "asoc: codecs: delay codec irq handler during ssr" 2018-08-02 08:23:20 -07:00
Linux Build Service Account
6baee220f0 Merge "asoc: Update mixer control for island mode setting" 2018-08-02 08:23:15 -07:00
Linux Build Service Account
c026f4c520 Merge "ASoC: codecs: Add IRQ utils support based on regmap" 2018-08-02 04:53:15 -07:00
Xiaojun Sang
fe99d5b2d1 ASoC: q6asm: use session lock to avoid use-after-free
It is possible that audio session free and param set happens
simultaneously. Audio client might be freed while param set
is doing wait_event_timeout.
Use session lock to make sure client_free happens after param set.

Change-Id: I0947c309c8e445fa2e220680e329d88bd5fe2418
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
2018-08-02 17:38:17 +08:00
Laxminath Kasam
b7f823c4d1 asoc: bolero: Fix compile errors on rx/tx macro
Fix compilation issue on bolero rx/tx macros.

Change-Id: I1bb9da552d4719ed3417a56fe77f147cab92dc1d
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-08-02 13:23:11 +05:30
Surendar Karka
5628e8bc98 asoc: msm: update asm channel map for push pull mode
In noirq push pull mode channel map needs to be set during
ASM open shared io stream. Add support for no irq driver to
set channel map during ASM shared io stream open.

CRs-Fixed: 2267809
Change-Id: Ic1abfe60bb54b6529fbb4cf999e50196befaba46
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
2018-08-02 13:05:05 +05:30
Derek Chen
39955471cd asoc: add machine driver for sa8155 based automotive platform
Add machine driver for SA8155 based automotive platform,
which is based on mobile machine driver with addition of
extended support for TDM interfaces which is used for data
transfer between SA8155 SoC and the automotive COODEC H/W.
Changes include TDM backend and refactored automotive
frontend DAI links as well as kcontrol functions to
configure TDM slot and offset configuration.

Add 815x machine driver init wrapper to allow registration
of multiple machine driver in single module init call.

CRs-fixed: 2268293
Change-Id: I30eb22a7c5d6b2d963a5ea621b5a00e8dbc27fed
Signed-off-by: Derek Chen <chenche@codeaurora.org>
2018-08-01 21:54:59 -07:00
Vatsal Bucha
ec5eab5556 ASoC: codecs: Compile wcd irq as part of CONFIG_SND_SOC_WCD_IRQ
Add separate config for generic IRQ using regmap-irq and
compile it as a part of wcd_core ko.

Change-Id: I844ad72bf039c851a67d968e4b67c10105389932
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2018-08-01 11:04:49 -07:00
Linux Build Service Account
6891816204 Merge "asoc: codecs: Add compile rules for RX/TX macro modules" 2018-08-01 04:54:23 -07:00
Linux Build Service Account
9264698ee1 Merge "asoc: audio-ext-clk: Add support for multiple lpass clock sources" 2018-08-01 04:54:13 -07:00
Linux Build Service Account
057e0e85de Merge "asoc: qcs405: Add support for ep92 HDMI bridge chip" 2018-07-31 17:56:23 -07:00
Linux Build Service Account
2cb347bab2 Merge "asoc: qcs405: Add support for AFE SPDIF interfaces" 2018-07-31 09:34:20 -07:00
Vatsal Bucha
485ec2c851 ASoC: codecs: Add IRQ utils support based on regmap
Add irq utils support for tanggu codec. It is
based on regmap-irq framework.

Change-Id: I93ad71f41a8bf62313bee5b6c374809c93219f5c
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2018-07-31 03:44:52 -07:00
Linux Build Service Account
1213456337 Merge "asoc: qcs405: Fix cpu dai node of VI sense dailink" 2018-07-30 23:59:54 -07:00
Aditya Bavanari
7259ca6cfe asoc: audio-ext-clk: Add support for multiple lpass clock sources
In bolero, Rx and Tx macros require multiple
lpass clock sources. Update audio clock driver
to support multiple lpass clock instances as required for
Rx and Tx macros.

Change-Id: Ia7d766c52c8edb65f3ceb0585c6fd5a2fee6c5a6
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2018-07-31 11:23:59 +05:30
Laxminath Kasam
144eabc3ee audio: Add support for audio on msmsteppe
Update config file and make rules for msmsteppe
compilation.

Change-Id: I374a0725a7dd36edc9e04652fb07dc719310565c
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-07-31 11:23:46 +05:30
Aditya Bavanari
44eb89512e asoc: sm6150: Add machine driver support for SM6150
Add DAI(Digital Audio Interface) links, WSA, VA, Rx,
Tx macros and external codec (tavil) configuration
to support audio functionality on SM6150.

Change-Id: Ic4be86b3e675c80bd02a029fe92f3141824d5073
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2018-07-31 11:23:30 +05:30
Aditya Bavanari
e90adf0fe7 asoc: Add support for Rx and Tx codec dma interface
New codec dma interfaces have been introduced to
connect LPASS and Codec macros. Add playback
and capture DAIs for Rx and Tx codec.

CRs-Fixed: 2281591
Change-Id: I26ba49660d62accb96ea7b063e00b35917dfbdca
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2018-07-31 11:23:21 +05:30
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
Aditya Bavanari
1e84a93ac4 asoc: msm: routing: Add support for Rx and Tx codec dma interfaces
New codec dma interfaces have been introduced to connect LPASS and
Codec macros. This change is to add support routing for RX and TX
codec dma interface backends and their corresponding front ends.

CRs-Fixed: 2281591
Change-Id: I625c66352c61176cd82b801e97e9d565919e2715
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2018-07-31 11:19:10 +05:30
Linux Build Service Account
a6fd4af36f Merge "asoc: bolero: Add support for RX macro driver" 2018-07-30 19:43:44 -07:00
Derek Chen
07c6d1cd5f asoc: add multimedia21 frontend and routing support
Add multimedia21 frontend dai as well as capture
and playback routing support from/to AUXPCM and
TDM interfaces.

CRs-fixed: 2273671
Change-Id: I5c1e3a2a549015636f7160c3cfc3f15420c9727c
Signed-off-by: Derek Chen <chenche@codeaurora.org>
2018-07-30 14:12:29 -07:00
Mangesh Kunchamwar
07b8dc90a9 asoc: Update mixer control for island mode setting
Fix overwriting of port ID in island mode mixer control.

Change-Id: Ibf650e94519ffde7655e14a88ccc9042b3a3544b
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2018-07-30 23:17:12 +05:30
Laxminath Kasam
f8ef43ea45 asoc: codecs: Add compile rules for RX/TX macro modules
Add compile rules for RX and TX macro drivers.

Change-Id: Icede86ab2f1e75e3b10f445cf01e204647a48471
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-07-30 16:13:06 +05:30
Laxminath Kasam
bee0819ac7 asoc: bolero: Add mclk switching support for rx-macro
RX macro supports both native and non-native family
sample rates. Add changes to support both family frequencies.
As soundwire is active for few seconds after teardown of a session
and say next session is of different family(native) which needs switching
the clock at soundwire before configure native MCLK frequency.

Change-Id: I7f6652f1569cfeef5075d92bfd2beadc203b7036
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-07-30 16:12:44 +05:30
Laxminath Kasam
a7ecc58a35 asoc: bolero: Add support for RX macro driver
Add support for RX digital portion to register
as macro to bolero codec. ASoC dapm and dai
functionality of RX macro is associated to
bolero codec itself.

Change-Id: Idb924b33cfc5d258d2f876a31603e724ad9699e9
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-07-30 16:12:17 +05:30
Laxminath Kasam
989fccf875 asoc: bolero: Add support for TX macro driver
Add support for TX digital portion to register
as macro to bolero codec. ASoC dapm and dai
functionality of TX macro is associated to
bolero codec itself.

Change-Id: I1e222610d1750eccd6822d9901b17ec2ea509389
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-07-30 15:52:23 +05:30
Mangesh Kunchamwar
2eabdc7309 asoc: dsp: add check for integer overflow
Add check for integer overflow of user
supplied data for ADSP stream command.

CRs-Fixed: 2173850
Change-Id: Idde5665c770398629b1b0cfa2c18d3c023b0f9a2
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2018-07-27 21:32:46 +05:30
Ralf Herz
6d96dd41d3 asoc: qcs405: Add support for ep92 HDMI bridge chip
Add support for ep92 HDMI bridge chip for QCS405 platform

Change-Id: Ifa8a6e60cee69c88276b50d5f61b3e13fac82b60
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
2018-07-27 19:16:45 +05:30
Ralf Herz
ed30d2c223 asoc: config: Support for ep92 HDMI bridge device
Add config for ep92 device to be enabled in QCS405

Change-Id: I9f1529ff9917866986dd2ab81ac5ed9381592be0
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
2018-07-27 19:16:45 +05:30
Ralf Herz
5f30251f7e asoc: codecs: codec driver support for ep92 HDMI bridge
Codec driver to support Explore EP92A6 HDMI bridge chip.

Change-Id: I18132ee465180703a018a4e3c1f3d6418253410c
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
2018-07-27 19:16:38 +05:30
Laxminath Kasam
706e66e16e asoc: qcs405: Fix cpu dai node of VI sense dailink
In qcs405 machine driver, update cpu dai node name
to use same name as defined in dai q6 driver.

Change-Id: I21baf5445bb35c0cc8e030436cfd310c91168ea1
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-07-27 18:32:21 +05:30
Karthikeyan Mani
a1eb93864a asoc: msm-pcm-routing: add tdm echo reference route
Add route to connect echo reference mux to secondary
tdm port for tdm ec ref use cases.

Change-Id: I8ae7abadca6f19683d689299bc15c41e0e42472f
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2018-07-26 23:35:45 -07:00
Linux Build Service Account
b5e037bd5e Merge "asoc: codecs: Fix recovery behavior for CSRA66X0" 2018-07-26 21:56:25 -07:00
Linux Build Service Account
aceb532f6b Merge "ASoC: audio-ext-clk: Replace clock dummy ops" 2018-07-26 21:22:01 -07:00
Linux Build Service Account
7ecd09c315 Merge "dsp: q6afe: fix payload copy issue in module event" 2018-07-26 21:21:58 -07:00
Karthikeyan Mani
9bc7b45fc9 asoc: codecs: delay codec irq handler during ssr
Put the irq handler of codec device to sleep if device is
not up, to allow other threads to execute meanwhile the device
will be up.

Change-Id: Ic7421bdf236be52070b6d5fcd774b0641368bf2b
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2018-07-26 14:53:29 -07:00
Sudheer Papothi
68fa135810 ASoC: sm8150: change of_property_read_bool to type u32
of_property_read_bool prevents an overlay to set it false
as /delete-property/ is not supported in device tree overlay.
Use of_property_read_u32 to read property to allow it to
be changed in overlay device tree.

Change-Id: Ic1ae38d99999b3ff7e268a6360d55fc2624c0b6f
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-07-27 01:04:50 +05:30
Ralf Herz
bdc080d18f asoc: qcs405: Add support for AFE SPDIF interfaces
Add support for AFE SPDIF input and output interfaces for QCS405 platform

Change-Id: Ieacd0524046376f237b325d6dcab071c80a4b657
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
2018-07-25 21:35:45 +05:30
Ralf Herz
2257355fe4 asoc: Support compressed capture from AFE interfaces
Support compressed IEC61937 audio capture from AFE interfaces
with variable data packet lengths.

Change-Id: Iffd5a06ed5fe1a96f34e225d54fab660b21d2a48
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
2018-07-25 21:35:45 +05:30
Ralf Herz
c8701f776a asoc: Add support to handle SPDIF input and output interfaces
Support two SPDIF input and two SPDIF output interfaces in AFE.

Change-Id: Ie2eb97e85c3b21cb112282dbdf0049a271e7cc93
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
2018-07-25 21:35:45 +05:30
Ralf Herz
cc29b9e839 dsp: support for AFE SPDIF input interface
Support two SPDIF input and two SPDIF output interfaces in AFE.
Support 61937 compressed capture.

Change-Id: Ie71434eb53be798567a6240e0f4bf171aee305b8
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
2018-07-25 21:35:33 +05:30
Linux Build Service Account
1fdb5b3e3f Merge "asoc: qcs405: Update gain offset and mode for wsa8810" 2018-07-24 00:22:30 -07:00
Linux Build Service Account
97f7bd8b56 Merge "dsp: Remove wait for preload command" 2018-07-24 00:22:29 -07:00
Vidyakumar Athota
968be0ae5b dsp: q6afe: fix payload copy issue in module event
Payload is copied incorrectly in AFE module event callback.
Fix this issue with proper typecast of payload pointer.

Change-Id: I58642a054667912bcc01ae19c8c73d28c28b5589
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-07-23 18:20:29 -07:00