linux_dsm_epyc7002/sound/soc
Simon Ho a497a43637
ASoC: Add support for Conexant CX2072X CODEC
Initial commit of the Conexant CX2072X CODEC driver. Some features are
not present.

The CX2072X is a ultra low power stereo audio codec supports I2S/TDM
host interface with EQ, DRC features in playback mode.

Featues of CX2072X codec:

 * Two 24 bits DACs and DACs.
 * Stereo Headphone AMP.
 * 2.8W per channel class-D output.
 * Integrated seven bands per channel EQ and DRC.
 * Fully integrated headset support with detect/switch.
 * Stereo digital microphone for array applications.
 * S/PDIF output.
 * Bi-directional GPIOs.
 * Support analog and digital PC Beeep.
 * One headset button support.
 * Supports a wide variety of host interfaces.
   -wide variety of I2S and similar bit-stream formats
    with word lengths of up to 24 bits.
   -TDM stream supports up to 4 channels.
 * AEC loopback support.

Further fixes by tiwai:
 * Rebase to 5.2+
 * Missing DAPM entry definitions
 * Missing power hooks
 * Fix uninitialized variable warning
 * Rewrite jack detection stuff to use set_jack callback
 * Plumbing jack detection code for Intel ASoC
 * Move clk management into runtime PM
 * Drop incorrect regcache usages
 * Drop untested stuff: OF table, EQ/DRC handling
 * Lots of code cleanups and minor refactoring

The OF code was dropped due to the lack of testability.
It should be easy to re-add once if someone can test it.

v1->v2: No change
v2->v3: Move register tables to appropriate place
	Remove some confusing codes
	Set snd_ctl_boolean_* helpers directly
	Fix EQ put callback
	Rename to "DAC1 Switch" from "DAC1 Mute Switch"
	Drop superfluous regmap calls at shutdown
	Avoid regmap_register_patch()
	Add missing register definitions
	Fix register access on big-endian machine
	Remove regcache messes
v3->v4: Fix the wrong endianess conversion in reg write
	Minor code cleanups
v4->v5: Move clk management to runtime PM
	Sparse warning fixes
	Some more code simplification
	Drop tricky regcache fiddling
	Apply mutex locks around possible racy sequences
	Move exported jack detection stuff into set_jack callback
v5->v6: Drop buggy&untested EQ and DRC codes
	Lots of code reduction/cleanup
	Add more comments about platform-specific stuff

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=115531
Signed-off-by: Simon Ho <simon.ho@conexant.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-05-22 13:18:51 +01:00
..
adi ASoC: axi-i2s: let both capture and playback be optional 2019-03-11 17:17:38 +00:00
amd ASoC: amd: Reporting accurate hw_ptr for acp3x dma 2019-05-13 12:41:42 +01:00
atmel ASoC: atmel: tse850: Make some functions static 2019-05-02 10:46:05 +09:00
au1x
bcm
cirrus ARM: ep93xx: move pinctrl interfaces into include/linux/soc 2019-04-28 23:08:40 -07:00
codecs ASoC: Add support for Conexant CX2072X CODEC 2019-05-22 13:18:51 +01:00
dwc
fsl ASoC: fsl_asrc: Unify the supported input and output rate 2019-05-21 22:02:39 +01:00
generic Merge branch 'for-5.2' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.3 2019-05-21 22:00:33 +01:00
hisilicon
img
intel Merge branch 'for-5.2' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.3 2019-05-21 22:00:33 +01:00
jz4740 ASoC: jz4740: Depend on MIPS instead of MACH_JZ4740 2019-03-20 17:05:40 +00:00
kirkwood
mediatek ASoC: Mediatek: MT8183: fix compile error 2019-05-21 19:58:27 +01:00
meson ASoC: meson: add g12a tohdmitx control 2019-05-16 12:13:35 +01:00
mxs clk: Remove io.h from clk-provider.h 2019-05-15 13:21:37 -07:00
nuc900
pxa
qcom ASoC: qcom: add i2c dependency for SND_SOC_SDM845 2019-03-11 16:31:49 +00:00
rockchip ASoC: rockchip: Fix an uninitialized variable compile warning 2019-05-07 11:24:19 +09:00
samsung ASoC: samsung: tobermory: Convert to SPDX License Identifier 2019-04-19 16:59:55 +01:00
sh ASoC: rsnd: move pcm_new from snd_soc_component_driver to snd_soc_dai_driver 2019-05-20 15:21:28 +01:00
sirf
sof Merge branch 'for-5.2' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.3 2019-05-21 22:00:33 +01:00
spear
sprd ASoC: sprd: Add reserved DMA memory support 2019-05-06 22:48:03 +09:00
sti
stm Linux 5.2-rc1 2019-05-20 11:53:50 +01:00
sunxi ASoC: sunxi: sun50i-codec-analog: Rename hpvcc regulator supply to cpvdd 2019-02-19 15:36:02 +00:00
tegra
ti ASoC: ti: fix davinci_mcasp_probe dependencies 2019-03-11 16:34:05 +00:00
txx9 drivers: Remove explicit invocations of mmiowb() 2019-04-08 12:01:02 +01:00
uniphier
ux500
xilinx
xtensa
zte
Kconfig ASoC: SOF: Add Build support for SOF core and Intel drivers 2019-04-28 02:51:46 +09:00
Makefile ASoC: SOF: Add Build support for SOF core and Intel drivers 2019-04-28 02:51:46 +09:00
soc-ac97.c
soc-acpi.c ASoC: soc-acpi: fix implicit header use of module.h/export.h 2019-05-08 18:06:28 +09:00
soc-compress.c
soc-core.c ASoC: soc-core: WARN() is not related to component->driver->probe 2019-05-20 15:21:42 +01:00
soc-dapm.c Merge branch 'for-5.2' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.3 2019-05-21 22:00:33 +01:00
soc-devres.c
soc-generic-dmaengine-pcm.c ASoC: More changes for v5.1 2019-02-28 13:30:55 +01:00
soc-io.c
soc-jack.c
soc-ops.c
soc-pcm.c Merge branch 'for-5.2' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.3 2019-05-21 22:00:33 +01:00
soc-topology.c Merge branch 'asoc-5.1' into asoc-5.2 2019-04-26 11:02:03 +01:00
soc-utils.c