Commit Graph

376 Commits

Author SHA1 Message Date
Banajit Goswami
9e31a8a6e3 asoc: sdm845: check sound card status before sending AFE config
WCD codec must be enumerated before AFE configuration for
some of the features can be sent to DSP. This is because
as part of setting up this configuration, DSP tries to
access some codec register. These register accesses will
fail if codec is not enumerated already.
Add a check for Sound Card online state to confirm that WCD
codec has already enumerated before sending AFE configs.

Change-Id: I0b7e5eb49e4f6c6aee9cb142054e57eae592602b
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2017-12-11 21:05:19 -08:00
Karthikeyan Mani
5392d8052e asoc: codecs: modify gnd mic swap threshold for usb-c analog
To reduce time of usb-c analog headset detection, reduce
gnd mic swap threshold if usb-c is enabled. Use
existing threshold value otherwise.

CRs-Fixed: 2137077
Change-Id: Ic1d1f3a00c9034caaac45f2c80f018546a69ce59
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2017-12-11 21:03:01 -08:00
Preetam Singh Ranawat
0a087aff7b dsp: add LDAC encoder support
Add support for LDAC encoding in dsp to
enable LDAC encoder over split a2dp path.

CRs-Fixed: 2143086
Change-Id: Ia5ed981f5cd9cc61621d667362585ec7a7e64fa1
Signed-off-by: Preetam Singh Ranawat <apranawat@codeaurora.org>
2017-12-11 21:01:26 -08:00
Preetam Singh Ranawat
f746a87965 dsp: add scrambler support in DSP over split a2dp
Add support to enable scrambler in COP Packetizer module
over split A2DP path to fix 44.1Khz playback.

CRs-Fixed: 2143142
Change-Id: I52fec39e10a1c0939fd49d1e1303b03312544abf
Signed-off-by: Preetam Singh Ranawat <apranawat@codeaurora.org>
2017-12-11 21:00:31 -08:00
Preetam Singh Ranawat
ae532a03f1 asoc: add multiple sampling rates support for a2dp
Add support of 44.1Khz, 88.2Khz and 96Khz over split-a2dp path.

CRs-Fixed: 2143086
Change-Id: I05e7e947bec250c509f647718323bd208c46b2b2
Signed-off-by: Preetam Singh Ranawat <apranawat@codeaurora.org>
2017-12-11 20:57:18 -08:00
Yunfei Zhang
3efc4a220f ASoC: qdsp6v2: Add Audio EC Ref routing to LSM FEs
Add routings between LSM FEs and Audio EC Ref, or AFE port for
external Audio EC Ref will not be enabled during DSP SVA.

Change-Id: Ic70ee9479cd384d0226ac0e92a1824f92ec2d946
Signed-off-by: Yunfei Zhang <yunfeiz@codeaurora.og>
2017-12-10 18:29:47 -08:00
kunleiz
df5a00af69 ASoC: msm: qdsp6v2: Remove unused dapm routings
Clean up unused routings from dapm routing map.

CRs-Fixed: 2149819
Change-Id: I056e8ca14d75262844616c7c831bec450d809d48
Signed-off-by: kunleiz <kunleiz@codeaurora.org>
2017-12-08 19:32:47 +08:00
Aalique Grahame
e4fd7d5484 ASoC: Enable display-port for voice calls
Add mixer controls to enable voice calls over
display-port.

CRs-Fixed: 2151849
Change-Id: Id245b9c5b97d55c1db60e897954cc94eecd7f42d
Signed-off-by: Aalique Grahame <agrahame@codeaurora.org>
2017-12-08 03:31:26 -08:00
Karthikeyan Mani
776b1b32c2 asoc: codecs: stop mbhc before mbhc init and after ssr
In SSR init call stop mbhc before initializing mbhc
again, so that usbc analog deregisters the callback
with PMI notifier.

CRs-fixed: 2128532
Change-Id: I329f25172b5cc2d80b93918787f703d89c95062f
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2017-12-07 08:50:35 -08:00
Asish Bhattacharya
5faacb3a7e ASoC: allow drivers to compile both static and dynamic
Based on where the code is synced the driver should allow
both static and dynamic linked compilation.
Also remove __exit for modules loaded from another common
init/exit functions.

Change-Id: Ib58f152002aba3af4446f9bbd9b82c279212bd0a
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
2017-12-07 19:57:27 +05:30
Preetam Singh Ranawat
66f1f21285 asoc: add multiple sampling rates support for a2dp
Add support of 44.1Khz, 88.2Khz and 96Khz over split-a2dp path.

CRs-Fixed: 2153696
Change-Id: I69f20c7a9c465c974e847f42d754c69511138fbb
Signed-off-by: Preetam Singh Ranawat <apranawat@codeaurora.org>
2017-12-05 02:31:29 -08:00
Rohit kumar
9326b2df53 asoc: codecs: disable analog codec static supplies during suspend
Disable regulator supplies of analog codec during suspend
to reduce power consumption.

CRs-Fixed: 2132296
Change-Id: Ia4b690f01e83e929f8bf4d279454e2ff2e8655a2
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
2017-11-30 00:33:35 -08:00
Xiaoyu Ye
38fdba57ef ASoC: sdm845: update MI2S supported sampling rates
Update MI2S supported sampling rates in machine driver
to match the CPU DAI driver.

Change-Id: If6145e9f18182ab4621ffcd14716039fcc1bef6f
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-11-29 22:58:20 -08:00
Xiaoyu Ye
5071ff10c0 asoc: remove deprecated dummy functions in DAP modules
File "msm-ds2-dap-config.c" has corresponding dummy functions defined
for all of its functions to avoid compilation error when config flags
"CONFIG_DOLBY_LICENSE" and "CONFIG_DOLBY_DS2" are not selected for a
target. However, this file will not get compiled when these two flags
are not selected. Therefore, those dummy functions are useless and
should be removed.

Change-Id: Ic53a6a9d87d6fd56560af1aec3dc012d6486b42a
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-11-29 13:53:31 -08:00
Laxminath Kasam
52697fe50c ASoC: remove error prints and warning at bootup log
Cleanup for errors and warning print in audio drivers.

CRs-Fixed: 2080345
Change-Id: Ib473dad9226127930be7079063e7795a802ca279
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-11-29 02:18:40 -08:00
Linux Build Service Account
50a527cf07 Merge "asoc: codecs: add support for TX hybrid mode" 2017-11-24 23:27:33 -08:00
Linux Build Service Account
4add670f8a Merge "ASoC: wcd: Fix pop noise in HPH plus LO4 concurrent usecase" 2017-11-24 23:27:32 -08:00
Linux Build Service Account
67b3ea5933 Merge "ASoC: Remove excess logs in compress driver" 2017-11-24 23:27:31 -08:00
Karthikeyan Mani
00d55efdfb asoc: codecs: add support for TX hybrid mode
Add support for analog mic TX hybrid mode to allow
audio catpure in high performance at the same time
achieving lower power.

CRs-Fixed: 2136385
Change-Id: I08b90a26d6b6e4761ff17dec84bf58f8d437d908
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2017-11-22 22:49:03 -08:00
Vatsal Bucha
e9a5007c9f ASoC: wcd: Fix pop noise in HPH plus LO4 concurrent usecase
Pop sound happens after start playback on HPH when
ultrasound playback on LO4 is enabled.
This is because CnP is sequence dependent and enabling
design blocks in specified order is causing minimum CnP.

CRs-Fixed: 2100346
Change-Id: If10f9013cc1a2aa61fe9c719d3190f2df0b00950
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-11-20 21:14:23 -08:00
Linux Build Service Account
ccde4f27a1 Merge "asoc: wcd934x: set bus down flag right when notification reaches" 2017-11-20 10:52:52 -08:00
Banajit Goswami
15fffc6b9b asoc: wcd934x: set bus down flag right when notification reaches
Set bus_down_in_recovery flag as soon as possible when
BUS down notification reaches codec driver. This is to
avoid any unwanted slimbus transaction while BUS is still
not recovered.

Change-Id: I77917975372bf51e6aa881cbfc63c479478db375
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2017-11-20 03:19:40 -08:00
Linux Build Service Account
e722894df5 Merge "ASoC: msm: qdsp6v2: Remove unused FE DAIs" 2017-11-17 02:33:45 -08:00
Linux Build Service Account
4653d96d9f Merge "ASoC: wcd934x: reset ASRC after playback" 2017-11-16 17:37:26 -08:00
Linux Build Service Account
57a2dd58fe Merge "asoc: sdm845: update and affine qos value" 2017-11-16 17:37:26 -08:00
Linux Build Service Account
44c7f62e5f Merge "ASoC: sdm845: fix clock refcount for MI2S/AUXPCM shutdown" 2017-11-16 17:37:23 -08:00
Linux Build Service Account
34fc964d12 Merge "ASoC: wcd: Fix pop noise when device switch" 2017-11-16 07:37:41 -08:00
Walter Yang
09d4168c79 ASoC: wcd934x: reset ASRC after playback
Reset ASRC after audio playback is completed to clear
the FIFO and avoid any noise being generated.

CRs-Fixed: 2129994
Change-Id: Ie45796e1bd68d5a8bd790490a65520358f26b811
Signed-off-by: Walter Yang <yandongy@codeaurora.org>
2017-11-16 02:54:55 -08:00
Banajit Goswami
f6bc7130d2 asoc: wcd9xxx-core: avoid slimbus read/write during ADSP SSR
This reverts commit 40bc50d768038c04f8c1 ("mfd: wcd9xxx-core:
Synchronize codec down and reset calls from slimbus.").
This is to make sure that the dev_up flag is set right
after device_down is called from Slimbus after ADSP SSR.
This flag helps make sure that all read/write calls over
slimbus are blocked until ADSP and Slimbus are fully up
post-SSR.

Change-Id: I5595a23a0b51f2ca392ddfb5773b057204185b54
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2017-11-16 02:53:26 -08:00
Haynes Mathew George
c3f9814e4f asoc: sdm845: update and affine qos value
Fix qos value to 300 micro seconds to prevent core
from going into low power mode when low latency
session is active. Also pin this qos to core 1
& core 2 where audio and glink threads are
running to let other cores to go to low power
modes if possible.

Change-Id: I46d356c384fd8d02a9a3b336a113200171bf25a0
Signed-off-by: Haynes Mathew George <hgeorge@codeaurora.org>
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
Signed-off-by: Aniket Kumar Lata <alata@codeaurora.org>
2017-11-16 02:52:18 -08:00
kunleiz
8a60b82da9 ASoC: msm: qdsp6v2: Remove unused FE DAIs
Clean up unused FE DAIs and remove duplicate
routings from dapm routing map for MI2S_RX_VOICE
Mixer.

CRs-Fixed: 2001153
Change-Id: I2c9bd1255331d83b1901915259fe61d287f682fc
Signed-off-by: kunleiz <kunleiz@codeaurora.org>
2017-11-16 02:51:40 -08:00
Vatsal Bucha
0527c56a87 ASoC: Remove excess logs in compress driver
Excess logs are printed in msm_compr_pointer during ADSP SSR.
This causes failure of some interrupts to occur which
results in SSR failure. Logs can be reduced by applying ratelimit.

CRs-Fixed: 2128011
Change-Id: I0d3d82bf52ea307cdf719f97c4907a2d376580c1
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-11-16 02:51:31 -08:00
Linux Build Service Account
abebf0b484 Merge "ASoC: codecs: sdm660_cdc: Fix HPH CnP issue on sdm660-internal" 2017-11-16 02:19:13 -08:00
Linux Build Service Account
4eaf88bd5e Merge "ASoC: wcd: set analog gain mode to manual when compander is off" 2017-11-16 02:19:12 -08:00
Vatsal Bucha
1b70f5b02d ASoC: wcd: Fix pop noise when device switch
Pop is observed during switch from playback in native mode
to voice call and vice-versa. This is resolved by mclk
reset to non-native mode before hph path powers up.

CRs-Fixed: 2117960
Change-Id: Ic554c3b2af24dac3ae94b5a239559e5d11e98271
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-11-15 23:00:47 -08:00
Xiaoyu Ye
f6853a2010 ASoC: sdm845: fix clock refcount for MI2S/AUXPCM shutdown
For MI2S and AUXPCM shutdown, if clock disable is failed,
do not bother to re-increment clock reference. Otherwise,
next time when startup is called, clock enable will not
be called again, so use case will not work.

Change-Id: I5ce4590d2a2030f9d00f1dba9577396f7685a87b
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-11-13 03:03:10 -08:00
Linux Build Service Account
7cb56be566 Merge "ASoC: Add support for qcs605 for dlkm" 2017-11-10 17:24:16 -08:00
Linux Build Service Account
a4ced05898 Merge "ASoC: codecs: sdm660_cdc: Remove lb_mode mixer var from sdm660" 2017-11-10 17:24:16 -08:00
Linux Build Service Account
36b6c5d5e1 Merge "ASoC: codecs: sdm660_cdc: Fix kernel panic on sdm660-internal" 2017-11-10 17:24:15 -08:00
Linux Build Service Account
51909136cd Merge "ASoC: wsa: add mixer ctl to set boost value" 2017-11-10 17:24:14 -08:00
Linux Build Service Account
5ef0c002fa Merge "ASoC: codecs: add mixer ctls to control boost level" 2017-11-10 17:24:13 -08:00
Laxminath Kasam
6bb3a96984 ASoC: Add support for qcs605 for dlkm
Update make files to extend dlkm support for qcs605

Change-Id: Icf736fb66ca12966f4c6cd72bb906eb32899868a
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-11-09 14:58:12 +05:30
Vatsal Bucha
d4d03c03ef ASoC: codecs: sdm660_cdc: Remove lb_mode mixer var from sdm660
lb_mode var is redundant for sdm660_cdc.
Loopback works fine without this var also.

CRs-Fixed: 2101423
Change-Id: I727da02660a0f1d6ee5582fc2f2c0a8f6cd59bc1
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-11-07 04:09:07 -08:00
Vatsal Bucha
a868bb9d14 ASoC: codecs: sdm660_cdc: Fix HPH CnP issue on sdm660-internal
Pop is observed after start playback on hph.
This is because both compander channels are not enabled
at the same time which differs from ideal sequence.
Amplitude of pop gets reduced after
corresponding change is made.

CRs-Fixed: 2101404
Change-Id: Iba2b8a809fd3b53f0c180ce28ac5668d7635fb24
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-11-07 17:26:18 +05:30
Vatsal Bucha
7be67e5fba ASoC: wcd: set analog gain mode to manual when compander is off
If compander DRE isn't turned on, ensure analog gain mode
is set to manual mode. This also resolves low volume
at one channel.

CRs-Fixed: 2102126
Change-Id: Id29b7055fe4f7fa7b3853c26770df38d10539d8c
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-11-07 17:25:41 +05:30
Vatsal Bucha
3249ff278d ASoC: codecs: sdm660_cdc: Fix kernel panic on sdm660-internal
Kernel panic is observed during SSR. This is because
ADSP does not get sufficient time to bring up LPASS after SSR.
An increase in ADSP Ready timeout resolves the issue.

CRs-Fixed: 2101404
Change-Id: Ia7d1ecde7a713b4d71b2a4ebb1f85a38b8fa28b5
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-11-07 02:52:31 -08:00
Xiaojun Sang
fa21d8cd20 ASoC: wsa: add mixer ctl to set boost value
Add a new mixer ctl to set WSA boost value for
speaker protection v3. Boost value for different
stages are packed together.

Change-Id: Ie80d7bea4d3af00b74935f8b680e72ee967717f6
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
2017-11-07 01:37:07 -08:00
Xiaojun Sang
24daae8895 ASoC: codecs: add mixer ctls to control boost level
Add new mixer ctls to control max boost state level
for speaker protection V3.

Change-Id: If967de46955f6dc8692986503daea68ce105f642
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
2017-11-07 01:36:52 -08:00
Rohit kumar
b242df4632 asoc: dai-q6: update quinary mi2s dai id to 4
Update quinary mi2s dai id to 4 and secondary mi2s playback
sd1 dai id to 5. Also update index of mi2s_config_controls
for primary, secondary, tertiary and quaternary mi2s.

CRs-Fixed: 2133890
Change-Id: I00997b79a148cf50b2a3f9acf6e44fe603e5c944
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
2017-11-07 01:18:26 -08:00
Rohit kumar
20df545466 asoc: sdm660: update cpu dai id for quinary mi2s interface
Update quinary mi2s cpu dai id to 4 for sdm670. This is
required for sending correct afe port id for quin mi2s
and keep all MI2S interfaces in sequence.

CRs-Fixed: 2133890
Change-Id: I0ab35f2d97858f355da577076a5a1e3f438a1bab
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
2017-11-07 01:17:38 -08:00
Laxminath Kasam
8b1366a648 Audio: DLKM support for all audio modules
Switch to DLKM for all audio kernel modules.

Change-Id: I6a96023a21f655f873531af9ace81f2b01eb0f58
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-11-02 13:42:09 +05:30
Linux Build Service Account
97c9da7a1e Merge "ASoC: codecs: sdm660_cdc: Fix mute if compander is disabled" 2017-10-30 11:35:08 -07:00
Linux Build Service Account
30fe05e7ba Merge "audio-lnx: asoc: sdm660: fix rmmod issue with gpio_free" 2017-10-25 22:31:50 -07:00
Linux Build Service Account
1cb9edcc98 Merge "audio-lnx: asoc: sdm660: fix rmmod issue with audio notifier" 2017-10-25 22:31:50 -07:00
Linux Build Service Account
953c2b88b1 Merge "dsp: add support for aptX dual mono" 2017-10-25 09:56:58 -07:00
Linux Build Service Account
3d0e2dec05 Merge "ASoC: sdm845: update TDM configurations for TX and RX" 2017-10-25 09:56:57 -07:00
Linux Build Service Account
73780981b5 Merge "ASoC: codecs: sdm660_cdc: Fix pop noise issue at DMIC" 2017-10-25 09:56:56 -07:00
Linux Build Service Account
d36dc15e53 Merge "asoc: sdm660: update cpu_dai_name for quin_tdm" 2017-10-25 09:56:55 -07:00
Linux Build Service Account
75de9ef794 Merge "audio-lnx: asoc: codecs: Fix rmmod issues with wcd9335" 2017-10-25 09:56:53 -07:00
Linux Build Service Account
0933274fcb Merge "audio-lnx: Add support to build sdm670 machine driver as module" 2017-10-25 09:56:53 -07:00
Vatsal Bucha
523325316e ASoC: codecs: sdm660_cdc: Fix mute if compander is disabled
Compander disable sequence does not get called
after headphone playback on FM. This results
in mute at one channel. Compander clock
should be disabled at the end to resolve the mute.

CRs-Fixed: 2102126
Change-Id: Ia47fb1c393db255b52a965173a769896768f245e
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-10-25 18:20:34 +05:30
Meng Wang
c4ef3b5eca audio-lnx: asoc: sdm660: fix rmmod issue with gpio_free
Check if GPIO is valid before free to avoid crash.

Change-Id: Ie052e5ff1776ad57ae9c1d0f00873ba29e11f78f
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2017-10-19 18:22:56 -07:00
Meng Wang
431f0b1a3a audio-lnx: asoc: sdm660: fix rmmod issue
Remove msm_free_auxdev_mem to avoid kernel panic.

Change-Id: I0a60cc33acf942c33273d86d9ef24dff6bd3a1b6
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2017-10-19 18:22:53 -07:00
Meng Wang
c444ff7b6a audio-lnx: asoc: sdm660: fix rmmod issue with audio notifier
Deregister sound card with audio notifier when removing driver to
avoid crash.

Change-Id: I4f22fefce519e8dab25901337fdf2e62044090ed
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2017-10-20 09:21:56 +08:00
Xiaoyu Ye
04d1931018 ASoC: sdm845: update TDM configurations for TX and RX
Update TDM configurations for primary, secondary, and
tertiary TDM interfaces.

Change-Id: I1729ad4d8563063802dfae9128e290d58ad43497
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-10-18 11:24:58 -07:00
Linux Build Service Account
2e3e81889d Merge "ASoC: msm: qdsp6v2: Add S24_3LE support to DP driver" 2017-10-18 04:49:41 -07:00
Meng Wang
3b19449547 audio-lnx: asoc: codecs: Fix rmmod issues with wcd9335
Remove any child devices associated with this
codec driver so that rmmod and insmod again will
run without issues.

Clear MBHC setting during tasha_remove.

Change-Id: Icad9b2ad21601525c68c5d151cd664aa6060e911
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2017-10-18 10:27:25 +08:00
Meng Wang
f74efd8eb1 audio-lnx: Add support to build sdm670 machine driver as module
When CONFIG_SND_SOC_EXT_CODEC/CONFIG_SND_SOC_INT_CODEC is set to m not y,
"ifdef CONFIG_SND_SOC_EXT_CODEC/CONFIG_SND_SOC_INT_CODEC"
would be false which would cause init functions as dummy functions.
Change to "if IS_ENABLED" and When CONFIG_SND_SOC_EXT_CODEC/
CONFIG_SND_SOC_INT_CODEC is set to y/m, both would set the
condition to true.
Change Makefile to compile machine driver for internal/external
codec as one module.

Change-Id: Ib72f95a24e8a4e657a1e9efc655f92a397b44d32
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2017-10-18 10:19:08 +08:00
Xiaoyu Ye
5e7ef9c922 ASoC: add support to configure clock frequency for all TDM interfaces
Enable all five TDM interfaces to configure clock frequency during
the runtime.

Change-Id: I066ea2034509dee2350205ee887dd3eeb6f5389b
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-10-17 16:47:34 -07:00
Rohit kumar
091ff79031 asoc: sdm660: update cpu_dai_name for quin_tdm
Update cpu_dai_name of quin_tdm from tdm group id to
port id for sdm670 internal and external codec machine
driver to fix soundcard registration issue.

Change-Id: I2f7ed4ea983c1d457c4d2940c33f5bb7440ddee6
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
2017-10-17 12:22:38 +05:30
Ben Romberger
8e4368d3dd ASoC: msm: qdsp6v2: Add S24_3LE support to DP driver
Add support for HDMI and DP for S24_3LE bit format.
This allows playback of 24bit audio on the external
device.

Change-Id: Ia6e1148b2e5d13cc0ff6f2372d61c83c3e704255
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
2017-10-13 13:22:31 -07:00
Preetam Singh Ranawat
899b78bd18 dsp: add support for aptX dual mono
Send sync mode parameter to DSP for supporting aptX dual mono.

Change-Id: I1c43b0dec6661a77644e28df45ca6c1a182745de
Signed-off-by: Aniket Kumar Lata <alata@codeaurora.org>
2017-10-11 13:43:44 -07:00
Vatsal Bucha
2e3e0f2180 ASoC: codecs: sdm660_cdc: Fix pop noise issue at DMIC
Pop noise occurs during switch from handset to speaker mode
during voice call. This is because sufficient delay
is not provided for tx to unmute. A delayed workqueue
that will do unmute at the end solves the issue.

CRs-Fixed: 2101423
Change-Id: I1ae7068b23158bb8428d5b96e9f65fb05a67ff7e
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-10-11 19:58:38 +05:30
Linux Build Service Account
58f31c8a93 Merge "dsp: add quinary interface support in q6afe" 2017-10-10 11:39:20 -07:00
Linux Build Service Account
c876a3cd4b Merge "ASoC: Modify name for Tertiary MI2S RX and TX" 2017-10-10 11:39:19 -07:00
Linux Build Service Account
6825c6717e Merge "asoc: codecs: Add support to compile internal codec as module" 2017-10-06 03:35:17 -07:00
Linux Build Service Account
5ffdd5b2ec Merge "asoc: wcd934x: update micbias noise filter resistance" 2017-10-06 03:35:16 -07:00
Linux Build Service Account
50091ca0c6 Merge "ASoC: wcd-mbhc: update electrical removal detection logic" 2017-10-06 03:35:15 -07:00
Linux Build Service Account
1228153fca Merge "asoc: sdm660: configure mi2s gpios from machine driver" 2017-10-06 03:35:14 -07:00
Rohit Kumar
c08b14f78c dsp: add quinary interface support in q6afe
Add support for quinary interfaces in q6afe. Also,
fix routing for quinary tdm rx port.

Change-Id: I5db68da1cc8bc17bc5e7b743282abf83fb100bbc
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
2017-10-06 10:52:17 +05:30
Karthikeyan Mani
e87298f55a asoc: wcd934x: update micbias noise filter resistance
Update micbias noise filter resistance for better performance
during audio capture.

CRs-Fixed: 2055467
Change-Id: I56eb08ca9785d36cf577f32297f2c719224f0f65
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2017-10-04 12:10:49 -07:00
Rohit Kumar
af88e4c53b asoc: sdm660: configure mi2s gpios from machine driver
Add support to configure MI2S gpios from machine
driver.

Change-Id: I561fdc775c63fd7b31d41a3053956d1643bea566
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
2017-10-04 13:53:33 +05:30
Rohit Kumar
804f26b95f asoc: sdm660: add sclk and mclk support for quinary interfaces
Add sclk and mclk support for quinary MI2S interfaces for
sdm660. Also, update MCLK IDs for secondary and quaternary
MI2S.

Change-Id: If6271224caffbf1623939d409e3e031d5a0c8423
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
2017-10-04 10:03:02 +05:30
Linux Build Service Account
64c321d351 Merge "ASoC: wcd-mbhc: add support to read new headset detection parameters" 2017-10-03 09:44:23 -07:00
Rohit Kumar
4b5bd80a91 asoc: codecs: Add support to compile internal codec as module
Separate compilation of analog and digital codec and add
support to compile them as dynamic module.

Change-Id: I81f01bf60aef71f67e025fa4ff1ba805a960e61d
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
2017-10-03 06:44:15 -07:00
Linux Build Service Account
152c7e2bf0 Merge "asoc: sdm660: add support for quinary interfaces" 2017-09-28 09:37:22 -07:00
Vatsal Bucha
8968c5f2a2 ASoC: Modify name for Tertiary MI2S RX and TX
Change name from "TERTIARY_MI2S" to "TERT_MI2S" for RX and TX
in order to maintain consistency with other Mi2S back-ends.

CRs-Fixed: 2075701
Change-Id: I52116df27a780e42de4a6b3d74249f77d311d8d4
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-09-28 15:53:19 +05:30
Meng Wang
6f90162f22 ASoC: wcd-mbhc: update electrical removal detection logic
when moisture is in jack, removing of the plug result in
electrical removal interrupt. So, update electrical interrupt
handler to handle mechanical removal based on moisture status.

CRs-Fixed: 2058106
Change-Id: I9cfbfbaf04783f0edcadb14d7828759020745289
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2017-09-28 17:01:15 +08:00
Linux Build Service Account
7deefbcc90 Merge "asoc: msm: add support for quinary interfaces in dai and routing driver" 2017-09-26 23:17:34 -07:00
Linux Build Service Account
58262a8d49 Merge "asoc: send effect config based on apptype" 2017-09-26 23:17:34 -07:00
Rohit Kumar
d17544899a asoc: sdm660: add support for quinary interfaces
Add support for Quinary MI2S, AuxPCM and TDM interfaces
in sdm660 machine driver.

Change-Id: I2dad713a3286499e9b76206b28a82b56638949a4
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
2017-09-26 01:37:48 -07:00
Rohit Kumar
a507793028 asoc: msm: add support for quinary interfaces in dai and routing driver
Add support for dais and routing for Quinary MI2S, AUXPCM and TDM
interfaces.

Change-Id: I50c3099a658998bab805c4c6a5aa447e85f3e7c6
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
2017-09-26 01:37:41 -07:00
Linux Build Service Account
a86c405d15 Merge "ASoC: wsa881x: fix wsa881x speaker damage" 2017-09-24 13:00:49 -07:00
Linux Build Service Account
f570bf1500 Merge "ASoC: msm: fix compilation errors when CONFIG_QTI_PP is disabled" 2017-09-20 23:35:09 -07:00
Linux Build Service Account
42f62e9d1b Merge "ASoC: add routing entries for Multimedia10 and Multimedia16" 2017-09-20 17:55:33 -07:00
Linux Build Service Account
7e0d1ab80a Merge "ASoC: sdm845: add support to enable QUAT TDM TX path" 2017-09-20 17:55:32 -07:00
Linux Build Service Account
93218c59be Merge "ASoC: msm: qdsp6v2: add support to enable 4-channel QUAT TDM recording" 2017-09-20 17:55:29 -07:00
Linux Build Service Account
038538045b Merge "ASoC: sdm845: add support to update TDM CLK frequency at runtime" 2017-09-20 17:55:26 -07:00
Linux Build Service Account
e2c3eee3ae Merge "ASoC: add support to configure TDM dai clk attribute and clk freq" 2017-09-20 17:55:26 -07:00
Linux Build Service Account
24f165a616 Merge "ASoC: wcd-spi: initialize local variable 'status'" 2017-09-20 17:55:24 -07:00
Linux Build Service Account
6d61dadc8f Merge "asoc: initialize L/R/C gain for both mono/stereo playback" 2017-09-20 17:55:23 -07:00
Vatsal Bucha
83716b9a69 ASoC: wsa881x: fix wsa881x speaker damage
wsa881x speaker damage has been reported due to DC at
wsa output. Add a register setting which will reset
the soundwire when there are any DC or synchronization issues.

CRs-Fixed: 2086505
Change-Id: Id2bfb876a5bace891befa613153a88ee54033d76
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-09-20 17:49:45 +05:30
Meng Wang
4d6a6bef32 ASoC: wcd-mbhc: add support to read new headset detection parameters
To config different headset detection parameters for different hardware, add
two new headset detection parameters in device tree and read it in mbhc driver.

Change-Id: I10457b7d5eae54eba8a4cd273885a63ebad3ccb3
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2017-09-19 09:48:34 +08:00
Vikram Panduranga
ee9c03a81e asoc: send effect config based on apptype
Add support to configure a specific module and its parameter on adm
based on apptype. This can be used to dynamically configure a module
provided by application.

Change-Id: Iccfee192b0dec505bbb5f65a251e0dd12432fe59
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
2017-09-18 14:48:33 -07:00
Xiaoyu Ye
a63f8be985 ASoC: msm: fix compilation errors when CONFIG_QTI_PP is disabled
Add dummy static inline functions for feature QTI_PP to fix compilation
erros for undefined function when flag 'CONFIG_QTI_PP' is not defined.

Change-Id: I24c29636755f44a80b2a0267e0dbb8f72d6a3c9d
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-09-15 17:20:58 -07:00
Vikram Panduranga
016c49fa46 ASoC: add routing entries for Multimedia10 and Multimedia16
Add missing FE to BE links for Multimedia10 and Multimedia16
which can resolve FE to BE routing failures.

Change-Id: I9f889d88fe520f7efa83c2e2058995fa955c82cb
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
2017-09-15 11:47:14 -07:00
Xiaoyu Ye
f48af4ff1f ASoC: sdm845: add support to update TDM CLK frequency at runtime
TDM CLK frequency needs to be updated at runtime to use the correct
CLK setup.

Change-Id: Ib42fedca3cbf41b85ca121ca04cc994bf8ad4d39
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-09-14 12:32:39 -07:00
Linux Build Service Account
9772575504 Merge "ASoC: add SLIM_7_TX routing for Multimedia10" 2017-09-14 04:20:55 -07:00
Linux Build Service Account
4b813164fc Merge "dsp: add CELT encoder support" 2017-09-14 04:20:54 -07:00
Linux Build Service Account
116595df77 Merge "asoc: remove unused audio files" 2017-09-14 04:20:53 -07:00
Cong Tang
2b6adc8ba1 ASoC: add support to configure TDM dai clk attribute and clk freq
TDM dai driver supports optional clk attribute configuration and
clk freq update. To configure TDM interface as PCM mode, the clk
attribute should be Q6AFE_LPASS_CLK_ATTRIBUTE_INVERT_COUPLE_NO.
Implement set_sysclk callback function to update Quaternary TDM
RX and TX clk freq.

Change-Id: I41edaa8d99325e9582e04ddb81a6ad5b5e4435bc
Signed-off-by: Cong Tang <congt@codeaurora.org>
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-09-13 17:42:16 -07:00
Xiaoyu Ye
1cb5ce084c ASoC: msm: qdsp6v2: add support to enable 4-channel QUAT TDM recording
Add the corresponding 'cap_mask' to support 4 slots configuration in
CPU DAI driver to enable 4-channel QUAT TDM recording feature on SDM845.

Change-Id: I137d874b00fadde7513ab6c843f61becc74feac1
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-09-12 18:30:03 -07:00
Xiaoyu Ye
a6b2a53173 ASoC: sdm845: add support to enable QUAT TDM TX path
Add support to update QUAT TDM TX HW parameters and
back end DAI link ops to enable QUAT TDM recording
feature on SDM845.

Change-Id: If0fccafaf563f9453559a45a59300a5bec75f449
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-09-12 18:03:50 -07:00
Laxminath Kasam
da488bf1ff asoc: remove unused audio files
Update to remove unused driver files
from techpack audio.

CRs-Fixed: 2105780
Change-Id: I1dcf1c6e75838863eee0556f7919068dfc47772d
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-09-11 15:16:14 +05:30
yidongh
98526effb3 asoc: initialize L/R/C gain for both mono/stereo playback
When there's a dynamic channel change from mono to stereo,
volume burst is observed because center channel gain for
stereo is not initialized. Initialize center channel gain
for both mono and stereo playback.

CRs-Fixed: 2095081
Change-Id: I02254b5696a17e2792ea26a2265ab01326f5cf9e
Signed-off-by: Yidong Huang <yidongh@codeaurora.org>
2017-09-10 19:47:23 -07:00
Vikram Panduranga
72863154a8 ASoC: add SLIM_7_TX routing for Multimedia10
Add missing FE to BE link for Multimedia10.

Change-Id: Ibf9a80c942107b1f68b5954b21f87d4f7494b1fc
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
2017-09-08 16:44:08 -07:00
Xiaoyu Ye
e908ba91db ASoC: wcd-spi: initialize local variable 'status'
Variable 'status' is used without initialization.
Initialize it to the right value.

Change-Id: I7f43d8905d8192e5f308e9fd00a52eb531f2f698
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-09-08 11:34:45 -07:00
Karthikeyan Mani
5eaced6d70 ASoC: codecs: wcd934x: Fix slimbus overflow
Remove MCLK_CONTROL and FS_CNT_CONTROL from
the list of volatile registers so that regmap
sync happens for these registers when coming
out of power collapse. These clock registers
need to be synced otherwise codec state is not
restored correctly after power collapse.

CRs-fixed: 2053506
Change-Id: I9b5385a357f9ad05ad085603410704e916e3985e
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2017-09-07 10:36:06 -07:00
Preetam Singh Ranawat
5402849018 dsp: add CELT encoder support
Add CELT encoder support to enable audio broadcast over split a2dp.

Change-Id: If0d927913c5e525ff1cebf857323ab70be2122a1
Signed-off-by: Preetam Singh Ranawat <apranawat@codeaurora.org>
2017-09-06 03:58:45 -07:00
Laxminath Kasam
8f7ccc2e6f audio-lnx: Add latest snapshot for audio drivers.
Propagate the changes based on latest snapshot
for audio kernel source tree at below cutoff of
kernel msm-4.9 -
(040750bfa78 -
 "Revert "ARM: dts: msm: Add DT node for aop-qmp
  clock controller on SDM845 v2"")

CRs-Fixed: 2104096
Change-Id: I0927c40b3a188dbf892e7ec4c1c7810953724929
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-09-04 20:12:56 +05:30
Shiv Maliyappanahalli
8b3bdea209 asoc: codecs: fix compilation error for wcd codec
The previous commit fb24ad8485a assigns obj-y with
msm_hdmi_codec_rx.o instead of appending, thus giving
compilation error as previously assigned object files
are removed.
Fix by appending obj-y with msm_hdmi_codec_rx.o instead
of assigning.

Change-Id: I7c5ea5627e2e1888e3fc0b53a6650ab64b9a29a8
Signed-off-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
2017-08-31 18:19:03 -07:00
Shiv Maliyappanahalli
24d1c0878a asoc: codecs: add object to compile audio hdmi codec driver
HDMI codec driver is not compiling as the corresponding object
file is not set in the makefile.
Add object file to SND_SOC_MSM_HDMI_CODEC_RX config.

Change-Id: I6068f551db357e5bfa73ff5b51014347f38b925c
Signed-off-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
2017-08-31 15:48:28 -07:00
Laxminath Kasam
38070be30b audio-lnx: Add latest snapshot for audio drivers.
Propagate the changes based on latest snapshot
for audio kernel source tree at below cutoff of
kernel msm-4.9 -

(aed56b2df75 - "drm/msm/sde: update te vsync enable sequence change")

Change-Id: I7ed5102146986b81e5cb9ca55432360b3549b60c
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-08-24 03:53:42 -07:00
Laxminath Kasam
7e057cf8cd audio-lnx: Enable compilation for sdm670 audio
Enable compilation for sdm670 audio. Update
for both internal and external codecs.

Change-Id: I030837a2c0180a5a31d0ab786ad5de607027050f
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-08-18 16:56:13 -06:00
Asish Bhattacharya
34504581a0 audio-lnx: Add snapshot of audio drivers from below commit.
(1996ec83a45: "ARM: dts: msm: Reduce CNOC bus voting for
        USB slave on SDM845")

This change is to migrate latest snapshot of kernel drivers.

Change-Id: I84669db544773d3ce9d2d5dff0ab6943bd7d8ff9
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
2017-08-18 16:56:12 -06:00
Laxminath Kasam
605b42f92c audio-lnx: Rename folders to new flat structure.
Kernel audio drivers can be categorised into below folders.
asoc - ALSA based drivers,
asoc/codecs - codec drivers,
ipc - APR IPC communication drivers,
dsp - DSP low level drivers/Audio ION/ADSP Loader,
dsp/codecs - Native encoders and decoders,
soc - SoC based drivers(pinctrl/regmap/soundwire)

Restructure drivers to above folder format.
Include directories also follow above format.

Change-Id: I8fa0857baaacd47db126fb5c1f1f5ed7e886dbc0
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-08-18 16:56:12 -06:00