Commit graph

1,111 commits

Author SHA1 Message Date
Vatsal Bucha
79da9fb84a ASoC: wcd937x: Fix pop after PDR
Pop is heard after PDR is triggered. This is
because while device down PA is still on.
Disable PA before SSR device down to prevent pop.

Change-Id: I6bfe3e731bdf60fba8fee90ab39c03a0512006ce
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2018-11-19 14:41:52 +05:30
Vatsal Bucha
53b4e14f94 ASoC: bolero: Add callback to tanggu in SSR Disable
Add callback event in ssr_disable to disable
tanggu PA before regcache_cache_only
to avoid pop after PDR. Also update proper bit
while RX Mute.

Change-Id: I06402269d393ca74c11611482cafbde03f4c62b9
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2018-11-15 11:40:25 +05:30
Linux Build Service Account
71d091e2ec Merge "asoc: wcd937x: move export functions to new header" 2018-11-13 21:59:22 -08:00
Linux Build Service Account
f9a3368f0e Merge "asoc: codecs: bolero: Add HPH power modes on bolero" 2018-11-13 21:59:20 -08:00
Linux Build Service Account
5cdd74d98c Merge "soc: swr-mstr: Update class-H port params" 2018-11-13 08:08:23 -08:00
Laxminath Kasam
838f0b885f asoc: wcd937x: move export functions to new header
For export functions from wcd937x use separate
header as internal header is only supposed to be
used within wcd937x driver logic.

Change-Id: Ice373ff95f7166a2f968458b25223c582edc7fba
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-11-12 21:49:59 +05:30
Laxminath Kasam
de09dfb301 asoc: codecs: bolero: Add HPH power modes on bolero
Two power modes are supported on bolero digital.
Add support to set required power mode using
mixer control and enable runtime during powerup
sequence.

Change-Id: I4c5a7560984d60745ac98848f1eec1d1f8485323
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-11-12 20:19: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
Mangesh Kunchamwar
1face6aa6d dsp: fix issue with MDF shared memory access in CDSP for QCS403
SMMU is not enabled on CDSP and shared memory to CDSP doesn't need
SID. Default SID from audio ION was being added in 32bit builds.
Avoid adding default SID for MDF shared memory for CDSP.

Change-Id: I5e35396fc90071f96e1042c5e08eafe4226c240b
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2018-11-06 18:03:46 +05:30
Linux Build Service Account
408ba7c759 Merge "asoc: wcd937x: disable TX CH2 after power down" 2018-11-05 21:39:05 -08:00
Linux Build Service Account
ab1a6c2a63 Merge "dsp: afe: change lock sequence to avoid deadlock" 2018-11-05 21:39:03 -08:00
Linux Build Service Account
2a2963bf38 Merge "dsp: fix issue with MDF shared memory access in QCS403" 2018-11-05 21:39:00 -08:00
Linux Build Service Account
2ae2328796 Merge "asoc: msm-lsm-client: Update lsm client driver to prevent buffer overrun" 2018-11-05 21:38:56 -08:00
Linux Build Service Account
d577325ee4 Merge "asoc: qcs405: add machine driver support for SLIMBUS_9_TX" 2018-11-04 19:08:06 -08:00
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
563b443fcd Merge "dsp: increase afe apr_send_pkt timeout to 2 seconds" 2018-11-04 19:08:04 -08:00
Dhananjay Kumar
4867dc18a8 asoc: msm-lsm-client: Update lsm client driver to prevent buffer overrun
ADSP, userspace and LSM client driver, all these three layer are maintaining
independent buffers and rewrite them irrespective of the buffer being read
successfully by their client or not.
Before switching to real-time capture, history buffers cached can be returned
with minimal delay and may lead to overrun in a module if buffering in the
module is not sufficient to store all those data generated almost instantaneously.
LSM driver having buffer size smaller than history buffer duration is hitting
this issue and resulting in buffer overrun for even a small delay from userspace
in start of capture processing thread.
Prevent this issue by synchronising read and write in LSM driver to make
sure the driver waits for read from userspace before writing the same buffer again.

Change-Id: I2710b484a7ef03e8314c7ba05bf729893aecb890
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
2018-11-02 19:54:00 +05:30
Linux Build Service Account
fbcc12e319 Merge "ASoC: correct read size return value for erroneous conditions" 2018-11-02 02:54:27 -07:00
Linux Build Service Account
42a69eda3d Merge "asoc: qcs405: add A2DP sink support in machine driver" 2018-11-02 02:54:25 -07:00
Linux Build Service Account
17c1ef34d2 Merge "ASoC: msm: routing: add ec ref for sec and tert tdm" 2018-11-02 02:54:24 -07:00
Linux Build Service Account
aeb99f98ef Merge "Initial Android target definition for trinket." 2018-11-02 01:53:32 -07:00
Linux Build Service Account
8d72268cd2 Merge "dsp: add BT sink support in AFE driver" 2018-11-02 01:53:31 -07:00
Xiaojun Sang
80eb5ddfdd asoc: wcd937x: disable TX CH2 after power down
TX channel2 is not disabled after power down. It leads to
noise at the beginning of next recording on CH2.
Disable it after power down.

Change-Id: If12a84df52b9c8cd55de2bdcb91f950b054898b8
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
2018-11-02 12:42:50 +08:00
Vidyakumar Athota
aade87e1f2 dsp: increase afe apr_send_pkt timeout to 2 seconds
Some USB headsets take more than 1 second to respond
for afe port start command so increase the timeout value
to support playback on slow responsive USB headsets.

Change-Id: I76c43bafe3c9e1e2d8a4a23059053db6bfc0188b
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2018-11-01 11:09:57 -07:00
Mangesh Kunchamwar
68a4a15c78 dsp: fix issue with MDF shared memory access in QCS403
MDF shared memory uses different SID from other use cases.
Existing memory map function hard codes SID from audio ion.
Use separate map function for MDF to make use of proper SID
for MDF shared memory in 32bit build.

Change-Id: I0e854054ad6f58344644f3386618986eab238549
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
2018-11-01 23:36:18 +05:30
Derek Chen
2bb55777d4 ASoC: msm: routing: add ec ref for sec and tert tdm
Add ec reference support for SEC_TDM_TX_0 and
TERT_TDM_RX_2 ports.

Change-Id: I3116b942fbd3c6c7bea14a77fdcd840dcab059aa
Signed-off-by: Derek Chen <chenche@codeaurora.org>
2018-11-01 09:26:27 -07:00
Linux Build Service Account
f5a1eb31f5 Merge "asoc: Add effects controls in loopback driver" into audio-drivers.lnx.3.1 2018-11-01 01:49:04 -07:00
Surendar Karka
05392ab0da asoc: qcs405: add machine driver support for SLIMBUS_9_TX
Add machine driver code to support SLIMBUS_9_TX port.
SLIMBUS_9_TX BE port is used for split A2DP sink usecase.

Change-Id: I9628a46c4b2b2fe0f5fb8c9861975fd4630bdcdb
2018-10-31 23:16:24 -07:00
Florian Pfister
cc99c35118 asoc: qcs405: add A2DP sink support in machine driver
Add support to configure sample rate for SLIM_9_TX.

Change-Id: Icea2b7c707840be60a23707947c9811e83e4789d
Signed-off-by: Florian Pfister <fpfister@codeaurora.org>
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
2018-10-31 23:15:46 -07:00
Florian Pfister
522073c370 asoc: add A2DP sink support in dai-driver
Add decoder config support for split A2DP sink.

Change-Id: If71a2b2ae7f0f0500f196b0552ab185c9f37b778
Signed-off-by: Florian Pfister <fpfister@codeaurora.org>
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
2018-10-31 23:14:59 -07:00
Florian Pfister
f1b8d5bdea dsp: add BT sink support in AFE driver
Add different media format support in AFE decoder.

Change-Id: Icdc3884882c34236f5ab02355dfbabdd2a1becd2
Signed-off-by: Florian Pfister <fpfister@codeaurora.org>
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
2018-10-31 23:14:03 -07:00
Weiyin Jiang
4e6bb44f61 ASoC: correct read size return value for erroneous conditions
Wrong return value of in_read() causes integer overflow in omx,
which aborts the process. Correct the return value for erroneous
conditions.

CRs-Fixed: 2336645
Change-Id: Ib01827adc92700876f3b11816857f0086b1b5f94
Signed-off-by: Weiyin Jiang <wjiang@codeaurora.org>
2018-11-01 11:21:32 +08:00
Xiaojun Sang
41de9e1640 dsp: afe: change lock sequence to avoid deadlock
Lock sequence for afe_alloc_cal does not comply with others. To
avoid deadlock, move afe_cmd_lock to the top caller in AFE.

Change-Id: I4ce03034c642c8b5e7e9e5e2ff4c73644980484b
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
2018-10-31 03:08:26 -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
Trinath Thammishetty
d49fecb934 asoc: Add effects controls in loopback driver
Add audio effects related controls in transcode loopback driver to
support audio effects in hardware loopback usecase.
Update transcode loopback driver to support configuration of DSP render
window. Render window is used by DSP to take rendering decision.
i.e whether input frame should be rendered, dropped or repeated.

Change-Id: I09bb725d980b8051eae3a245584e2b66cd2af7ff
Signed-off-by: Trinath Thammishetty <tthamish@codeaurora.org>
2018-10-31 02:36:34 -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
Linux Build Service Account
1ab95845cf Merge "soc: swr-mstr: Avoid race condition during device up" 2018-10-26 02:05:44 -07:00
Linux Build Service Account
04804945eb Merge "asoc: bolero: Fix gfmux access during SSR" 2018-10-25 19:21:08 -07:00
Linux Build Service Account
1563894fb6 Merge "asoc: add limit checks for copp index" 2018-10-25 19:21:06 -07:00
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
f79c5c1f41 Merge "asoc: codecs: Add proper NULL checks and initialize variables" 2018-10-25 03:13:39 -07:00
Linux Build Service Account
e524ae06a4 Merge "dsp: adm: change channel number for SMECNS_V2 module" 2018-10-25 03:13:33 -07:00
Linux Build Service Account
6bbd1d460e Merge "asoc: wcd937x: initialize micb lock mutex" 2018-10-23 21:52:56 -07:00
Laxminath Kasam
701e358482 asoc: bolero: Fix gfmux access during SSR
Avoid access of gfmux register during SSR/PDR.
Reset the gfmux state to MCLK_MUX0 after
SSR up event in rx macro.

Change-Id: I2ac611049efd3ce9d03bc9dcd912f64887a23679
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2018-10-24 00:53:52 +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
739ddacb9b Merge "ipc: wcd-dsp-glink: increase timeout to 2 seconds" 2018-10-23 01:32:56 -07:00
Linux Build Service Account
28267437a4 Merge "dsp: msm_audio_ion: unmap dma only if unmap kernel succeeds" 2018-10-23 01:32:54 -07:00
Linux Build Service Account
8f1c3e3970 Merge "ASoC: msm: add tdm clk ref count" 2018-10-23 01:32:53 -07:00
Linux Build Service Account
8d33594d66 Merge "asoc: bolero: avoid TX distortion by runtime HPF param change" 2018-10-23 01:32:51 -07:00