Age | Commit message (Collapse) | Author |
|
Add a new dailink for slimbus VI sense recording.
SLIMBUS_TX_VI and SLIMBUS_4_TX can coexist.
VI recording and speaker protection cannot work
simultaneoulsy due to shared physical afe port.
CRs-Fixed: 1087025
Change-Id: If074b7042e09d1e69147546461e6fa42d427350e
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
|
|
|
|
|
|
Add timestamp support for compress driver.
Modify ASM driver to read the buffer from predefined offset.
CRs-fixed: 1072067
Change-Id: I1c46befc223285495b3c0650e6c3eaae81f58771
Signed-off-by: Satish Babu Patakokila <sbpata@codeaurora.org>
|
|
In common clock framework, API for registering clk
provider for a node is changed to of_clk_add_provider.
Add new audio ext clock file to use new API to register
audio clk provider.
Crs-Fixed: 1090500
Change-Id: I1d7ecc6a3d4c48d0de9645043d5e5bfdfa1d1f5f
Signed-off-by: Meng Wang <mwang@codeaurora.org>
|
|
Add support in audio stream manager to configure decode
of g711 related clips.
CRs-Fixed: 1094107
Change-Id: Ie90fd68e24e7e793aaac64290e3c1e41682d6d5a
Signed-off-by: Yamit Mehta <ymehta@codeaurora.org>
Signed-off-by: Surendar karka <sukark@codeaurora.org>
|
|
Add support in audio stream manager to configure encode
of g711 format
CRs-Fixed: 1094107
Change-Id: I496a975e427f68d7bb5cc2789bfc9bb949658233
Signed-off-by: Surendar karka <sukark@codeaurora.org>
|
|
|
|
Add support for new DSP INTx MCLK, INTx IBIT CLK
and INTx MI2S ports. New internal codec and msm
based soundwire codec use these clocks and port_ids.
CRs-Fixed: 1083537
Change-Id: I72e0a15c8a283c68a3ed10cfd02a4e3d9526c312
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
|
|
In combo usecase there are 2 front-end dai's with
same codec dai, for example, multi-phrase ADSP SVA detection.
Using a single bit as the counter causes the counter to roll
over to 0 during combo usecase.
To resolve this, change counter to unsigned int from single bit.
CRs-Fixed: 1086127
Change-Id: I2dd07bd967b7d4fb4878b6d65bd0f011c6b15bdd
Signed-off-by: Walter Yang <yandongy@codeaurora.org>
|
|
It is possible that codec hardware can be reset in case of subsystem
restart scenarios. It is required to reset the codec DSP as well in
such cases to make sure the DSP is in usable state after the codec
hardware is reset. Change adds support to handle codec down and up
events and perform the necessary reset on codec DSP.
Change-Id: I79502c043f5e16947c895aab7cd584d72ad1a7dc
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
|
|
The wdsp_intr_handler is not really processing interrupts in interrupt
context, rather assumes that the caller is not in interrupt context and
performs calls that may sleep. Rename the function in order to avoid
confusion. Interrupt handlers can still call this function as long as
they are in threaded interrupt context and are okay to sleep.
Change-Id: Ia2803d6ca021d505ed2e711e676cbd701b11c492
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
|
|
|
|
command"
|
|
Add support for ASM_MEDIA_FMT_MULTI_CHANNEL_PCM_V4
command. This command adds support to playback/record 32 bit data
in 32 bit word and also provides a way to inform DSP about the
endianness of the data.
Change-Id: I3b013bedde8ccfa97a02e255e237df0cf2de13b8
Signed-off-by: Ashish Jain <ashishj@codeaurora.org>
|
|
Add support for configurable bit width for AFE encoder.
Add new mixer ctl to set for usecases which enables
configuring different input/output bit format
on AFE for usecases such as APTXHD encoder for 24bit input
and 16bit output.
Change-Id: I62326a097cbd71a3ec2b93a0120284d8f71f5d57
Signed-off-by: Naresh Tanniru <ntanniru@codeaurora.org>
|
|
It is possible that wcd codec DSP can crash or become unresponsive.
During such case, an error interrupt is generated by the codec. Add
support in manager driver to handle this interrupt and perform
subsystem restart to shutdown and reboot the DSP so that the DSP
can be recovered from the crash.
CRs-fixed: 1071949
Change-Id: I4662b5120bf7f731e399a27d8a613e2f3b648b00
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
|
|
The codec driver is notified through interrupt whenever the
DSP in codec is unresponsive/crashed. In such cases, collecting
dumps of the codec memory is useful in debugging the issues.
Change adds support in the wcd dsp manager driver to collect
the memory dumps upon notification of error interrupt.
Change-Id: Ib91cd4fc1476ee1a9ec448cde1a083070443f726
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
|
|
Currently, when manager driver interrupt handler callback is called,
there is no way for the caller to provide any data information along
with the type of interrupt. Change adds argument to the interrupt
handler so that callers can use this to pass agreed data when an
interrupt occurs.
Change-Id: I1c049227875a802491e21998c13c0bcd8eab7de6
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
|
|
|
|
AAC encode is failing in ADSP due to mismatch
in channel config datatype.
Update channel config data type for aac encoder.
Change-Id: I844d6e1ac1b2b171cd74a2601ae09280a22589c9
Signed-off-by: Naresh Tanniru <ntanniru@codeaurora.org>
|
|
Update the error handling when APR sends packet failed so that audio
driver can perform proper error recovery.
CRs-Fixed: 1050605
Change-Id: I6210e244e6299ec747836f40d03e92c15c6e53ee
Signed-off-by: Kuirong Wang <kuirongw@codeaurora.org>
|
|
Add support for tertiary and quaternary audio PCM interface
to msm platform.
Change-Id: I985200bbff55583ac09bf7444ecbc5cf6ab7eb41
Signed-off-by: Kuirong Wang <kuirongw@codeaurora.org>
|
|
The overflow check is required to ensure that user space data
in kernel may not go beyond buffer boundary.
CRs-Fixed: 1064411
Change-Id: I54c28a8942cf1a6a47a4e8272f3159b35d753ead
Signed-off-by: Karthik Reddy Katta <a_katta@codeaurora.org>
|
|
|
|
Add sample rate macros upto 384KHz to support
playback of 384KHz clips.
Change-Id: Id8880caae81818fe72bf02f3a3a90a5650546182
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
|
|
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>
|
|
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>
|
|
In combo usecase there are 2 front-end dai's with
same codec dai. Using a single bit as the counter
causes the counter to roll over to 0 during combo usecase.
To resolve this change counter to unsigned int from single bit.
CRs-Fixed: 1049348
Change-Id: I196802e6d23a9292ff2915c1b4b61c2b3ead9fa8
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
|
|
Add support for AFE encoder configuration.
Add new mixer controls to support AFE input channel
and encoder configuration.
Add support in AFE to set the encoder and input
channel configuration.If encoder configuration is set
ADSP will encode the PCM steam and send over backend.
Change-Id: I56581533ffff3b61f5b5ee128841ab61b62674d7
Signed-off-by: Naresh Tanniru <ntanniru@codeaurora.org>
|
|
WCD audio codecs contain SPI slave hardware module to provide access
to codec memory and SPI register space. Change adds driver for this
slave hardware. This driver uses regmap for SPI internal register
accesses and plugs in to standard SPI framework as child device to
master controller driver.
CRs-Fixed: 1049012
Change-Id: I0640ac1ed60a2ec3633636760593211ecd2f9c2d
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
|
|
WCD audio codecs have DSP embedded to perform signal processing on
audio data. The codec driver has control over the DSP clock, power etc,
whereas the DSP memory can be accessed through an different bus slave
interface. In such cases, it is required to make sure the hardware
expected sequences are met for the DSP to function properly. The
wcd-dsp manager driver registers as master to component framework
and provides the ability to sequence the operations between the child
drivers. Upon registration of all children, the wcd-dsp manager driver
parses the wcd dsp image, downloads the image and boots up the DSP.
It invokes the component children to perform the tasks in sequence.
CRs-Fixed: 1049012
Change-Id: I059e1b111c607e49a7cc9a7940cf458e701c73d3
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
|
|
Existing CPE(Codec Processing Engine) driver supports single session.
Add support for two sessions with different sampling rates.
CRs-fixed: 1022917
Change-Id: Ifbcb1bf8c418a4b3c787f68392aa141207dddde5
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
|
|
Driver changes to use ASM_MEDIA_FMT_MULTI_CHANNEL_PCM_V3 command.
This command supports playback/record of both 32 bit
(24 bit data in 32 bit word) and 24 bit packed. Update platform
drivers to use this for SNDRV_PCM_FORMAT_S24_LE record and playback.
CRs-Fixed: 1011048
Change-Id: I6f98bf3402a737bc21daff33b13b137850a690ea
Signed-off-by: Manish Dewangan <manish@codeaurora.org>
|
|
Implement platform drivers to support shared memory based
pcm playback and capture.
Change-Id: I882c67ae1c3d950b98bd002ac384cc3a7e77874a
CRs-Fixed: 992798
Signed-off-by: Haynes Mathew George <hgeorge@codeaurora.org>
|
|
Add DTS to supported offload formats.
Change-Id: I08cade9366673a7aae8595293296e88aece149bd
Signed-off-by: Satish Babu Patakokila <sbpata@codeaurora.org>
|
|
AVCS_MODE_DEREGISTER_ALL_CUSTOM_TOPOLOGIES is defined
as "1" where as in ADSP the value is "2". Redefine
the same to fix the mis-match with ADSP code.
CRs-Fixed: 1005434
Change-Id: I210e43b53c6170425ee35c02b728698b33afb591
Signed-off-by: Karthik Reddy Katta <a_katta@codeaurora.org>
|
|
Add new USB rx and tx afe ports and routing to different
fe dais to enable USB audio via ADSP.
Change-Id: I4f82ba27becee1f3b62c410be0d00876961f9b18
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
Signed-off-by: Kuirong Wang <kuirongw@codeaurora.org>
|
|
Add support for SLIMBUS_7 and SLIMBUS_8 Rx and Tx ports for
MSM audio drivers.
Change-Id: I839ac07a3ee1e1e778c4d1e43d0bac89f01bd21a
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
|
|
Fix overwrite of updt_params allocated in heap, and stack overread
where param pointer is passed from user space.
CRs-Fixed: 989628
Change-Id: Ida8bdb7da2fcb97023dce3b6eafe4b899a51cb66
Signed-off-by: Weiyin Jiang <wjiang@codeaurora.org>
|
|
Use tokens to track all active no wait commands.
In ASM driver, certain commands are waited on to get response
from ADSP. There is a possibility that certain no-wait
commands can be improperly recognized and woken up leading
to time outs.
Change-Id: I2030a354493845b63cf92d35ca4eaadef38cfb79
Signed-off-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Add check for NULL pointer access and
array index boundary.
Change-Id: Ia12a28c43b99158a90d27eecd23bdfd4b42b346e
Signed-off-by: Viraja Kommaraju <virajak@codeaurora.org>
|
|
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>
|
|
Audio drivers to configure ADSP MFC in cases where fractional
resampling is needed.
Change-Id: Ifc85ff788347ddd893f8858064f71a07fa1ddd9c
Signed-off-by: Sidipotu Ashok <sashok@codeaurora.org>
|
|
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>
|