Commit Graph

132 Commits

Author SHA1 Message Date
qctecmdr
6f4c0d9e6d Merge "ASoC: codecs: update for AUX, ear and HPH paths" 2019-06-17 20:22:42 -07:00
Karthikeyan Mani
3dd19d0b73 asoc: wcd938x: initialize micb lock mutex
Micb lock which is used to synchronize micbias
control api is not initialized causing spin lock
errors. Initialize the mutex to avoid the issue.

Change-Id: I98c50fec8e8531333de643a85433d3e5973bfd14
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-06-11 17:48:14 -07:00
Karthikeyan Mani
17bea6ec6f asoc: wcd938x: Enable watchdog interrupt
Handle PDM watchdog interrupt. Enable watchdog
before analog PA is enabled and disable it
after analog PA is disabled so as to prevent false alarms.

Change-Id: Id45dee1a150c471d1bb29b9bfed9f416b8454a5f
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-06-11 17:47:42 -07:00
Karthikeyan Mani
31231c306d ASoC: codecs: update for AUX, ear and HPH paths
Add updates to AUX control registers and headphone
and ear path power mode registers.

Change-Id: I7a6b0f23a28a6ab9189c946a78a2f376937d7509
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-06-11 17:47:27 -07:00
Sudheer Papothi
776bf8e63e ASoC: wcd938x: Update DMIC enable sequence on WCD938x
Update DMIC enable sequence on WCD938x codec to support
audio capture on WCD DMICs.

Change-Id: I432bbc3a89ad6cbf968fa6474b9bbeb4924e2791
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-06-11 04:32:21 +05:30
Meng Wang
efbe46a1c5 asoc: wcd938x: reinit registers after SSR
Reinit wcd registers after SSR.

Change-Id: I5a8f22e4f76ffd8b279d1513eaa2f50973e3408c
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-05-29 11:07:33 +08:00
Xiaojun Sang
53cd13a1ab ASoC: hide bind/unbind in sysfs
Exposure of driver bind/unbind to userspace via sysfs may
lead to unexpected behavior.
Hide bind and unbind by driver attribute.

Change-Id: I20d6ee653bcc16af15d6368664aaf240c6645cd0
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
2019-05-17 15:00:33 +08:00
Karthikeyan Mani
09d510c699 asoc: codecs: wcd938x: Add boundary checks before accessing array
Add null checks before pointer access and array boundary
checks in tx mode function.

Change-Id: I8c8b086b4aed4185b1d1aee68cc9e7c42da6ae27
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-05-01 16:45:49 -07:00
qctecmdr
d980ab306c Merge "ASoC: wcd938x: Add support for wcd938x codec variants" 2019-04-14 23:20:39 -07:00
Sudheer Papothi
bb650fc65c ASoC: wcd938x: Add support for wcd938x codec variants
Add support for wcd938x codec variants. Changes detect the
variant and enable the corresponding features supported by
the codec variant.

Change-Id: Ib990465b42b903174391bb87115af47431b862ec
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-04-10 05:09:56 +05:30
Vignesh Kulothungan
864f843779 asoc: codecs: add null check before access
Add null check before accessing wcd938x private data.

Change-Id: Ia2226202deccccbd07e6c0d501daaded2b7e72d8
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
2019-04-09 10:30:35 -07:00
qctecmdr
4b17acc4cf Merge "asoc: wcd938x: stop mbhc during ssr down" 2019-04-06 23:14:37 -07:00
qctecmdr
b4c9798b90 Merge "ASoC: wcd938x: Update routing for HDR recording" 2019-04-05 03:46:09 -07:00
Karthikeyan Mani
05588601ac asoc: wcd938x: Add default cases for port mapping
Return error in case of wrong path being selected
for port mapping and port params functions.

Change-Id: I5d66a9cd32e9c8e6d8ebac0ea073b1a1762407b6
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-04-03 12:24:11 -07:00
Meng Wang
281bd20437 asoc: wcd938x: stop mbhc during ssr down
Stop mbhc operations during ssr down to cancel
any pending detection sequences.

Change-Id: Iff054cf8b3099959a1be561bd937057258f57b81
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-04-02 08:44:38 +08:00
Laxminath Kasam
f16ed2f6c2 asoc: wcd938x: Disable EN_CUR_DET bit for receiver noise
Disable EN_CUR_DET to fix receiver noise as per hardware
specifications recommendation.

Change-Id: Ib1ea1eecc3e0f2ffeeb5f41c344e51c903cd2300
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-03-20 08:26:12 +08:00
Sudheer Papothi
3557d14ce8 ASoC: wcd938x: Update routing for HDR recording
Update audio routings for HDR recording on WCD938x codec
for AMIC1 and AMIC5 paths.

Change-Id: I67b93fe11c7a5b16ffd4bb8b58431be9dfba615e
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-03-13 14:05:19 -07:00
Sudheer Papothi
d6c61bd617 ASoC: wcd938x: Clear tx hold hpf after device path setup
During capture path setup, tx path hpf is set to hold.
Clear tx path hpf hold after device path setup.

Change-Id: I3299fc5d84d6e86e23c9ef150c8770ef9d59a870
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-02-23 07:36:18 +05:30
Linux Build Service Account
914aaa0a41 Merge "asoc: codecs: wcd938x: remove on demand vdd buck" 2019-02-17 00:21:51 -08:00
Linux Build Service Account
1aeded0dd7 Merge "asoc: codecs: wcd938x: disable pm runtime" 2019-02-17 00:21:50 -08:00
Linux Build Service Account
32754ec645 Merge "asoc: codecs: wcd938x: match slave property to dt" 2019-02-17 00:21:47 -08:00
Linux Build Service Account
6f50644357 Merge "asoc: codecs: wcd938x: enable micbias for capture" 2019-02-17 00:21:46 -08:00
Karthikeyan Mani
c0a8adf365 asoc: codecs: wcd938x: disable pm runtime
Soundwire master receives the pm runtime calls, so slave
does not need to enable pm runtime.

Change-Id: I3e09b9d1eee9bbfbe525fbf375bf938600f30064
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-02-15 17:31:57 -08:00
Karthikeyan Mani
92fccbfd8f asoc: codecs: wcd938x: update tx mode setting
Change tx mode setting from dapm widget to kcontrol
as it is not needed in codec route and only needed
for updating mode value.

Change-Id: I5d66b9a82b541b97f5c5789fe2e49d329c6952a8
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-02-15 17:24:49 -08:00
Karthikeyan Mani
09b5461237 asoc: codecs: wcd938x: remove on demand vdd buck
All codec supplies are treated as static supplies
and do not require on demand supply.

Change-Id: Idf54f65cc6089675e21a52ea49cdf46eae98f295
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-02-15 11:03:54 -08:00
Karthikeyan Mani
fbdcab9e8d asoc: codecs: wcd938x: enable micbias for capture
Micbias needs tx bias clock bit to be enabled.

Change-Id: I6a73d05eb9363c3dce267f6730c44b0442387365
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-02-14 00:35:17 -08:00
Karthikeyan Mani
c61592adb3 asoc: codecs: wcd938x: match slave property to dt
Match the rx/tx slave node property to that of in dt
to add slave components.

Change-Id: Id990dc0c85691c4af8b8adb7f9de26063559b7b8
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-02-07 14:58:50 -08:00
Karthikeyan Mani
996c1bff0e ASoC: codecs: qcrg update for HPH and TX channel paths
Add updates to HPH rdac gain control registers and
tx channel register writes.

Change-Id: I6c32f0f4ee049404c1648104c5e624eaee3a5817
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-01-24 11:28:38 -08:00
Karthikeyan Mani
a27b0c32ea ASoC: codecs: qcrg update for TX paths
Add qcrg updates for AMIC and DMIC register updates
and modes.

Change-Id: I7401b21cfffd2c40f456d985e2b3ea1988f4ba6c
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-01-16 11:19:33 -08:00
Meng Wang
64e8c2b2af asoc: wcd938x: update wcd938x driver
Update wcd938x driver to fix compile error.

Change-Id: Ifc939a46d7e09852b147289dd9e69d2f56a67751
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2018-12-17 18:55:51 +08:00
Sudheer Papothi
d1c3e9b51e ASoC: wcd938x: Add support for codec wakeup
Add an API to wakeup codec from sleep.

Change-Id: I90de653947f794cbc4a47a91bd5f22251440ef75
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-12-11 18:12:20 -08:00
Sudheer Papothi
c9443c282a ASoC: wcd938x: Add support for wcd938x codec
WCD938x codec is a soundwire based codec that supports AMICs, DMICs,
Headphones, Ear and Aux paths. Add support to enable all device
paths of wcd938x codec.

Change-Id: I81b5e603ef73afba74b8d2274012752f9ca5cb6f
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-12-12 07:34:26 +05:30