Commit Graph

91 Commits

Author SHA1 Message Date
Sudheer Papothi
14a1fecf2f ASoC: msm-cdc-pinctrl: Add stub function for pinctrl get function
Add stub function for msm pinctrl get function
when msm pinctrl configuration is not defined.

Change-Id: I5229dd804025e328471f0fd35cff33a69d47b2dd
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-02-22 11:42:12 +05:30
Linux Build Service Account
e6cc518da8 Merge "ASoC: AQT1000: Add support for MBHC hardware in AQT1000 codec" 2018-02-16 16:05:52 -08:00
Linux Build Service Account
b7da83b2b8 Merge "ASoC: AQT1000: Add API for adjusting the micbias voltage on AQT1000" 2018-02-16 16:05:51 -08:00
Linux Build Service Account
c7e057204d Merge "ASoC: enable audio modules for msmnile" 2018-02-16 09:31:35 -08:00
Sudheer Papothi
40270c4787 ASoC: AQT1000: Add support for MBHC hardware in AQT1000 codec
AQT1000 codec supports MBHC(Multi Button Headset controller)
functionality. Add driver support for MBHC hardware in AQT1000 codec.

Change-Id: Ia21a5bda304d42b2aedcf54f6df92ed29dd23a41
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-02-16 06:21:46 -08:00
Sudheer Papothi
8c9bd0f7d0 ASoC: wcd9xxx: Add new callback for headset pull up current
AQT1000 supports different headset detect pull up current source
values in MBHC. Add a callback function to handle new current
source values in MBHC driver.

Change-Id: I060af1aff3fe7c4dfd4aa4c480542efa54c2777c
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-02-16 06:20:33 -08:00
Sudheer Papothi
7c53cb5010 ASoC: AQT1000: Add API for adjusting the micbias voltage on AQT1000
AQT1000 codec supports multiple micbias voltage settings. Add an
API to client modules to adjust the micbias voltage based on their
desire voltage requirements.

Change-Id: If89b836ab60b66e9ec1000fe6d07f4b1a8484b01
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-02-16 19:41:09 +05:30
Linux Build Service Account
db20f92cb3 Merge "ASoC: AQT1000: Add Interrupt controller support for AQT codec" 2018-02-16 03:33:39 -08:00
Linux Build Service Account
b51bf58343 Merge "ASoC: AQT1000: add codec entry for AQT1000 codec" 2018-02-16 03:33:39 -08:00
Linux Build Service Account
9fafcd2913 Merge "asoc: codecs: re-factor audio-ext-clk driver" 2018-02-15 17:52:26 -08:00
Meng Wang
5fddb8d532 ASoC: enable audio modules for msmnile
Add audio config files and Change Android.mk, Makefile
and Kbuild to enable audio modules for msmnile target.

Change-Id: If6acabe2cd2074d688b810de3f48e6c60dfe9d22
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-02-15 16:39:58 -08:00
Meng Wang
08d48d49eb ASoC: AQT1000: add codec entry for AQT1000 codec
Add codec entry for AQT1000 codec to support ADIE calibration.
Add new hwdep node AQT1000_CODEC_HWDEP_NODE to store ANC/MBHC
calibration data.

Change-Id: I8b5ff9a2cfe2a0a8ac593b63b20b28697dc975bf
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2018-02-07 16:05:30 +08:00
Sudheer Papothi
22e868b3b0 ASoC: AQT1000: Add Interrupt controller support for AQT codec
AQT codec has MBHC(Multi Button Headset Controller) and other
headset interrupts. Add interrupt controller driver to handle
AQT codec interrupts.

Change-Id: Ic8eb6b0ca24aa82c9adeb9f0fa0bf8768b424787
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-02-07 11:33:37 +05:30
Sudheer Papothi
3e42fefa2f ASoC: AQT1000: Add driver for AQT1000 codec
AQT1000 codec is a hifi headset that supports audio
playback and recording on headset. It also supports
playback of fractional sampling rates. Audio playback
and recording is transferred through I2S interface.
Add driver for AQT1000 codec

Change-Id: Iba163e9203d67216cdbf87727b06801356a001e3
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-02-07 04:09:53 +05:30
Vidyakumar Athota
130934724f codecs: add wcd9360 driver support in wcd9xxx core
Add changes to support wcd9360 audio codec driver in
wcd9xxx common files.

Change-Id: I5b9f9d592b6843d7887eb3954d079776ddf15764
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-02-02 17:25:18 -08:00
Vidyakumar Athota
9cbeb97832 codecs: add wcd9360 audio codec driver
Initial commit to add wcd9360 audio codec driver.

Change-Id: Ib4e5e41ce7e540e4426c9ca26db8e834edc3d4da
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-02-02 17:24:19 -08:00
Vidyakumar Athota
cd2fa5348e codecs: add on-demand supply support
Add new APIs to enable/disable on-demand codec supplies
to msm-cdc-supply driver.

Change-Id: Iaf33ac40165832595c875e26179dc036b62b36f8
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-02-02 11:26:40 -08:00
Vidyakumar Athota
ecc4edaf83 asoc: codecs: re-factor audio-ext-clk driver
Re-factor audio clock driver to register one clock at a time
and remove duplicate lpass clocks.

Change-Id: I63ddf4b65ec7e9cda0dcad4e0167cd8636e89e1a
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-02-01 21:39:29 -08:00
Linux Build Service Account
87cef69000 Merge "asoc: codecs: Fix device switch pop issue" 2018-01-15 02:50:56 -08:00
Linux Build Service Account
153e58c732 Merge "ASoC: wcd934x: WDSP debug enhancement" 2018-01-09 08:41:45 -08:00
Linux Build Service Account
1f5ff4b6f0 Merge "audio: Enable audio compile for 8953" 2018-01-09 03:08:39 -08:00
Linux Build Service Account
bf300152d6 Merge "ASoC: sdm660_cdc: Fix ear_pa_gain control" 2018-01-04 06:39:53 -08:00
Linux Build Service Account
2ba9dc5714 Merge "audio-lnx: Correct mutex usage during error handling" 2018-01-03 13:08:45 -08:00
Laxminath Kasam
942d1c6ed1 audio: Enable audio compile for 8953
Add support for audio compile for 8953.

Change-Id: I37ef20b44aecba8ffc9a7d1d346bf83a9115ad1b
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-12-29 16:44:10 +05:30
Laxminath Kasam
817af9a7f1 ASoC: sdm660_cdc: Fix ear_pa_gain control
In analog codec, EAR PA gain control get
function is updated with input value again
resulting in override. Remove the override
of control value again.

CRs-Fixed: 2161617
Change-Id: I7ddd252adf53666a6c9adc1bc92e840067fa932c
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-12-28 11:43:06 +05:30
Karthikeyan Mani
82597ffeec asoc: codecs: Fix device switch pop issue
With AANC enabled, and when the device switches
from speaker path to handset path there is a audible
pop. Add more delay to the aanc enable work function
to resolve the pop issue.

CRs-Fixed: 2137607
Change-Id: Icaf381179b0a81440b21ab4280cb6fc95e6fe6ba
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2017-12-26 21:31:29 -08:00
Walter Yang
83b0584703 ASoC: wcd934x: WDSP debug enhancement
Add interface to trigger WDSP dumps for debug use.
Important register dump and WDSP ramdump are both collected when
DEBUG_DUMP string is sent from userspace via WDSP misc node or
when WDSP boot timeout happens.

CRs-Fixed: 2117755
Change-Id: I8b91a8939201a54512a5e3557ce771b4ff2ff075
Signed-off-by: Walter Yang <yandongy@codeaurora.org>
2017-12-25 11:21:20 +08:00
Ramprasad Katkam
f6d89a5094 audio-lnx: Correct mutex usage during error handling
Release the acquired mutex when there is failure
in enabling the soundwire clock.

Change-Id: I2e10ed7f0bd86524998a67d62e85754f7989eca2
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2017-12-21 20:31:43 -08:00
Vatsal Bucha
d6d62b8d3c ASoC: wcd: Avoid multiple insertion/removals for aux cable
High impedance aux cable when inserted causes jack to change to
lineout. This causes removal event to be called which results
in pause during music playback because jack value is not updated.
Do not change current plug while plug is marked as lineout.

CRs-Fixed: 2151012
Change-Id: I99797b58c48be00185a352094e32e8623faee491
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-12-21 20:30:38 -08:00
Linux Build Service Account
344329b79c Merge "ASoC: remove error prints and warning at bootup log" 2017-12-20 00:31:39 -08:00
Linux Build Service Account
0055984340 Merge "asoc: codecs: modify gnd mic swap threshold for usb-c analog" 2017-12-16 03:09:24 -08:00
Linux Build Service Account
5643be1804 Merge "ASoC: allow drivers to compile both static and dynamic" 2017-12-12 09:56:54 -08:00
Linux Build Service Account
4460de0faa Merge "asoc: codecs: stop mbhc before mbhc init and after ssr" 2017-12-12 09:56:52 -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
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
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
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
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
4653d96d9f Merge "ASoC: wcd934x: reset ASRC after playback" 2017-11-16 17:37:26 -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
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