Commit graph

1,552 commits

Author SHA1 Message Date
Meng Wang
921b95f9a2 audio-lnx: soc: pinctrl-lpi: fix rmmod issues
Deregister lpi with audio notifier when removing driver to
avoid crash when rmmod and insmod again.

Change-Id: Ibcaf272e6405ef8403b3ac66af5572050fa1092e
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2017-10-17 19:27:57 -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
Xiaoyu Ye
fb90eb6176 dsp: fix reset logic during ADSP SSR for lsm
During ADSP SSR, unless all APR clients are de-registered, Glink
channel will not be closed, which will cause Glink channel to remain
in stale/unusable state after ADSP SSR. Fix this by adding APR reset
logic in LSM driver.

Change-Id: Idec26836cfa4ecbacc557996339facd84ac19668
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-10-15 18:04:50 -07:00
Linux Build Service Account
9c484bd176 Merge "dsp: remove wakelock.h includes" 2017-10-15 09:58:00 -07:00
Aditya Bavanari
88513a31e5 dsp: add support to set topology specific info in voice usecases
Add support to set number of channels and channel mapping to DSP
as per the info received from ACDB files along with topology
for a device in voice usecases instead of reading from
backend configuration. When topology specific channel info is
not supported, send the default no of channels and
channel mapping as per backend to support backward compatibility.

CRs-Fixed: 2110934
Change-Id: Iad512474fc25c906d97513f6648cd8ba6244eda1
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-10-14 11:51:35 +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
21d942b0f4 Merge "soc: define dummy function for swrm_wcd_notify" 2017-10-10 11:39:20 -07:00
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
Rohit Kumar
7fccd584b6 soc: pinctrl-lpi: update sizeof lpi offset to 32bit
Update sizeof lpi register offset to 32 bit to
accommodate all register offset for sdm670.

Change-Id: I9a3fdb56f9faf6c0aff627cbedaa54db606d2434
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
2017-10-10 19:34:27 +05:30
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
Stephen Boyd
dbe57dc5a7 dsp: remove wakelock.h includes
These includes aren't used and the file will go away in the
future, so just drop it.

Change-Id: I9bfcd39fd775e16765c46ea99da087292fe2e461
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2017-10-05 15:23:27 -07:00
Xiaoyu Ye
0cf63fe351 soc: define dummy function for swrm_wcd_notify
Add dummy function for swrm_wcd_notify to avoid
compilation errors when configuration options
'CONFIG_SOUNDWIRE' and 'CONFIG_SOUNDWIRE_WCD_CTRL'
are not selected for a target.

Change-Id: Ie12d2df8777934494f0f8607d846e2d1ec49f2a6
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-10-05 12:49:54 -07:00
Linux Build Service Account
caa1b4241c Merge "autoconf: update config to support DLKM audio for WCD/WSA" 2017-10-04 13:57:21 -07:00
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
kunleiz
9c42950615 rtac: add size check when reading cal data kvaddr buffer
Add size check to ensure cal data bytes size fits inside
the cal data when copying to user space buffer.

CRs-Fixed: 2110256
Change-Id: I511999984684a9db4aaf1cf2c65eb1495c36980f
Signed-off-by: kunleiz <kunleiz@codeaurora.org>
2017-09-29 13:47:11 +08:00
Linux Build Service Account
152c7e2bf0 Merge "asoc: sdm660: add support for quinary interfaces" 2017-09-28 09:37:22 -07:00
Linux Build Service Account
8baa1d3330 Merge "autoconf: sdm670: add support to compile analog and digital codec" 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
7cc0186011 Merge "audio-lnx: dsp: codecs: modify API to configure output PCM block" 2017-09-26 23:17:35 -07: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
b315465773 autoconf: sdm670: add support to compile analog and digital codec
Make autoconf changes to enable compilation of
analog and digital codec separately.

Change-Id: I0e7da48ead0bfe535f9103776845e068a3c149d3
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
2017-09-26 16:12:24 +05:30
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
1c88acb93b Merge "dsp: fix logic to send AFE calibration for TDM AFE ports" 2017-09-25 06:14:20 -07:00
Linux Build Service Account
53a557ad46 Merge "ipc: fix out of bounds read issue" 2017-09-24 13:00:49 -07:00
Linux Build Service Account
a86c405d15 Merge "ASoC: wsa881x: fix wsa881x speaker damage" 2017-09-24 13:00:49 -07:00
Xiaoyu Ye
13da482a70 dsp: fix logic to send AFE calibration for TDM AFE ports
AFE calibration should be sent even when the number of group ports is 1.
Remove this condition from API to send AFE calibration for any number of
group ports.

Change-Id: I7f0c8ab739da2831e17e5dbbaf013cf99f2e6d88
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2017-09-22 10:28:19 -07:00
Satya Krishna Pindiproli
e169e990ea audio-lnx: dsp: codecs: modify API to configure output PCM block
Pass valid channel count and sample rate information to
configure AAC decoder component and modify the API used
to configure the output PCM block when multi AAC decoder
component is used in non-tunnelled mode.

Change-Id: I5938f316a39b722924416b6910e6c8b835e7855e
Signed-off-by: Satya Krishna Pindiproli <satyak@codeaurora.org>
2017-09-22 11:34:35 +05:30
Rohit Kumar
39603aff7b ipc: apr_v2: export symbols used by WCD driver
Add EXPORT_SYMBOL to symbols used by codec driver.
Codec driver is built as separate module and requires
symbols called to be exported.

Change-Id: I3d1bc6c8cbfc1b92f790b700ecfeaff211ddcff0
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
2017-09-21 20:02:37 +05:30
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
9c14ec875e Merge "dsp: fix dangling pointer access" 2017-09-20 17:55:30 -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