Commit graph

346 commits

Author SHA1 Message Date
Vignesh Kulothungan
fa497d2051 ASoC: dsp: Update audio effects driver to support Instance ID
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>
2018-03-04 23:22:34 -08:00
Vignesh Kulothungan
f20d5b7ea5 ASoC: dsp: Update ASM driver to support Instance ID
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>
2018-03-04 23:22:19 -08:00
Vignesh Kulothungan
916967ba22 ASoC: dsp: Update dap driver to support Instance ID
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>
2018-03-04 23:21:47 -08:00
Vignesh Kulothungan
60cc03517f ASoC: dsp: Update ADM driver to support Instance ID
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>
2018-03-04 23:21:10 -08:00
Vignesh Kulothungan
1ccc875287 ASoC: dsp: Update rtac driver to support Instance ID
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>
2018-03-04 23:07:03 -08:00
Vignesh Kulothungan
85073c0432 ASoC: dsp: Update AFE driver to support Instance ID
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>
2018-03-04 23:06:32 -08:00
Vignesh Kulothungan
cc3ff17850 ASoC: dsp: Update voice driver to support Instance ID
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>
2018-03-03 15:16:04 -08:00
Vignesh Kulothungan
a65e3010a2 ASoC: dsp: Update LSM driver to support Instance ID
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>
2018-03-03 15:14:56 -08:00
Vignesh Kulothungan
13d0d3561f ASoC: dsp: Add utility function needed for Instance ID
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>
2018-03-03 15:14:32 -08:00
Vignesh Kulothungan
5c10992ad9 ASoC: Expose APIs to get and set Instance ID support
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>
2018-03-03 15:14:11 -08:00
Linux Build Service Account
a2060b3fa2 Merge "ASoC: msmnile: enable MBHC support for msmnile target" 2018-03-03 07:19:53 -08:00
Linux Build Service Account
19bbaa8699 Merge "asoc: msm: Update routing and FE DAI drivers" 2018-03-03 04:24:02 -08:00
Linux Build Service Account
9ebd03032c Merge "ASoC: rmmod fixes for audio drivers" 2018-03-02 23:16:37 -08:00
Linux Build Service Account
b791b138c6 Merge "swr-wcd-ctrl: update soundwire slave logical device number" 2018-03-02 23:16:36 -08:00
Linux Build Service Account
fac3091df1 Merge "asoc: sdm660: fix tasha lite detection issue" 2018-03-02 23:16:35 -08:00
Linux Build Service Account
1fc2ec50db Merge "dsp: Add missing pdr interface definition." 2018-03-02 23:16:34 -08:00
Linux Build Service Account
3968f84b45 Merge "ASoC: wcd934x: Update OCP before HPH PA enable/disable" 2018-03-02 23:16:33 -08:00
Linux Build Service Account
3162dd4812 Merge "asoc: codecs: add a null pointer check in mbhc driver" 2018-03-02 23:16:32 -08:00
Linux Build Service Account
d156f031de Merge "dsp: codecs: use native API to configure PCM output block in multiaac" 2018-03-02 23:16:31 -08:00
Linux Build Service Account
ff7151c4fc Merge "asoc: codecs: Add mutex lock for CPE session" 2018-03-02 23:16:30 -08:00
Linux Build Service Account
03e66d8f5c Merge "dsp: afe: Add 9.6MHz clock in osr clk list" 2018-03-02 23:16:29 -08:00
Linux Build Service Account
d72f26167d Merge "ASoC: wcd-spi: ignore failure from clearing the CLK_REQUEST" 2018-03-02 23:16:28 -08:00
Linux Build Service Account
43667ec287 Merge "asoc: codecs: update IIR cofficient values before IIR band enable" 2018-03-02 23:16:27 -08:00
Linux Build Service Account
c637a41394 Merge "asoc: wcd-dsp-utils: add size check for WDSP ELF files" 2018-03-02 23:16:26 -08:00
Linux Build Service Account
1c4fdf20c6 Merge "asoc: wcd_cpe_core: add size check for WDSP ELF files" 2018-03-02 23:16:25 -08:00
Linux Build Service Account
29653431ab Merge "asoc: codecs: Fix tavil i2s max rate and cleanup" 2018-03-02 23:16:23 -08:00
Linux Build Service Account
e0a249812a Merge "asoc: codecs: Add i2c interface support for tavil" 2018-03-02 23:16:22 -08:00
Linux Build Service Account
30b55459e3 Merge "asoc: codecs: wcd9360: add delay after LDO_RXTX enable" 2018-03-02 23:16:21 -08:00
Linux Build Service Account
143c9d511c Merge "ASoC: AQT1000: Disable AQT1000 codec driver on msmnile target" 2018-03-02 23:16:19 -08:00
Linux Build Service Account
88427fb5bc Merge "asoc: codecs: add wcd9360_regmap to the core" 2018-03-02 23:16:19 -08:00
Linux Build Service Account
2ee562b5ee Merge "asoc: codecs: change mic bias enum names" 2018-03-02 00:51:03 -08:00
Vidyakumar Athota
a3030c162c asoc: codecs: wcd9360: add delay after LDO_RXTX enable
Add delay after LDO_RXTX supply is enabled as per
hardware register sequence.

Change-Id: I588d36c6c13ae8f545aba2b2cf6d1c73fde08d0a
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-03-01 16:28:05 -08:00
Laxminath Kasam
30ad751aac ASoC: rmmod fixes for audio drivers
For remove module(rmmod), update drivers
to cleanup resources and allow insert module
again without any issue.

Change-Id: Iddc6e5e11d986359afd3100bf3c5eab70cb1c1eb
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2018-03-01 16:02:06 +08:00
Rohit kumar
dd08b3db40 asoc: sdm660: fix tasha lite detection issue
Defer probe of soundcard registration until codec
driver registration is complete to fix detection of
codec version by machine driver.

Change-Id: Ia93404a85c98bd50e63015073284d5bf290a3f9f
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
2018-02-28 23:05:27 -08:00
Vidyakumar Athota
39a430ca29 swr-wcd-ctrl: update soundwire slave logical device number
Soundwire slave logical device number is not updated properly for
all the devices. Because of this, slave devices are pointed to wrong
register regmap. Update logical device number properly for all the
slave devices.

Change-Id: Ic480585301d8e53500714bc136e23e95ac52b13c
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-02-28 21:55:17 -08:00
Soumya Managoli
dd3fa1d1e9 dsp: Add missing pdr interface definition.
Fix for compilation error when pdr is not enabled.

CRs-Fixed: 2165343
Change-Id: Ic192d481b2e387b8c970c68832c87846329fe72d
Signed-off-by: Soumya Managoli <smanag@codeaurora.org>
2018-02-28 21:54:30 -08:00
Laxminath Kasam
3a4607028c ASoC: wcd934x: Update OCP before HPH PA enable/disable
Observe mute issue when PDR triggered while music playback
on HPH. As per HW recommendation, ensure OCP is turned off
before PA enable/disable. During PA enablement, turn off OCP
to avoid false OCP interrupts.

CRs-Fixed: 2167007
Change-Id: I0dc2cc6ded3416b635d14dc3b7aafa7997fe9a4d
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-02-28 21:52:12 -08:00
Ramprasad Katkam
76c5b45e7f asoc: codecs: add a null pointer check in mbhc driver
Add a missing function pointer null check condition in
mbhc driver to avoid null access during fast
insertion-removal.

Change-Id: I6aa64325cea6f7aa551115969d1e6ba184ec8d14
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-02-28 21:51:01 -08:00
Satya Krishna Pindiproli
a5e129f857 dsp: codecs: use native API to configure PCM output block in multiaac
Usage of q6asm_enc_cfg_blk_pcm() does not trigger PortSettingsChanged
event which is required for multi aac component.

Configure the PCM output block using q6asm_enc_cfg_blk_pcm_native()
which ensures that the event gets triggered.

CRs-Fixed: 2169255
Change-Id: I168aa0156c9233d81e99ca2aa6142f33ef10805c
Signed-off-by: Satya Krishna Pindiproli <satyak@codeaurora.org>
2018-02-28 21:50:21 -08:00
Bhalchandra Gajare
b466d183fb ASoC: wcd-spi: ignore failure from clearing the CLK_REQUEST
It is possible that the spi transfer that clears the clock request
on the slave may fail. In such case, it is not safe to assume that
the clock request is still enabled as it can cause failures for
further spi transfers if the clock request is cleared. Fix such
issues by resetting the clock state in the driver even the clock
request clearing fails.

CRs-Fixed: 2169087
Change-Id: I699e72b59b4cb049dfacaa190823796a545f2dbb
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
2018-02-28 21:49:38 -08:00
Vidyakumar Athota
9147e38e71 asoc: codecs: update IIR cofficient values before IIR band enable
Currently IIR coefficient values are written to HW everytime when
digital core comes out of power collapse. This increases playback
cold start latency. So update IIR coefficient values before IIR
band enable.

Change-Id: I57ad54b4674ed0a49fdfc55d77c519568f5a7893
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-02-28 21:48:57 -08:00
Vaishnavi Kommaraju
89d1a77802 asoc: codecs: Add mutex lock for CPE session
Add mutex lock to ensure atomic access to core handle
in CPE alloc and dealloc sessions.

CRs-Fixed: 2169403
Change-Id: I7e046f349cc56ee06706cf15651dac3fdfe9d9a6
Signed-off-by: Vaishnavi Kommaraju <vkommara@codeaurora.org>
2018-02-28 21:48:16 -08:00
Xiaoyu Ye
90fa02abb1 asoc: wcd-dsp-utils: add size check for WDSP ELF files
Add size check to make sure the data sizes from WDSP
ELF metadata and the split firmware ELF are the same.

Change-Id: I913087bc352850ceac2fcc07067ea8f480563ae2
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2018-02-28 19:00:28 -08:00
Xiaoyu Ye
ef9ded2e71 asoc: wcd_cpe_core: add size check for WDSP ELF files
Add size check to make sure the data sizes from WDSP
ELF metadata and the split firmware ELF are the same.

Change-Id: I7a1404cd15601d8d503e3355e6dc70e2949df72d
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2018-02-28 18:54:52 -08:00
Karthikeyan Mani
9f66f6f684 asoc: msm: Update routing and FE DAI drivers
Update routing driver with port mixer commands between
primary and secondary interfaces to enable AFE lopback
between them. Update FE DAI driver to add hostless FEs
for primary/secondary Auxpcm and secondary MI2S.

Change-Id: I792e1cf4e0600d3b4726624e29e73e67828a3935
Signed-off-by: Viraja Kommaraju <virajak@codeaurora.org>
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2018-02-28 18:53:00 -08:00
Karthikeyan Mani
0575b6733a dsp: afe: Add 9.6MHz clock in osr clk list
Add 9.6MHz osr clk frequency to support tavil
mclk request.

Change-Id: I79da9cf9ddb8588ca550956d9c07f751618741ac
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2018-02-28 18:50:46 -08:00
Karthikeyan Mani
f164580248 asoc: codecs: Fix tavil i2s max rate and cleanup
Change i2s max rate supported for tavil to 384000Hz.
Cleanup usage of intf_type to optimize differentiation
between slim and i2s.

Change-Id: If6451dae7c61e8f61be3d5a13549f98b382e5054
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2018-02-28 18:50:09 -08:00
Karthikeyan Mani
98d3d590bb asoc: codecs: enable i2s mode for tavil
Add support for tavil i2c access. Add audio
routings dapm widgets for data and control.

Change-Id: I96ebf7a5700b10f294f4fadfeeb21dab490a9313
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2018-02-28 18:49:19 -08:00
Karthikeyan Mani
57d3b66e17 asoc: codecs: Add i2c interface support for tavil
Add i2c driver node for tavil codec for
i2c communication with the codec.

Change-Id: Ie28dfeca102251265a5f50153c3ba98dae84dde2
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2018-02-28 18:41:59 -08:00
Vidyakumar Athota
aa0da7448d asoc: codecs: add wcd9360_regmap to the core
Add wcd9360_regmap file compilation in the wcd_core dlkm
to fix symbols mismatch.

Change-Id: I666efc51e9e0eccccc7c3e6c57a456045b37824c
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-02-28 15:19:50 -08:00