[PATCH 0/3] clk: add driver for the SiFive FU540 PRCI and PLLs it controls

From: Paul Walmsley
Date: Sat Oct 20 2018 - 09:38:41 EST


Add a driver for the SiFive FU540 PRCI IP block, which handles clock and
some device reset control for the SiFive FU540 chip. Also add a driver-
independent library for the Analog Bits Wide-Range PLL (WRPLL), used by
the PRCI driver to monitor and control the WRPLL instances on the FU540
chip.

It's been a long time since I've worked on Linux clock code, so Mike &
Stephen, I'd appreciate a close look at the PRCI driver to make sure
what it's doing makes sense.

Boot-tested on a SiFive HiFive Unleashed board. COREPLL rate changes
and notification were also tested on the same board.

This patch series is also available at:

https://github.com/sifive/riscv-linux/tree/dev/paulw/prci-v4.19-rc7


Paul Walmsley (3):
clk: analogbits: add Wide-Range PLL library
dt-bindings: clk: add documentation for the SiFive PRCI driver
clk: sifive: add a driver for the SiFive FU540 PRCI IP block

.../bindings/clock/sifive/fu540-prci.txt | 40 ++
MAINTAINERS | 6 +
drivers/clk/Kconfig | 2 +
drivers/clk/Makefile | 2 +
drivers/clk/analogbits/Kconfig | 3 +
drivers/clk/analogbits/Makefile | 2 +
drivers/clk/analogbits/wrpll-cln28hpc.c | 387 +++++++++++
drivers/clk/sifive/Kconfig | 18 +
drivers/clk/sifive/Makefile | 1 +
drivers/clk/sifive/fu540-prci.c | 634 ++++++++++++++++++
include/linux/clk/analogbits-wrpll-cln28hpc.h | 99 +++
include/linux/clk/sifive-fu540-prci.h | 27 +
12 files changed, 1221 insertions(+)
create mode 100644 Documentation/devicetree/bindings/clock/sifive/fu540-prci.txt
create mode 100644 drivers/clk/analogbits/Kconfig
create mode 100644 drivers/clk/analogbits/Makefile
create mode 100644 drivers/clk/analogbits/wrpll-cln28hpc.c
create mode 100644 drivers/clk/sifive/Kconfig
create mode 100644 drivers/clk/sifive/Makefile
create mode 100644 drivers/clk/sifive/fu540-prci.c
create mode 100644 include/linux/clk/analogbits-wrpll-cln28hpc.h
create mode 100644 include/linux/clk/sifive-fu540-prci.h

Cc: Michael Turquette <mturquette@xxxxxxxxxxxx>
Cc: Stephen Boyd <sboyd@xxxxxxxxxx>
Cc: Albert Ou <aou@xxxxxxxxxxxxxxxxx>
Cc: Wesley W. Terpstra <wesley@xxxxxxxxxx>
Cc: Palmer Dabbelt <palmer@xxxxxxxxxx>
Cc: Megan Wachs <megan@xxxxxxxxxx>
Cc: Rob Herring <robh+dt@xxxxxxxxxx>
Cc: Mark Rutland <mark.rutland@xxxxxxx>
Cc: devicetree@xxxxxxxxxxxxxxx
Cc: linux-riscv@xxxxxxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: linux-clk@xxxxxxxxxxxxxxx

--
2.19.1