mbox series

[0/2] Support for Apple SoCs' NCO blocks

Message ID 20211214120213.15649-1-povik@protonmail.com (mailing list archive)
Headers show
Series Support for Apple SoCs' NCO blocks | expand

Message

Martin Povišer Dec. 14, 2021, 12:02 p.m. UTC
Hi all,

I am submitting a common clock driver for Numerically Controlled Oscillator (NCO)
blocks on recent Apple ARM64 SoCs. The NCO driver will be used for audio
support on these platforms which is work-in-progress.

I suppose the only noteworthy thing is the blocks divide an input clock
with a clock cycle counter in part implemented as a LFSR. For that reason
the driver upfront calculates a table of LFSR states to be able to program
the dividers.

Best,
Martin

Martin Povišer (2):
  dt-bindings: clock: Add Apple NCO
  clk: clk-apple-nco: Add driver for Apple NCO

 .../devicetree/bindings/clock/apple,nco.yaml  |  70 ++++
 drivers/clk/Kconfig                           |   9 +
 drivers/clk/Makefile                          |   1 +
 drivers/clk/clk-apple-nco.c                   | 299 ++++++++++++++++++
 4 files changed, 379 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/clock/apple,nco.yaml
 create mode 100644 drivers/clk/clk-apple-nco.c

--
2.33.0