[alsa-devel] [PATCH] Add support for CLKOUT to wm8731 codec driver

Mark Brown broonie at opensource.wolfsonmicro.com
Fri Oct 30 20:44:02 CET 2009

On Fri, Oct 30, 2009 at 02:04:25PM -0500, Bill Gatliff wrote:
> Mark Brown wrote:

> > wm8993 supports multiple internal options for sysclk usig the id
> > parameter. Could you be more explicit about what you can't follow here
> > please? I might be able to help more if I could see what's confusing you.

> I guess what it comes down to is, I have no idea what I'm doing as far
> as the Alsa SoC APIs are concerned.  I understand fully how the hardware
> works, but not any of the SND_SOC_* macros.  I'm lost!  :)

All I said to do was to take your code to set this via the set_sysclk()
function and use the id that gets passed in to split up the changes to
the master clock and the output clock so the two are adjusted

> I see in the wm8993 code the following:

> static const struct snd_soc_dapm_widget wm8993_dapm_widgets[] = {
> SND_SOC_DAPM_SUPPLY("CLK_SYS", WM8993_BUS_CONTROL_1, 1, 0, clk_sys_event,
>                     SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD),
> ...

This is used to switch on and off the internal system clock in the
CODEC which supplies the clock to all the digital functionaliy in the
device, it's not something that's visible outside the device.  The
wm8731 is a much older device and doesn't have this sort of detailed

More information about the Alsa-devel mailing list