Commit Graph

37 Commits

Author SHA1 Message Date
Karthikeyan Mani
5755008e6d asoc: msm-pcm-routing: add audio routes for DP MST
Add audio routes to support Display Port audio MST.
Each end device controller stream adds a route.

Change-Id: Ifb2ea38ad38efaff17e0a9502e03b5b6a0c2de45
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2018-05-17 11:46:14 -07:00
Aniket Kumar Lata
c0c314765f asoc: dsp: Add support for adaptive bitrate
Add support for adaptive bitrate with A2DP offload.
Set up Tx feedback path on SLIMBUS_7_TX from BT SoC
to LPASS. Configure AFE encoder and decoder for ABR.
Add bit width support to configure AFE port with
32bit for BT A2DP.

Change-Id: I8e0afaf52561e5dc70318240ba238fc42844501f
Signed-off-by: Aniket Kumar Lata <alata@codeaurora.org>
2018-04-29 15:59:32 -07:00
Linux Build Service Account
d4afb8cabf Merge "ASoC: add missing mixer control and routings for MI2S" 2018-04-29 08:44:05 -07:00
Meng Wang
92edfde1e9 Revert "ASoC: disable source tracking get functionality for sdm855"
This reverts commit 85b6208522
(ASoC: disable source tracking get functionality for sm8150).
Enable source tracking get functionality as the feature is
completely enabled.

Change-Id: I099fae3155f486f1fe89dbdad97c8cb1029f14df
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2018-04-27 14:30:07 +08:00
Meng Wang
5c4bab792d ASoC: add missing mixer control and routings for MI2S
Add missing mixer controls/widgets and routing paths
to avoid audio error logs during bootup.

Change-Id: I3c23cd3e5d1e5e95fcad5f49e3827ef26587e2a3
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2018-04-25 10:45:33 +08:00
Meng Wang
05d5e9aeed asoc: fix possible overflow issue for routing driver
The reg in soc_mixer_control is 32-bit. When using
SOC_SINGLE_EXT, the value of FE DAI ID which is passed
as shift(to be operated on the reg) may be more than 31,
which may cause overflow.
Use SOC_DOUBLE_EXT instead of SOC_SINGLE_EXT so that the
reg field can be set to SOC_NO_PM to avoid any DAPM operation,
while passing BE and FE IDs in shift and rshift fields. And
these values can be retrieve in get/put functions and use them.
This is to avoid any possible overflow in DAPM operation.

Change-Id: I17fa4e059889ae725e6f015a779f518e6d0a813f
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2018-04-09 10:01:23 +08:00
Vikram Panduranga
770b8383d2 dsp: Mark cal block after use
After applying calibration on DSP, cal block
is marked stale to ensure same calibration is not
reused for future usecase.

Change-Id: I9f446c0602f4ab34ca71b9d2611319624fb19cd2
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
2018-03-16 17:54:53 -07:00
Linux Build Service Account
15751124fa Merge "asoc: Add new dais to support compress record" 2018-03-09 03:24:44 -08:00
Vignesh Kulothungan
60cc03517f ASoC: dsp: Update ADM driver to support Instance ID
Add support to set and get ADM module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.

CRs-Fixed: 2151551
Change-Id: I5ef920448dd827d8a315e248087997f703061263
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
2018-03-04 23:21:10 -08:00
Sachin Mohan Gadag
7c944235ae asoc: Add new dais to support compress record
Add new dais to support compress record usecase.
Update media_encoder_format api to v4 version in
compress driver.

CRs-Fixed: 2167556
Change-Id: I8a2f8a4cdcec4bb31ad94730eb4f1259e800c70c
Signed-off-by: Sachin Mohan Gadag <sgadag@codeaurora.org>
2018-03-04 18:54:41 -08:00
Vignesh Kulothungan
5c10992ad9 ASoC: Expose APIs to get and set Instance ID support
Expose APIs to get and set instance ID support by exposing a
mixer control for userspace to set the support status as well
as APIs for kernel components to querry for instance ID support.

CRs-Fixed: 2151551
Change-Id: I3b462a4c0f31152a2865af8f4e9664a6c4d324c3
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
2018-03-03 15:14:11 -08:00
Karthikeyan Mani
9f66f6f684 asoc: msm: Update routing and FE DAI drivers
Update routing driver with port mixer commands between
primary and secondary interfaces to enable AFE lopback
between them. Update FE DAI driver to add hostless FEs
for primary/secondary Auxpcm and secondary MI2S.

Change-Id: I792e1cf4e0600d3b4726624e29e73e67828a3935
Signed-off-by: Viraja Kommaraju <virajak@codeaurora.org>
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2018-02-28 18:53:00 -08:00
Linux Build Service Account
b0ed99ddc6 Merge "ASoC: disable source tracking get functionality for sdm855" 2018-02-15 17:52:29 -08:00
Meng Wang
85b6208522 ASoC: disable source tracking get functionality for sdm855
Disable source tracking get functionality for sdm855 till
feature is completely enabled

Change-Id: Id644fa46d95bd1091502b1c5ae4cce3bb64d633e
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2018-02-07 17:15:03 -08:00
Aditya Bavanari
5106b5627c dsp: fix low volume in audio recording
ADM calibration is not sent in audio recording
use case which leads to low volume issue.
Since the LSM port ID is same as audio recording
port ID in case of internal codec, driver tries to
send LSM calibration for non LSM use case in which case
no calibration will be sent.
Instead of using port ID, use the pass_thr mode to
differentiate between LSM and non LSM use cases.

CRs-Fixed: 2167317
Change-Id: I1b6ea51d83330f6439791cf1bb6170306f6895b0
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2018-01-29 21:36:26 -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
9c81253780 Merge "dsp: add support for new ADM LSM cal types" 2017-12-16 03:09:26 -08:00
Linux Build Service Account
5492c58b13 Merge "ASoC: qdsp6v2: Add Audio EC Ref routing to LSM FEs" 2017-12-16 03:09:20 -08:00
Linux Build Service Account
463b274f59 Merge "dsp: assign channel mapping to three channel voice Tx devices" 2017-12-16 03:09:17 -08:00
Aditya Bavanari
2a627ae4bb dsp: add support for new ADM LSM cal types
Add support for new ADM LSM cal types in order
to avoid topology and cal block overriding during
concurrent use cases like SVA with speaker
protection.

CRs-Fixed: 2085865
Change-Id: I155d29ff0b77b069aa5970408332064c5c2aebd7
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-12-12 12:22:09 +05:30
Yunfei Zhang
3efc4a220f ASoC: qdsp6v2: Add Audio EC Ref routing to LSM FEs
Add routings between LSM FEs and Audio EC Ref, or AFE port for
external Audio EC Ref will not be enabled during DSP SVA.

Change-Id: Ic70ee9479cd384d0226ac0e92a1824f92ec2d946
Signed-off-by: Yunfei Zhang <yunfeiz@codeaurora.og>
2017-12-10 18:29:47 -08:00
kunleiz
df5a00af69 ASoC: msm: qdsp6v2: Remove unused dapm routings
Clean up unused routings from dapm routing map.

CRs-Fixed: 2149819
Change-Id: I056e8ca14d75262844616c7c831bec450d809d48
Signed-off-by: kunleiz <kunleiz@codeaurora.org>
2017-12-08 19:32:47 +08:00
Aalique Grahame
e4fd7d5484 ASoC: Enable display-port for voice calls
Add mixer controls to enable voice calls over
display-port.

CRs-Fixed: 2151849
Change-Id: Id245b9c5b97d55c1db60e897954cc94eecd7f42d
Signed-off-by: Aalique Grahame <agrahame@codeaurora.org>
2017-12-08 03:31:26 -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
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
kunleiz
8a60b82da9 ASoC: msm: qdsp6v2: Remove unused FE DAIs
Clean up unused FE DAIs and remove duplicate
routings from dapm routing map for MI2S_RX_VOICE
Mixer.

CRs-Fixed: 2001153
Change-Id: I2c9bd1255331d83b1901915259fe61d287f682fc
Signed-off-by: kunleiz <kunleiz@codeaurora.org>
2017-11-16 02:51:40 -08:00
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
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
Linux Build Service Account
7deefbcc90 Merge "asoc: msm: add support for quinary interfaces in dai and routing driver" 2017-09-26 23:17:34 -07:00
Linux Build Service Account
58262a8d49 Merge "asoc: send effect config based on apptype" 2017-09-26 23:17:34 -07:00
Rohit Kumar
a507793028 asoc: msm: add support for quinary interfaces in dai and routing driver
Add support for dais and routing for Quinary MI2S, AUXPCM and TDM
interfaces.

Change-Id: I50c3099a658998bab805c4c6a5aa447e85f3e7c6
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
2017-09-26 01:37:41 -07:00
Vikram Panduranga
ee9c03a81e asoc: send effect config based on apptype
Add support to configure a specific module and its parameter on adm
based on apptype. This can be used to dynamically configure a module
provided by application.

Change-Id: Iccfee192b0dec505bbb5f65a251e0dd12432fe59
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
2017-09-18 14:48:33 -07:00
Vikram Panduranga
016c49fa46 ASoC: add routing entries for Multimedia10 and Multimedia16
Add missing FE to BE links for Multimedia10 and Multimedia16
which can resolve FE to BE routing failures.

Change-Id: I9f889d88fe520f7efa83c2e2058995fa955c82cb
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
2017-09-15 11:47:14 -07:00
Vikram Panduranga
72863154a8 ASoC: add SLIM_7_TX routing for Multimedia10
Add missing FE to BE link for Multimedia10.

Change-Id: Ibf9a80c942107b1f68b5954b21f87d4f7494b1fc
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
2017-09-08 16:44:08 -07:00
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
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