Add Bolero clock resource manager driver to handle/manage
bolero clocks for all the concurrency usecases like record
+ voice activation.
Change-Id: I970a05d96fc9060b44bfe670d465f0b9d72cc53b
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
Read hphl_swh and gnd_swh from dtsi instead of hardcoding to NC
for every USBC target. Some platforms use NO switch.
Change-Id: I3dca6c7450579e8feb5d80c1340495958683a026
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Return error in case of wrong path being selected
for port mapping and port params functions.
Change-Id: I5d66a9cd32e9c8e6d8ebac0ea073b1a1762407b6
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
There can be deadlock between __bolero_reg_read/write and
bolero_runtime_suspend. Remove the mutex_lock in
bolero_runtime_suspend to avoid deadlock.
Change-Id: I712b9f24adeddda8899b39f90291394965443163
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Stop mbhc operations during ssr down to cancel
any pending detection sequences.
Change-Id: Iff054cf8b3099959a1be561bd937057258f57b81
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Add DAPM widgets for soundwire clock on Tx path and
VA path to enable the desired clock source based on
the usecase.
Change-Id: I48b04e63317cefd8bf12d58b002efb37087f8dc2
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Validate channel number before using it to index codec dma
rx configuation array.
CRs-Fixed: 2420338
Change-Id: I48109beedba2423158fa84dee0b9ccac340979b1
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Component for channel map mixer control should be
extracted from pcm runtime instead of kcontrol's private data,
because kcontrol's private data in this case points to channel
map info.
CRs-Fixed: 2420279
Change-Id: Ibaeac4739b73a89d17f16cbacb1b5095d546968b
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add NULL check before access pointer to avoid dereference.
Change-Id: I2c7408348a0acf1a3801a5869f62bae328858beb
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Disable EN_CUR_DET to fix receiver noise as per hw team
recommendation.
Change-Id: Icbeea920d02279ff845072e54be1c449db7bd2da
Signed-off-by: Meng Wang <mengw@codeaurora.org>
If we start playback on special hs after record is done and perform
SSR/PDR then playback gets paused. This happens because ANA_TX_DIV2_CLK
which needs to be enabled for special hs gets disabled after record
is stopped. Maintain a count for ANA_DIV2_CLK to enable/disable it
as required.
Change-Id: Ic73475c83cb16e3c014f35b8d46ee22d2e7a2efd
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Add support for SSR/PDR handling using SND event framework in
tasha codec.
Change-Id: Ief0bc7dc62d83635fdc905f1f385571e0e4b3190
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Trigger xt logging getparam at every playback close
and store data. When app queries sys/class node, return
stored values and reset to 0 for some params as per
app requirement.
Change-Id: Ice1a3e9a7e03062390f1c36184a971635e55d450
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Update audio routings for HDR recording on WCD938x codec
for AMIC1 and AMIC5 paths.
Change-Id: I67b93fe11c7a5b16ffd4bb8b58431be9dfba615e
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
In wcd-spi driver, the kzalloc is used to allocate memory for TX and
RX buffer. Those allocations are order4 or order5, which could fail
on some kernels. To avoid potential memory allocation failure, the CMA
region is used for those allocations by dma_alloc_coherent API.
Change-Id: I0a4d6c6b5e0e47f96187563272e63c3a006e469f
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Routing driver searches CAL_TYPE list for a matching
topology and then searches the LSM_CAL_TYPE list if
no entry is found in the first list.
If it so happens that a capture type cal block is
present in the CAL_TYPE list, it will be picked even
though the correct entry is present in the LSM_CAL_TYPE list.
Flip the order to give priority to LSM_CAL_TYPE list.
We expect only LSM clients to populate this list and
also enforce exact match for LSM clients.
CRs-Fixed: 2250684
Change-Id: I2ab3481b43a5d8b059a20cb919ff097fc8cf2774
Signed-off-by: Haynes Mathew George <hgeorge@codeaurora.org>
Automotive machine driver is a child node of apr
so it will be re-probed upon ADSP UP event received
in APR driver during boot up.
Remove the dummy machine driver solution.
Change-Id: I9ac3e26366a5b01869183e8b83e47049ec770c7c
Signed-off-by: Derek Chen <chenche@codeaurora.org>
Add support for handling snd card status upon
SERVICE_DOWN and SERVICE_UP callback for ADSP SSR.
Change-Id: Ie753a0edc59ca10da8d9c23f9e6c7c6244a8e8a6
Signed-off-by: Rahul Sharma <rahsha@codeaurora.org>
Excessive logging by pr_err() could cause audio thread to stuck
in the printing session which results PD down notification timeout.
This eventually can cause ADSP PDR failure. Fix this issue by using
pr_err_ratelimited and dev_err_ratelimited to limit the number of
error messages during the ADSP PDR.
Change-Id: I68b617fef53ebd03ba79fd919bffd8c35e6eb048
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
msm_compr_trigger for next track is updated with
q6asm_stream_open_write_v5 depending on the
avcs_api_version.
Change-Id: I6b3862a7b8e0480fffdcddc2ff0949cf5399d7a6
Signed-off-by: Nidhisha Dhananjayan <nidhis@codeaurora.org>
Add support to process ec at channel count other than the
playback channel count by providing ability to set downmixed
channel count and downmixing weights to be used to downmix
ec ref data obtained from playback path.
These configs would be used to explicitly configure MFC module
present in ec ref path, for usecases where ec processing cannot
be done at playback channel count due to algorithmic or resource
limitations.
Also increase the ec ref channel count support to Sixteen from
current max of Eight.
Change-Id: I2297508aedd177580b1c9b2bed3c7c8421507629
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
Buffering is not stopped during lsm close due to
which lab buffers can be queued during teardown of
session. This leads to read being issued even after session
close. Stop lab during close to avoid this. Use correct
return value to indicate errors during lsm start and stop.
Change-Id: I52fa33cebaa3ee6ae60eb2a60bb1e833f2a9d0d6
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
Remove impedance detection gpio callback function for tasha
variant as gpio control is not required for zdet.
Change-Id: Ic038d11c078241ca438cdff756fd666f6106d509
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Channel_mapping array size varies for different commands.
Add check for num_channels before calling q6asm_map_channels.
Change-Id: Iccbcfe82f716fc0ffe0a26b1779dcaa1c3cb805b
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
SLIMbus device ID can be different for SLIMbus ports on different
targets. Add support for dynamically assigning SLIMbus device ID
at bootup time from device tree.
Change-Id: I5a3b0812085ee53e8cd3bfac96eaaa939fda4106
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
BT use cases on Kona target uses Slimbus 7 ports. Add back
support for Slimbus 7 port for BT.
Change-Id: Iaa5128738106fdafabe84831237947c3880de214
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Add support for soundwire clock for VA usecase.
Change-Id: I1f56678ad36e4ae6c8dd458c0b7e96e847694050
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
When ADSP is in power collapse or island state, it would fail
to access LPASS codec register.Vote for LPASS core to avoid
LPASS power collapse with pmruntime approach while accessing
LPASS registers & TLMM.
Change-Id: I74d037e499fb6f1245b9a1bd1b0a77200608c27b
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
Add mixer_ctl to set multichannel configuration for capture path.
Change-Id: Ibed2d459b8b3959322bd547fe9b7a3c270ef0550
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
Allow to mark entries in a channel map as unused to prevent mixing other
channels in that slot.
Change-Id: Iefbfb861b796129211e929cb0ddb84041b9f57b0
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
Add dai links to allow for several concurrent audio recordings
from SPDIF and HDMI interfaces on qcs405.
Change-Id: I5f4a2fcf16538f71ad14b3389732366e8d8e718f
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
Enable block packing mode so that soundwire offset2
parameter takes effect and the channels do not overlap.
Change-Id: I9f5c04a8dfbaba87c3c949c7b4c739d0c1039e21
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Enable soundwire gpio before enabling soundwire clock
so that bus clash does not happen when interrupts are
received.
Change-Id: I40983b8837373f1ea7ac8fa6add7c56225ff0592
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add connection for RX_CDC_DMA_RX_0 and WSA_CDC_DMA_RX_0
to suppport FM playback.
Change-Id: I406faecd089e063848e9e8b507b1e1a0d1c21454
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Move Display Port mixer controls to common mixer control array,
so that those can be exercised for Kona sound card with Bolero/Traverso
codecs.
Change-Id: I4f27694b554fc9f1e2070fdf3056b3c8f71d57d3
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Check for valid handle before pm_runtime_resume in bolero register
read/write functions to avoid dereference.
Change-Id: I34d567e7575202817f4fcda784d0f3df2ed77bde
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Enhance Channel Mixer control for MultiMedia Frontends to
get custom channel mixer coefficients from userspace and
use it during device routings to control stream to device
channel mappings.
Change-Id: Icf950377dede46b097c8656174af5eb311bf719a
Signed-off-by: Cong Tang <congt@codeaurora.org>
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
Payload length must exceed structure size. Otherwise, it may
lead to out-of-boundary memory access.
Change-Id: I090de5116ab04a4ca2b9c485e17617fe9e861ad5
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
Frame sync of bolero macros need to be at 4KHz default
value.
Change-Id: Ia5399a3c4bee7e0f74115e5ffcb1ed51cbd07639
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Create codec root entry only if it is not
created already in proc directory to avoid failures
in codec version entry enumeration.
Change-Id: I8c912be5fb0f229a3b5a088ebb5c0aeea06f67b2
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Use strlen instead of sizeof in strnstr operations
to return the exact size of sound card name.
Change-Id: Id579a41ed79d4443dac7dd2e709784e9dfa186ac
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Activate lineout booster GPIO during starting lineout usecase
and disable during shuttingdown the lineout usecase in qcs405.
Change-Id: I83877e6a531efc4b571d9868f1b019af5d9b1b82
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
Add DAI links and sound card registration support
for tasha sound card variants.
Change-Id: If93dc1dae2f10f9ac6b8e2e80a9e38cadc14289b
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
mbhc_mbhc_cfg.swap_gnd_mic is not initialized for analog type-c
headset on Kona which causes headset detection fails.
When analog type-c headset function is enabled on device, initialize
swap_gnd_mic to msm_usbc_swap_gnd_mic to resolve this issue.
Change-Id: Ia8244e41cbfa7c8844b761ff129a7d2cced0dacf
Signed-off-by: Meng Wang <mengw@codeaurora.org>
During capture path setup, tx path hpf is set to hold.
Clear tx path hpf hold after device path setup.
Change-Id: I3299fc5d84d6e86e23c9ef150c8770ef9d59a870
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Register wakeup of TX macro with HW interrupt
line through wakeup irq.
Change-Id: I1120b6155ca88ce6e1f8dcc163fc86227d606a8b
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Headset Idle detect feature powers off PAs when
there is no signal. Add widget to enable
this feature for headset path.
Change-Id: I4c88057b347e40317578b5eb014053c17d196b85
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Add SEC_MI2S, PRI_SPDIF and SEC_SPDIF as source to dai links for
concurrent audio recordings.
Change-Id: I9c4a46fa4657222ce80b21fd4320715b8c89f36a
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
Add support for Aptx Adaptive decoder. Introduce new
get and put for ABR feedback decoder controls since
same decoder config format is required to be passed
by client in regular and feedback decoder configuration.
Change-Id: I96d9daef2a0967788640c2efb5478119eeae48ab
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
Add pm6125_divclk entry in pmi clock
array to support tasha codec in trinket target.
Change-Id: Ib2bacbeebb48d9b711abbc9f923a3b4b22cd7629
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Moisture Detection should be disabled at init if duty cycle is enabled.
Change-Id: If398928a680174d981b9baefe02d9efd4e21766e
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Error logging from set session data is not reflecting actual reason of failure.
Update error logging for this failure with correct info.
Change-Id: I5009a8b17128f0093e16f75c0e212a9bfb1f1a2e
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
Enable polling when moisture is detected on Talos.
Change-Id: Ice463c8bbbbd5de8b2b8c02cbce2543243b10703
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Some new backends are added and update be_name for channel mixer.
Update adm_programable_channel_mixer parameter to support record
echo from RX.
Change-Id: I628292112f558eca9301c67b36e6de41924f27d5
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Samplerate, channels and bit rate are not updated for
MSM_BACKEND_DAI_WSA_CDC_DMA_RX_*, MSM_BACKEND_DAI_RX_CDC_DMA_RX_*,
MSM_BACKEND_DAI_WSA_CDC_DMA_TX_*, MSM_BACKEND_DAI_TX_CDC_DMA_TX_*.
Add hw_params_fixup function for these BE DAIs.
Change-Id: Ia21f1cf5742e3acc6549319dcedfde07233ed161
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Add dapm widget for all analog mics, remove bolero
and mtp specific checks from probe.
Change-Id: Ibaa81fb9a655c3d0f48b95d2e882b5fecf6adb73
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Soundwire master receives the pm runtime calls, so slave
does not need to enable pm runtime.
Change-Id: I3e09b9d1eee9bbfbe525fbf375bf938600f30064
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Change tx mode setting from dapm widget to kcontrol
as it is not needed in codec route and only needed
for updating mode value.
Change-Id: I5d66b9a82b541b97f5c5789fe2e49d329c6952a8
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add all combination of routes between adc and
available mic paths.
Change-Id: If5781509bdc667d94ca1ad991388a8d57af75b94
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
All codec supplies are treated as static supplies
and do not require on demand supply.
Change-Id: Idf54f65cc6089675e21a52ea49cdf46eae98f295
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Micbias needs tx bias clock bit to be enabled.
Change-Id: I6a73d05eb9363c3dce267f6730c44b0442387365
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
cdc pinctrl needs to be loaded for both v1 and v2 wcd
core objects.
Change-Id: I4742e96b54bbd481583a6d12fd32fddb63216077
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add a check to see if split codec is present for
the slaves being probed and add platform data to
such slaves.
Change-Id: I8b143c551a481b88dffc8763421d2aaa02c0012d
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Match the rx/tx slave node property to that of in dt
to add slave components.
Change-Id: Id990dc0c85691c4af8b8adb7f9de26063559b7b8
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add soundwire DMIC port configuration on kona. This change
will enable audio capture from WCD938x codec DMICs.
Change-Id: I5b9e9a65f5bc021d4b19a838c17b56b3cb9eb4eb
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Clock Fs generation registers are in always on domain but
is needed for all the playback and capture usecases. Enable
clock Fs generation in the boloero codec after the clock
enablement.
Change-Id: I3a9cf14660f871b26ec96ef8b3e245ba5dadeb78
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
VA macro is currently lacking capability to dynamically select
island mode on Kona. Add support in VA macro driver to read MUX
selection register from DT to enable dynamic island mode select.
Change-Id: I5462265fffcc6d6bbb3ff6eead5f44f0b8909141
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Add updates to HPH rdac gain control registers and
tx channel register writes.
Change-Id: I6c32f0f4ee049404c1648104c5e624eaee3a5817
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add support for setting EAR PA gain directly using
mixer control.
Change-Id: Ifd9e31ed45d10b5ea0f9cf546806ef78ece9e181
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Enable HPHR and HPHL OCP after PA enable and disable it
before PA disable to avoid CnP issues at teardown.
Change-Id: Ic08a8862a7fb4f40ecc6060de6aa1eadc11f1c0f
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
If mclk enable is failed during mclk widget power up event, it would
still send a power down event for the widget during disable, which could
disable the mclk voted by other client like soundwire. Do not disable
mclk during power down if enable is failed during power up.
Change-Id: If782b34f9ef414501590ed8cf681bbe58f1dda76
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
When UP notification is sent to macros, the macros can try
to do regcache sync for their regions. Set dev_up flag in bolero
before sending UP event to macros to enable register access.
Change-Id: Ic04cfef121e9be55e91bf8927da26f9ec249338e
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Add support to configure perfmode for source and sink
in transcode loopback.
Change-Id: Iafb0934764139436bf9b71cd3e83cb28a1a7c4a8
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
Pop noise is observed at teardown when compander
is disabled. Allow proper delay after PA disable
to resolve the pop.
Change-Id: I15efa08f28bc1dd32e39b3ca1311b1e417199fd3
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Buck disable flag, which is used to indicate if suspend can disable
the buck, is not cleared during powerup if it is already enabled.
This causes suspend to disable buck even during active usecase.
Clear the buck disable flag when returning due to already enable.
Change-Id: I5118b66492dff27965a587e1bc6b916d5c26b9fb
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Add fsa USB type C analog audio functionality and
update codec function calls from machine driver.
Change-Id: I493241d633d1f233930c714de08ad6ce8ece5b83
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Stop mbhc operations during ssr down to cancel
any pending detection sequences.
Change-Id: I6aa8c61c2cc74fc08adf57c58673acaa753ac322
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
VA HW macro supports three BE DAIs on Kona. Add support to
enable the third one.
Change-Id: I418a6a0bb1bcbc06fe71de0977d974432e1d6c22
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Add BE DAI links of VA macro for bolero in Kona's machine driver.
Change-Id: I230bf7227c5436b5a2e8fed956337f87fcc86a4e
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
VA macro on Kona has three DMA TX ports. Add support routing
for the third VA macro DMA TX port to add backend and the
corresponding front ends.
Change-Id: I07298045292443af1220d9b95f4cd7aee0b79c66
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
VA macro in Kona has three DMA TX ports. Add a new VA
DMA TX CPU DAI in the DSP DAI driver to use it on Kona.
Change-Id: Ic144dbed1bd63af6f0150f854fdb74d57e156839
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Userspace takes 10 seconds to close the session when
pcm_start fails due to concurrency with PDR/SSR.
Match the SSR timeout in va macro to user space
session tear down delay.
Change-Id: I1e0fb4bdb25a43cbe7c345a47c115410b964e6eb
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Invoke swr device down callback to set soundwire master
to reset state before setting ssr down flag. This is to
ensure master is reset to proper state after ssr/pdr.
Change-Id: Ifb5548f603ac03b772006314f4723c0ac0176928
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Reset swr only during init or ssr-pdr scenarios.
Do not reset swr during clock stop, which would
result in bad state of master and cause error
interrupts.
Change-Id: I88e071921409a5b5797aeedb8e7cb57cb5d5bb9a
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
BT sink devices have a limitation on the packet sizes
they can receive and handle from BT sources. AAC encoder
can produce output frames which can vary in size based on
content being encoded. If frame size exceeds MTU size of
BT sink device, it will lead to incorrect decoding of
frames in BT sink.
Add a frame configuration parameter (MTU/Peak bitrate)
for AAC encoder to solve this problem.
Change-Id: Ia7795049e982400b0b3657b0b3a8990fc6920e38
Signed-off-by: Aniket Kumar Lata <alata@codeaurora.org>
TX_CDC_DMA_TX_0 supports three channels, therefore it
can be used for rx_macro_echo. Add required backend dailink.
Also remove AMIC4 from ignore_suspend as it is not used for talos.
Change-Id: I74b7adca9fa4001866232c1a9173e865c2a169c4
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Correct name of widgets for tx macro from
TX SWR_MIC to TX SWR_DMIC. Also assign codec pointer
to rx_priv before calling rx_macro_init_bcl_pmic_reg.
Change-Id: I268d79413c53bcd2d8e7a391859b71b7a7e3f64e
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Add mixer control and routing to enable echo reference
for rx_macro.
Change-Id: Ic1095eaa8024f2cb61722609daae94bc645b263b
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Mono headsets have only one channel connected. Hence make cross
connection decision based on the voltage result of alteast one
channel showing cross connection.
Change-Id: I22a4ea7e25d09e785e7141f4a74c2830fdff555e
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Update QUAT and QUIN TDM slot configuration
and mapping information for A2B support.
Change-Id: I17a4019f961846477f880cb2a59bc4c8f4c2fe28
Signed-off-by: Derek Chen <chenche@codeaurora.org>
To support 16 channel audio playback 8 codecs are needed.
Update cluster device table to support this number of
codecs.
Change-Id: I1ab3283b3174357b8b6647662c4519e5dca4bb97
Signed-off-by: Dieter Luecking <dieterl@codeaurora.org>
Update the register names and default values to
be same as the software document of codec.
CRs-Fixed: 2334177
Change-Id: Iec3ce76dceb44cef64c1f38a6cd75cb40ee2a539
Signed-off-by: Tanya Dixit <tdixit@codeaurora.org>
Handle PDM watchdog interrupt. Enable watchdog
before analog PA is enabled and disable it
after analog PA is disabled so as to prevent false alarms.
CRs-Fixed: 2336526
Change-Id: I3c16a9dcd0f4f84bf8ad0bfde9560330c143cdf9
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Reduce the amount of time driver waits to get a response from ADSP.
Current wait time in some cases is 5 secconds, which might cause
user space crashes in Android P. So reducing the timeout to
1 second.
CRs-Fixed: 2318751
Change-Id: I6b6789aa5b408659dd57f8f6b017df52d14b28aa
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
MICBIAS is always set to 1.8V. Change this voltage
depending on dt value for respective micbias.
Change-Id: I8eb1e71ae0256423bfd0bcc8ba2cd6bcc4a5ee61
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
In new class-H driver used for tanggu or later variants,
use LP(low power) power setting for CLS_H_LOHIFI same
as tavil codec.
Change-Id: I6a0f6e6d39e5704d6ea429ae2f3698750b7ea487
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add FE dialinks to enable multi compress capture
sessions on sm6150 target.
Change-Id: Ib26fc6c84d7993c34725a3b67596d4f059aa286e
Signed-off-by: Md Mansoor Ahmed <mansoor@codeaurora.org>
Dmesg logs are getting flooded with WSA temparature
logs. Change the log level to pr_debug to get rid
of this messages.
Change-Id: Ia4ccca47c5e6e5d56883ff73e1ae4278ff855be3
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
Send the kona platform specific soundwire port configuration
to the soundwire master driver through machine driver.
Change-Id: I1144d00b6bd430f330833141e681dcc93bfff9d2
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add common front end and back end dais.
Add TDM, AUX PCM and MI2S dais.
Change-Id: I3ecbe10ea9246aadedd02a881c937ce69f33cbbe
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
VA macro is currently lacking capability to dynamically select
MCLK on Kona. Add support in VA macro driver to read MUX select
property from DT to enable dynamic MCLK MUX select.
Change-Id: I46d0b760119a2d8c2ed754ae9cb43ba717fa300b
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Add support to get the platform specific soundwire port configuration
for soundwire master ports.
Change-Id: Ie1d32a77d534f6c3f397936b85c025b14d01f321
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
For get_channel_map API, return proper channel mask
and channel count for EC ref port on WSA macro.
Change-Id: Ia90f1a1c5e90075d08f01c50349d6a8479be7897
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Move APIs from internal header file for access to other
audio modules.
Change-Id: Ib34d052e4beb63c6805abacc3c99dbff18c9af6c
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
WCD938x codec is a soundwire based codec that supports AMICs, DMICs,
Headphones, Ear and Aux paths. Add support to enable all device
paths of wcd938x codec.
Change-Id: I81b5e603ef73afba74b8d2274012752f9ca5cb6f
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Provide chipid and version info in sysfs.
Fix error handling and avoid polling when device is not present.
Change-Id: Ie31b14e494e527ede001c334e3617f16fd687a28
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
- AFE_LOOPBACK_TX BE is the dummy backend created to
establish the EC reference capture path. While
opening COPP pass playback port id instead of
AFE_LOOPBACK_TX to get reference stream data from
AFE RX port.
- Add session type support in creating new COPP and
while checking for existing COPP.
CRs-Fixed: 2080421
Change-Id: I979f3ce1009cc18ff14130bebb8bd51a78fbe5ac
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
use soc_find_component locked version to ensure proper
access of component list while trying to find wsa or
aux codec components from the list.
Change-Id: I01303cbce13df45f290242776231d17aad68521e
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Update hph_pwr enum value for LOHIFI as per
class-H power options to maintain consistent naming.
Change-Id: Ib7deb8d84bd1163a933d06ae92a51cb29b76e3c8
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support to get DOA tracking monitor data.
This is required to support SVA LED display feature with
FFECNS/FFNS enabled.
Change-Id: I819cdd2971195653a955b22597d35b0fe521ec51
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
On tavil, the range for HPHL/HPHR volume is 0 to 24.
Update max value for HPHL/HPHR Volume.
Change-Id: I03f2eb3f833e5dc93a7cddaba09e765aa6077616
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Add dai driver and routing driver changes for
afe loopback BE. This BE is used to capture
EC reference data.
Change-Id: Ia57f335bde5f8a47de0030fbf1cdb784c8821e17
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
Add startup and shutdown functions for MI2S and
TDM interfaces and activate the respective
GPIOs.
CRs-Fixed: 2353292
Change-Id: I3eec88c851f0f34584c7a70d55ab8f1d5fc9dff4
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>