Update channels_max and dai_format for cdc dma hostless,
cdc dma playback and capture to fix speaker protection.
Also, use correct struct i.e. msm_dai_q6_cdc_dma_dai_data
in get/put functions.
Change-Id: I8f37a0c9411054830fdec2b4c072315c882ffc7c
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
CDC DMA TX uses PACKED_16B format if speaker prot
is enabled. Add macro AFE_LINEAR_PCM_DATA_PACKED_16BIT
for proper value of format.
Change-Id: I1070e00d26a18c77e26ff2518ef4a1256a674e20
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Change max no of channels supported, format and rates
for wsa macro vi feedback.
CRs-Fixed: 2281591
Change-Id: Ie54ce4f63a02d661939ed732b388a3c26dd8ea2f
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Add logic to parse micbias info if it is
specified in dt.
CRs-Fixed: 2281591
Change-Id: I943cedcadeceaa4a7da3422cf427d5679fe703b6
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Check for in2p clamp state in insertion irq
and ignore the interrupt if the clamp is already
set, which means the mechanical removal is about
to happen next.
Change-Id: I55691d427cf07d5b61862b6dbd39f3ec34d873e5
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add routing entries for Multimedia20 Tx mixer in
order to fix boot up warnings in routing driver.
CRs-Fixed: 2281591
Change-Id: I9ac35dab53811bd6ede64d69d221cdc6fbd622f4
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add routes to support FM playback over speaker and headphones.
Change-Id: I36b992a38602a460319551ba473cbaac604021c0
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
In order to differentiate between targets, codec version info
is used. Assign codec version based on number of macros
registered in bolero.
CRs-Fixed: 2281591
Change-Id: I0f4cf0e49645d3acf0c413ea93d9c0261ac98848
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add locking for soundwire fifo operation as same
function call can be used at a time by a different thread
like mbhc, and fix register definitions in header.
Add soundwire slave interrupt clear registers as part of
slave interrupt event in master interrupt handler.
Change-Id: I94d9b7ac09192dbf8aa3248d35956b380430ee0b
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Rate limit dsp read/write error logs to reduce log
prints during SSR scenario for read/write failures.
Change-Id: I031be5ebd39bdd11dc8e1eb92c77ed782f1dc149
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add support for TX codec dma interface to support source
tracking and sound focus mixer controls.
Change-Id: I11dc36a2f86164c7dc3a24357e68a04a8099cb4a
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add LSM mixer and function related routing changes
for TX_CDC_DMA_TX_3 interface to support SVA.
CRs-Fixed: 2281591
Change-Id: I9ff7e9d51069ec0467c464ddb5c640e533e81d90
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add support for wsa macro sidetone and adie loopback
widgets and route connections.
Change-Id: I5d830bc868e6fa0f0a56474f11867e6dd55ae535
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add playback and capture hostless DAIs in common
fe dai links to support fm and hfp use cases.
CRs-Fixed: 2281591
Change-Id: I63b86d0de286b0c06c0be4b7c4976cd683c80b3c
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Initialize flag variables before use in spinlocks.
CRs-Fixed: 2257317
Change-Id: I8b5973c1dfe3c7266a71d4e8ef4d5884b685ae5d
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add port mixer controls corresponding to WSA_CDC_DMA_RX_0
and RX_CDC_DMA_RX_0 to support AFE loopback.
Change-Id: I6e0e19fe45bd6c6060c842d1ed5073de6f4f6ef5
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add hostless nodes for RX_CDC_DMA_RX_0 and TX_CDC_DMA_TX_3
interfaces to support HFP/FM use cases.
Add missing port-ids in afe driver.
CRs-Fixed: 2281591
Change-Id: I634a6970b7c47320120cb850ad94bd69376ac181
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add WCN dai links for enabling BT use cases.
Change-Id: I1de1de0d9de0115d89e6a10f79a2cbf0a54d0e44
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
Add support for SSR/PDR handling using SND event framework.
Change-Id: Ia96858ed6dc43cbb80d01a7797abb57442813d3b
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Add support for SND event framework for helping with
notifications among different audio modules/drivers.
The SND event framework functions with a master/client
mechanism, where each client and the master register
with the framework, and then notifies its own status
(UP/DOWN). Each master will share a list of clients it
is interested in, and once all the clients are registered
and notified UP, the framework's state will be UP. On the
other hand, as and when any one of the client, or the master
reports its state as DOWN while the framework is UP, the
framework state would be changed to DOWN, and all clients
and the master would be let know about the change.
Change-Id: Ief6f26c5d5626c29246472ad71c247d71ee9e92f
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Add support for headset moisture detection on wcd937x codec.
Change-Id: Ib9021869a5d3a0d4e5b8a912b235b68fad90f94f
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
when wsa881x device is down, reading temperature from driver
returns error. Instead of propagating the error, return the
cached temperature value to the thermal framework to avoid
iterative calls to read the temperature that results in
excessive logging.
Change-Id: I529c83eafec63004c2469bf16a0b53bd5accbdbb
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Currently, for any WDSP errors, the driver collects the debug
dumps/information based on trigger from userspace. This is protected
under CONFIG_DEBUG_FS and should not be run unless stress tests are
executed and this functionality is explicitly enabled since
performing debug dumps could possible leave the WDSP in bad state.
Add debug node to control dumping debug information and not rely
only on CONFIG_DEBUG_FS
To enable debug dumps:
echo 1 > /sys/kernel/debug/wdsp0/debug_dump_enable
To disable debug dumps:
echo 0 > /sys/kernel/debug/wdsp0/debug_dump_enable
Change-Id: I67d8781839d9caee16e6bf6a5befd9010ccaafc0
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
When adsp/wdsp SSR happens, WDSP_SSR_TYPE_WDSP_DOWN/WDSP_SSR_TYPE_CDC_DOWN
would get received by wcd-dsp-mgr. wcd-dsp-mgr would clear current work and
init wdsp when adsp is up and ready_compl flag is set to ready. Sometimes
ready_compl flag is not cleared and wdsp initialization would happen when
adsp/wdsp is down which would cause kernel panic.
Reinit ready_compl flag when adsp/wdsp SSR happens.
Change-Id: I45186abba7992ee6912c5b0da171ef37b04e2e71
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Detect moisture in the headset jack and avoid headset jack
corrosion due to presence of moisture over prolonged duration.
Change-Id: I0227e516feb58c96ddf6a8fbc32423bfe7733ca6
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>