Commit Graph

375 Commits

Author SHA1 Message Date
qctecmdr
45d02bcf0b Merge "soc: soundwire: reduce the auto suspend delay to one second" 2019-06-21 03:39:03 -07:00
Sudheer Papothi
0016db19a7 soc: soundwire: Add support to dump bulk register writes
Add support to dump soundwire bulk register writes to
analyze port configuration on both soundwire master and
soundwire slave devices.

Change-Id: Ie02b2a0ba40aa5a0b4243022e439e1b545688143
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-06-18 00:44:30 -07:00
qctecmdr
e7afbdeeb6 Merge "soundwire: exit from pm function for LPASS HW Core fails" 2019-06-17 20:30:33 -07:00
Laxminath Kasam
e13704c699 soc: Handle system suspend for LPI pinctrl
System suspend is not handled in lpi pinctrl driver.
Register to system ops to release lpass hw vote
before apps suspend.

CRs-Fixed: 2439988
Change-Id: I334a993ead5d2abec5286fb5812d67b795d03f3c
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-06-16 17:37:56 -07:00
Karthikeyan Mani
1a0f998031 soc: soundwire: check for valid pointer before dereference
Check if the swr pointer obtained is not NULL before
dereferencing it.

Change-Id: I119141e5fd0b365789f8295d7b43867ede29dd8c
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-06-12 08:40:31 -07:00
qctecmdr
295db4585f Merge "soc: swr-mstr: skip port disable when master is down" 2019-06-10 05:57:59 -07:00
Sudheer Papothi
3590b312ba soc: soundwire: reduce the auto suspend delay to one second
Existing delay for soundwire to auto suspend is 3 secs. Reduce
the delay to 1 sec to improve the power numbers.

Change-Id: I0c13439567eb73b80897f4cf1bbcfb1eded94a9c
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-06-04 23:51:30 +05:30
Karthikeyan Mani
4e7401aff9 soundwire: exit from pm function for LPASS HW Core fails
Before proceeding with handling soundwire pm functions
check return value of vote for LPASS HW core and handle
error scenarios.

Change-Id: I4f48c93919a75ebbb072123a12306137118699d0
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-06-03 10:52:46 -07:00
Karthikeyan Mani
f68219039a soc: swr: Release resource lock when not needed
Resource lock should not be held while doing bank
switch as bank switch requires interrupt handling
which needs access to the resource lock.

Change-Id: Ic17178c7e6f16a7db91da6577ed2ce70c9c9f084
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-05-28 14:15:12 -07:00
Ramprasad Katkam
979b7c9814 soc: swr-mstr: skip port disable when master is down
skip port disable when master is already down to avoid
queuing commands to master which is already down due to ssr/pdr.

Change-Id: I7fadc479784feb0fd8afa229599eb217bb579ea2
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2019-05-28 21:43:05 +05:30
qctecmdr
34b7d3b2fd Merge "ASoC: hide bind/unbind in sysfs" 2019-05-21 20:33:23 -07:00
qctecmdr
4a0cf5086c Merge "asoc: Ratelimit error logs" 2019-05-18 03:03:10 -07:00
qctecmdr
f78ad1d9ee Merge "asoc: update missed file header to SPDX" 2019-05-18 02:59:44 -07:00
qctecmdr
8105363ccb Merge "soundwire: return error if vote for LPASS HW Core fails" 2019-05-18 02:55:52 -07: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
Ramprasad Katkam
14efed6eb7 asoc: Ratelimit error logs
Ratelimit error logs to avoid excessive logging during
ssr/pdr.

Change-Id: Icdc9823cef5b070ed70cdd002bb3cd00d482a869
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2019-05-14 17:42:22 +08:00
Meng Wang
d74f72b86d asoc: update missed file header to SPDX
update missed file header to SPDX.

Change-Id: I694c45965473d00d5a577df1cd2074becbc51372
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-05-14 01:02:43 -07:00
qctecmdr
f53186de04 Merge "soc: Do not compile pinctrl_wcd for lito" 2019-05-09 02:57:45 -07:00
Vatsal Bucha
4f798ababf soc: Do not compile pinctrl_wcd for lito
Lito uses pinctrl_lpi. Do not compile pinctrl_wcd for lito.

Change-Id: I4befdc65769b592f0244556db64785b64b885223
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2019-05-07 23:41:05 -07:00
qctecmdr
e7072b0ae4 Merge "asoc: codecs: Bail out from clock enable routine during SSR" 2019-05-07 22:35:09 -07:00
qctecmdr
dd7590113e Merge "soundwire: Suppress errors due to unsupported slave functions" 2019-05-03 05:15:35 -07:00
Karthikeyan Mani
035c50b0bd soundwire: return error if vote for LPASS HW Core fails
Before proceeding with handling soundwire interrupt check
return value of vote for LPASS HW core and handle
error scenarios.

Change-Id: I0f19a5ddb0af82f33a8d004d008eda9baa40c036
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-05-02 14:09:35 -07:00
qctecmdr
968764e0ce Merge "makefile: kona: remove make export <all variables> instances" 2019-05-01 04:56:32 -07:00
Sudheer Papothi
79c9075948 soundwire: Suppress errors due to unsupported slave functions
Suppress the errors from the soundwire master runtime suspend
and runtime resume, if the soundwire slave devices does not
implement the functionality, that avoids pm runtime calling
the runtime functions.

Change-Id: I513a37f37e349a0c435295056df8625f284e13e6
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-05-01 05:48:39 +05:30
qctecmdr
908866faac Merge "soc: pinctrl-lpi: Disable core clock only if it is enabled" 2019-04-30 11:01:39 -07:00
David Ng
4025a25a24 makefile: kona: remove make export <all variables> instances
Replace all kernel make export <all variables> instances with
export of specific variables.  Depending on existing build
environment, exporting all as environment variables and
interaction with existing environment variable expansions
can lead to undefined behavior.

TODO:  This change is restricted to kona flow to narrow impact.
All remaining export <all variables> need to be evaluated and
fixed similarly via subsequent changes.

Change-Id: I9114b88f7511d1b3f9b496b76fb6da9db97772b8
Signed-off-by: David Ng <dave@codeaurora.org>
2019-04-26 23:44:02 -07:00
Aditya Bavanari
f4a471de1a asoc: codecs: Bail out from clock enable routine during SSR
When SSR happens, use dev_up flag in codec
to bail out from clock enablement routine.
During interrupt processing if clock enable fails during
SSR, exit isr routine without disabling clock.

Change-Id: Ie2b56521daa70790d6ef53a06c7becc2ee8010a4
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2019-04-26 14:13:26 +08:00
qctecmdr
66ae68b936 Merge "Audio: Add lito target for audio-kernel" 2019-04-25 06:46:40 -07:00
Aditya Bavanari
0b1748df54 soc: pinctrl-lpi: Disable core clock only if it is enabled
Clock driver throws warning when clock disable is called
without enable. Disable core clock only if the respective clock
enable is successful to avoid this warning.

Change-Id: I489647a444c9be326e5805c353385240c6c6d0fc
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2019-04-25 09:58:18 +08:00
Vatsal Bucha
d284ff1e0c Audio: Add lito target for audio-kernel
Add lito target for audio-kernel modules.

Change-Id: Ic8b43df74504950e4baad9701abeddcf8f30b420
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2019-04-19 11:14:56 -07:00
Ramprasad Katkam
2586a4b195 soc: swr-mstr: reset slave pending irq flag before every call
Before every slave interrupt handler call, reset slave pending
irq flag, so that if irq is halted it does not retain the old
value.

Change-Id: Ibde5dacf38e78ab19afb6f0e91ffac81f6c22813
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2019-04-15 02:52:17 -07:00
Bhalchandra Gajare
c77b19f586 soc: wcd-spi-ac: add wcd spi access control driver
Add driver to perform WCD SPI bus arbitration between two
masters. The two masters could reside on two different
processors and QMI is used to arbitrate the bus access.
This driver also exposes character driver interface to
userspace to indicate use case start/stop, etc.

Change-Id: I4f6fe6bb0bca524f10a34cf89149c6b2055b00e1
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
2019-04-15 02:47:28 -07:00
qctecmdr
553c49490a Merge "soundwire: Vote for LPASS HW Core before soundwire register access" 2019-04-14 23:16:15 -07:00
Sudheer Papothi
66d6fd1364 soundwire: Vote for LPASS HW Core before soundwire register access
Vote for LPASS HW core before soundwire register access to avoid
register access violations.

Change-Id: Ie7ff73bbab64825bf07736f11ef9685e732fc8ae
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-04-05 19:16:37 +05:30
Vatsal Bucha
df38c3eb18 soc: swr: Add wakeup source for swr device
Voice call over headset does not disconnect on button press
while device is in suspend state. This is because inband interrupt
is not made wakeup capable. Make inband interrupt for swr tx as
wakeup capable. Also add wakeup source for swr device.

Change-Id: I5f2751672675bc8d62c4d2bfbbd651e640723d52
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2019-04-02 12:29:20 +05:30
Linux Build Service Account
0ee1dbafc2 Merge "soc: swr-mstr: Avoid redunant delay for wcd934x" 2019-03-14 15:24:21 -07:00
Ramprasad Katkam
1e90620030 soc: swr-mstr: Avoid redunant delay for wcd934x
For codecs like tavil/tasha where the soundwire register access
is through codec bridge, the soundwire bus latency is absorbed
in slimbus io operations, hence do not require extra delay in
soundwire driver for io operations.

Change-Id: If77aa02f0c3c1755916b7a57776115d12e4f08bd
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2019-03-12 22:06:36 -07:00
Mangesh Kunchamwar
cdd68dbe72 msm: vote for LPASS core while access LPASS registers
When ADSP is in power collapse or island state, it would fail
to access LPASS codec register.Vote for LPASS core to avoid
LPASS power collapse with pmruntime approach while accessing
LPASS registers & TLMM.

Change-Id: I74d037e499fb6f1245b9a1bd1b0a77200608c27b
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2019-03-06 08:50:31 +08:00
Karthikeyan Mani
39b70f5ff2 soc: pinctrl-lpi: add changes to support slew rate config
Add changes to read slew rate from device tree table
and set the same under set configs list.

Change-Id: I0d7e950d67d34b63c5a6436bb4d10b08a80c2c58
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-03-02 15:54:42 -08:00
Sudheer Papothi
d19d0c5636 soc: soundwire: Handle interrupts based on soundwire version
Some of the interrupt status bits of soundwire interrupt registers
are different in different versions of soundwire. Change is to
handle the interrupts based on soundwire version.

Change-Id: Icac65c9986a3d5724da6343b4202931f04f57f25
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-02-27 07:28:26 +05:30
Karthikeyan Mani
fd328a6b66 soc: enable compilation for audio lpi driver
Enable compilation of audio low power island driver
for kona.

Change-Id: I28adb30aa64204609667cedc1df5b181aa609267
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-02-13 11:46:27 -08:00
Laxminath Kasam
a60239e354 soc: soundwire: Add support for GPIO interrupt path
In trinket target, interrupt for wakeup is provided via
chip TLMM. Add required support to handle wakeup
interrupt on SWR data line triggered over this TLMM line.

Change-Id: I7fb6d7009a6271d54d0f11f99930b0d039f57129
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-01-22 12:53:56 +08:00
Linux Build Service Account
82c45cde0a Merge "soc: swr-mstr: Change timeout for clk disable during ssr" 2019-01-08 05:32:01 -08:00
Linux Build Service Account
a43f819ec7 Merge "soc: swr-mstr: Fix headset detection issue" 2019-01-06 06:31:59 -08:00
Ramprasad Katkam
c87efeb82b soc: swr-mstr: Change timeout for clk disable during ssr
MBHC operations may take around 200ms to get stopped
during ssr. Match timeout for clock voting to be zero
to allow any pending mbhc operation to exited.

Change-Id: I82162e96595fb337f19192f58f1aa7792e8b0e90
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2019-01-03 18:39:22 -08:00
Ramprasad Katkam
44b7a9602b soc: swr-mstr: Hold suspend during hw wakeup interrupt
Hold system suspend when hardware wakeup interrupt is
received to resume soundwire master.

Change-Id: I99a58aa7d28cfa514d72bacc8c6fc6e95fbe038a
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2019-01-02 01:34:02 -08:00
Ramprasad Katkam
b4c7c680ef soc: swr-mstr: switch to bank 0 before ssr/pdr
Do bank switch to default bank during ssr/pdr as master
is reset to default state. This avoids wrong state of
swr master during pdr.

Change-Id: I86a7bd53d471e9d864d25dcb84ad8fe12151cc0d
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2019-01-02 01:32:29 -08:00
Aditya Bavanari
3517b1102a soc: swr-mstr: Fix headset detection issue
Do not disable wake irq during registration of
wake up interrupt as it leads to multiple disable
calls of wake irq during boot up and headset detection
fails sometimes.

CRs-Fixed: 2356299
Change-Id: I79aa0ab46d26dc0e352d399e0d4381a11ed936f4
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2019-01-02 16:00:39 +08:00
Sudheer Papothi
63f4815535 soc: swr-mstr: Support to execute commands on command ignore
If the optional commands/registers in soundwire slave(s) are not
implemented, then soundwire bus will ignore the corresponding
commands and executes the next commands in queue.

Change-Id: I24dd929975218a150717f03f5c17c2be173a5005
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-12-26 00:51:09 -08:00
Linux Build Service Account
dd226cab67 Merge "ASoC: config: add config to compile audio drivers for kona" 2018-12-21 21:35:35 -08:00
Linux Build Service Account
7cbec036c1 Merge "ASoC: update symbolic link for internal.h, core.h and pinctrl-utils.h" 2018-12-21 05:09:18 -08:00
Meng Wang
b0e04799e4 ASoC: config: add config to compile audio drivers for kona
Add config to compile audio drivers for kona.

Change-Id: I3367a68d0109c80de8525fd74ebaef2959684865
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2018-12-21 12:19:44 +08:00
Meng Wang
19fa6defdc asoc: update kernel version for kona
Update kernel version for kona.

Change-Id: I490832f0a62f8f1b5cfe6fc6134e22cc5d8ae583
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2018-12-20 12:36:53 +08:00
Meng Wang
0862e6ad0a ASoC: update symbolic link for internal.h, core.h and pinctrl-utils.h
Update symbolic link for internal.h, core.h and pinctrl-utils.h for kona.

Change-Id: I3bb585700a531e97a0b1b163b191105628f3d22c
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2018-12-20 11:12:46 +08:00
Sudheer Papothi
4c322b1c80 Soundwire: Fix soundwire master port configuration
Existing soundwire master controller driver uses static tables
directly for soundwire port configuration. But, this is not
scalable to add support for new targets. So, define platform
specific soundwire master port configuration from machine driver.

Change-Id: I37d499c77914b413e6e16ab2689dbaae8fcd194c
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-12-17 15:25:48 -08:00
Sudheer Papothi
3d1596e2c6 soc: swr-mstr: Add support for platform specific port configuration
Different platforms have different configuration for soundwire
ports. Add support to get the port configuration information
from the machine driver.

Change-Id: If2c006c4d4a43e2a8dc67c076f6d1c0f36eae16b
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-12-17 12:16:26 -08:00
Linux Build Service Account
d0dd6a6284 Merge "Soundwire: Check complete soundwire slave device ID" 2018-12-12 17:51:57 -08:00
Linux Build Service Account
b5bb2c2fdd Merge "soc: Add flag GCOV_PROFILE to makefile" 2018-12-12 08:52:04 -08:00
Linux Build Service Account
818fc0c9ed Merge "soc: swr-wcd: Apply div2 setting on slave side before bank switch" 2018-12-12 08:51:58 -08:00
Linux Build Service Account
8e0420da9a Merge "soc: soundwire: Update samping interval of class-H port" 2018-12-12 08:51:56 -08:00
Ramprasad Katkam
7e35478bf6 soc: swr-mstr: Store enabled interrupts information in master data
Store interrupt mask variable in master private data to
indicate the interrupts which are currently enabled. This
is to avoid reading interrupt enable register, which varies
on hardware version, for knowing the interrupt enabled info.

Change-Id: Ic990decd1b1112a1ad2a6af0d9b42269fe4e1b4c
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-12-11 17:32:21 +08:00
Laxminath Kasam
62cd1975a3 soc: swr-wcd: Apply div2 setting on slave side before bank switch
In soundwire controller, bank switch happen twice
for a playback session with stereo speakers. Ensure
the setting of div2 applied to inactive bank before
bank switch occurs to avoid impact based on bank chosen.

Change-Id: I033b19e78309485ca9da85ec67b54409e6fe22cc
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-12-11 00:03:14 -08:00
Laxminath Kasam
579c6d9898 soc: soundwire: Update samping interval of class-H port
Use sampling interval of 32 for class-H port to ensure
consistent setting for both 48k and 44.1k family sample rates
as recommended by HW.

Change-Id: I5f683f628ea3a4cd3ac72f827a51be70c3ac6ec6
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-12-10 23:54:31 -08:00
Vatsal Bucha
d4b85ecad1 soc: Add flag GCOV_PROFILE to makefile
Enable GCOV for soc if config GCOV_PROFILE is set to true.

Change-Id: I01e7cf24eb78c541f6f5d5b13c5a3b21f1f18d40
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2018-12-10 23:39:25 -08:00
Ramprasad Katkam
5734987f61 soc: swr-mstr: Add wake lock support to prevent suspend
Add lock and unlock sleep functions to master to prevent
system suspend during interrupts or slave wakeup
requests.

Change-Id: Icb4ea354ec6e2925f83c2380f30ea8e37aca7449
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-12-10 21:43:39 -08:00
Sudheer Papothi
6abd2debae SoC: swr-mstr: Add support for device wakeup
Add support for soundwire device wakeup through bus driver.
These APIs will be used by slave driver through bus driver
to vote and unvote for master wakeup, when it requires
master for register access operations. Master will be
aware of the slave usage with the vote for device wakeup.

Change-Id: I24f0ec0344f05926dc866edb04294cb31348e1ce
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-12-10 18:58:12 -08:00
Sudheer Papothi
1b9932e154 SoC: soundwire: Add support for device wakeup
Add soundwire API to wakeup soundwire master and slave devices.
These APIs will be used by slave driver to vote and unvote for
master wakeup, when it requires master for register access
operations. Master will be aware of the slave usage with the
vote for device wakeup.

Change-Id: Ifa93f35ab2cffba778cd2fd9a2461e5a58445b75
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-12-10 18:57:30 -08:00
Meng Wang
43bbb87652 asoc: Update file header to GPL-2.0-only
Update file header to GPL-2.0-only.

Change-Id: Ic1542a3209a5fe73c937a5b36491ede4a451936d
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2018-12-10 14:49:34 +08:00
Meng Wang
61af6849e9 ASoC: switch audio drivers to SPDX identifier
Switch audio drivers to SPDX identifier on msm-4.19.

Change-Id: Ic3f0230a516db251b8d81e8a7e73dbc04d66fe1b
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2018-12-07 15:47:32 +08:00
Sudheer Papothi
7c067e898b Soundwire: Check complete soundwire slave device ID
Soundwire slave device ID is 48 bits. Check the complete
soundwire slave device ID during enumeration for proper
slave driver registration.

Change-Id: Iac11eb818a29c227947f3cf50cafd336b4e410a2
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-12-06 10:51:01 -08:00
Meng Wang
d6107d0bbe asoc: clean up audio drivers and remove unused files
Clean up audio drivers and remove unused files.

Change-Id: I50559ac3c5f4a1f4336e4480cd3ff235d015441e
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2018-12-06 15:04:09 +08:00
Mangesh Kunchamwar
eb1fdd1afc msm: update auto suspend delay for voting LPASS NPA resource
Reduce auto suspend delay to 100ms from 1500ms for voting LPASS
NPA resource to reduce delay in entering LPASS into island mode.

Change-Id: Ic38f7b9e8d794963e51c30dfd03da586bca84bd2
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2018-11-19 16:18:33 +05:30
Linux Build Service Account
d72c877e31 Merge "soc: vote for LPASS NPA resource from LPI TLMM driver" 2018-11-17 09:56:49 -08:00
Mangesh Kunchamwar
8ab099ad8c soc: vote for LPASS NPA resource from LPI TLMM driver
Vote for LPASS island NPA resource before accessing any
LPASS register from LPI TLMM driver.

Change-Id: I9987b2ac60b055a7d33b3adce2b36a2fbbe2dea1
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2018-11-15 16:16:37 +05:30
Linux Build Service Account
86a34cd9cc Merge "soc: swr-mstr: add support for hardware wakeup interrupt" 2018-11-14 23:15:24 -08:00
Linux Build Service Account
708004630d Merge "soc: swr-mstr: Update hparams for all swr master ports" 2018-11-14 23:15:23 -08:00
Linux Build Service Account
9592f46b51 Merge "soc: swr-mstr: Remove master access from slave api" 2018-11-14 23:15:21 -08:00
Linux Build Service Account
fab8a74412 Merge "soc: swr-mstr: Ignore device up during SSR" 2018-11-14 23:15:20 -08:00
Linux Build Service Account
216d69750d Merge "soc: swr-mstr: Reinit clk off signal before waiting" 2018-11-14 23:15:17 -08:00
Aditya Bavanari
c034fadb2c soc: swr-mstr: add support for hardware wakeup interrupt
Add changes to register hardware wake up interrupt
from soundwire data line or ipc wake up interrupt
from LPASS.

Change-Id: Ibe4277db79aa62f34e9b325ae656b3f3fa7a2bcb
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2018-11-14 17:04:43 +05:30
Ramprasad Katkam
0db4801f4d soc: swr-mstr: Remove master access from slave api
The read/write api exposed by soundwire master is intended
to be used only for accessing soundwire slave registers.
Remove master access from the api, to avoid invalid access
due to slaves sending devnum as zero incorrectly.

Change-Id: Ia00179f87908f95f03ef027630d178016affdb18
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-11-14 11:44:46 +05:30
Laxminath Kasam
990c70b004 soc: swr-mstr: Update hparams for all swr master ports
Need to specify hstart and hstop bit fields
even if those are not used in frameshape for
given port. Soundwire master register config
needs to set as 0x0, 0xF for hstart and hstop
for those ports.

CRs-Fixed: 2333434
Change-Id: I78e103a3d4c9085ea14884691d5df3f35fa7a754
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-11-13 23:44:23 +05:30
Ramprasad Katkam
0fed92f477 soc: swr-mstr: Ignore device up during SSR
New audio session may be opened just before SSR
has occured. Ignore device up notification due to
new session during SSR as soundwire hardware is
not ready.

Change-Id: I06a558d0fa9e31ed6bbdfab80402ba7b337e7ad8
signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-11-12 20:45:42 +05:30
Ramprasad Katkam
7f6462ebd7 soc: swr-mstr: Reinit clk off signal before waiting
Reinit clk off signal before waiting to avoid false
positives because of the signal complete that happened
prior to the waiting.

Change-Id: I678fdc8589039d9f59e6590a4899309dad479181
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-11-12 20:38:57 +05:30
Laxminath Kasam
e30eef71d4 soc: swr-mstr: Update class-H port params
Update sampling interval for class-H as per HW spec
and hstart/hstop bit fields in swr master register
since master fields are not same as slave fields
for this setting as defined in HW register document.

Change-Id: Iefb5bb83bb8984ee964f405f53ab6f8f0ba47f75
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-11-09 23:31:31 +05:30
Linux Build Service Account
5018617adf Merge "soc: swr-mstr: suppress continuous warning interrupts" 2018-11-04 19:08:05 -08:00
Linux Build Service Account
aeb99f98ef Merge "Initial Android target definition for trinket." 2018-11-02 01:53:32 -07:00
Ramprasad Katkam
18bc8e228a soc: swr-mstr: suppress continuous warning interrupts
Some warning interrupts keep flooding as long as data
path is enabled. Disable the interrupt after the first
interrupt to avoid flooding, and reenable for new data
path.

Change-Id: Ie4cd447be908ab40568fa24d6111d8a1f0483ee4
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-31 15:34:26 +05:30
Hari Veerubhotla
dcab67c504 Initial Android target definition for trinket.
Change-Id: Ib55a9013b0fa5bcda0e5d2d17d1741e607a9c9b5
2018-10-31 02:40:21 -07:00
Ramprasad Katkam
833035127f soc: swr-mstr: Change master interrupt to edge type
Change master interrupt to edge type handling to avoid
recurring interrupts during ssr. Add loop logic to handle
concurrent edge type interrupts.

Change-Id: I3c789a24c035a6a00b1a2f515aa5328546ad80a9
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-29 01:25:43 +05:30
Ramprasad Katkam
86c45e0761 soc: swr-mstr: Avoid race condition during device up
During device up call from platform driver, if master
is already up pm get_sync is currently skipped. However
pm suspend can get called after this check. Hence do a pm
get_sync even if master is already up to avoid race
condition.

Change-Id: I1779db3d65f58bda220d1ec07706e91745814c1f
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-25 19:25:54 +05:30
Linux Build Service Account
c8d4438836 Merge "soc: Add proper null check for client array pointer" 2018-10-23 01:32:56 -07:00
Linux Build Service Account
03072ce6e1 Merge "audio-lnx: ANDROID_BUILD_TOP is deprecated." 2018-10-23 01:32:43 -07:00
Linux Build Service Account
979ae8e796 Merge "soc: swr-mstr: Mask swrm debug interrupts" 2018-10-20 04:04:10 -07:00
Linux Build Service Account
e25f9003c6 Merge "soc: swr-mstr: synchronize swr clock requests" 2018-10-20 00:23:56 -07:00
Ramprasad Katkam
6a3050d838 soc: swr-mstr: Register for wakeup irq after disabling clk
During clock stop, Register for lpass wakeup only after
disabling the clock to avoid flooding of interrupts when
master is turned on for pending slave irq.

Change-Id: Ifbf604048d4972beb22b6286930193b83a2249e8
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-19 09:41:16 +05:30
Ramprasad Katkam
13e051c9ab soc: swr-mstr: Mask swrm debug interrupts
Mask swrm debug interrupts as workaround for interrupt
storm issue.

Change-Id: Ic623a3a161d7d04812c4dd4b2e07a3331f5ed7ec
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-19 09:27:12 +05:30
Ramprasad Katkam
6bce2e7374 soc: swr-mstr: synchronize swr clock requests
synchronize swr clock request using mutex and ensure
count becomes zero during ssr.

Change-Id: I3aa933a137d9439742d84fc23b37653da86f3b42
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-18 02:23:43 +05:30
Tanya Dixit
d7a6390344 soc: Add proper null check for client array pointer
Check if snd event client array is null before
dereferencing.

CRs-Fixed: 2328286
Change-Id: I4f7c2a1288ee27df51609e090cb2da2d33624a07
Signed-off-by: Tanya Dixit <tdixit@codeaurora.org>
2018-10-17 17:30:02 +05:30
Linux Build Service Account
13bf73f231 Merge "soc: swr-mstr: Add proper handling of SSR and clock stop" 2018-10-08 23:04:39 -07:00
Linux Build Service Account
b112aeeb50 Merge "soc: swr-mstr: Ignore redundant slave path control command" 2018-10-08 23:04:37 -07:00
Linux Build Service Account
1e509a5e2c Merge "soc: swr-mstr: Fix port collision during wsa playback" 2018-10-08 23:04:35 -07:00
Linux Build Service Account
6f9a94c8ee Merge "soc: swr-mstr: Avoid handling redundant swr wakeup events" 2018-10-08 23:04:27 -07:00
Ramprasad Katkam
2a0996bc17 soc: swr-mstr: Fix port collision during wsa playback
Fix block pack mode parameter in wsa frame params to
to get proper frame allocation avoiding port collision
between DAC port and SMART BOOST port.

Change-Id: I3e552f189a67661d63a6cd0affc1cb233b53bda7
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-06 00:42:23 +05:30
Ramprasad Katkam
2a799b4065 soc: swr-mstr: Add proper handling of SSR and clock stop
When SSR occurs master needs to restart even though clock
stop mode is supported. Add proper handling of master
during SSR and suspend.

Change-Id: I21c0ffd4fb741788dd12671fe4bd04cca9d7ff59
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-06 00:39:37 +05:30
Ramprasad Katkam
cd61c6ef14 soc: swr-mstr: Avoid handling redundant swr wakeup events
It is sometimes observed that afe could send multiple wakeup
events at a time. Avoid this by handling wakeup event only once
per swr suspend.

Change-Id: Ieb9ed1b18c8c93cb7db4b75e3411cc25838be492
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-05 22:48:05 +05:30
Ramprasad Katkam
cab8d72ab0 soc: swr-mstr: Ignore redundant slave path control command
Slave could trigger multiple path control api multiple times
after connect/disconnect port. Avoid handling the api without
new connect/disconnect requests to reduce latency.

Change-Id: I4db52fdebfd6b7c0fe3f388f25dfaa4981d5f61c
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-05 18:38:40 +05:30
Ramprasad Katkam
48b49b2117 soc: swr-mstr: Avoid master reinit during clock stop-resume
Avoid reinitializing master when resuming from clock stop
to avoid possible slave sync lost.

Change-Id: I8b2403bf10c0ec2ab7b294d64441b4d9a8afcaa0
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-05 17:59:52 +05:30
Linux Build Service Account
168576aeb9 Merge "soc: swr-mstr: Enable required soundwire master interrupts" 2018-10-04 07:46:52 -07:00
Ramprasad Katkam
62d6d76b81 soc: swr-mstr: Add logic to recursively trigger slave irq handler
Soundwire slave interrupt is only edge type, so any pending slave
side interrupts could not cause a new slave interrupt, if
they are triggered before clearing of existing interrupts.
Recursively trigger slave irq until there are no pending slave
interrupts to handle this issue.

Change-Id: I254f2467f09172490796114b48f1f0feb604ad17
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-10-01 11:37:36 +05:30
Ramprasad Katkam
debe893b7c soc: swr-mstr: Enable required soundwire master interrupts
Enable soundwire master interrupts by setting the interrupt
enable bits in new CPU_n interrupt register.

Change-Id: Iec2502129cd04da2c8cbc3d3f43278a2ed3ba7d6
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-09-28 13:41:23 +05:30
Siddeswar Aluganti
85e9e16065 audio-lnx: ANDROID_BUILD_TOP is deprecated.
ANDROID_BUILD_TOP variable is deprecated and thus all paths are
assumed to be relative to the top directory.

Change-Id: Ifc1bba67bf47092a37336581990d4bcce82a72f5
2018-09-25 19:03:00 -07:00
Rohit kumar
27138766db config: sm6150: Enable compilation of snd_event
Enable compilation of snd_event driver for sm6150.

Change-Id: Ia6c62fea8d3660e187e79d1743a1b6862f3dd228
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
2018-09-25 12:20:20 +05:30
Laxminath Kasam
27b1bbc54b soc: pinctrl-lpi: add SSR changes based on snd event fwk
Add changes to support SSR in pinctrl lpi driver
based on snd event framework.

Change-Id: If4fb3085ab69ae04628ef10a8b528d0cdc20f40d
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-09-25 11:36:27 +05:30
Laxminath Kasam
1df09a82e5 soc: add SSR changes for swr mstr controller
Add changes to recover audio during SSR and PDR
in swr master controller driver.

Change-Id: Ibe3ae097b5f9d59b135d861c5f50f6bbc1c05af6
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-09-25 11:32:40 +05:30
Ramprasad Katkam
7cb4ff6b65 soc: swr-mstr: Use single pm runtime call during port enable
Add changes to call pm runtime calls only once for soundwire
master active, to be able to decrement and put to suspend
during SSR.

Change-Id: I068040e2a224d1ee97f472f69f25af77ae632be2
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-09-25 11:32:16 +05:30
Laxminath Kasam
b0f27cd9f0 soc: swr-mstr: add changes to support native playback
For MCLK frequency switching to 11.2896 for native
playback support, frameshape also needs to be changed
accordingly. Add changes to support frameshape switch
based on mclk frequency for given master.

Change-Id: I0c4dd69b743f83b45eeed73f27ad10e878b9244b
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-09-11 15:52:47 +05:30
Linux Build Service Account
c523b34cc0 Merge "soc: swr-mstr: Add wakeup irq support from afe using event notifier" 2018-09-03 23:29:30 -07:00
Linux Build Service Account
de663528f9 Merge "soc: swr-mstr: Add support to listen for DC detection" 2018-09-03 23:29:29 -07:00
Linux Build Service Account
8e9f1b03cb Merge "soc: swr-mstr: fix noise issue with mono speaker" 2018-09-03 12:15:15 -07:00
Laxminath Kasam
f0128ef169 soc: swr-mstr: Add wakeup irq support from afe using event notifier
Register and handle swr wakeup irq from afe, using aud event
notifier codec interrupts during clock stop mode.

Change-Id: I76d250adcaa8af4a413f6274482beb5a3469601d
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-09-03 10:18:47 -07:00
Ramprasad Katkam
68765abe11 soc: swr-mstr: Add support to listen for DC detection
Add support to listen for DC detection event.
Shutdown WSA on receiving DC detection event.
Porting the changes from old master driver to new driver.

Change-Id: I4d323bb8074d447b2969dd01c7129e57160b6c04
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-09-03 10:18:36 -07:00
Ramprasad Katkam
c8d52a1f56 soc: swr-mstr: fix noise issue with mono speaker
Fix noise issue with mono speaker by properly disabling
the previous port config.

Change-Id: I55fde87fcea5c8a7f05ff82a0d8967bc7688882b
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-09-03 15:08:38 +05:30
Laxminath Kasam
4721b16381 soc: swr-mstr-ctrl: porting fix from wcd controller to mstr controller
When temperature on a single wsa881x device is being read,
then soundwire master wakes up both wsa881x devices but
regcache_sync is happening only for one wsa881x device on
which the temperature is being read. This results in
audio playback mute after temperature read. Fix the
regcache sync during temperature read and playback usecase.

Change-Id: Icee46d5105bb449f14855d33bdcb00cf5c77cb91
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-09-03 14:13:00 +05:30
Ramprasad Katkam
14f47cc8a6 asoc: swr-mstr: add rx and tx master frame configuration
Add Rx and TX master frame configuration.

Change-Id: I067931565270e7390d9c5311e0869dfdb6685999
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-08-30 07:48:49 -07:00
Ramprasad Katkam
1f22126590 asoc: swr: master controller fixes for tanggu
Add locking for soundwire fifo operation as same
function call can be used at a time by a different thread
like mbhc, and fix register definitions in header.
Add soundwire slave interrupt clear registers as part of
slave interrupt event in master interrupt handler.

Change-Id: I94d9b7ac09192dbf8aa3248d35956b380430ee0b
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-08-28 22:52:07 -07:00
Ramprasad Katkam
a72eb7843a asoc: swr: Fix logic to retrieve swr slave device handle
Fix issue in the loop logic of retrieving swr slave device handle
by passing device node.

Change-Id: I5c31259b1257de730748b8522537afa9870f24e4
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-08-29 11:21:11 +05:30
Banajit Goswami
06183689db soc: add support for SND event framework
Add support for SND event framework for helping with
notifications among different audio modules/drivers.
The SND event framework functions with a master/client
mechanism, where each client and the master register
with the framework, and then notifies its own status
(UP/DOWN). Each master will share a list of clients it
is interested in, and once all the clients are registered
and notified UP, the framework's state will be UP. On the
other hand, as and when any one of the client, or the master
reports its state as DOWN while the framework is UP, the
framework state would be changed to DOWN, and all clients
and the master would be let know about the change.

Change-Id: Ief6f26c5d5626c29246472ad71c247d71ee9e92f
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2018-08-22 10:34:32 -07:00
Linux Build Service Account
b94000b1af Merge "asoc: swr: Add new parameters for swr port" 2018-08-10 13:24:08 -07:00
Linux Build Service Account
76cf2831d9 Merge "soc: soundwire: Fix wsa mute issue for stereo playback" 2018-08-10 10:24:46 -07:00
Ramprasad Katkam
9e90df7393 asoc: swr: Add new parameters for swr port
Add wordlength and lanectrl parameters for swr port.

Change-Id: Id36a1b0750b7e8f13e4d1eed6a9abaddc2f39a83
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-08-10 16:11:08 +05:30
Linux Build Service Account
b7d3f59c2a Merge "asoc: codecs: Tanggu TX RX changes" 2018-08-07 10:00:30 -07:00
Linux Build Service Account
7c16441c93 Merge "Asoc: swr: Handle MBHC and IRQ interrupts from tx slave" 2018-08-07 08:53:13 -07:00
Laxminath Kasam
846ad08f10 soc: soundwire: Fix wsa mute issue for stereo playback
When stereo playback start and temperature read
initiated at same time, one of speaker PA bits are
not set in particular race scenario. Handle the
broadcast check in soundwire framework to ensure
broadcast is disabled only when respective gr_sid
slave calls swr_remove_from_group.

Change-Id: I6f82a8c3c0f39dc20c1def09c1728ce4c26c2f5d
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-08-07 10:01:12 +05:30
Laxminath Kasam
3fda075378 soc: swr-wcd-ctrl: Fix wsa mute issue for stereo playback
When temperature on a single wsa881x device is being read,
then soundwire master wakes up both wsa881x devices but
regcache_sync is happening only for one wsa881x device on
which the temperature is being read. This results in
audio playback mute after temperature read. Fix the
regcache sync during temperature read and playback usecase.

Change-Id: I856b96517c629ac685bbc25caabee841037106c8
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-08-07 10:00:07 +05:30
Rohit kumar
759426ec4b ASoC: Add WCD937X slave and core driver
Add wcd937x swr slave and codec driver.
This adds only basic support for codec registration.

Change-Id: I87519a234f14d34a019c8f66652b7224759e639c
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
2018-08-06 20:53:13 +05:30
Vatsal Bucha
6824cec26b Asoc: swr: Handle MBHC and IRQ interrupts from tx slave
Interrupts will be handled by slave driver. This
needs slave pointer to store virtual interrupt and
pass it as a parameter to handle_nested_irq.

Change-Id: I356102a04b4fda7e5863f809cd848d7a82b82f36
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2018-08-06 07:16:23 -07:00
Laxminath Kasam
144eabc3ee audio: Add support for audio on msmsteppe
Update config file and make rules for msmsteppe
compilation.

Change-Id: I374a0725a7dd36edc9e04652fb07dc719310565c
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-07-31 11:23:46 +05:30
Laxminath Kasam
fbcaf32428 soc: swr-ctrl: Update master controller for WSA mute issue
Add delay in master read/write fifo for slave register update.
Handle pm runtime for clock disable to happen after usecase.

Change-Id: Ia1abc4ee3db500cbc8f42b9f08760463fb77acef
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-07-20 10:48:35 +05:30
Linux Build Service Account
d1db0560b8 Merge "soc: pinctrl-lpi: Add support to read lpi offset from device tree" 2018-06-20 08:52:49 -07:00
Linux Build Service Account
d69c855747 Merge "ASoC: Add support for audio drivers compilation on kernel-4.14" 2018-06-19 12:12:33 -07:00
Aditya Bavanari
d7ec18ce76 soc: pinctrl-lpi: Add support to read lpi offset from device tree
In order to support variable lpi offsets from different chipsets
read the lpi offset values of gpio groups from device tree. Any
target which uses LPI has to define this gpio offset table
in device tree.

Change-Id: I3bd54017e4571deb9a189cfd6903698887a6413a
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2018-06-19 16:27:22 +05:30
Ramprasad Katkam
e80ab29892 asoc: swr: Add config flag for New soundiwre driver compilation
Add new kconfig to control compilation of new soundwire driver

Change-Id: I6eb8b30de9f6dc2ffa152b6dfffbc2b02d0a990c
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-06-19 00:36:27 -07:00
Sudheer Papothi
8d34b2e801 ASoC: Add support for audio drivers compilation on kernel-4.14
Add support for audio drivers compilation on kernel-4.14.

Change-Id: Id7689cef4ae7cdb6711fed386d2a6b0d427b3fc3
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-06-19 03:43:54 +05:30
Ramprasad Katkam
9f040f339f Asoc: swr: New soundwire master driver
New soundwire master driver to support multi master
for Talos/vipertooth.

Change-Id: I2616b940339e8f3d8d120e6705247d7bd1656bac
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-06-18 12:07:47 +05:30
Ramprasad Katkam
e38aed40db Asoc: swr: Bus Driver changes to support new master driver
soundwire bus driver changes to support new soundwire
master driver for Talos/vipertooth.

Change-Id: I70e52a72edd80abc72ccb99b29b1a642debec257
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
2018-06-14 00:39:50 +05:30
Mangesh Kunchamwar
0bf1f57c59 asoc: config: configuration update for QCS405 machine driver
Add configuration updates for enabling QCS405 machine driver

Change-Id: I5a426730388aeafcdd6fb2e7c6d4cc7a0af78e1c
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2018-06-12 19:20:17 +05:30
Vignesh Kulothungan
9ca8dc327c soc: soundwire: Add support to listen for DC detection
Add support to listen for DC detection event.
Shutdown WSA on receiving DC detection event.

CRs-Fixed: 2244131
Change-Id: Ifecab8bb9862976a647a161bad4c202b6e6459c7
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
2018-06-07 09:00:56 -07:00
Salendarsingh Gaud
ad978894b9 Configure CONFIG_ARCH to enable compilation
Use CONFIG_ARCH_SM6150 for Talos to enable
proper compilation.

Change-Id: I14e06122116c431bf4b99da3a061d165f68e0d4f
Signed-off-by: Tanya Dixit <tdixit@codeaurora.org>
2018-05-16 17:48:18 +05:30
Abhishek Arpure
6d74b706f0 Initial Android target definition for msmsteppe
Add MSMSTEPPE in the makefile rules to enable
compilation for SDM640.

Change-Id: I36437404d98229c8b292fd63304498122d8c8687
Signed-off-by: Tanya Dixit <tdixit@codeaurora.org>
2018-04-26 18:28:03 +05:30
Xiaoyu Ye
60c105d5c9 audio-kernel: update chipset name
Update all audio drivers to use updated chipset name in
files, functions, architecture specific configurations
and the device tree compatible strings.

Change-Id: I507948866213ddb8806edea71a57c1f29ce7e71b
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2018-04-18 10:34:42 -07:00
Linux Build Service Account
5f0b5040eb Merge "ASoC: Add audio support for sdmshrike" 2018-04-16 10:12:01 -07:00
Banajit Goswami
f58e5fcf72 audio-kernel: update chipset name
Update all audio drivers to use updated chipset name
in architecture specific configurations and the device
tree compatible strings.

Change-Id: Ib1abe643c6914c1b0b57ef110c7b60e23e356d97
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2018-04-11 16:18:52 -07:00
Sudheer Papothi
e3842cf831 ASoC: Add audio support for sdmshrike
Add audio support for sdmshrike.

Change-Id: I0b86ab7b123a3215617b81a645202785f6810d02
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2018-04-11 10:53:22 -07:00
Linux Build Service Account
4a46b4ca0a Merge "soc: soundwire: use pm runtime function to tear down soundwire master" 2018-03-21 01:40:56 -07:00
Linux Build Service Account
5d5790373e Merge "ASoC: Change PRODUCT_OUT to OUT in Kbuild" 2018-03-12 12:13:54 -07:00
Xiaojun Sang
f7dd63a169 soc: soundwire: use pm runtime function to tear down soundwire master
Use pm_runtime_put_sync_suspend to tear down soundwire master.
It makes sure the process is synced with the autosuspend call
flow.

Change-Id: Ib4feccd905bcbf046e58bd5eaffde40ee391feda
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
2018-03-08 15:20:55 -08:00
Linux Build Service Account
f1ed0f04bf Merge "ASoC: Fix WSA enumeration failure" 2018-03-08 04:02:53 -08:00
Meng Wang
e61ddb01f8 ASoC: Change PRODUCT_OUT to OUT in Kbuild
Update module symbol folder from PRODUCT_OUT to OUT.

Change-Id: I4542c3d2b5e9e39b69f15954ef425c1915a58456
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2018-03-07 11:18:35 +08:00
Linux Build Service Account
9ebd03032c Merge "ASoC: rmmod fixes for audio drivers" 2018-03-02 23:16:37 -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
Laxminath Kasam
55c9551773 ASoC: Fix WSA enumeration failure
In SDM450, WSA reset pin is shared for both WSA left
and right speakers. When reset pin toggled, both devices
enumerate and can be filled in any order in SWRM_DEV list.
But get_logical_address loops only once for first slave
addition and fails if the device entry is present at second
in SWRM_DEV list. Update logic of get_logical_address to
loop through max devices possible.

CRs-Fixed: 2196399
Change-Id: Ie31cea5a9b22e09a3c5c01e177cd1b78e8d2f28d
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-02-28 21:56:56 -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
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
3c88f61439 ASoC: update softlink for internal.h, core.h and pinctrl-utils.h
update softlink for internal.h, core.h and pinctrl-utils.h for sdm855

Change-Id: I3e92e8da1ab1bbfce7fbb92c6997af22777925dc
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2018-01-23 14:39:15 +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
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
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
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
d36dc15e53 Merge "asoc: sdm660: update cpu_dai_name for quin_tdm" 2017-10-25 09:56:55 -07:00
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
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
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
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
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