Commit graph

876,098 commits

Author SHA1 Message Date
Banajit Goswami
28f1f38474 ASoC: msm: add support for different compressed formats
Add support for below compressed formats and features
 * DTS playback
 * PCM capture in Compressed driver
 * MP2 decoder
 * DTS_LBR Passthrough Support
 * Transcode from MP3, WMA to DTS compressed
 * Update compress audio params.

Change-Id: I595e638da78cced02142f4ee430afb7357eb336c
Signed-off-by: Srikanth Uyyala <suyyala@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-24 22:18:59 -08:00
Meng Wang
c2ad50a2bb ASoc: msm: qdspv2: Clock recovery support in compress driver
Support for clock recovery in compress driver.

Userspace app can issue clock recovery command with a positive value
to advance the clock or a negative value to delay the clock.

CRs-Fixed: 2036899
Change-Id: Iacfc18afe6723edea84ed3382ac62810fcadb31a
Signed-off-by: Manish Dewangan <manish@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-24 22:18:54 -08:00
Meng Wang
b8da766319 ASoC: msm: qdsp6v2: Add TrueHD HDMI compress pass-though
Add TrueHD audio format for compressed HDMI pass-through.

Change-Id: Id8a0b8c3a01c881ae284f13c2c0a36959c2413ac
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-25 08:26:21 +08:00
Meng Wang
a5b4e1830f ASoC: msm: qdsp6v2: Support to set session start delay
Update compress driver to support session start delay.
Userspace can use this param to delay start of
playback session.

CRs-Fixed: 1112258
Change-Id: I0b31a4bae12f9f2b1f8a3e003909741529458772
Signed-off-by: Manish Dewangan <manish@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-24 15:23:19 +08:00
Meng Wang
d3976a6753 ASoC: msm: qdsp6v2: Support to configure render window
Update compress driver to support configuration of DSP render
window. Render window is used by DSP to take rendering decision.
i.e whether input frame should be rendered, dropped or repeated.

CRs-Fixed: 1112258
Change-Id: Ib1b9100ab87878d2e2da93e2b86ca68fb9dd97a9
Signed-off-by: Manish Dewangan <manish@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-24 15:13:54 +08:00
Meng Wang
b83ade287a ASoC: msm: qdsp6v2: Support to configure clk recovery mode
Update compress driver to support configuration of DSP clock
recovery mode. Supported modes are auto and none. In auto mode
DSP does clock recovery based on avtimer and device drift otherwise
it ignores drift.

CRs-Fixed: 1112258
Change-Id: I4b6b37c08be422e38b7f0bf625712d5e2b0dc0f3
Signed-off-by: Manish Dewangan <manish@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-24 15:09:06 +08:00
Meng Wang
7ba40c9e3f ASoC: msm: qdsp6v2: Support to configure render mode
Update compress driver to support configuration of
render mode.

CRs-Fixed: 1112258
Change-Id: Iac8c3a3d2df6180c9982c352b1c00ce7a624c167
Signed-off-by: Manish Dewangan <manish@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-24 15:05:50 +08:00
qctecmdr
567264c6cb Merge "hwrng: Add QRNG driver snapshot for kona" 2019-12-20 12:22:28 -08:00
qctecmdr
3772937d31 Merge "scsi: ufs-qti: Fix overwriting model name" 2019-12-20 12:22:28 -08:00
qctecmdr
bbafe8b1bc Merge "ALSA: compress: Add support to send codec specific data" 2019-12-20 12:22:27 -08:00
qctecmdr
28a2fba4a4 Merge "Asoc: Add audio backend to hwdep interface" 2019-12-20 12:22:27 -08:00
qctecmdr
d679dc78ae Merge "cpufreq: qcom-cpufreq-hw: Fix incorrect type warning from sparse" 2019-12-20 12:22:26 -08:00
qctecmdr
ac139a5c03 Merge "arm64: defconfig: Enable SPS driver for Lahaina" 2019-12-20 12:22:25 -08:00
qctecmdr
20d0b27b23 Merge "net: cnss2: Remove unsupported symbol references" 2019-12-20 12:22:25 -08:00
qctecmdr
d91fc2d48a Merge "phy: qcom-ufs: add UFS HS-G4 support" 2019-12-20 05:45:47 -08:00
qctecmdr
7aa352277d Merge "coresight: tmc: Fix mem_lock dead lock" 2019-12-20 05:45:47 -08:00
qctecmdr
fae584c712 Merge "arm64: defconfig: Enable debug features on Lahaina" 2019-12-20 05:45:46 -08:00
qctecmdr
1b35a503ba Merge "ASoC: compress: propagate the error code from the compress framework" 2019-12-20 05:45:45 -08:00
qctecmdr
bb76c8d330 Merge "phy: qcom-ufs: don't error out if vddp-ref-clk-supply is absent" 2019-12-20 05:02:09 -08:00
qctecmdr
fff4fc5622 Merge "ASoC: dapm: Avoid static route b/w cpu and codec dai" 2019-12-20 04:21:40 -08:00
qctecmdr
45eb6cbf7f Merge "ASoC: msm: qdsp6v2: Cleanup of compress offload drivers" 2019-12-20 04:21:40 -08:00
qctecmdr
f961f15dcd Merge "ALSA: pcm: fix blocking while loop in snd_pcm_update_hw_ptr0()" 2019-12-20 04:21:39 -08:00
qctecmdr
4c74fa0896 Merge "ASoC: Compress: Check and set pcm_new driver op" 2019-12-20 03:41:13 -08:00
qctecmdr
1493beb27a Merge "ASoC: msm: Update the encode option and sample rate" 2019-12-20 03:07:58 -08:00
qctecmdr
e84e857754 Merge "ALSA: core: Handle user defined ioctls" 2019-12-20 02:33:00 -08:00
qctecmdr
45d9ac1a86 Merge "ALSA: PCM: User control API implementation" 2019-12-20 02:33:00 -08:00
qctecmdr
d4d87ace97 Merge "interconnect: qcom: Build icc-rpmh with qnoc-lahaina" 2019-12-20 01:46:19 -08:00
qctecmdr
324dcd65f4 Merge "Bluetooth: Re-initialize regulator to NULL on error" 2019-12-20 01:46:18 -08:00
qctecmdr
4283a88d93 Merge "soc: mem_dump: fix physical address mapping issue" 2019-12-20 01:46:18 -08:00
qctecmdr
670b451abd Merge "shmbridge: get bridge mem pool's DMA address with dma_map_single" 2019-12-20 01:46:18 -08:00
Naveen Yadav
ef18527db3 cpufreq: qcom-cpufreq-hw: Fix incorrect type warning from sparse
The implicit typecast from void * to __iomem cause sparse to complain
about incorrect type in initializer, so fix the same.

Change-Id: I9690d76a9991667496011894f0a1fd83a7e23c1f
Signed-off-by: Naveen Yadav <naveenky@codeaurora.org>
2019-12-20 14:07:56 +05:30
Siva Kumar Akkireddi
24b8eba9be arm64: defconfig: Enable SPS driver for Lahaina
Enable SPS driver for Lahaina. SPS (Smart Peripheral System)
enables the support of all BAMs in the system which provide DMA
functionality to various peripherals.

Change-Id: I99b44844fefa6653fc4cdf991f855c9d9b5663e5
Signed-off-by: Siva Kumar Akkireddi <sivaa@codeaurora.org>
2019-12-20 00:32:20 -08:00
Aviral Gupta
5e78f73a05 ASoC: compress: propagate the error code from the compress framework
Propagate the error code from the compress framework for the timestamp
query. This error code will be used by the client to handle the
error case scenarios gracefully.

CRs-Fixed: 683288
Change-Id: I68ad14d52327dd0156531fe8d17ac54ba110fdf6
Signed-off-by: Aviral Gupta <aviralg@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-20 00:32:07 -08:00
Banajit Goswami
26ea5a19d9 ASoC: msm: Update the encode option and sample rate
Populate the sample rate, encode option in wma config params.
WMA V9 and WMA Pro tunnel-mode supports are added to compressed
driver. It allows user-space application to decode WMA V9 and
WMA Pro audio stream through QDSP6.
Codec specific metadata is sent only for first stream in gapless
playback. This causes incorrect configuration to be set for second
stream and distortions are observed due to framedrops in adsp.
Add support to send codec specific format during start of
next stream in gapless.
Add bit rate to wma codec data structure as it can vary between
streams in gapless.

CRs-Fixed: 367243, 367242
Change-Id: Ieeb9d302454d3935faa51cac77021e7c1d77012c
Signed-off-by: Aviral Gupta <aviralg@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-20 15:36:03 +08:00
Meng Wang
da769ef1d3 Asoc: Add audio backend to hwdep interface
Add audio backend to hwdep interface. This is to provide
ioctl interface to communicate to routing driver.
Currently codec driver uses request_firmware to get calibration data
but as this firmware file is also written by userspace process after
bootup, it is not recommended to use request_firmware. ALSA core
provides mechanism to get hardware dependent data using hwdep nodes.
Codec will use aforementioned nodes to get calibration data from
userspace.
This commit adds hwdep interface for codec calibration.

Change-Id: I7ecdcdb3c16b0b4d232e05f17f44b346ac796fd2
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-12-20 15:32:10 +08:00
Preetam Singh Ranawat
15555d3e6f ALSA: pcm: fix blocking while loop in snd_pcm_update_hw_ptr0()
When period interrupts are disabled, while loop in snd_pcm_update_hw_ptr0()
results in the machine locking up if runtime->hw_ptr_buffer_jiffies is 0.

Validate runtime->hw_ptr_buffer_jiffies value before while loop to avoid
delta check.

CRs-Fixed: 1109229
Change-Id: Ib20b71c70aa4a8bee2837d1f3b5a91ad4ce083da
Signed-off-by: Preetam Singh Ranawat <apranawat@codeaurora.org>
2019-12-20 15:27:20 +08:00
Ravi Kumar Alamanda
45b5e1f757 ASoC: Compress: Check and set pcm_new driver op
Check and set if pcm_new driver op is initialized by the driver.
This allows the compress offload drivers to register mixer
controls.

Change-Id: If54fa36cf19cbca7239d6e3e30455472e9a173d8
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-20 15:23:55 +08:00
Sudheer Papothi
0f8ec71b56 ASoC: dapm: Avoid static route b/w cpu and codec dai
Currently ASoC core creates a static route b/w
playback/capture widgets of cpu and codec dai
if they are part of the same dai-link. However
this will cause codec path to get powered up
followed by the backend dai start during device
switch use-case where the front-end is not closed,
leading to audio playback failure if either bit-width
or sample rate is different.

Change-Id: Icd17677a73fdc4bd30e0918fcaa7e7f394245685
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-12-20 15:15:36 +08:00
Meng Wang
7913e574a9 ALSA: compress: Add support to send codec specific data
Codec specific  metadata is sent only for first stream in gapless
playback. This causes incorrect configuration to be set for second
stream and distortions are observed due to framedrops in adsp.
Add support to send codec specific format during start of
next stream in gapless using set_next_track_param.

Change-Id: Ic0a9286c4fd8d17df63d676d6ce14cd394dea791
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
Signed-off-by: Alexy Joseph <alexyj@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-12-20 13:42:14 +08:00
Asutosh Das
91a062c87d scsi: ufs-qti: Fix overwriting model name
The model name read by string descriptor is overwritten now.
This causes issues while finding the right quirk for the device.

Change-Id: Iedda88c6610ffe4a2fe8894b32fc8459fabd1931
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
2019-12-19 20:44:23 -08:00
Banajit Goswami
6030d318e2 ASoC: msm: qdsp6v2: Cleanup of compress offload drivers
Clean up the format specifiers for compress offload drivers
and add compat ioctl support.

Change-Id: I0829830336ec62c66658d6a5199d73b61249f791
Signed-off-by: Damir Didjusto <damird@codeaurora.org>
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-20 12:37:35 +08:00
Meng Wang
8625c90a01 ALSA: PCM: User control API implementation
Introduced a new helper function snd_pcm_add_usr_ctls() to
create control elements representing the user control for each
PCM (sub)stream.

Change-Id: I9f69470ff2c5d6df8d1fdc2e1c2caf198076076e
Signed-off-by: Jayasena Sangaraboina <jsanga@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-20 12:28:50 +08:00
Meng Wang
a1682a646a ALSA: PCM: volume API implementation
Introduced a new helper function snd_pcm_add_volume_ctls() to
create control elements representing the volume for each PCM
(sub)stream.

This patch also squashes the logic implemented by below change-

ASoC: Fix freed memory access of pcm stream kctl

Consider sound card instantiate fails due to
audrx init failure. In such case, all dais/ctls
are de-registered and freed. But as part of it,
access to unregistered ctls for pcm_chmap and similar
controls result in crash.  Ctls are freed at disconnection
but the disconnect is called only when it was registered.

CRs-Fixed: 1038054
Change-Id: Ief8817b4ec000c058d46aa021977b7c6003c0011
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Signed-off-by: Damir Didjusto <damird@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-20 12:22:52 +08:00
Meng Wang
1d001ceb2f ALSA: core: Handle user defined ioctls
Handle ioctl magic 'U' as a user defined ioctl so that ALSA core calls
substream's ioctl handler.  This gets rid of a requirement that ALSA core
needs to be changed every time when a new user defined ioctl is introduced.

Change-Id: I390b9e0428bfadc302ff074417aa69163b12c6ec
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-12-20 12:18:49 +08:00
Tingwei Zhang
59430433d6 coresight: tmc: Fix mem_lock dead lock
Mem_lock was not unlocked when multiple sources were enabled and
one of them was disabled first. Free mem_lock in that path.

Change-Id: I380b2ce89c2df2dfd91754d2257503ade69545ce
Signed-off-by: Tingwei Zhang <tingwei@codeaurora.org>
2019-12-20 08:42:51 +08:00
Tingwei Zhang
7b0d5d038d arm64: defconfig: Enable debug features on Lahaina
Enable coresight, dcc, memory dump, remote qdss driver.

Change-Id: Iaf64adb71dc54457e30c7d42cc9f6f9e2854f3be
Signed-off-by: Tingwei Zhang <tingwei@codeaurora.org>
2019-12-20 08:33:13 +08:00
Tingwei Zhang
2e837c23f2 coresight: ost: correct the kconfig dependency
Make the dependency correct to avoid warning in build.

Change-Id: I5d39c83e0773c7077072ffe2c0ba4b18c082bca6
Signed-off-by: Tingwei Zhang <tingwei@codeaurora.org>
2019-12-20 08:31:44 +08:00
Umesh Vats
7fa2f55c9b Bluetooth: Re-initialize regulator to NULL on error
Reset the regulator to NULL when its allocation fails.

Change-Id: I5e9fcad83d0ed449c225c7c5c99d93ebae9848fc
Signed-off-by: Umesh Vats <uvats@codeaurora.org>
2019-12-19 16:24:16 -08:00
qctecmdr
a70116e190 Merge "sched: Improve the scheduler" 2019-12-19 14:10:22 -08:00
qctecmdr
ad8801ff2e Merge "pinctrl: Add wakeup gpio register and bit information" 2019-12-19 13:31:01 -08:00