linux/sound
Adam Thomson da8400384f ASoC: da7219: Expose BCLK and WCLK control through CCF
For the purposes of platforms which use the codec as DAI clock
master for the CPU and other codec devices, there is the need to
not only expose the clock gating of BCLK and WCLK but also the
ability to set those rates without going through the ASoC APIs.

To make this possible, the previous CCF implementation in the
driver has been extended to separate BCLK and WCLK out. WCLK is
the parent clock to BCLK, and is also the clock gate for both.
BCLK in HW is a factor/multiplier of WCLK so derives from whatever
SR is chosen for WCLK, hence the need to make it a child of WCLK
for the purposes of CCF. Enabling/disabling either BCLK or WCLK
will result in clocks being ungated/gated accordingly. To simplify
matters, these clocks can only be configured if the codec is set
as master, otherwise CCF control is disallowed.

Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit d90ba6c8b5)
2019-04-05 14:11:51 -05:00
..
ac97 ALSA: ac97: fix unbalanced pm_runtime_enable 2018-08-19 18:37:04 +02:00
aoa cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
arm ASoC: pxa: switch to new ac97 bus support 2018-09-10 18:47:58 +01:00
atmel
core ALSA: rawmidi: Fix potential Spectre v1 vulnerability 2019-04-05 14:11:51 -05:00
drivers ALSA: opl3: Mark expected switch fall-through 2018-08-08 21:40:14 +02:00
firewire ALSA: bebob: fix model-id of unit for Apogee Ensemble 2018-12-19 14:36:35 +01:00
hda ALSA: hda: Avoid NULL pointer dereference at snd_hdac_stream_start() 2019-03-19 11:21:53 -05:00
i2c ALSA: i2c/cs8427: Fix int to char conversion 2018-10-18 15:44:08 +02:00
isa ALSA: isa: Avoid passing NULL to memory allocators 2019-03-19 11:21:53 -05:00
mips ALSA: mips: Cleanup indirect PCM helper usages 2018-09-04 12:13:46 +02:00
oss treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
parisc
pci ALSA: hda/realtek: Disable PC beep in passthrough on alc285 2019-02-14 08:52:31 +01:00
pcmcia Merge branch 'for-linus' into topic/virmidi 2018-07-29 22:39:29 +02:00
ppc ALSA: aoa: Use of_node_name_eq for node name comparisons 2018-12-06 10:54:54 +01:00
sh
soc ASoC: da7219: Expose BCLK and WCLK control through CCF 2019-04-05 14:11:51 -05:00
sparc cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
spi
synth ALSA: emux: Fix potential Spectre v1 vulnerabilities 2018-12-13 09:13:04 +01:00
usb ALSA: usb-audio: Fix implicit fb endpoint setup by quirk 2019-02-07 20:04:43 +01:00
x86 Merge drm/drm-next into drm-intel-next-queued 2018-11-20 13:14:08 +02:00
xen ALSA: xen-front: Use Xen common shared buffer implementation 2018-12-18 12:19:37 -05:00
ac97_bus.c
Kconfig ALSA: xen-front: Introduce Xen para-virtualized sound frontend driver 2018-05-16 12:58:36 +02:00
last.c
Makefile ALSA: xen-front: Introduce Xen para-virtualized sound frontend driver 2018-05-16 12:58:36 +02:00
sound_core.c sound: Use octal not symbolic permissions 2018-05-28 11:27:20 +02:00