Audio calibration data supports 32 channels now so update
maximum number of channels supported to 32.
Change-Id: I0b94e23fe88c4382d78db85014a81e440f720660
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
This reverts commit 85b6208522
(ASoC: disable source tracking get functionality for sm8150).
Enable source tracking get functionality as the feature is
completely enabled.
Change-Id: I099fae3155f486f1fe89dbdad97c8cb1029f14df
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Add __user attribute for avtimer_ioctl's input parameter ioctl_param
to explicitly identify user space pointer in copy_to_user.
Change-Id: I59fa9d39e5ec3ff9cde3a06af9da2d38e36d557d
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Change info logs to debug logs for all trivial
audio codec core logs that appear in boot up.
Change-Id: I797b876f2a9d72a72c3378acac0d8d7f11b5c4a5
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
The current names of MI2S and TDM pinctrl states are too similar to
the actual pinctrl names. Update names of pinctrl states to avoid
confusion.
Change-Id: I1c775a29a32dad38dcc13ae395bd2557ec3a87c9
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Change info logs to debug logs for all trivial
machine driver logs that appear in boot up.
Change-Id: I37fb24fb758a81af9ae4be0e735cd9b467f88e70
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add missing mixer controls/widgets and routing paths
to avoid audio error logs during bootup.
Change-Id: I3c23cd3e5d1e5e95fcad5f49e3827ef26587e2a3
Signed-off-by: Meng Wang <mwang@codeaurora.org>
In a compress capture usecase, read offset guides to
move buffer pointer based on buffer length. When timestamp is
enabled read offset also needs to include timestamp header
offset along with buffer length. This fix addresses the issue
of null memory map handle due to incorrect read offset.
Change-Id: I93c3ec588e77d535b6c7a4a0d832c1e7ea5f62a7
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
Currently, for some small (1/4/8 bytes) transfers, the driver uses
on-stack memory to perform the transfer. This is not safe as the
underlying master/dma driver could try to map/dma this memory.
Change makes sure to never use on-stack memory for any transfers.
Change-Id: I6b157e26ea7ca9f865004a87153c658756f6c368
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Update all audio drivers to use updated chipset name in
files, functions, architecture specific configurations
and the device tree compatible strings.
Change-Id: I507948866213ddb8806edea71a57c1f29ce7e71b
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
APR state update should happen only after ADSP up
notification recieved by APSS, and not just after
ADSP is loaded and booted up.
Avoid setting APR state to loaded after PIL loading
of ADSP image is complete.
Change-Id: I9b9f073279c306562e427ec2c7e73dfa7d71f956
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Update all audio drivers to use updated chipset name
in architecture specific configurations and the device
tree compatible strings.
Change-Id: Ib1abe643c6914c1b0b57ef110c7b60e23e356d97
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Check for debugfs ops buf size passed before reading
to avoid reading out of bounds.
Change-Id: Idd5e755ac16448af5751e2f3381097f234e74a74
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
The reg in soc_mixer_control is 32-bit. When using
SOC_SINGLE_EXT, the value of FE DAI ID which is passed
as shift(to be operated on the reg) may be more than 31,
which may cause overflow.
Use SOC_DOUBLE_EXT instead of SOC_SINGLE_EXT so that the
reg field can be set to SOC_NO_PM to avoid any DAPM operation,
while passing BE and FE IDs in shift and rshift fields. And
these values can be retrieve in get/put functions and use them.
This is to avoid any possible overflow in DAPM operation.
Change-Id: I17fa4e059889ae725e6f015a779f518e6d0a813f
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Move the tdm device property logs from probe function
to prepare function to print them only when tdm usecase
is started and not during bootup.
Change-Id: I3844709d501bf510620d6f20f270e30c68e78b78
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Buffer from mixer ctl or ADSP is composed of payload size and
actual payload. On a 32 bit platform, we could have an overflow
if payload size is below UINT_MAX while payload size + sizeof(struct)
is over UINT_MAX. Allocated memory size would be less than expected.
Check payload size against limit before memory allocation.
Change-Id: I0bf19ca7b8c93083177a21ad726122dc20f45551
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
Component unbind happens in component_bind_all, if component
bind fails. There is no need to call extra component_unbind_all.
Change-Id: I4ff2aececc5e10c5c4cfbe71778630c621768349
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
The current logic that checks pointer "rpdev" for NULL is not
correct. Fix it to prevent potential NULL pointer dereference.
Change-Id: Ieaad98396ff43b66b0dd41efbfbf9f6ae923a2bb
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Sometimes codec enumerates before APPS APR communication happens
with ADSP. Since wcd9360 MCLK request goes through APR, defer the
codec probe till mclk is available.
Change-Id: Ief5bb80f4c62fcf58a8cc93f11a9b4536f883d1e
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
After enabling compilation with LLVM for audio drivers,
some assignment warnings are reported. Add this change
to resolve the compilation warnings.
Change-Id: I571b2e210053bc0b80d65cd272ce1751e0ed10fb
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Change APR driver to platform driver and add any child
device only after ADSP up notification is received.
The idea is to have machine driver as a child device
under APR, and add the platform device for machine
driver only after ADSP is up. This will help invoke
audio drivers waiting with deferred probe and eventually
should help sound card registers successfully.
Change-Id: Ib0c0f7ec1d7dd93a1b54a9a66260861223d55c67
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
ION memory allocator is used for audio use cases even on targets
without SMMU. Add support for ION on those targets where ADSP
might not have an SMMU in front of it.
Change-Id: Iaacbd66edb32c8ee7c14a5ab291abe54960725b8
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Initialize variable before use in voice driver.
CRs-Fixed: 2209691
Change-Id: I84b51262b5c3cb12ea23372eb7c7109c6ff844b4
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add error check to validate the return value of misc_register.
Clean up memory on an error to avoid memory leak.
CRs-Fixed: 2204093
Change-Id: I8b94bacdc312fa410a7825c7e25764517469c19b
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>