Commit graph

2,073 commits

Author SHA1 Message Date
Vatsal Bucha
1d965295d4 asoc: wcd938x: Reset mbhc detection type after ssr
During headset playback if we trigger SSR, headset removal
is not detected. This is because after recovery mbhc
driver expects a new detection event as the driver is reinitialized.
Reset detection type to insertion to retrigger a hw interrupt
for mbhc driver.

Change-Id: Ibf6663f46e7485f5ff5c5968a71c88e59a4728e7
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2019-07-09 16:40:18 +05:30
Laxminath Kasam
5478daae29 dsp: sleep before sending q6core ready query
After PDR, audio avs services still are initializing state.
Avoid sending q6core command after PD up event immediately,
wait for sometime before sending the q6core ready command.

Change-Id: Ibee38db9ee1a30b7852da3d08cac7b0d06371733
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-07-09 03:58:11 -07:00
Xiaojun Sang
dc9e8c2006 ASoC: enable dynamic FFECNS effect control
Add interface for userspace to control FFECNS effect.

Change-Id: I78010899e6c193726a79d74e86f13a1546106eff
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
2019-07-09 15:43:04 +08:00
Dieter Luecking
7911af7024 config: Revert featurization of 32 channel support in DSP
Remove the dependency on dedicated config flag for the
use of new API versions in ASM and ADM open commands.
Dependency is now on ADSP service version only.

Change-Id: I884e04fb6a3c8808e7874aa04967db0c3ca083c1
Signed-off-by: Dieter Luecking <dieterl@codeaurora.org>
2019-07-09 08:41:31 +02:00
Dieter Luecking
9fb7c8c43e dsp: Revert featurization of 32 channel support in DSP
Remove the dependency on dedicated config flag for the
use of new API versions in ASM and ADM open commands.
Dependency is now on ADSP service version only.

Change-Id: I2e7bcec675bafb9ad9e2a10df4ccc1e52bb72c92
Signed-off-by: Dieter Luecking <dieterl@codeaurora.org>
2019-07-09 08:41:04 +02:00
Aditya Bavanari
d37e02049c asoc: codecs: Add variant entry support for wcd937x and wcd938x
Add variant entry support for wcd937x and wcd938x codecs to
differentiate between wcd9370/80 and wcd9375/85 variants.

Change-Id: Ife20d14462a0b0968e0458471af3823872592e10
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2019-07-08 18:34:57 +05:30
qctecmdr
f57dd4262b Merge "ASoC: Kona: Make addition of aux codec as optional" 2019-07-08 01:31:16 -07:00
Vatsal Bucha
75fbc2d27d asoc: codecs: wcd937x: Read and store mic bias value
Mic bias value is needed in case of special headset
detection logic and the same needs to be read and stored
from device tree to be used by mbhc driver.

Change-Id: I0b120b8bb130a4d101c97e118395a11e74c921af
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2019-07-08 11:59:50 +05:30
qctecmdr
4f42ed04c4 Merge "soc: lpi: check if vote clk is enabled before accessing LPI GPIO" 2019-07-06 08:53:36 -07:00
qctecmdr
e5994a8348 Merge "soc: soundwire: update log type for soundwire" 2019-07-06 08:51:42 -07:00
qctecmdr
42ebbffad4 Merge "asoc: bolero: check if clock is enabled before accessing register" 2019-07-06 08:49:47 -07:00
qctecmdr
330f03de80 Merge "asoc: bolero: force bolero runtime suspend during adsp ssr" 2019-07-06 08:48:33 -07:00
qctecmdr
af5bd75cc6 Merge "dsp: Fix open params for read_compr in IEC61937 mode" 2019-07-06 08:46:51 -07:00
Xiaoyu Ye
d974cf93b1 asoc: codecs: wcd938x: add support for micbias pull up mode
Add support to use micbias pull up mode for SVA DMIC use
cases to lower power consumption.

Change-Id: I5d87b604bb3e588ffec0ae321a55d340c89274fc
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
2019-07-05 14:17:27 -07:00
Surendar Karka
38d66474e1 audio-kernel: add support to query presentation position from DSP
Add support to query presentation position from DSP
in system time domain.

Change-Id: I42b4d234ddc256f93c01defbe2c74872a2a2cf3e
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
2019-07-05 16:03:04 +05:30
qctecmdr
ae8957e9b4 Merge "audio-driver: configs: Add HDMI Codec for GVM" 2019-07-04 06:00:45 -07:00
qctecmdr
1534fa3eea Merge "dsp: ion: unmap DMA buffer after kernel ion map failure" 2019-07-04 05:58:39 -07:00
qctecmdr
95514749d7 Merge "audio-driver: Update build files for auto LA-GVM" 2019-07-04 05:56:46 -07:00
qctecmdr
5257151bb6 Merge "asoc: codecs: Change TX tuning and reduce RX click and pop" 2019-07-04 05:54:56 -07:00
qctecmdr
76413b65ee Merge "soc: lpi: force lpi runtime suspend during adsp ssr" 2019-07-04 05:52:24 -07:00
qctecmdr
4de5775619 Merge "dsp: Add size check for afe set and get functions" 2019-07-04 05:49:21 -07:00
qctecmdr
9de103a363 Merge "asoc: codecs: bolero: add compander soft reset event" 2019-07-04 04:49:36 -07:00
Romed Schur
b0fe92c09f asoc: Add DSD over PCM support for csra66x0 codec
Configuration added to support stereo DSD over PCM
for csra66x0 codec via I2S interface.

Change-Id: Ibed333e44961a9eb87ef69bfb1e302f5837357d9
Signed-off-by: Romed Schur <rschur@codeaurora.org>
2019-07-04 11:22:59 +02:00
Romed Schur
3e11dbd71e asoc: qcs405: Add DSD over PCM support for csra66x0 codec
Enable DSD over PCM stereo support of QCS405 and csra66x0 codec.

Change-Id: Iedc8231d6e19f4959f525395e8b0ebc69746d879
Signed-off-by: Romed Schur <rschur@codeaurora.org>
2019-07-04 10:03:57 +02:00
Aditya Bavanari
b778846e50 dsp: Remove param_size from pkt_size of apr header
As param_size is included in apr header pkt_size, out of
bounds access occurs in glink. Remove the param size addition
to fix this issue.

CRs-Fixed: 2472208
Change-Id: If8b34aeacd3bc9ba67ac9276eb1a8ebf0933f9f9
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2019-07-02 20:10:34 +05:30
Ralf Herz
e0b9234773 dsp: Fix open params for read_compr in IEC61937 mode
The read compressed in IEC61937 mode doesn't unpack data to frames, but
data flow still requires frames_per_buf to be set to nonzero value.

Change-Id: Idb09219c57d7790cb90df62c97baf3ef0e9d8a2f
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
2019-07-02 00:37:18 -07:00
Aditya Bavanari
36a5eb40be asoc: Use dma_buf_get along with dma_buf_fd
Use dma_buf_get along with dma_buf_fd on the obtained
fd in order to increment the reference count and avoid
use after free on fd when it is freed from userspace.

CRs-Fixed: 2419587
Change-Id: I57e1396234eebb60224ed58182cca80888e94a9e
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2019-07-02 11:54:35 +05:30
Meng Wang
bf1fe8fbad asoc: bolero: force bolero runtime suspend during adsp ssr
During adsp SSR, bolero runtime suspend is not called and
hw vote clks are not reset. Force bolero runtime suspend
during adsp SSR to avoid kernel panic.

Change-Id: Iff5983ef07f77ecc7f3f344948c013906b4bad60
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-07-02 08:26:55 +08:00
Meng Wang
ea4ace171f soc: lpi: force lpi runtime suspend during adsp ssr
During adsp SSR, lpi runtime suspend is not called and
hw vote clks are not reset. Force LPI runtime suspend
during adsp SSR to avoid kernel panic.

Change-Id: I153c5826a282d7beb175a41a55e2d6bf5907eb62
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-07-01 16:43:39 +08:00
Xiaojun Sang
ab07f12b3a dsp: ion: unmap DMA buffer after kernel ion map failure
DMA buffer does not unmap after kernel ion map failure. It leads
to unexpected vaddr and memory leak.

Change-Id: I363dd9178a0bcbca601180bfd0a7bd7ef2430d3e
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
2019-07-01 14:14:37 +08:00
Sachin Mohan Gadag
e8367cbe5d Makefile: Fix Extraneous text after `ifeq' directive
- Remove extra brace in ifeq check.

Change-Id: I3a96f6244304fbac48ebc3d569ca725a38697cad
2019-06-30 22:50:40 -07:00
Meng Wang
4b489349e1 soc: lpi: check if vote clk is enabled before accessing LPI GPIO
HW vote clock may fail to get enabled. Check if hw vote clk is
enabled in lpi_gpio_read and lpi_gpio_write to avoid kernel panic.

Change-Id: I077e5c61058d9d90be98ff3a0c0834049ad7e584
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-06-29 09:21:58 -07:00
Meng Wang
8c60bb5664 soc: soundwire: update log type for soundwire
Update pr_err to dev_err to indicate which device has
clock mismatch.

Change-Id: Icf842ed63aa0a01ace0ff461f8c05194a0e25f92
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-06-29 09:20:50 -07:00
qctecmdr
0983e24039 Merge "ASoC: mbhc: Fix left channel getting disabled in hs_rem_irq" 2019-06-28 22:58:55 -07:00
qctecmdr
87802a6f2d Merge "audio-driver: dsp: Adapt to non sys heap support for GVM" 2019-06-28 22:55:28 -07:00
qctecmdr
25955d588f Merge "asoc: sa8155: Add Quinary TDM backend DAI link" 2019-06-28 22:53:43 -07:00
qctecmdr
58c514f5dd Merge "soc: Handle system suspend for LPI pinctrl" 2019-06-28 22:51:25 -07:00
qctecmdr
481b00d38d Merge "asoc: ignore enable commands if state already matches" 2019-06-28 22:48:51 -07:00
qctecmdr
ae4ec15e67 Merge "audio-driver: update Makefile.am for LV" 2019-06-28 22:47:08 -07:00
qctecmdr
11c8cce88b Merge "asoc: codecs: Fix NULL pointer dereference in wcd9xxx slim probe" 2019-06-28 22:45:29 -07:00
qctecmdr
aa41b233f8 Merge "asoc: codecs: Fix out of bounds access in register show functions" 2019-06-28 22:43:42 -07:00
Karthikeyan Mani
d874e514ea asoc: codecs: wcd938x: Remove hifi modes for wcd9380
wcd9380 codec version does not support hifi modes.
Remove the support for the same for platforms with
that codec version.

Change-Id: If43bcc41c3fe2955907a148351b7a7aebf37699f
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-06-27 18:38:10 -07:00
Meng Wang
bd93024823 asoc: bolero: check if clock is enabled before accessing register
Reset GFMUX reg for va-macro and wsa-macro when adsp is up
after SSR. And check if clock is enabled before accessing
register to avoid kernel panic.

Change-Id: Idce9695be552cab0e8e389cf72eeb7a67a754bf9
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-06-28 08:38:15 +08:00
Karthikeyan Mani
b9d7807f4e asoc: codecs: Change TX tuning and reduce RX click and pop
Update TX requantizer gain coefficients to center
gain errors around zero. To reduce click and pop
on audio playback enable reference buffers of
headphone path in hifi mode and then put it to
the usecase specific power mode.

Change-Id: I0013d6258d5e5a8c92fd0f951d1d89e5906b2faf
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-06-27 17:01:46 -07:00
Derek Chen
809482351a audio-driver: configs: Add HDMI Codec for GVM
Add HDMI Codec module in GVM for auto, to keep
consistent with BoardConfig.

Change-Id: Iba3b0ac1722797a8481ee1a6f857876814ab54ac
Signed-off-by: Timothy Sham <tsham@codeaurora.org>
2019-06-27 13:10:55 -07:00
Weiyin Jiang
431b1c5d9b asoc: ignore enable commands if state already matches
Break without setting rc to error code causes param_id=0 sent to certain
effect module in adsp, If enable flag state for the module is same as
the requested state, ignore the command and continue with next command
to avoid sending param_id=0 to ADSP.

CRs-Fixed: 2478482
Change-Id: I6cddf6f5156562d2c5d6aa6163881992bfa55eeb
Signed-off-by: Weiyin Jiang <wjiang@codeaurora.org>
2019-06-26 14:01:36 +08:00
Aditya Bavanari
3c259b5e62 dsp: Add size check for afe set and get functions
In afe_get_cal_sp_th_vi_param and afe_set_cal_sp_th_vi_cfg
functions, data size check is not present which might lead to
out of bounds access. Add size checks to fix the same.

Change-Id: I99eca6065e6f5a050527f1bfce2bfcba28123b53
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2019-06-26 11:01:38 +05:30
Timothy Sham
4a6979f60e audio-driver: Update build files for auto LA-GVM
enable conditional build for audio driver modules for
automotive LA GVM.

Change-Id: I058f3e6ca557f8ca6d02e33e80f6c190b1a2a29e
Signed-off-by: Timothy Sham <tsham@codeaurora.org>
2019-06-25 13:11:38 -07:00
qctecmdr
5a2bcfb472 Merge "audio-driver: Update build files for LA automotive" 2019-06-25 07:38:18 -07:00
qctecmdr
3ca4cb7d68 Merge "ASoC: msm: add slot offset for QUAT and QUIN TDM" 2019-06-25 07:36:48 -07:00