All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/3] clk: si5351: add option to adjust PLL without glitches
@ 2023-10-14 18:19 Alvin Šipraga
  2023-10-14 18:19 ` [PATCH v4 1/3] dt-bindings: clock: si5351: convert to yaml Alvin Šipraga
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Alvin Šipraga @ 2023-10-14 18:19 UTC (permalink / raw)
  To: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Alvin Šipraga
  Cc: Sebastian Hesselbarth, Rabeeh Khoury, Jacob Siverskog,
	Sergej Sawazki, linux-clk, devicetree, linux-kernel

This series intends to address a problem I had when using the Si5351A as
a runtime adjustable audio bit clock. The basic issue is that the driver
in its current form unconditionally resets the PLL whenever adjusting
its rate. But this reset causes an unwanted ~1.4 ms LOW signal glitch in
the clock output.

As a remedy, a new property is added to control the reset behaviour of
the PLLs more precisely. In the process I also converted the bindings to
YAML.

Changes:

v3 -> v4:

- remove spurious | per Rob's suggestion
- simplify conditional clocks/clock-names per Rob's suggestion
- remove mention of clkout[0-7] still being admissible in the commit
  body of patch 1 - while the Linux driver still tolerates this, the
  new dt-bindings do not

v2 -> v3:

- address further comments from Rob:
  - drop unnecessary refs and minItems
  - simplify if conditions for chip variants
  - ignore his comment about dropping '|', as line would be >80 columns
  - move additionalProperties: false close to type: object
  - define clocks/clock-names at top-level
- drop patch to dove-cubox dts per Krzysztof's comment - will send
  separately
- collect Sebastian's Acked-by

v1 -> v2:

- address Rob's comments on the two dt-bindings patches
- new patch to correct the clock node names in the only upstream device
  tree using si5351

---
Alvin Šipraga (3):
      dt-bindings: clock: si5351: convert to yaml
      dt-bindings: clock: si5351: add PLL reset mode property
      clk: si5351: allow PLLs to be adjusted without reset

 .../devicetree/bindings/clock/silabs,si5351.txt    | 126 ----------
 .../devicetree/bindings/clock/silabs,si5351.yaml   | 269 +++++++++++++++++++++
 drivers/clk/clk-si5351.c                           |  47 +++-
 include/linux/platform_data/si5351.h               |   2 +
 4 files changed, 315 insertions(+), 129 deletions(-)
---
base-commit: b7c08e5d3824bc57182b308c1e158ddfdbe4cd00
change-id: 20231014-alvin-clk-si5351-no-pll-reset-ecfac0a6550c


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

end of thread, other threads:[~2023-10-17 19:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-14 18:19 [PATCH v4 0/3] clk: si5351: add option to adjust PLL without glitches Alvin Šipraga
2023-10-14 18:19 ` [PATCH v4 1/3] dt-bindings: clock: si5351: convert to yaml Alvin Šipraga
2023-10-17 19:25   ` Rob Herring
2023-10-14 18:19 ` [PATCH v4 2/3] dt-bindings: clock: si5351: add PLL reset mode property Alvin Šipraga
2023-10-17 19:28   ` Rob Herring
2023-10-14 18:19 ` [PATCH v4 3/3] clk: si5351: allow PLLs to be adjusted without reset Alvin Šipraga

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.