[PATCH 00/10] meson8b clock driver rewrite/cleanup

Michael Turquette mturquette at baylibre.com
Thu Jun 9 17:27:37 PDT 2016

This series came about while writing the clock driver for the AmLogic
GXBB clock controller. GXBB shares much of the same clock controller IP
as the Meson8b clock controller and the source for the drivers is very
similar. However, I wanted the GXBB driver to actually be a real
platform_driver, and not an early initcall, which led to the same
changes in the Meson8b driver. From there a lot of other changes came

This series improves documentation, refactors statically initialized
data, removes unnecessary registration functions and converts the
meson8b clock controller code into a proper platform_driver. It also
changes up the Kconfig bits to prepare for the gxbb clock controller.
The diffstat is -190, which is nice as well.

As a consequence of the shift to platform_driver, all of clocks are
registered at module_init time. If any are needed very early during boot
then the OF_CLK_DECLARE stuff can be added back in, but I doubt it is

Additionally this series makes use of some of the nice clk_hw helper
introduced by Stephen, especially clk_hw_onecell_data.

Michael Turquette (10):
  clk: meson8b: rectify reg offsets with datasheet
  clk: meson8b: clean up fixed rate clocks
  clk: meson8b: clean up pll clocks
  clk: meson8b: clean up fixed factor clocks
  clk: meson8b: clean up cpu clocks
  clk: meson8b: remove mali clk
  clk: meson8b: clean up composite clocks
  clk: meson8b: convert to platform_driver
  arm: meson: explicitly select clk drivers
  clk: meson: only build selected platforms

 arch/arm/mach-meson/Kconfig              |   3 +
 drivers/clk/Kconfig                      |   1 +
 drivers/clk/Makefile                     |   2 +-
 drivers/clk/meson/Kconfig                |  12 +
 drivers/clk/meson/Makefile               |   4 +-
 drivers/clk/meson/clk-cpu.c              |  73 +-----
 drivers/clk/meson/clk-pll.c              |  72 +----
 drivers/clk/meson/clkc.c                 | 249 ------------------
 drivers/clk/meson/clkc.h                 | 150 ++---------
 drivers/clk/meson/meson8b-clkc.c         | 436 +++++++++++++++++++++++++------
 include/dt-bindings/clock/meson8b-clkc.h |   4 +-
 11 files changed, 408 insertions(+), 598 deletions(-)
 create mode 100644 drivers/clk/meson/Kconfig
 delete mode 100644 drivers/clk/meson/clkc.c


More information about the linux-amlogic mailing list