All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/9] clk: meson: pll fixes
@ 2018-01-19 15:55 ` Jerome Brunet
  0 siblings, 0 replies; 22+ messages in thread
From: Jerome Brunet @ 2018-01-19 15:55 UTC (permalink / raw)
  To: Neil Armstrong
  Cc: Jerome Brunet, Kevin Hilman, Carlo Caione, Michael Turquette,
	Stephen Boyd, linux-amlogic, linux-clk, linux-kernel

This changeset is a collection of fixes and clean-up around the pll clock
provider. This has been triggered by the discussion around the ethernet
clock on the axg [0].

On the axg the rate reported by the fixed_pll is off by 8Mhz, which leads
the internal mux of the ethernet driver to pick an mpll2 instead of the
fdiv4.

With this series applied, the fixed_pll of the axg now reports
1999998046 Hz, which is coherent with measurements (~2GHz)

While debugging this, we uncovered quite a mess around the hdmi_pll
of the gxbb and gxl family. This is also fixed by this series.

Last, the parameters table provided to the read-only sys_plls have
been removed, saving a bit of memory

There is still work to be done on this clock provider. Someday,
I hope to see the parameter tables go away completely. This pll
is just a (quite complex) fractional divider, we sould be able to
figure something out at runtime.

Changes since v1: [1]
* fix several typos in the comments
* fix arm32 u64 math in patch 3 (Thanks a lot Martin!!)

[0]: https://lkml.kernel.org/r/1516095424.2608.36.camel@baylibre.com
[1]: https://lkml.kernel.org/r/20180118184532.6856-1-jbrunet@baylibre.com

Jerome Brunet (9):
  clk: meson: check pll rate param table before using it
  clk: meson: remove useless pll rate params tables
  clk: meson: remove unnecessary rounding in the pll clock
  clk: meson: use the frac parameter width instead of a constant
  clk: meson: add od3 to the pll driver
  clk: meson: add the gxl hdmi pll
  clk: meson: fix rate calculation of plls with a fractional part
  clk: meson: gxbb: add the fractional part of the fixed_pll
  clk: meson: axg: add the fractional part of the fixed_pll

 drivers/clk/meson/axg.c     |  99 ++------------------------
 drivers/clk/meson/clk-pll.c |  41 ++++++++---
 drivers/clk/meson/clkc.h    |   2 +
 drivers/clk/meson/gxbb.c    | 166 +++++++++++++++++++-------------------------
 drivers/clk/meson/gxbb.h    |   3 +-
 5 files changed, 111 insertions(+), 200 deletions(-)

-- 
2.14.3

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

end of thread, other threads:[~2018-01-30 19:11 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-19 15:55 [PATCH v2 0/9] clk: meson: pll fixes Jerome Brunet
2018-01-19 15:55 ` Jerome Brunet
2018-01-19 15:55 ` [PATCH v2 1/9] clk: meson: check pll rate param table before using it Jerome Brunet
2018-01-19 15:55   ` Jerome Brunet
2018-01-19 15:55 ` [PATCH v2 2/9] clk: meson: remove useless pll rate params tables Jerome Brunet
2018-01-19 15:55   ` Jerome Brunet
2018-01-19 15:55 ` [PATCH v2 3/9] clk: meson: remove unnecessary rounding in the pll clock Jerome Brunet
2018-01-19 15:55   ` Jerome Brunet
2018-01-19 15:55 ` [PATCH v2 4/9] clk: meson: use the frac parameter width instead of a constant Jerome Brunet
2018-01-19 15:55   ` Jerome Brunet
2018-01-19 15:55 ` [PATCH v2 5/9] clk: meson: add od3 to the pll driver Jerome Brunet
2018-01-19 15:55   ` Jerome Brunet
2018-01-19 15:55 ` [PATCH v2 6/9] clk: meson: add the gxl hdmi pll Jerome Brunet
2018-01-19 15:55   ` Jerome Brunet
2018-01-19 15:55 ` [PATCH v2 7/9] clk: meson: fix rate calculation of plls with a fractional part Jerome Brunet
2018-01-19 15:55   ` Jerome Brunet
2018-01-19 15:55 ` [PATCH v2 8/9] clk: meson: gxbb: add the fractional part of the fixed_pll Jerome Brunet
2018-01-19 15:55   ` Jerome Brunet
2018-01-19 15:55 ` [PATCH v2 9/9] clk: meson: axg: " Jerome Brunet
2018-01-19 15:55   ` Jerome Brunet
2018-01-30 19:10 ` [PATCH v2 0/9] clk: meson: pll fixes Jerome Brunet
2018-01-30 19:10   ` Jerome Brunet

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.