All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] clk: bcm2835: PCM clock improvements
@ 2017-05-30 16:27 Phil Elwell
  2017-05-31  9:18 ` [PATCH v2 " Phil Elwell
  0 siblings, 1 reply; 3+ messages in thread
From: Phil Elwell @ 2017-05-30 16:27 UTC (permalink / raw)
  To: Michael Turquette, Stephen Boyd, Eric Anholt, Stefan Wahren,
	Florian Fainelli, linux-clk, linux-rpi-kernel, linux-kernel

The switch to using the upstream bcm2835_cprman clock driver caused a
few problems for users of PCM (I2S) peripherals. Audio applications
require accurate, stable clocks, and the cprman driver wasn't
conservative enough in its choice of clock sources.

These patches restrict the clock sources for the PCM peripheral in two
ways: the first causes all possible sources except OSC and PLLD_PER
to be ignored, while the second allows clocks to be specified as
"low_jitter", causing the effects of fractional divisors to be taken
into account when comparing potential clocks for accuracy. In practice,
the combined effect of the two patches is to choose OSC as a source if
an integer divisor can be used, otherwise PLLD_PER is chosen.

Phil Elwell (2):
  clk: bcm2835: Limit PCM clock to OSC and PLLD_PER
  clk: bcm2835: Minimise clock jitter for PCM clock

 drivers/clk/bcm/clk-bcm2835.c | 50 ++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 45 insertions(+), 5 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH v2 0/2] clk: bcm2835: PCM clock improvements
  2017-05-30 16:27 [PATCH 0/2] clk: bcm2835: PCM clock improvements Phil Elwell
@ 2017-05-31  9:18 ` Phil Elwell
  2017-05-31 14:58   ` Stefan Wahren
  0 siblings, 1 reply; 3+ messages in thread
From: Phil Elwell @ 2017-05-31  9:18 UTC (permalink / raw)
  To: Michael Turquette, Stephen Boyd, Eric Anholt, Stefan Wahren,
	Florian Fainelli, linux-clk, linux-rpi-kernel, linux-kernel

The switch to using the upstream bcm2835_cprman clock driver caused a
few problems for users of PCM (I2S) peripherals. Audio applications
require accurate, stable clocks, and the cprman driver wasn't
conservative enough in its choice of clock sources.

These patches restrict the clock sources for the PCM peripheral in two
ways: the first causes all possible sources except OSC and PLLD_PER
to be ignored, while the second allows clocks to be specified as
"low_jitter", causing the effects of fractional divisors to be taken
into account when comparing potential clocks for accuracy. In practice,
the combined effect of the two patches is to choose OSC as a source if
an integer divisor can be used, otherwise PLLD_PER is chosen.

Changes in v2:
* Extended bcm2835_pcm_per_parents to cover the pllh_aux slot, and gave
  it a comment in patch 1.
* Added a REGISTER_PCM_CLK analagous to REGISTER_PER_CLK in patch 1.
* Renamed temporary variable idiv to int_div in patch 2.

Phil Elwell (2):
  clk: bcm2835: Limit PCM clock to OSC and PLLD_PER
  clk: bcm2835: Minimise clock jitter for PCM clock

 drivers/clk/bcm/clk-bcm2835.c | 50 ++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 45 insertions(+), 5 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2 0/2] clk: bcm2835: PCM clock improvements
  2017-05-31  9:18 ` [PATCH v2 " Phil Elwell
@ 2017-05-31 14:58   ` Stefan Wahren
  0 siblings, 0 replies; 3+ messages in thread
From: Stefan Wahren @ 2017-05-31 14:58 UTC (permalink / raw)
  To: Phil Elwell, Michael Turquette, Stephen Boyd, Eric Anholt,
	Florian Fainelli, linux-clk, linux-rpi-kernel, linux-kernel

Am 31.05.2017 um 11:18 schrieb Phil Elwell:
> The switch to using the upstream bcm2835_cprman clock driver caused a
> few problems for users of PCM (I2S) peripherals. Audio applications
> require accurate, stable clocks, and the cprman driver wasn't
> conservative enough in its choice of clock sources.
>
> These patches restrict the clock sources for the PCM peripheral in two
> ways: the first causes all possible sources except OSC and PLLD_PER
> to be ignored, while the second allows clocks to be specified as
> "low_jitter", causing the effects of fractional divisors to be taken
> into account when comparing potential clocks for accuracy. In practice,
> the combined effect of the two patches is to choose OSC as a source if
> an integer divisor can be used, otherwise PLLD_PER is chosen.
>
> Changes in v2:
> * Extended bcm2835_pcm_per_parents to cover the pllh_aux slot, and gave
>   it a comment in patch 1.
> * Added a REGISTER_PCM_CLK analagous to REGISTER_PER_CLK in patch 1.
> * Renamed temporary variable idiv to int_div in patch 2.
>
> Phil Elwell (2):
>   clk: bcm2835: Limit PCM clock to OSC and PLLD_PER
>   clk: bcm2835: Minimise clock jitter for PCM clock
>
>  drivers/clk/bcm/clk-bcm2835.c | 50 ++++++++++++++++++++++++++++++++++++++-----
>  1 file changed, 45 insertions(+), 5 deletions(-)
>
For the whole series:

Acked-by: Stefan Wahren <stefan.wahren@i2se.com>

I hope Eric as the author of the driver has a chance to look over the
patches.

Stefan

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-05-31 14:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-30 16:27 [PATCH 0/2] clk: bcm2835: PCM clock improvements Phil Elwell
2017-05-31  9:18 ` [PATCH v2 " Phil Elwell
2017-05-31 14:58   ` Stefan Wahren

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.