WSL2-Linux-Kernel/sound/pci
Jasmin Fazlic da2a040ee7 ALSA: hdsp: hardware output loopback
Output loopback is a feature where you can record what you hear.
The HDSP series of the RME interfaces provides this functionality
at the hardware level and this patch exposes controls to enable or
disable it per output (playback) channel.

This probably works on other cards but due to a lack of hardware
it is only tested and enabled for the HDSP9632 card with this patch.

Should this patch be accepted a separate patch will be posted to
https://github.com/alsa-project/alsa-tools/tree/master/hdspmixer
which adds "LPBK" buttons to each output in the playback strip for
the user to be able to control this feature from the user land.
Users from Windows tool TotalMixFX should be familiar with this.

Signed-off-by: Jasmin Fazlic <superfassl@gmail.com>
Link: https://lore.kernel.org/r/95cb3117-e85a-51a6-c2ce-bf736e70fc4c@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2021-02-02 10:34:27 +01:00
..
ac97 ALSA: Replace the word "slave" in vmaster API 2020-07-20 10:10:47 +02:00
ali5451 ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
asihpi ALSA: asihpi: Use DIV_ROUND_UP() instead of open-coding it 2020-12-25 09:11:48 +01:00
au88x0 ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
aw2 ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
ca0106 ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
cs46xx ALSA: cx46xx: Use DIV_ROUND_UP() instead of open-coding it 2020-12-25 09:11:49 +01:00
cs5535audio ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
ctxfi ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
echoaudio ALSA: echoaudio: Fix potential Oops in snd_echo_resume() 2020-08-13 11:21:05 +02:00
emu10k1 ALSA: Convert strlcpy to strscpy when return value is unused 2021-01-08 09:30:05 +01:00
hda ALSA: hda/tegra: Remove unnecessary null-check from hda_tegra_runtime_resume() 2021-01-26 07:32:46 +01:00
ice1712 ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
korg1212 ALSA: pci/korg1212: remove 'set but not used' warnings 2020-07-07 12:10:21 +02:00
lola ALSA: Convert strlcpy to strscpy when return value is unused 2021-01-08 09:30:05 +01:00
lx6464es ALSA: lx6464es: More constifications 2020-01-05 16:15:07 +01:00
mixart ALSA: mixart: Fix mutex deadlock 2020-11-19 18:26:30 +01:00
nm256 ALSA: nm256: Replace the words blacklist 2020-07-15 14:31:56 +02:00
oxygen ALSA: pci: delete repeated words in comments 2020-08-06 09:30:02 +02:00
pcxhr ALSA: pcxhr: More constifications 2020-01-05 16:14:47 +01:00
riptide ALSA: riptide: Replace tasklet with threaded irq 2020-09-09 18:34:10 +02:00
rme9652 ALSA: hdsp: hardware output loopback 2021-02-02 10:34:27 +01:00
trident ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
vx222 ALSA: vx: More constifications 2020-01-05 16:14:30 +01:00
ymfpci ALSA: Use fallthrough pseudo-keyword 2020-07-09 13:01:29 +02:00
Kconfig sound: Fix Kconfig indentation 2019-10-07 03:53:03 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ad1889.c ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
ad1889.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ak4531_codec.c ALSA: ak4531: More constification 2020-01-05 16:15:09 +01:00
als300.c ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
als4000.c ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
atiixp.c ALSA: Use fallthrough pseudo-keyword 2020-07-09 13:01:29 +02:00
atiixp_modem.c ALSA: atiixp: More constifications 2020-01-05 16:14:54 +01:00
azt3328.c ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
azt3328.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bt87x.c ALSA: bt87x: Use DIV_ROUND_UP() instead of open-coding it 2020-12-25 09:11:48 +01:00
cmipci.c ALSA: cmipci: More constifications 2020-01-05 16:14:55 +01:00
cs4281.c ALSA: cs4281: More constification 2020-01-05 16:15:10 +01:00
cs5530.c ALSA: pci: Constify snd_device_ops definitions 2020-01-03 09:23:56 +01:00
ens1370.c ALSA: ens1370: Use DIV_ROUND_CLOSEST() instead of open-coding it 2020-12-25 09:11:56 +01:00
ens1371.c
es1938.c ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
es1968.c ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
fm801.c ALSA: Convert strlcpy to strscpy when return value is unused 2021-01-08 09:30:05 +01:00
intel8x0.c ALSA: intel8x0: Replace the words white/blacklist 2020-07-15 14:31:56 +02:00
intel8x0m.c ALSA: intel8x0: Fix missing check in snd_intel8x0m_create 2021-02-01 09:17:01 +01:00
maestro3.c ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
rme32.c ALSA: remove unneeded break 2020-10-26 15:27:13 +01:00
rme96.c sound updates for 5.6-rc1 2020-01-28 16:26:57 -08:00
sis7019.c ALSA: sis7019: Use DIV_ROUND_CLOSEST() instead of open-coding it 2020-12-25 09:11:56 +01:00
sis7019.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 274 2019-06-05 17:30:30 +02:00
sonicvibes.c ALSA: pci: Simplify with dma_set_mask_and_coherent() 2021-01-15 11:17:00 +01:00
via82xx.c ALSA: via82xx: Replace the words whitelist 2020-07-15 14:31:57 +02:00
via82xx_modem.c ALSA: pci/via82xx: remove 'set but not used' warnings 2020-07-07 12:12:38 +02:00