Commit graph

24076 commits

Author SHA1 Message Date
Linux Build Service Account
8afddead2b Merge "ARM: dts: msm: rename codec child node of MSM external display" 2016-09-08 20:01:22 -07:00
Kangjie Lu
cb93febf41 ALSA: timer: Fix leak in events via snd_timer_user_ccallback
The stack object “r1” has a total size of 32 bytes. Its field
“event” and “val” both contain 4 bytes padding. These 8 bytes
padding bytes are sent to user without being initialized.

b/28980217
Git-commit: 9a47e9cff994f37f7f0dbd9ae23740d0f64f9fe6
Git-repo: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git
Signed-off-by: Kangjie Lu <kjlu@gatech.edu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Dennis Cagle <d-cagle@codeaurora.org>
(cherry picked from commit 9a47e9cff994f37f7f0dbd9ae23740d0f64f9fe6)
Change-Id: I12949efac2aba669d302908704005fb94ba7efd7
2016-09-08 14:46:47 -07:00
Kangjie Lu
3388724cb9 ALSA: timer: Fix leak in events via snd_timer_user_tinterrupt
The stack object “r1” has a total size of 32 bytes. Its field
“event” and “val” both contain 4 bytes padding. These 8 bytes
padding bytes are sent to user without being initialized.

b/28980217
Git-commit: e4ec8cc8039a7063e24204299b462bd1383184a5
Git-repo: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git
Signed-off-by: Kangjie Lu <kjlu@gatech.edu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Dennis Cagle <d-cagle@codeaurora.org>
(cherry picked from commit e4ec8cc8039a7063e24204299b462bd1383184a5)
Change-Id: I53aa15632e941199010aae670cefb65c8fd56833
2016-09-08 14:42:16 -07:00
Kangjie Lu
33618e19f9 ALSA: timer: Fix leak in SNDRV_TIMER_IOCTL_PARAMS
The stack object “tread” has a total size of 32 bytes. Its field
“event” and “val” both contain 4 bytes padding. These 8 bytes
padding bytes are sent to user without being initialized.

b/28980557
Git-commit: cec8f96e49d9be372fdb0c3836dcf31ec71e457e
Git-repo: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git
Signed-off-by: Kangjie Lu <kjlu@gatech.edu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Dennis Cagle <d-cagle@codeaurora.org>
(cherry picked from commit cec8f96e49d9be372fdb0c3836dcf31ec71e457e)
Change-Id: I3b42ee147fd0883696f9783f0a38d5bef888a10a
2016-09-08 14:38:08 -07:00
Linux Build Service Account
5964f2d700 Merge "ASoC: wsa881x: Add a mixer control to control gain" 2016-09-08 14:32:14 -07:00
Vidyakumar Athota
cc4912199e ASoC: wsa881x: Add a mixer control to control gain
Add a new mixer control to control WSA881x analog gain when
compander is disabled.

Change-Id: I8fd8bf7326f1ea80df1c2fdbb08ebf73aa9e279c
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2016-09-08 08:35:22 -07:00
Vidyakumar Athota
9c46f74b27 ASoC: msm: add 384KHz playback support
Add 384KHz sample rate to frontend, backend DAIs
to support 384KHz playback.

CRs-Fixed: 1060019
Change-Id: Iae32df7ce1fb42e0fa8e0259612a51c76bab1cb6
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2016-09-08 08:34:48 -07:00
Linux Build Service Account
26745af012 Merge "ASoC: wcd934x: Adjust DMIC clock based on sample rate" 2016-09-07 03:21:49 -07:00
Linux Build Service Account
1836f9b5a7 Merge "msm: qdsp6v2: update CVD version" 2016-09-07 03:21:48 -07:00
Linux Build Service Account
f1bc206236 Merge "ASoC: sound: soc: fix incorrect max value" 2016-09-07 03:21:46 -07:00
Linux Build Service Account
894d547ff7 Merge "ASoC: wcd-mbhc: disable fake electrical interrupts" 2016-09-07 03:21:41 -07:00
Asish Bhattacharya
8702e196da ASoC: qdsp6v2: Add proper dependency for audio driver
Add qdspv6v2 and snd_soc_compress dependencies for
audio driver to fix compilation issues on msmfalcon_32.

CRs-Fixed: 1061427
Change-Id: Iac276eeec710a11e5feeb6899da121ca6324e19b
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
2016-09-07 11:58:22 +05:30
Karthik Reddy Katta
08d486af33 ASoC: msm: qdsp6v2: Fix excessive logging from VOIP driver
Avoid excessive logging in voip driver. Change "data
not available" error messages from pr_err to
pr_err_rate_limited.

CRs-Fixed: 1059737
Change-Id: Ia4c287cc76543228038653f3179946782bb859e2
Signed-off-by: Karthik Reddy Katta <a_katta@codeaurora.org>
2016-09-06 22:00:36 -07:00
Meng Wang
81b7a0a0e0 ASoC: msm: qdsp6v2: check if index is out of range before use
Index can be assigned as -EINVAL which could be
out of array index. Check if index is valid value
before use.

CRs-Fixed: 1046606
Change-Id: Ib1af53ab52a65cca2ed9b3489359813e690b1cd6
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2016-09-05 23:25:27 -07:00
Meng Wang
fdb43addbf ASoC: msm: qdsp6v2: check if buf is null before using it
buf returned from q6asm_shared_io_buf could be null and
it could cause crash. Check if buf is null before using
it to avoid crash.

CRs-Fixed: 1046606
Change-Id: Ia988b11ff7d03edc4ddd959571da1378da62077c
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2016-09-06 14:24:05 +08:00
Meng Wang
0981a7c54f ALSA: timer: check if timer->card is null before using it
NULL check timer->card before use to prevent dereferencing
a NULL pointer.

CRs-Fixed: 1046606
Change-Id: I8e359864508cc2307d9e9619f36c7c08cc3842f9
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2016-09-05 23:13:23 -07:00
Meng Wang
c1a7f6ff7b ASoC: wcd9xxx: check impedance index before use
Impedance index may be out of range. Check if impedance index
is out of range before use.

CRs-Fixed: 1046606
Change-Id: Ia490d15a51ad70759c917fbe7e84fdadaa140e20
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2016-09-05 23:12:20 -07:00
Linux Build Service Account
11d6060fff Merge "ASoC: wcd934x: Update codec master clock configuration" 2016-09-05 16:21:42 -07:00
Phani Kumar Uppalapati
e6f1a2c153 ASoC: wcd934x: Add API to enable standalone micbias
Add an API in wcd934x codec driver to enable
standalone micbias. This API can be used to enable
micbias even without an active audio capture session.

CRs-fixed: 1062152
Change-Id: I98074071546c053ce3be733602adeff23d6b4b72
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-09-01 23:57:17 -07:00
Shiv Maliyappanahalli
46144e036b ASoC: msmcobalt: Add support for Display Port
Add support for audio over Display port.

Change-Id: I4e85351226b30b97d58ffcec76398fb8cbf9e730
Signed-off-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
2016-08-31 21:54:26 -07:00
Shiv Maliyappanahalli
43e540ae99 ASoC: codecs: Add display port support in codec driver
Add display port codec dai in external display codec driver to
enable audio over display port.

Change-Id: I9fce9622ff0580bca2414a8d6625774ae3f2d6c0
Signed-off-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
2016-08-31 21:52:49 -07:00
Shiv Maliyappanahalli
6767814d21 ASoC: msm: qdsp6v2: enable audio over display port
Add support in cpu dai, routing and native afe driver to enable
audio over display port.

Change-Id: I4cd5b738caab4d40c1c118d3111c3f4af740c84e
Signed-off-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
2016-08-31 21:11:52 -07:00
Bhalchandra Gajare
d07c2a2ef8 ASoC: wcd934x: Fix register default for MAD buffer interval
Current register default setting for MAD buffer interval is incorrect
and hence microphone activity detection is not functional. Update the
default value of the MAD buffer interval to 10msec.

CRs-Fixed: 1049012
Change-Id: I1dcdcb566f096bbddad286dc71c5bf980303e4c3
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
2016-08-31 16:49:26 -07:00
Siena Richard
ac3242b4ee msm: qdsp6v2: update CVD version
CVD version is updated to 2.3 on ADSP. Update the mapping
table in voice driver to allow CVD version 2.3 to be
recognized and used.

Change-Id: Id6d1c960dc720e8013eb9ba1f07af7662b576e37
CRs-Fixed: 1060201
Signed-off-by: Siena Richard <sienar@codeaurora.org>
2016-08-31 13:56:54 -07:00
Meng Wang
2482cc4381 ASoC: utils: initialize dummy_codec before use
dummy_codec is not initialized before use, which
could cause kernel panic. Initialize dummy_codec before use.

Change-Id: Iedf7a3accbd14138ab7ed9e4e36a98fd7ca9a839
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2016-08-31 15:01:06 +08:00
Phani Kumar Uppalapati
57db886359 ASoC: wcd934x: Update codec master clock configuration
Update wcd934x codec master clock configuration to
9.6MHz or 12.288MHz based on the device tree setting.
This is done during early codec initialization to prevent
artifacts when audio path is enabled.

CRs-fixed: 1061430
Change-Id: Ic983a524b6fa5bb079c6e61b8fe729974de78eea
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-08-30 23:16:05 -07:00
Phani Kumar Uppalapati
a83a9add55 ASoC: wcd934x: Use minimum phase for RX interpolation filter
Use minimum phase for RX interpolation filters on WCD934X
codec for better audio performance.

CRs-fixed: 1054908
Change-Id: Ibc0656c878f1bac6ac9b3b7c9e7a471d969e2b8c
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-08-30 19:51:26 -07:00
Ashish Jain
97217c9a2c ASoC: msm: qdsp6v2: Enable support for multichannel tunnel USB
Update dai driver and machine driver to enable multichannel
support for tunnel USB.

Change-Id: Ia43ea11719691a2869d6621d22c134f8a191ad35
Signed-off-by: Ashish Jain <ashishj@codeaurora.org>
2016-08-30 11:24:32 -07:00
Linux Build Service Account
1de43aecd2 Merge "sound: usb: Add NULL check on return value of iommu_domain_alloc()" 2016-08-29 00:49:27 -07:00
Linux Build Service Account
2b4e8cbd34 Merge "Revert "Merge remote-tracking branch 'msm-4.4/tmp-510d0a3f' into msm-4.4"" 2016-08-29 00:49:25 -07:00
Xiaojun Sang
c9b0b7c45d ASoC: sound: soc: fix incorrect max value
1. Max value stands for number of levels in SX control. The value
was adjusted inappropriately, which causes inconsistency between
max and min value.

2. Code assumes negative value of mc->min. Positive mc->min leads
to incorrect number of levels. The fix covers the risk.

CRs-Fixed: 1053735
Change-Id: I71bd8f11ff9faff9252129d84c1a80845fc2fe2a
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
2016-08-29 15:06:10 +08:00
Linux Build Service Account
e8a0e0808d Merge "ASoC: wcd934x: Add DSD volume support" 2016-08-27 03:35:38 -07:00
Trilok Soni
5ab1e18aa3 Revert "Merge remote-tracking branch 'msm-4.4/tmp-510d0a3f' into msm-4.4"
This reverts commit 9d6fd2c3e9 ("Merge remote-tracking branch
'msm-4.4/tmp-510d0a3f' into msm-4.4"), because it breaks the
dump parsing tools due to kernel can be loaded anywhere in the memory
now and not fixed at linear mapping.

Change-Id: Id416f0a249d803442847d09ac47781147b0d0ee6
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2016-08-26 14:34:05 -07:00
Phani Kumar Uppalapati
68eef60c8f ASoC: wcd934x: Add DSD volume support
Add support for adjusting volume when DSD (Direct Stream
Digital) audio playback is in progress.

Change-Id: Ica51d40911d16059e8af21c60794b35c68bb695d
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-08-26 11:59:14 -07:00
Phani Kumar Uppalapati
10b823cd45 ASoC: wcd934x: Add support for DSD audio playback
Add DAPM (Dynamic Audio Power Management) widgets and
routing to enable support for DSD (Direct Stream Digital)
audio playback on wcd934x codec.

Change-Id: I06e1b0134cea58adedbd9113a51529b2b73da835
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-08-26 11:59:05 -07:00
Vidyakumar Athota
1aa6e9851e ASoC: wcd934x: add ASRC mixing support
WCD934X supports mixing of integer sample rate clips with
fractional sample rate clips using ASRC(asynchronous sample
rate converter) block. Add support to use ASRC block in codec.

CRs-Fixed: 1054643
Change-Id: I3a04cc902c74b49e1d40c5a52acbf1f7c907c34e
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2016-08-26 11:58:47 -07:00
Phani Kumar Uppalapati
2071a4cd7d ASoC: wcd934x: Add support for codec MCLK2 enablement
Add support to enable codec MCLK2 which is used for
44.1KHz and its multiples sample rate audio playback.

CRs-Fixed: 1054643
Change-Id: Id157439b2a46ac4fa54b4a768f9555cf390399b5
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-08-26 11:58:42 -07:00
Bhalchandra Gajare
6ed085d498 ASoC: wcd934x: Add support for voltage scaling
WCD934X audio codec supports static voltage scaling (SVS) mode, which
puts the codec into lowest power state. The codec has different power
states (SVS2, SVS and Nominal). Add support in codec driver to vote
for SVS when audio usecases are enabled and remove vote for SVS when
audio usecases are disabled. The codec driver only votes for SVS or
no SVS and the hardware internally manages to go into Nominal mode.

CRs-Fixed: 1049012
Change-Id: I6f66d3136e3c49da54f5919184bc113267105463
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
2016-08-26 11:58:15 -07:00
Meng Wang
cacf1949cd ASoC: wcd934x: add MAD support for wcd934x codec
MAD (Microphone Activity Detection) hardware block in wcd934x audio
codec samples the microphone at configured intervals to sense
presence of valid audio signal. This is used for voice activation
use cases. Change adds widgets and routes to enable the MAD block.

CRs-Fixed: 1049012
Change-Id: I1ce4f3f215850fada6c25192a4351f3a9c76a370
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
2016-08-26 11:57:57 -07:00
Meng Wang
1c2c0e84de ASoC: wcd934x: Adjust DMIC clock based on sample rate
Currently DMIC clock is set at 4.8MHz for all sampling rates.
For optimal power, sampling rates <=48KHz and dmic clock <=2.4MHz,
it should be set to the value read from device tree and others
should be set to 2.4MHz.

Change-Id: If68fea97d2f0b27432e61d73d6841a2b194bb63b
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2016-08-26 13:22:21 +08:00
Hemant Kumar
0e23404929 sound: usb: Add NULL check on return value of iommu_domain_alloc()
Upon allocation failure iommu_domain_alloc() returns NULL.
Driver is not checking for NULL value, which leads to NULL
pointer dereference later.

Change-Id: I9788412af3a34aca8fa8519e7ae6f3349f263a1e
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2016-08-25 10:01:21 -07:00
Venkata Narendra Kumar Gutta
f2cfc3849c ASoC: wcd9335: Fix kctl_put and get functionality for SLIM RXX MUX
Incorrect values are received when queried for SLIM RXX MUX.
This is due to incorrect logic in the put and get functions
of this kctl. Correct the logic to fix this issue.

CRs-Fixed: 1044539
Change-Id: Ic44cde84108efb09b96a84db03b27bd985131211
Signed-off-by: Venkata Narendra Kumar Gutta <vgutta@codeaurora.org>
2016-08-24 13:09:27 +05:30
Preetam Singh Ranawat
9b4552329f ASoC: msm: Add support for playback over slimbus2 rx port
This change is to enable native DSD playback and enable native playback
of clips with sampling rate multiple of 44.1KHz.

Add slimbus_2_rx backend dai-link for native DSD (Direct Stream Digital)
audio and 44.1KHz multiples playback.

CRs-Fixed: 1056422
Change-Id: Ib038cf81f29e00c08def789f8f186ca4615d45fc
Signed-off-by: Preetam Singh Ranawat <apranawat@codeaurora.org>
2016-08-20 14:43:28 -07:00
Preetam Singh Ranawat
fc9f30ee3d ASoC: msm: Add support for native DSD playabck
Add DSD playback support in compress offload
passthrough mode. Add DAPM widget in routing driver
for DSD playback over SLIM_2_RX backend.

CRs-Fixed: 1056422
Change-Id: I398db5f6deded10a515f05277b6316a93f9e14ab
Signed-off-by: Preetam Singh Ranawat <apranawat@codeaurora.org>
2016-08-20 14:42:05 -07:00
Linux Build Service Account
82e060812f Merge "ASoC: wcd-mbhc: add kcontrol to get hph type for wcd934x" 2016-08-19 05:29:34 -07:00
Linux Build Service Account
ac4a799f31 Merge "ASoC: wcd-mbhc: add wcd934x mbhc driver" 2016-08-19 05:29:33 -07:00
Linux Build Service Account
c190f5787a Merge "ASoC: wcd934x: Add support for codec calibration data" 2016-08-19 05:29:33 -07:00
Linux Build Service Account
0668f977d0 Merge "Merge remote-tracking branch 'msm-4.4/tmp-510d0a3f' into msm-4.4" 2016-08-18 23:20:31 -07:00
Walter Yang
fd30be8fdb ASoC: wcd-mbhc: add kcontrol to get hph type for wcd934x
Add kcontrol in wcd934x mbhc driver so that userspace can get the
hph type.

Change-Id: I9ff0a8a5c968c9b8a085fbe79ab9a690206df564
Signed-off-by: Walter Yang <yandongy@codeaurora.org>
2016-08-18 19:59:20 -07:00
Walter Yang
30a5b12e27 ASoC: wcd-mbhc: move the moisture config to mbhc driver
Move the moisture config from machine driver to mbhc driver.
As generally moisture config doesn't vary with sound card.

Change-Id: I6c4bb19d3155567b9bc4f3a653e2ac8214d04146
Signed-off-by: Walter Yang <yandongy@codeaurora.org>
2016-08-18 19:59:13 -07:00