Commit Graph
1319 Commits
Author SHA1 Message Date
Vidyakumar Athota 1693bd3bec ASoC: msm-lsm-client: free lsm client data in msm_lsm_close
Currently lsm client data is deallocated when q6lsm_open() fails
which can cause memory corruption if lsm client data is accessed
after freed. Fix this issue by deallocating the client data only
in msm_lsm_close().

Change-Id: If048c26a0ffd8a346a28622183cbf2ba1e7e5ff3
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
CVE-2015-8951
Signed-off-by: Kevin F. Haggerty <haggertk@lineageos.org>
2019-08-06 11:48:18 +02:00
Kevin F. Haggerty 0fdd45c3ac Merge remote-tracking branch 'google-common/deprecated/android-3.4' into lineage-16.0
Change-Id: I363f9d4d0623906eaffffb3747a162ccbc92ccb0
Signed-off-by: Kevin F. Haggerty <haggertk@lineageos.org>
2019-08-06 11:41:21 +02:00
Kevin F. Haggerty 238a0fb5ad Merge tag 'v3.4.113' into lineage-16.0
This is the 3.4.113 stable release

Change-Id: I80791430656359c5447a675cbff4431362d18df0
Signed-off-by: Kevin F. Haggerty <haggertk@lineageos.org>
2019-08-05 14:20:47 +02:00
Robert Rozic 6388719824 include/sound: Export audio_effects.h header file
Needed to build libqcompostprocbundle and libqcomvisualizer
Thanks @percy-g2
2019-08-03 23:08:02 +02:00
Francescodario Cuzzocrea 85baa390bf misc: Import SM-G900H kernel source code
* Samsung Package Version: G800HXXU1CRJ1
    * CAF Tag: LA.BF.1.1.3-00110-8x26.0
2019-08-02 15:14:10 +02:00
Ramjee Singh 5857501eab ALSA: compress: Add ioctl declaration for gapless
-Add ioctl declaration of SNDRV_COMPRESS_SET_NEXT_TRACK_PARAM

Change-Id: I1eba1b96d099bc3a2f5b629bc4157cbf30400741
Signed-off-by: Ramjee Singh <ramjee@codeaurora.org>
2015-09-04 14:51:20 +05:30
Amit Shekhar 15d7e64422 ASoC: msm: qdsp6v2: Handles additional flac metadata
Currently, metadata such as min/max block size is sent only for first
stream in FLAC gapless playback. This causes incorrect configuration
and, subsequently, framedrops in decoding of second stream and onwards
By sending these additional flac metadata, dsp receives stream-wise
metadata and decodes without dropping

CRs-Fixed: 781837
Change-Id: I02e8d44cf481159982d7451f0a79f26dbeafa230
Signed-off-by: Amit Shekhar <ashekhar@codeaurora.org>
2015-02-10 18:22:12 -08:00
Lior Barenboim 091c1a2569 Ultrasound: Add new proximity format
Add a new stream format for ultrasound proximity, which matches
the stream format in the aDSP.

Change-Id: Idd488b90ee082fcc58ff9d1dddf5087cba9af034
Signed-off-by: Lior Barenboim <liorb@codeaurora.org>
2014-12-18 08:36:21 -08:00
Linux Build Service Account ac66015864 Merge "ASoC: wcd9xxx: use hwdep node for codec calibration" 2014-12-05 04:49:11 -08:00
Linux Build Service Account 7238a6b9b0 Merge "ASoC: msm: reorg q6core header file" 2014-11-08 12:56:09 -08:00
Linux Build Service Account 9bc5af4806 Merge "ASoC: q6asm: Fix the memory leak during the SSR" 2014-11-08 12:56:01 -08:00
Anish Kumar c829aa0b0f ASoC: wcd9xxx: use hwdep node for codec calibration
Currently codec driver uses request_firmware to get
calibration data but as this firmware file is also written by
userspace process after bootup, it is not recommended to
use request_firmware. ALSA core provides mechanism to get
hardware dependant data using hwdep nodes. Tomtom codec will
use aforementioned nodes to get calibration data from userspace.

Changed ANC calibration data size

Change-Id: Iace6e239029c7b0d93a5d61a0025ee551acf952f
Signed-off-by: Anish Kumar <kanish@codeaurora.org>
Signed-off-by: Pavan Chikkala <pavanc@codeaurora.org>
2014-11-03 16:50:47 +05:30
Laxminath Kasam 9eec4f972e ASoC: msm: reorg q6core header file
This is needed to allow include from
non soc folder.

CRs-Fixed: 689849
Change-Id: I753012d5ce9c5a788e75b4edf9b0099b58b30ec0
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2014-10-30 22:26:44 -07:00
Aviral Gupta 67c9a31f5f ASoC: q6asm: Fix the memory leak during the SSR
If a session is released during the SSR, then the memory unmap
command to DSP fails. This results in not releasing up the memory
block shared among apps and the DSP.
Fix by checking if the session has been invalidated during the SSR
and free up the memory during the close command.

Change-Id: I66251e624e5cc1abd816c2e4647997482b96c771
Signed-off-by: Aviral Gupta <aviralg@codeaurora.org>
2014-10-30 19:19:09 +05:30
Laxminath Kasam c8c7f3a0a8 ASoC: msm: qdsp6v2: fix rtac command failure
In rtac driver, while sending PP_Params for ADM copp
to DSP, token needs to be port_id whereas coppid is used.
Replace it with port_id to avoid failure in command
and timeout issue.

Change-Id: I77ab13ea14e8d6c25514bdeed24db37ef8113a75
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2014-10-24 22:59:34 +05:30
Damir Didjusto 5a007be427 ASoC: msm: qdsp6v2: Add a new waitqueue state for mem map/unmap
All of the commands being sent to the DSP are using cmd_state flag
which can be overwritten when several commands are sent at the same
time. This results in Memory map command timing out. The change will
separate the memory flag from flags for other commands so that they
do not overwrite each other.

CRs-fixed: 673781
Change-Id: I61e059f402feb2c4e1e3dbed1825990456e78471
Signed-off-by: Damir Didjusto <damird@codeaurora.org>
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2014-07-22 17:48:41 -07:00
Damir Didjusto 9695d5f4fd ASoC: msm: qdsp6v2: Do not free memory that has not been unmapped from DSP
The memory that is not unmapped from DSP should not be used until
DSP clears it. Do not free iom memory if the DSP unmap has
failed.

CRs-fixed: 599780
Change-Id: I4ceae34e0f8d6381efc34ce642babbc30ca5e57e
Signed-off-by: Damir Didjusto <damird@codeaurora.org>
2014-04-24 17:56:28 -07:00
Ben Romberger 6a75328852 ASoC: msm: Use 16K sample rate for RFECNS
To enable record with an RFECNS device use a 16K
sample rate

Change-Id: Ib9c6a4605f6a7f9e5f4c25280e0cc646459815fc
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
2014-04-23 15:14:14 +05:30
Vicky Sehrawat a48de5e27b msm: Allow native driver to communicate with APR
Add a new driver to expose IOCTLs for userspace clients
to use to communicate directly with APR. This will allow
clients to directly interact with services such MVM, CVS,
etc

Change-Id: Icc75b01e19b757d7da81f143fc10f09185e92d31
Signed-off-by: Vicky Sehrawat <vickys@codeaurora.org>
2014-03-07 17:09:03 -08:00
Amit Shekhar 743d701427 ASoC: msm: qdsp6: Add support to configure ISO and ARIB coefficients
Add support for configuring ISO or ARIB stereo mixing
coefficients. This change introduces a function with which,
AAC multi-channel driver can configure ISO or ARIB coefficients
according to configuration done by the client.

CRs-Fixed: 623127
Change-Id: I00845bdef075631f93a0c65a335b7edb5d10497b
Signed-off-by: Amit Shekhar <ashekhar@codeaurora.org>
2014-02-28 12:14:20 -08:00
Banajit Goswami 7ea570438c ASoC: msm: add support for 256KHz ibit clock
The Low Power Audio Sub-System supports internal bit clock of
256KHz. Add definition for the same for use in audio use-cases.

Change-Id: Idc92595bab37548aa2b2936b57dd6605fae9a1ea
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2014-02-26 13:53:57 -08:00
Venkat Sudhir 735f155fcb ASoC: msm: Add support for Multisession ADSP SVA
SVA feature is used for user voice recognition and
activation. SVA can support multiple session on ADSP.
Curently upto 8 session are supported for SVA. This
change adds support for multiple sessions for SVA
in audio driver.

Change-Id: I1468353643df2aee229965e75859e2ee92e931b6
Signed-off-by: Venkat Sudhir <vsudhir@codeaurora.org>
2014-02-19 00:22:03 -08:00
Linux Build Service Account 266538bb30 Merge "ALSA: jack: Add support to report second microphone" 2014-02-07 20:11:28 -08:00
Krishnankutty Kolathappilly c88de732e0 ASoC: msm: qdsp6v2: ASM changes to use stream id as token parameter
Gapless compressed offload playback operates on two streams.
Platform driver needs to know the stream for which the command
callback is recieved. Use the token parameter in apr header to
pass the stream for ASM commands for which DSP expects stream and
session.

Change-Id: Ibd8f5b6a52f57ccf8cc7eea15eb460b2f9796120
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
2014-02-03 10:08:03 -08:00
Phani Kumar Uppalapati 35360ca581 ALSA: jack: Add support to report second microphone
ALSA jack framework currently supports reporting only
one microphone. Add support to report presence of
second microphone to the userspace.

Change-Id: Id0df7aa222e547da3771f5d61092a959394c10dc
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2014-01-28 20:52:50 -08:00
Krishnankutty Kolathappilly 3613a16bd3 ASoC: qdsp6v2: Add support of ULL and LL
Add support for Low latency pcm and Ultra low latency pcm in
legacy pcm driver. A flag, part of device tree is used to
differentiate low latency and ultra low latency.
Only one ULL stream can be be connected to one ULL COPP.
LL stream can be connected to LL or regular COPP.

Change-Id: I2663ccdb641acc4117d1c0e424a57ed942e78f40
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
2013-12-18 17:35:54 -08:00
Ravi Kumar Alamanda d9f1b17e54 ASoC: qdsp6: Add support for post processing on low latency path
Current implementation does not send audio calibration data to
DSP if the playback goes through low latency path. This results
poor quality audio on Speaker if it needs tuning.
Update ADM and RTAC drivers to send audio calibration data
to DSP and update properly in the QACT tool.

Change-Id: Ib4bf612ffd81b63a5e083cae7d7ded5b8239c582
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
2013-12-18 17:26:38 -08:00
Linux Build Service Account cc131431cd Merge "ASoC: msm: flush if prior and current backends rate not matching" 2013-12-16 15:04:27 -08:00
Linux Build Service Account ae73ab5704 Merge "ASoC: msm: Add support for ASM loopback" 2013-12-16 15:04:24 -08:00
Linux Build Service Account 262726192b Merge "msm: ultrasound: Add Sync Gesture data format" 2013-12-16 07:33:56 -08:00
Zhoulu Luo bf45171730 Merge remote-tracking branch 'remotes/quic/jb_3.2' into HEAD
Conflicts:
	arch/arm/configs/msm8226-perf_defconfig
	arch/arm/configs/msm8226_defconfig
	arch/arm/mach-msm/clock-8974.c
	arch/arm/mach-msm/clock-local2.c
	arch/arm/mach-msm/clock-mdss-8974.c
	arch/arm/mach-msm/clock-mdss-8974.h
	drivers/gpu/msm/kgsl_device.h
	drivers/input/touchscreen/synaptics_i2c_rmi4.c
	drivers/media/platform/msm/vidc/msm_vidc.c
	drivers/media/platform/msm/vidc/venus_hfi.c
	drivers/media/platform/msm/vidc/vidc_hfi_io.h
	drivers/misc/qseecom.c
	drivers/thermal/msm_thermal.c
	drivers/video/msm/mdss/mdp3.c
	drivers/video/msm/mdss/mdp3.h
	drivers/video/msm/mdss/mdp3_ctrl.c
	drivers/video/msm/mdss/mdss_fb.c
	drivers/video/msm/mdss/mdss_mdp_overlay.c
	drivers/video/msm/mdss/mdss_mdp_pp.c
	sound/soc/codecs/msm_hdmi_codec_rx.c
	sound/soc/codecs/wcd9306.c
	sound/soc/codecs/wcd9xxx-resmgr.c
	sound/soc/msm/qdsp6v2/audio_acdb.c

Change-Id: Ibc13fd9186ff593bb11e9fa61bb03b10c22a3383
2013-12-12 13:01:47 -08:00
Damir Didjusto f0c7c82252 ASoC: msm: flush if prior and current backends rate not matching
It is found that during device switch from one backend
with one sample rate to another backend with another sample rate
the command to QDSP6 ADM which maps audio stream session to a
particular backend would not get carried out until pending
data of audio stream session from previous backend is either
read out or flushed. This scenario occurs when application
stops providing more buffers to retrieve captured data.
Remedy is to flush upon detection of rate mismatching.

Change-Id: Ia9d9a1819c6e21a44f2778185420ca43cca30258
Signed-off-by: Damir Didjusto <damird@codeaurora.org>
Signed-off-by: Vimal Puthanveed <vimalp@codeaurora.org>
2013-12-11 19:33:11 -08:00
Damir Didjusto be4b22cd65 ASoC: msm: Add support for ASM loopback
Add ASM loopback driver. When audio path wants to use filters in DSP,
it will do a loopback in ASM.  The new ASM loopback driver enables
the loopback.

Change-Id: I3ddfbf0a1be5b3b1d37b47b44d321ea7da93da83
Signed-off-by: Damir Didjusto <damird@codeaurora.org>
Signed-off-by: Vimal Puthanveed <vimalp@codeaurora.org>
2013-12-11 17:36:15 -08:00
Ravit Dennis ecdf2077e4 msm: ultrasound: Add Sync Gesture data format
A new Sync Gesture service has been added to userspace and QDSP6.
This service data format should be supported in the ultrasound
related definitions in the kernel.

Change-Id: I99dcaa74915c73ffb7329fb88226866b79a7ef73
Signed-off-by: Ravit Dennis <rdennis@codeaurora.org>
2013-12-10 13:21:42 +02:00
Subhash Chandra Bose Naripeddy d773de756b ASoC: msm: Add support to enable audio post processing in DSP
Add interface to support configuring equlaizer, bass boost,
virtualizer and reverb effects in DSP for tunnel mode of
playback.

Change-Id: I5ed578df1e1cb860734d2205c0895e82cfbdfbfc
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
2013-12-02 19:47:00 -08:00
Ravi Kumar Alamanda 3f6f0b1333 ASoC: qdsp6: Add support for audio post processing effects
Add interface to support configuring equlaizer, bass boost,
virtualizer and reverb effects in DSP for tunnel mode of
playback.

Change-Id: Ie1512e340315302691327b6379a0935170dc57a7
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
2013-12-02 19:36:42 -08:00
Linux Build Service Account 5ef0fad0d9 Merge "ASoC: jack: Push locking for jacks down to the jack" 2013-11-17 19:51:38 -08:00
Zhoulu Luo 8852f51497 Merge remote-tracking branch 'remotes/quic/jb_3.2' into HEAD
Conflicts:
	drivers/gpu/msm/adreno.h
	drivers/video/msm/mdss/mdss_mdp.h

Change-Id: Ieed8c5392255cb6633ced85695877a3d81cc0d2c
Signed-off-by: Zhoulu Luo <zluo@codeaurora.org>
2013-11-15 12:31:36 -08:00
Linux Build Service Account 561e8fab85 Merge "qdsp6v2: Add support for suspend command for WMA decoder" 2013-11-14 15:01:04 -08:00
Ravi Kumar Alamanda b58b13ff6c ASoC: qdsp6: Add support for gapless audio playback
Update ASM driver to support for gapless audio playback in
tunnel mode.

Change-Id: Id1f25afef25b3636fb50dc08b5feb803150d1b59
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
2013-11-14 05:44:04 -08:00
Zhoulu Luo b1811a539e Merge remote-tracking branch 'remotes/quic/jb_3.2' into HEAD
Conflicts:
	drivers/gpu/msm/adreno.c

Change-Id: I0ed991177948d813af471f471f77c48d24fdaea8
Signed-off-by: Zhoulu Luo <zluo@codeaurora.org>
2013-11-13 14:01:19 -08:00
Mark Brown b7405cfa71 ASoC: jack: Push locking for jacks down to the jack
Currently operations on jack reporting take the CODEC mutex both to protect
the current jack status and also to protect the DAPM run which is triggered
on status updates. Since the addition of a DAPM-specific lock we no longer
need to worry about locking DAPM as it has its own finer grained lock so
create a per jack lock to take care of the jack status.

This is both cleaner where the jack isn't specifically associated with a
CODEC and clearer as it's much more obvious what the lock is protecting.

Change-Id: Ieb4b48ef9a59db812f79c093ef6e1e7068922694
CRs-Fixed: 567030
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2013-11-13 10:54:46 -08:00
Liam Girdwood 6acab8c60b ASoC: dapm: Use DAPM mutex for DAPM ops instead of codec mutex
It has now become necessary to use a DAPM mutex instead of the codec
mutex to lock the DAPM operations. This is due to the recent multi
component support and forth coming Dynamic PCM updates.

Currently we lock DAPM operations with the codec mutex of the calling
RTD context. However, DAPM operations can span the whole card context
and all components.

This patch updates the DAPM operations that use the codec mutex to
now use the DAPM mutex PCM subclass for all DAPM ops.

We also add a mutex subclass for DAPM init and PCM operations.

CRs-Fixed: 567030
Signed-off-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Change-Id: Ica9e4654558fd181e1d85e70576fa262f76b4a78
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2013-11-05 15:58:13 -08:00
Eric Laurent 36e562493a ASoC: msm: Implement platform driver for compress audio playback
Compress platform driver implementation as per compress offload
ALSA framework.
Update the FE DAI link with the new platform name.
Update the device tree to include the new platform driver.

Change-Id: I611238b9dda6d591512736f238d45b43a4d911af
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
Signed-off-by: Eric Laurent <elaurent@google.com>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
2013-11-04 14:34:38 -08:00
Charles Keepax 91075e9c2a ALSA: compress_core: Rework writes to use cumulative values
This patch reworks the writes to use cumulative values thus making the
app_pointer unecessary and removing it.

Only tested as far as build.

Change-Id: I89478e4b4dea5e599088ab007e3c30394a61d037
Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Eric Laurent <elaurent@google.com>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
2013-11-01 10:09:19 -07:00
Charles Keepax 86f989c597 ALSA: compress_core: Remove unused hw_pointer
Only tested as far as build.

Change-Id: Ida52baaf4112801318ca37ab4c928809d328e5ed
Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Eric Laurent <elaurent@google.com>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
2013-11-01 10:09:19 -07:00
Charles Keepax 416e1d5da3 ALSA: compress_core: Deconstify copy callback buffer
The buffer passed to the copy callback should not be const because the
copy callback can be used for capture and playback.

Change-Id: I20674598b00bf933a0fe08eb77c122df6cdf3369
Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Eric Laurent <elaurent@google.com>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
2013-11-01 10:09:18 -07:00
Eric Laurent db88f281ff ASoC: core: Update FE dpcm state to trigger BE routing
Ensure the FE dpcm runtime_update is set properly in order
to trigger BE open, prepare and start.

Change-Id: I809e6d5fdffac547ea9b67b178df4e59a752af87
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
Signed-off-by: Eric Laurent <elaurent@google.com>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
2013-11-01 10:09:13 -07:00
Liam Girdwood d824e52ad8 ALSA: compress: Add snd_compress_free()
We are not currently freeing the compressed devices at module
unload time. This could be used to help, but more investigation
needs to be done to resolve this issue.

This patch is WIP.

Change-Id: I6cf8bcc56e4d446d83e9a0e63b79db3da378a901
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
2013-11-01 10:09:12 -07:00
Liam Girdwood 660db5a4ee ASoC: compress: Add suport for DPCM into compressed audio
Allow compressed audio streams to traverse the DAPM graph of DAIs
like PCM streams.

Change-Id: I15f227b73122071dfad106705a943199b679c273
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
2013-11-01 10:09:11 -07:00