Commit graph

565004 commits

Author SHA1 Message Date
Eric Laurent
21f7a9a5eb ASoc: msm: stub set_metadata ops function
Implement stub set_metadata ops function in compressed platform driver.
Just return no error and print debug log.

Change-Id: I45d69b5902b666abc12549aebf1bfc58824ab8ec
Signed-off-by: Haynes Mathew George <hgeorge@codeaurora.org>
Signed-off-by: Eric Laurent <elaurent@google.com>
Git-commit: 902e5b4af87f4649f3b093dea0c5f59c87be0dc1
Git-repo: https://android.googlesource.com/kernel/msm
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
2016-03-23 20:10:41 -07:00
Eric Laurent
db4af0b8e4 ASoc: msm: Send media format block for compress playback
Compress offload playback for AAC requires media format block to be
sent to the DSP before the bitstream can be decoded. Send this
as part of configuring the DSP

Change-Id: Ia22bc52aa0c136a1ee3f70a1e150458f8e4b6866
Signed-off-by: Haynes Mathew George <hgeorge@codeaurora.org>
Signed-off-by: Eric Laurent <elaurent@google.com>
Git-commit: ed16e26a99b2b7904d0badae4bd0d30953873b9e
Git-repo: https://android.googlesource.com/kernel/msm
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
2016-03-23 20:10:41 -07:00
Eric Laurent
0f65a07b71 ASoC: msm: Return proper error codes
Return proper error codes back to ASoc framework if
trigger operations like flush, drain fails or gets interrupted.

Change-Id: I3e2a259b55d5619eac6122083a8936a85700d657
Signed-off-by: Eric Laurent <elaurent@google.com>
Git-commit: 3a14d1af02c52d19d698732f3772f07843c90f6c
Git-repo: https://android.googlesource.com/kernel/msm
[dhakumar@codeaurora.org: resolved merge conflicts]
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
2016-03-23 20:10:40 -07:00
Haynes Mathew George
5cd46b0657 Asoc: msm: compr drain/flush fixes
Add missing synchronization between handling of flush and
drain in the compressed audio driver.

Change-Id: I01b6d2c4fb372be483022d1c3430b9369dea34f7
Signed-off-by: Haynes Mathew George <hgeorge@codeaurora.org>
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
2016-03-23 20:10:39 -07:00
Eric Laurent
75e02a8b5f ASoc: msm: Change condition to get session time
Change condition to skip request for session time from DSP
during compress offload.

Change-Id: I0192b1f4059f09a32b8848c40e91eecf3dadf966
Signed-off-by: Haynes Mathew George <hgeorge@codeaurora.org>
Signed-off-by: Eric Laurent <elaurent@google.com>
Git-commit: b31efc7e185f453da00cedbbad5b59c23560dcde
Git-repo: https://android.googlesource.com/kernel/msm
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
2016-03-23 20:10:38 -07:00
Matt Wagantall
418255d9d9 ASoC: msm: Add compress audio playback code base
Support bits and pieces to make msm-compress-q6-v2.c usable
will be added in subsequent commits.

Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
2016-03-23 20:10:37 -07:00
Banajit Goswami
547025290f ASoC: msm: qdsp6v2: Fix bit alignment in snd_codec params
Pointer member variables in snd_codec params break bit alignment and
causes data corruption. By changing these pointers to fixed size
array variables, the bit alignment is rectified. The size has been
set to max possible size. Also, remove params which are not required
anymore.

Change-Id: Ib87bbeb07b0df1ce8a81166b319976fe54c0f013
Signed-off-by: Amit Shekhar <ashekhar@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:36 -07:00
Banajit Goswami
ab70671974 ASoC: dapm: Do not process cpu_dai widgets in bias changes
Kernel 3.10 has cpu dai widgets in the list of card
widgets in addition to platform and codec widgets.
This is causing a delay in device switch because
cpu dai widgets increase the number of widgets to be
processed for bias changes by a factor of five, however
they are not required to be processed.
Skip processing of cpu dai widgets to keep
the device switch latency at same level as in kernel 3.4.

CRs-fixed: 699168
Change-Id: I2d7d9e34dabf2cd25ec5fdd3e58be0fc657c0f6c
Signed-off-by: Damir Didjusto <damird@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:35 -07:00
Banajit Goswami
f48c0e7f53 revert: ALSA: compress: update struct snd_codec_desc for sample rate
This gerrit reverts the gerrit with the commit number-
      b8bab04829
    Now that we don't use SNDRV_PCM_RATE_xxx bit fields for sample rate, we need to
    change the description to an array for describing the sample rates supported by
    the sink/source

Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:34 -07:00
Banajit Goswami
dba6519f3f include: increase allowed SW INPUT device ID from 15 to 32
Increase the Input device SW ID from 15 to 32. This is needed
to accomodate more input devices.

Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:34 -07:00
Sudheer Papothi
18e3977b99 ASoC: msm: Add compressed TX support
There is use case that the HDMI input goes through MI2S
TX interface to ADSP. Add compressed TX support for
this use case.

Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:33 -07:00
Banajit Goswami
0d879df1d3 ASoC: msm: qdsp6v2: Add FLAC in compress offload path
Add FLAC format in compress offload driver, and asm
module

Change-Id: I818ace8397e761b1acff7f9b2eab6e0103ed78c8
Signed-off-by: Apurupa Pattapu <apurupa@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:32 -07:00
Banajit Goswami
d3d2941f84 ASoC: msm: Add support for WMA DSP decode
WMA V9 and WMA Pro tunnel-mode supports are added to
compressed driver. It allows user-space application to
decode WMA V9 and WMA Pro audio stream through QDSP6.

Change-Id: I99407d00b618a627e6d762be9abea4abd2410b8b
Signed-off-by: Manish Dewangan <manish@codeaurora.org>
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:31 -07:00
Banajit Goswami
64d6133b7f ALSA: compress: Update compress audio params
Add timestamp field to compress structure which indicates when
audio sample has been captured or needs to be rendered.

Change-Id: Ie61170c6645c71207e7df1c7176e0750e47590f8
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:30 -07:00
Banajit Goswami
35b7cb1228 ASoC: msm: Add support for AC3 and EC3 playback in tunnel mode
Dolby surround1-DS1 module supports both Dolby Audio processing - post
processing and Dolby digital plus decoder in DSP. Add support for
AC3 and EC3 playback in tunnel mode so that DS1 is integrated and
functional end to end.

Change-Id: Iacb46cdfded16c9a5a9227a6ff4e072c61df2be8
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:29 -07:00
Banajit Goswami
a3447d8ba1 ASoC: msm: Implementation of transcode from MP3, WMA to DTS compressed
Set the output path of the decoder output of the compressed format
to input of the pseudo port.
Output of the pseudo port is connected to the input of
DTS encoder.
Output of the DTS encoder is connected to the selected
output ports SPDIF, HDMI.

Change-Id: I3945e53fdfd57de47fb2209ddc81ba4623999028
Signed-off-by: Aviral Gupta <aviralg@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:28 -07:00
Banajit Goswami
826ba45578 ASoC: msm: DTS_LBR Passthrough Support
- Added DTS_LBR for Passthrough case in Compress Driver
- Added Graceful Error Handling for Unsupported Codec
  IDs in case of open_write_compressed.

Change-Id: Ifbecb02832a2599be0e3c73cc69381f87969d78a
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:28 -07:00
Banajit Goswami
d81e3e2ffd ASoC: msm: Add the support for the MP2 decoder
Support the MP2 as a format for the tunnel mode.
MP2 format to be decoded in the DSP.

Change-Id: I0d268a6ddb57b1470ee2c43449ac31520176232f
Signed-off-by: Aviral Gupta <aviralg@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:27 -07:00
Banajit Goswami
93e5937bda ASoC: msm : DTS security implementation
Receive DTS security modelId from userspace,
and supply to Q6 core service.

Change-Id: Ib50f3a81da60c92ceb5b521134cd3d1b6fb8e5cb
Signed-off-by: Srikanth Uyyala <suyyala@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:26 -07:00
Banajit Goswami
b07e54a825 ASoC: msm: Enable PCM capture in compressed driver
In the use case of HDMI input PCM capture, timestamp received from
DSP is required in userspace to propogate it on the playback path.
Timestamp mode propagation is availble through the meta data mode
in compressed driver. Add support for PCM capture in compressed
driver to address the usecase

Change-Id: I1221b8e99628dadc136df681619ed960ff7c5c1a
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:25 -07:00
Banajit Goswami
ae3cbed9e0 SoC: msm: Add support for meta data in compressed TX
There is a usecase where compressed data is sent over HDMI IN to
ADSP. The format of compressed is detected in ADSP and sent through
the meta data to compressed driver. Add support for meta data in
compressed TX for this use case.

Change-Id: Idbb18fe4a0ad828e9c2e9d7beec048b3cedf002d
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:24 -07:00
Banajit Goswami
533fdee777 ASoC: msm: DTS playback support
Compressed driver changes for the DTS support

Change-Id: I595e638da78cced02142f4ee430afb7357eb336c
Signed-off-by: Srikanth Uyyala <suyyala@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:23 -07:00
Banajit Goswami
3ba242643a ASoC: msm: Update the encode option and sample rate.
Populate the sample rate, encode option in wma config params.

CRs-Fixed: 367243, 367242
Change-Id: Ieeb9d302454d3935faa51cac77021e7c1d77012c
Signed-off-by: Aviral Gupta <aviralg@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:22 -07:00
Banajit Goswami
2fd1d08935 ASoC: core: Add support for no host mode
Add support for hostless PCM mode to support usecases
where PCM is not consumed by host.

Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:22 -07:00
Banajit Goswami
3cf2122061 ASoC: dapm: add macro for MICBIAS
Add a new DAPM Macro for MICBIAS widget for use in codec
drivers.

Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:21 -07:00
Banajit Goswami
6da5e2b946 ASoc: msm: Add AMR NB and AMR WB support for Voip
Use SPECIAL format for AMR. Add mixer control to
input mode and rate.

Change-Id: I8746d86ce323744995575a22b6128b39daaa3d13
Signed-off-by: Helen Zeng <xiaoyunz@codeaurora.org>
[sboyd: Drop soc/msm parts]
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:20 -07:00
Sudheer Papothi
abe342c13b ALSA: PCM: User contol API implementation
Introduced a new helper function snd_pcm_add_usr_ctls() to
create control elements representing the user control for each
PCM (sub)stream

Signed-off-by: Jayasena Sangaraboina <jsanga@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:19 -07:00
Phani Kumar Uppalapati
6ba6d2e983 ALSA: pcm: check for integer overflow during multiplication
Channel info data structure is parsed from userspace and if
user does not set the no. of channels correctly, it could lead
to security vulnerability if we don't check for overflow when the
no. of channels is multiplied with pcm bit width. Add a condition
to check for overflow during multiplication.

CRs-fixed: 537818
Change-Id: Ib9631b6e45d77b39be2c27343d4aee3e9244d8cc
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-03-23 20:10:18 -07:00
Sudheer Papothi
f928605b0e ALSA: PCM: volume API implementation
Introduced a new helper function snd_pcm_add_volume_ctls() to
create control elements representing the volume for each PCM
(sub)stream.

Signed-off-by: Damir Didjusto <damird@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:17 -07:00
Banajit Goswami
4ce9b377bb ASoC: core: Add compat ioctl support for listen driver
Change adds compat ioctl to listen driver for supporting 32 bit userspace
client when kernel is compiled for 64 bit.

Change-Id: Ie6a6fb1f2b6ea569e03b02bc520ef79b95c1009c
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:16 -07:00
Gopikrishnaiah Anandan
9772b42f48 ASoC: core: Support for compress ioctls
Compat driver should support compress ioctls when
COMPAT mode is enabled. Change adds support for
handling compress ioctls.

Change-Id: If7223ace326253240a1cd65bc9a111b8903977f1
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2016-03-23 20:10:16 -07:00
Sudheer Papothi
b45b11503a ALSA: pcm - add support for hostless audio
Allow some PCM devices to be hostless, i.e. there is no PCM data transferred
to or from the host CPU. This can be used to minimise power on systems since
the CPU can idle/sleep during the PCM device operation (e.g. a phone call
where the DAI is between a MODEM and DSP)

TODO: cleanup, look at adding a read/write blocker.

Singed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:15 -07:00
Sudheer Papothi
eb4032ed5c ALSA: core: Handle user defined ioctls
Handle ioctl magic 'U' as an user defined ioctl so that ALSA core calls
substream's ioctl handler.  This gets rid of a requirement that ALSA core
needs to be changed every time when a new user defined ioctl is introduced.

Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:14 -07:00
Sudheer Papothi
74e78b3452 ALSA: core: Add support to handle compressed audio IOCTLs
This is needed to support the compressed audio till the
compressed core is done with development.

Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:13 -07:00
Laxminath Kasam
62c476312a ALSA: core: Fix crash by avoiding appl_ptr crossing 32-bit boundary
Incase of A2DP usecase using proxy driver, appl_ptr has
boundary value as 0x60000000 frames in sw_params for stereo(2 channels).
When this value crosses 0x40000000, then userspace calculating
appl_ptr at bytes results in crossing 32-bit value 0x100000000,
and points to 0x0 offset which can result in crash or pop.
To avoid above scenario, set the sw_params appl_ptr boundary value
within 0x40000000. Added proper check at sw_params update
to set this value correctly within 32-bit boundary(frames).

Change-Id: I537a04156699d90549a0a468ae19539ecd552d3b
CRs-Fixed: 483203
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2016-03-23 20:10:12 -07:00
Santosh Mardi
96debfed1c ASoC: core: Update ALSA core to issue restart in underrun.
When compressed and pcm session is started the buffer pull will
Be from the DSP, in mmap mode for the scenario Hardware pointer
Is same as application pointer implies application has not filled the
Buffer to be send to DSP, and platform driver has to break and restart
The de queue process when the application has sufficient buffers.

When hardware pointer is same as application pointer it is an under run
Scenario where the ALSA framework has to trigger the under run and in HAL
The session has to re-prepare and re-triggered. based on the stop
Threshold, but in our system the stop threshold is INT_MAX which
Indicates that under run is not triggered in practical cases.

We have a brodcast usecase in which the mentioned under run case
Is hit mulitple times, and every time re-prepare and re-trigger will be
Expensive

Update the ASoC core framework to restart de queue process stopped
By platform Driver when the under run is hit, based on the available
Buffer and render flag, so the System will recover from the hang state.

To restart de queue process the ASoC core will be calling the restart
Callback registered by platform driver and this callback will be running in
Atomic context.

Change-Id: Ic9ea05a0dc6246346e9913493232882e2f5447d1
Signed-off-by: Santosh Mardi <gsantosh@codeaurora.org>
2016-03-23 20:10:11 -07:00
Sudheer Papothi
a3dd24f2ca ASoC: dapm: fix race condition in dapm
Dirty widget list can be accessed by multiple paths
in dapm framework. Dirty list is protected by dapm mutex.
Since dapm_force_enable_pin function accesses the dirty
list, protect it using the dapm mutex.

Signed-off-by: Aviral Gupta <aviralg@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:10 -07:00
Sudheer Papothi
c1ba99c89b ASoC: core: Skip suspending widgets with ignore flag
For wigdets which have set the suspend ignore flag asoc framework
shouldn't mark them as dirty when ASoC suspend function is called.
This change adds check to skip suspending the widgets with the flag set.

Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:10 -07:00
Banajit Goswami
bd0a8e5b32 ASoC: Add debug message to track widget power up/down
Add a debug message which can be used for tracking widgets being
power-up and powered-down by DAPM, mainly used for debugging
purpose.

Change-Id: I291a381da44edca3bc2bb07be53b1969c03a48f0
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:09 -07:00
Sudheer Papothi
d5208bea97 ASoC: Update the widgets power up/down sequence
Widgets power up/down sequence in dapm is specific
to platform. Change makes msm specific changes to the
sequence.

Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:08 -07:00
Banajit Goswami
e7c9402974 ASoC: wcd9xxx: Fix the ANC CnP
Add virtual ANC widgets which are used to enable ANC
before PA is turned on, and to disable ANC before TX is
turned off.

CRs-fixed: 387904
Change-Id: Id3eca8c09d1d1d3c3d89ebe3d58be9bf676eb9c0
Signed-off-by: Damir Didjusto <damird@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:07 -07:00
Banajit Goswami
99f846e32c ASoC: msm: unblock the calls sent to the driver during SSR
Return error code ENETRESET from the platform driver
during the SSR recovery.
This facilitates the client to handle the error code
and take corrective measures rather than being blocked
on the call.

CRs-Fixed: 683288
Change-Id: I618edf0276bbe8826b47edec39df0dd4f87ffe93
Signed-off-by: Aviral Gupta <aviralg@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:06 -07:00
Phani Kumar Uppalapati
0d6fe3a626 ASoC: core: call digital mute ops for capture use case
Currently digital mute ops are called only for playback
use cases. Add support to call into codec digital mute
even for capture use cases.

CRs-Fixed: 662372
Change-Id: Idf5d1a823deb04d5ccb9139be745b6f936121a0c
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-03-23 20:10:05 -07:00
Banajit Goswami
2b5acaa668 ASoC: Add locking in DAPM widget power update
While playback and capture is done concurrently the dapm widget
data is accessed parallelly which results in data corruption and
kernel panic. Fix this problem by serializing the stream event
operation by adding lock

dapm_seq_run will invoke dapm power sequence for pre-sorted list
of widgets to be powered up. Kernel panic issue is observed
during stability runs with the above sequence caused by null
pointer dereference in dapm_seq_run_coalesced. Fix kernel panic
issue by checking for valid snd_soc_dapm_context pointer in
dapm_seq_run before invoking dapm_seq_run_coalesced

Widget list in dapm is getting corrupted during concurrent
use cases where dapm_power_widget is accessed. This corruption
is resulting in kernel crash in dapm. Fix the issue by adding
protection in dapm_power_widgets API.

Change-Id: I49d19860277726cf3152e104ab40627fd56c021c
CRs-Fixed: 388785
Signed-off-by: Sriranjan Srikantam <cssrika@codeaurora.org>
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:04 -07:00
Sudheer Papothi
42152f3e36 ASoC: Update the Max value of integer controls.
When control value is queried framework is returning the
min value as zero even if min is negative.
This change will make sure that frame work will update
the max value in cases where min is negative.

Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:03 -07:00
Banajit Goswami
de4a233227 ASoC: core: Add support for getting TX and RX channels
Based on which codec dai is selected, slimbus channel numbers
have to be queried when use case is being enabled.
Change adds support to get the channel numbers.

Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-03-23 20:10:03 -07:00
Anish Kumar
4b4b82dab4 ASoC: pcm: Add support for compat mode
When kernel is compiled for 64 bit and userspace client is in 32 bit
mode compat ioctl path will be taken.If platform driver supports compat
mode asoc framework should call compat function pointers.
Change adds support in asoc framework to call snd_pcm_lib_ioctl
in compat mode.

Change-Id: Ib4254648666aedfc2037a267cd7ffe4af4be398f
Signed-off-by: Anish Kumar <kanish@codeaurora.org>
2016-03-23 20:10:02 -07:00
Gopikrishnaiah Anandan
c3b0e4c033 ASoC: pcm: Fix the compat pointer assignment
Compat ioctl pointer is assigned to ioctl field instead of compat_ioctl
member variable. Change updates the assignment.

CRs-fixed: 688027
Change-Id: I248e3225493f0ceafcb5e70ce0ff827ab77c7a74
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2016-03-23 20:10:01 -07:00
Sudheer Papothi
23b12cca62 soc: Add audio backend to hwdep interface
Add audio backend to hwdep interface. This is to provide ioctl
interface to communicate to routing driver.

Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 20:10:00 -07:00
Gopikrishnaiah Anand
edf8d7c336 ASoC: pcm: Add support for compat mode
When kernel is compiled for 64 bit and userspace client is in 32 bit
mode compat ioctl path will be taken.If platform driver supports compat
mode asoc framework should call compat function pointers.
Change adds support in asoc framework to support compat mode.

Change-Id: I4929bc89c2ad467cdc83f5a00fe9d38e425c3ca2
Signed-off-by: Gopikrishnaiah Anand <agopik@codeaurora.org>
2016-03-23 20:09:59 -07:00