Commit Graph

175 Commits

Author SHA1 Message Date
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
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
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
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
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
1c88acb93b Merge "dsp: fix logic to send AFE calibration for TDM AFE ports" 2017-09-25 06:14:20 -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
Linux Build Service Account
9c14ec875e Merge "dsp: fix dangling pointer access" 2017-09-20 17:55:30 -07:00
Linux Build Service Account
19d7949681 Merge "dsp: allocate contiguous memory for version information" 2017-09-20 17:55:21 -07:00
Aditya Bavanari
a8aea17ddd dsp: fix dangling pointer access
Assign the circular buffer address to port buffer only after ION
allocation is succesful to fix dangling pointer access.
Also, lock the circular buffer memory allocation in order to
avoid multiple allocations for a port.

CRs-Fixed: 2096407
Change-Id: I22c1d55ea611ac59cdca51924787f6831bad8c2b
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-09-15 11:33:28 +05:30
Linux Build Service Account
4b813164fc Merge "dsp: add CELT encoder support" 2017-09-14 04:20:54 -07:00
Linux Build Service Account
ed02dabfb7 Merge "dsp: fix 2nd channel mute in VPRx out for Stereo EC ref" 2017-09-14 04:20:50 -07:00
Siena Richard
2d0102dd44 dsp: allocate contiguous memory for version information
Allocate contiguous memory for version information instead of splitting
it across the stack and heap to centralize memory and improve
readability.

CRs-Fixed: 2104576
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Change-Id: Id7b5942522da6312da57bfef3d3c0b55934fe1d7
2017-09-13 11:15:43 -07:00
Tanya Dixit
861a8fa60c dsp: fix no recovery after SSR/PDR
Add apr_reset for q6core service to enable glink channel
to close and open properly after SSR.

CRs-Fixed: 2099312
Change-Id: Ia023cdb19a6a9dc7fae3e5c28ab51ddd92d37527
Signed-off-by: Tanya Dixit <tdixit@codeaurora.org>
2017-09-12 15:50:47 +05:30
Aditya Bavanari
245361df38 dsp: fix 2nd channel mute in VPRx out for Stereo EC ref
In Stereo EC reference, mute is observed in VPRx output
of 2nd channel when only speaker device uses custom MFC topology.

When handset and speaker use the same custom topology, issue is not
observed. Because when DSP VPRx module creates the
custom topology with handset configuration (1 channel and
center channel mapping) and device switch to speaker occurs
MFC conversion from center to left and right channels is successful.

But in case where handset uses default topology, when device
switch to speaker occurs, VPRx creates the custom topology
with speaker configuration(2 channels and left mapping). So,
when MFC config is received, only left->left mapping is done which
leads to mute in right channel.

Fix is to send the channel mixer configuration to MFC module
so that both left->left and left->right mapping is done.

CRs-Fixed: 2102374
Change-Id: If9be09866615e6623e78f48b9841eb068c825992
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-09-11 23:02:33 +05:30
Aditya Bavanari
f0cb90b1f7 dsp: assign channel mapping for Quad Mic use case
Assign channel mapping for Quad Mic voice use case
in channel info command during voice setup
as DSP requires channel mapping to be sent with
default values.

CRs-Fixed: 2097341
Change-Id: I661f845c26f8639e5e8dffa430ecc8cb3b3e8780
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-09-11 23:02:26 +05:30
Preetam Singh Ranawat
5402849018 dsp: add CELT encoder support
Add CELT encoder support to enable audio broadcast over split a2dp.

Change-Id: If0d927913c5e525ff1cebf857323ab70be2122a1
Signed-off-by: Preetam Singh Ranawat <apranawat@codeaurora.org>
2017-09-06 03:58:45 -07:00
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
Asish Bhattacharya
34504581a0 audio-lnx: Add snapshot of audio drivers from below commit.
(1996ec83a45: "ARM: dts: msm: Reduce CNOC bus voting for
        USB slave on SDM845")

This change is to migrate latest snapshot of kernel drivers.

Change-Id: I84669db544773d3ce9d2d5dff0ab6943bd7d8ff9
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
2017-08-18 16:56:12 -06:00
Laxminath Kasam
d1f3619bef audio-lnx: Propagate changes from kernel for wdsp-glink/avtimer
Pick the WDSP-Glink and avtimer drivers from 4.9 kernel
at below cutoff -

(80be7d6a313 - "msm: ADSPRPC: Fix for NULL pointer dereference")

This changes are done to migrate wdsp-glink/avtimer drivers
to this new audio kernel techpack.
Also remove the CDSP loader from techpack audio as it is
non-audio related.

Change-Id: I4f55429c5cbcd24920fdcb8eb2fe3aec02af320e
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-08-18 16:56:12 -06: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