summaryrefslogtreecommitdiff
path: root/sound/soc
AgeCommit message (Collapse)Author
2016-04-05ASoC: msmcobalt: Machine driver changes for kernel 4.4Sudheer Papothi
Incorporate kernel 4.4 changes on msmcobalt machine driver. Change-Id: I74539e626c641c78c4b1ed759e0b9da1b82e89cf Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-04-05ASoC: msmcobalt: Add machine driver support for msmcobaltSudheer Papothi
Add DAI(Digital Audio Interface) links, gpio and clock configuration needed to support audio functionality on msmcobalt. Change-Id: Ie176b5e67263e56b296ae144e1a414b4bfa51e80 Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-25ASoC: msm: qdsp6v2: Add TERT_TDM_TX_0 as an ec ref channelDerek Chen
Add necessary paths/dapm routes for AUDIO_REF_EC_UL1 Mux to select newly added TERT_TDM_TX_0. CRs-fixed: 981200 Change-Id: I5349598519a7889dbcc840615556bf6bf4d2e3c1 Signed-off-by: Derek Chen <chenche@codeaurora.org>
2016-03-25ASoC: audio-ext-clk: Change gpio default value to -1Yeleswarapu Nagaradhesh
During stability test, gpio_direction_output is invoked with msm gpio 0 which is leading to PC NOC error as audio is not expected to access this gpio. Hence initialise gpio to -1 and check if gpio is valid before using. CRs-Fixed: 973438 Change-Id: I32d779974f4eb497c62035f7f46c10739ebcfe5f Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2016-03-25ASoC: WCD9335: add support for I2C bulk writeDeven Patel
add support for I2C bulk write functionality CRs-fixed: 985242 Change-Id: I1150c98bab51cc71fa76fc0e56f3cd4762df5729 Signed-off-by: Deven Patel <cdevenp@codeaurora.org>
2016-03-25ASoC: wcd_cpe_core: initialize return variableYeleswarapu Nagaradhesh
The return variable is initialized if there is an error and is left uninitialized otherwise. There is a possibility of returning garbage. CRs-Fixed: 980968 Change-Id: I2a21ef7934472ae2fd59d6277df4b3e9b401b489 Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2016-03-25ASoC: wcd: update handling of invalid casesYeleswarapu Nagaradhesh
initialize return variable and add default case inside the switch statement. CRs-Fixed: 980968 Change-Id: If1fe566a8f88f1384826670220b8352310a3f996 Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2016-03-25ASoC: Initialize val to avoid access garbage valueLaxminath Kasam
In DAPM, when booting up widgets connect variable is sometimes initialized with value 1 even though expected to be 0. This is due to val not initialized locally in API dapm_set_mixer_path_status and can result in using garbage value. CRs-Fixed: 982805 Change-Id: I172558f64c19750c461befda3aa16ca6480ab507 Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2016-03-25ASoC: wcd-mbhc: Avoid fake headset report during headphone removePhani Kumar Uppalapati
When headphone is removed while 3 second polling is still in progress, mbhc hs comparator result will be read as "0" and this causes reporting a fake headset insert event to user-space followed by headphone removal. Avoid sending this fake headset insert event to user-space by checking for the microphone clamp bit from codec mbhc hardware. CRs-fixed: 941089 Change-Id: I96d96dca92a6c99bbb25ab70a2706e730c28818b Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-03-25ASoC: msm: qdsp6v2: Add missing routing for MI2S interfacesRoberto Granados Dorado
This change adds some routing missing plus few other fixes needed when MI2S interfaces are used. CRs-fixed: 909961 Change-Id: Ic1e234c955a6162d67fd97ac7647ec810ede204c Signed-off-by: Roberto Granados Dorado <robertog@codeaurora.org>
2016-03-25ASoC: msm: qdsp6v2: init tdm group ref on tdm group q6 probeDerek Chen
Initialize tdm group reference count on tdm group q6 probe instead of tdm per dai probe to avoid duplicated init calls. CRs-fixed: 975767 Change-Id: I88bc791fc2bfbb60f1cf6b2faeb6de0c865539c0 Signed-off-by: Derek Chen <chenche@codeaurora.org>
2016-03-25ASoC: wcd9335: Add support for lineout volume adjustmentPhani Kumar Uppalapati
Add mixer controls to adjust wcd9335 codec lineout PA volume adjustment. This gives flexibility for user to modify volume based on use-case. CRs-fixed: 969512 Change-Id: I562f17363d7d38caece358a50d1e3f654d87491f Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-03-23ASoC: wsa881x: Fix compilation warning on kernel 4.4Sudheer Papothi
Fix compilation warning in wsa881x codec on kernel 4.4. Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23ASoC: msm8996: Remove capture support for MultiMedia 4 front endSudheer Papothi
Compress devices in ALSA framework on kernel 4.4 does not support both playback and capture at the same time. So, remove capture support from compress 1 front end dai link as this is not being used by any audio usecase. Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23ASoC: msm: Remove bi-directional support for compress devicesSudheer Papothi
In ALSA framework on kernel 4.4, compress devices are unidirectional and does not support both playback and capture at the same time. Change removes capture support for MultiMedia4 front-end as this is not being used in any of the audio usecases. Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23ASoC: msm: Add support for HW MAD bypass feature for listenVenkata Narendra Kumar Gutta
HW MAD bypass feature is to facilitate input to CPE by avoiding MAD in codec. This is done by routing DEC1 data to CPE. Add the required changes to support this feature. CRs-fixed: 938514 Change-Id: I7788b1475cd22bdea291bcae47f048131b220ce3 Signed-off-by: Venkata Narendra Kumar Gutta <vgutta@codeaurora.org>
2016-03-23ASoC: wcd: enable regulator when micbias is neededMeng Wang
When vdd micbias is connected to regulator, need enable regulator when micbias is needed. To detect special headset, micbias need to be set to 2.7v. Regulator need get enabled before special headset detection. Change-Id: Iae361cabf7b5194e12f5ddc8e32d60cf94bf28c3 Signed-off-by: Meng Wang <mwang@codeaurora.org>
2016-03-23ASoC: msm: qdsp6v2: enable quinary tx interfaceLaxminath Kasam
Add backend to enable quinary tx interface. CRs-Fixed: 978548 Change-Id: If686d642813ee64d2e34966e053ef5210a8ee0a1 Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2016-03-23ASoC: msm: Use legacy ASM APIs for older targetsAshish Jain
With 3.18 kernel, get_session_time command to DSP is updated to new command. This command is not supported on older targets as they have an older DSP version. To have backwards compatibility, based on DSP version choose which command to use. CRs-Fixed: 978676 Change-Id: I76b0cfcd84df90d7a206690cb8aa1eb773fdc53d Signed-off-by: Ashish Jain <ashishj@codeaurora.org>
2016-03-23ASoC: msm: qdsp6v2: Move spin lock init before apr registrationLaxminath Kasam
Move spin lock init for no wait que before apr registration. If apr registration fails asm free client will free the no wait que by acquiring spin lock. Hence spin lock init for no wait que should happen before apr registration. CRs-Fixed: 979701 Change-Id: I5ef85e39ab5e3babfb2e097005c0d1553cc38f51 Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2016-03-23ASoC: msm: Add backend to support split A2DPAshish Jain
Add support to enable Bluetooth A2DP playback via DSP. CRs-Fixed: 978676 Change-Id: I02f2af671bed10e45b764af5cc9a0977a3d9e66e Signed-off-by: Ramlal Karra <rkarra@codeaurora.org> Signed-off-by: Ashish Jain <ashishj@codeaurora.org>
2016-03-23ASoC: msm: qdsp6v2: add route for SEC MI2S Tx voiceViraja Kommaraju
Add Tx route to support voice call over SEC MI2S ports. CRs-Fixed: 964328 Change-Id: Ifda4334dc89d28c51478f8748b43035e3ae855c5 Signed-off-by: Viraja Kommaraju <virajak@codeaurora.org>
2016-03-23ASoC: msm: Add support to query speaker parametersVidyakumar Athota
Add SET and GET parameter APIs to query speaker parameters in feedback speaker protection FTM mode. CRs-Fixed: 974621 Change-Id: I1a51e5033d7836c0c996621593cd2f4dd6982dcd Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2016-03-23ASoC: wcd9335: Add mixer controls for RX INTPn_2 HPF cut-off frequencyNeema Shetty
Added mixer controls for HPF cut-off frequency on the RX interpolator mix-in paths. CRs-fixed: 963405 Change-Id: I4ca4a554c0a83d4053301ca5dd2afb8b09fa5194 Signed-off-by: Neema Shetty <nshetty@codeaurora.org>
2016-03-23ASoC: wcd_cpe_services: Make the worker thread standaloneBhalchandra Gajare
The worker thread can either be stopped through kthread_stop or could return from the function on some conditions. Since thread has two exit points, this is causing a race condition where kthread_stop indefinitely waits for the thread to exit. Make the thread standalone and always call do_exit itself to exit instead of stopping it through kthread_stop. CRs-fixed: 972943 Change-Id: If95cbd6ee895d566887453e98421d1514147441b Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
2016-03-23ASoC: msm: qdsp6v2: Add 32/48KHz sample rate to VoIP driverShiv Maliyappanahalli
Add 32/48KHz sample rate capability to the VoIP driver to allow VoIP application which uses 32KHz/48KHz sample rate to take Voice path. Change-Id: I654b97ffc36b993114899e85706914d99ef44abc Signed-off-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
2016-03-23ASoC: msm: qdsp6v2: Fix compress offload playback failures during SSRVenkata Narendra Kumar Gutta
Compress offload playback failures observed if SSR is triggered during playback. Compress_write is blocked as there are no bytes consumed by the DSP. During SSR, based on the reset events, driver has to update the bytes copied by the DSP so that write gets unblocked. CRs-Fixed: 966659 Change-Id: I24d5bf09b3453f101adb9487298e6fbdfeb15e4a Signed-off-by: Venkata Narendra Kumar Gutta <vgutta@codeaurora.org>
2016-03-23ASoC: msm8996: Add slimbus_6_rx back-end dai-link and hostlessKuirong Wang
Add slimbus 6 playback hostless and slimbus_6_rx back-end dai-link to enable independent backend for different devices during audio playback. Change-Id: Ibc12ca8ad2c99316c52092b74462ecd7bfbded5c CRs-fixed: 940415 Signed-off-by: Kuirong Wang <kuirongw@codeaurora.org>
2016-03-23ASoC: wcd9335: Add codec rx4 daiKuirong Wang
Add codec rx4 dai to support independent backend for different devices. CRs-fixed: 940415 Change-Id: I48b24d81e2047d4d4c299ca60cdbd299e172393e Signed-off-by: Kuirong Wang <kuirongw@codeaurora.org>
2016-03-23ASoC: msm: Update slimbus RX 6 routing and add hostlessKuirong Wang
Update the slimbus RX 6 routing and add the slimbus RX6 hostless to support more use cases. CRs-fixed: 940415 Change-Id: I4fcea97cc4a0c876609fbaa8f5eecf3b4914e776 Signed-off-by: Kuirong Wang <kuirongw@codeaurora.org>
2016-03-23ASoC: wcd-mbhc: Add pointer validation checks in wcd-mbhc-v2.cKarthik Reddy Katta
Check if 'mbhc_cb' is NULL in wcd_mbhc_stop() before dereferrencing. CRs-Fixed: 972101 Change-Id: I3b2348bddb071e5bf7bc2e5d6885bb3c1ba2c195 Signed-off-by: Karthik Reddy Katta <a_katta@codeaurora.org>
2016-03-23ASoC: msm: invert bit clk for afe tdm ports for msm8996Derek Chen
Invert the bit clock for afe tdm ports for msm8996 to align the lpass and ext codec hw clock and avoid bit corruption. Change-Id: Ic36ab733b227a34ebb8401dd11e99f943b0c8839 Signed-off-by: Derek Chen <chenche@codeaurora.org> CRs-fixed: 973480
2016-03-23ASoC: wcd9335: reset the SWR_CH_CNT at session teardownLaxminath Kasam
In speaker protection usecase, if SWR_CH is already set to 2 due to bootup tone playback then the initial calibration fails. As the WSA register writes will fail due to gr_sid will not match with dev_num and temperature read will return negative value. To address this, when session teardown reset the soundwire master channel count in tasha driver. CRs-Fixed: 961023 Change-Id: I80ee0dedac8fa81ce54a0e61c839a97b9b45d36b Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2016-03-23ASoC: msm: Add debug Kconfig for LPASS audio driverPatrick Lai
Introduce new Kconfig for purpose of enabling LPASS audio driver debugging utilities. Initial utility is to induce kernel panic upon encountering error from audio components in ADSP. CRs-fixed: 968775 Change-Id: I9f802f32892d55be83d4b8a6e861ab09f6336093 Signed-off-by: Patrick Lai <plai@codeaurora.org>
2016-03-23Revert "ASoC: wcd-mbhc: Fix plug removal detection from extension cable"Laxminath Kasam
This reverts commit 099e839e730b89630404bfc9a375049ac01b8f93 ("ASoC: wcd-mbhc: Fix plug removal detection from extension cable")'. Headset insertion is giving spurious electrical insertion removal interrupts. Hence headset is not detected properly. This is seen on RCM devices for normal US headset on 8937/msmgold/msmtitanium. On MTP some specific headsets are exhibiting this behavior. Change-Id: Ida016cc29950dabcaaf6bfc1b751e77e3cccd20c Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2016-03-23ASoC: msm: qdsp6v2: move adsp_err to c source filePatrick Lai
In preparation to add more debugging hooks to LPASS driver, convert adsp error code and string conversion functions to C source file. CRs-fixed: 968775 Change-Id: Ic074a318ede4188a8fd603efddce71ed820ee560 Signed-off-by: Patrick Lai <plai@codeaurora.org> Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23ASoC: msm: qdsp6v2: Add support for SENARY_MI2S_TX portVenkata Narendra Kumar Gutta
Add support for SENARY_MI2S_TX port to enable FBSP. This port is configured to send VI feedback data from WSA to ADSP during FBSP. Change-Id: I4fb1beb7bfedbe513ba43a69e67fbcc815d34595 Signed-off-by: Venkata Narendra Kumar Gutta <vgutta@codeaurora.org>
2016-03-23ASoC: msm: qdsp6v2: Correctly free ASM no wait queueBen Romberger
Remove improper deletion of list head and protect list deletion with spinlock. Spinlock protects the list from access in ADSP callback at the same time the list is being deallocated. Change-Id: I1b102cd99e7c80e1dfd4e2054b9ba7e0ca26d6a7 Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
2016-03-23ASoC: msm: qdsp6v2: Modify HW delay debug printBen Romberger
Change the HW delay debug print so it does not seem like an error. Adds comments in the code describing the HW delay feature. Change-Id: I0955623a7bdb0f4180c908ba079cf6f900e496a5 Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
2016-03-23ASoC: wcd9335: fix mute issue on headphone during concurrencyVidyakumar Athota
Currently class-H controller is not enabled when lineout is enabled first and then headphone is enabled. Because of this mute is observed on headphone during lineout and headphone concurrent scenarios. Fix mute on headphone by enabling class H block during concurrency. Change-Id: Ibed962eaacf87c3eb55c569d2ae9c6363a63cace Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org> CRs-Fixed: 957405
2016-03-23ASoC: qdsp6v2: Add error check for pointer and array indexViraja Kommaraju
Add NULL check for the pointer to make sure memory is allocated. Add array boundary check for the index before using the same array. Change-Id: Ifd35ca0c0a1cbeee18d7797ea6b43ea31be0eeba Signed-off-by: Viraja Kommaraju <virajak@codeaurora.org>
2016-03-23ASoC: msm: add port mixer routing for quat_mi2s_rxDerek Chen
Add port mixer routing support from aux_pcm_tx to quat_mi2s_rx. Change-Id: I6c72ab41123de4f4ab3a37bd23c37c58d689e509 Signed-off-by: Derek Chen <chenche@codeaurora.org>
2016-03-23ASoC: Add check for pointer and array indexViraja Kommaraju
Add check for NULL pointer access and array index boundary. Change-Id: Ia12a28c43b99158a90d27eecd23bdfd4b42b346e Signed-off-by: Viraja Kommaraju <virajak@codeaurora.org>
2016-03-23ASoC: qdsp6v2: move AFE clock macros to headerLaxminath Kasam
As AFE clock version macros can be used in other drivers, move them to header file. Change-Id: Iae5717c181e81bf7a6161742e8d062d09bedfb78 Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2016-03-23ASoC: wcd9335: fix pop during CLS-AB modeVidyakumar Athota
Pop is observed during starting of the playback in CLS-AB mode. Fix the pop issue by updating register sequence properly. Change-Id: Iff17245e8a2b14354cc99150a57394ce81ec29b8 Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2016-03-23ASoC: msm: qdsp6v2: Don't register to modem for SSR callbacksVenkata Narendra Kumar Gutta
Voice driver doesn't create any sessions related to voice call on modem and hence there is no clean up on APSS is required when modem SSR is triggered. Cleanup the code in voice driver which is executed during modem SSR. CRs-Fixed: 955696 Change-Id: I7536162e49b0eb56f63e7c8e59e0c050123c05fe Signed-off-by: Venkata Narendra Kumar Gutta <vgutta@codeaurora.org>
2016-03-23ASoC: wcd9335: Increase slimbus clock gear for HPF settingsSudheer Papothi
Increase slimbus clock gear for setting of Tx HPF(High pass filter) cut off frequency properly. Change will ensure Tx HPF cut off frequency will applied in the codec. Change-Id: I7d7c3243c63cd3b9242a15344ecdae89ec9ee977 Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23ASoC: wcd9335: Reset spline resampler after playbackPhani Kumar Uppalapati
Reset spline resampler after audio playback is completed to clear the FIFO and avoid any noise being generated. Change-Id: I30ed6a337c3bb08f6197f7ee575b323f0b0acfac Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-03-23ASoC: wcd9335: Update impedance detection parametersPhani Kumar Uppalapati
Update mbhc impedance detection parameters namely, LDO control and Nshift, to get better accuracy for headphone left and right impedance values. Change-Id: I8b3271ee9af91b9e921957998e0fb074ffdebe86 Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-03-23ASoC: wcd-mbhc: Reduce delay in detection for threshold headsetsPhani Kumar Uppalapati
Certain headsets have threshold on microphone for detection. Currently mbhc driver takes about 3 to 4 seconds to detect those headsets. Reduce delay in detection for threshold headsets by increasing micbias to 2.7v. Change-Id: I744bafb78560f39806d656c98582d8162fa10dfd Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>