~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/sound/soc/clocking.rst

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 ==============
  2 Audio Clocking
  3 ==============
  4 
  5 This text describes the audio clocking terms in ASoC and digital audio in
  6 general. Note: Audio clocking can be complex!
  7 
  8 
  9 Master Clock
 10 ------------
 11 
 12 Every audio subsystem is driven by a master clock (sometimes referred to as MCLK
 13 or SYSCLK). This audio master clock can be derived from a number of sources
 14 (e.g. crystal, PLL, CPU clock) and is responsible for producing the correct
 15 audio playback and capture sample rates.
 16 
 17 Some master clocks (e.g. PLLs and CPU based clocks) are configurable in that
 18 their speed can be altered by software (depending on the system use and to save
 19 power). Other master clocks are fixed at a set frequency (i.e. crystals).
 20 
 21 
 22 DAI Clocks
 23 ----------
 24 The Digital Audio Interface is usually driven by a Bit Clock (often referred to
 25 as BCLK). This clock is used to drive the digital audio data across the link
 26 between the codec and CPU.
 27 
 28 The DAI also has a frame clock to signal the start of each audio frame. This
 29 clock is sometimes referred to as LRC (left right clock) or FRAME. This clock
 30 runs at exactly the sample rate (LRC = Rate).
 31 
 32 Bit Clock can be generated as follows:-
 33 
 34 - BCLK = MCLK / x, or
 35 - BCLK = LRC * x, or
 36 - BCLK = LRC * Channels * Word Size
 37 
 38 This relationship depends on the codec or SoC CPU in particular. In general
 39 it is best to configure BCLK to the lowest possible speed (depending on your
 40 rate, number of channels and word size) to save on power.
 41 
 42 It is also desirable to use the codec (if possible) to drive (or master) the
 43 audio clocks as it usually gives more accurate sample rates than the CPU.
 44 
 45 
 46 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php