devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/2] clk: meson: add a sub EMMC clock controller support
@ 2018-07-12 21:12 Yixun Lan
  2018-07-12 21:12 ` [PATCH v3 1/2] clk: meson: add DT documentation for emmc clock controller Yixun Lan
  0 siblings, 1 reply; 5+ messages in thread
From: Yixun Lan @ 2018-07-12 21:12 UTC (permalink / raw)
  To: Jerome Brunet, Neil Armstrong
  Cc: Yixun Lan, Kevin Hilman, Carlo Caione, Michael Turquette,
	Stephen Boyd, Rob Herring, Miquel Raynal, Boris Brezillon,
	Martin Blumenstingl, Liang Yang, Qiufang Dai, Jian Hu, linux-clk,
	linux-amlogic, linux-arm-kernel, linux-kernel, devicetree

This driver will add a MMC clock controller driver support.
The original idea about adding a clock controller is during the
discussion in the NAND driver mainline effort[1].

I've tested this in the S400 board (AXG platform) by using NAND driver.

Changes since v2 [3]:
 - squash dt-binding clock-id patch
 - update license
 - fix alignment
 - construct a clk register helper() function

Changes since v1 [2]:
 - implement phase clock
 - update compatible name
 - adjust file name
 - divider probe() into small functions, and re-use them

[1] https://lkml.kernel.org/r/20180628090034.0637a062@xps13
[2] https://lkml.kernel.org/r/20180703145716.31860-1-yixun.lan@amlogic.com
[3] https://lkml.kernel.org/r/20180710163658.6175-1-yixun.lan@amlogic.com


Yixun Lan (2):
  clk: meson: add DT documentation for emmc clock controller
  clk: meson: add sub MMC clock controller driver

 .../bindings/clock/amlogic,mmc-clkc.txt       |  31 ++
 drivers/clk/meson/Kconfig                     |   9 +
 drivers/clk/meson/Makefile                    |   1 +
 drivers/clk/meson/mmc-clkc.c                  | 367 ++++++++++++++++++
 .../clock/amlogic,meson-mmc-clkc.h            |  16 +
 5 files changed, 424 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/clock/amlogic,mmc-clkc.txt
 create mode 100644 drivers/clk/meson/mmc-clkc.c
 create mode 100644 include/dt-bindings/clock/amlogic,meson-mmc-clkc.h

-- 
2.18.0

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

* [PATCH v3 1/2] clk: meson: add DT documentation for emmc clock controller
  2018-07-12 21:12 [PATCH v3 0/2] clk: meson: add a sub EMMC clock controller support Yixun Lan
@ 2018-07-12 21:12 ` Yixun Lan
  2018-07-24 23:29   ` Rob Herring
  0 siblings, 1 reply; 5+ messages in thread
From: Yixun Lan @ 2018-07-12 21:12 UTC (permalink / raw)
  To: Jerome Brunet, Neil Armstrong
  Cc: Yixun Lan, Kevin Hilman, Carlo Caione, Michael Turquette,
	Stephen Boyd, Rob Herring, Miquel Raynal, Boris Brezillon,
	Martin Blumenstingl, Liang Yang, Qiufang Dai, Jian Hu, linux-clk,
	linux-amlogic, linux-arm-kernel, linux-kernel, devicetree

Document the MMC sub clock controller driver, the potential consumer
of this driver is MMC or NAND. Also add three clock bindings IDs which
provided by this driver.

Signed-off-by: Yixun Lan <yixun.lan@amlogic.com>
---
 .../bindings/clock/amlogic,mmc-clkc.txt       | 31 +++++++++++++++++++
 .../clock/amlogic,meson-mmc-clkc.h            | 16 ++++++++++
 2 files changed, 47 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/clock/amlogic,mmc-clkc.txt
 create mode 100644 include/dt-bindings/clock/amlogic,meson-mmc-clkc.h

diff --git a/Documentation/devicetree/bindings/clock/amlogic,mmc-clkc.txt b/Documentation/devicetree/bindings/clock/amlogic,mmc-clkc.txt
new file mode 100644
index 000000000000..91018221df1a
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/amlogic,mmc-clkc.txt
@@ -0,0 +1,31 @@
+* Amlogic MMC Sub Clock Controller Driver
+
+The Amlogic MMC clock controller generates and supplies clock to support
+MMC and NAND controller
+
+Required Properties:
+
+- compatible: should be:
+		"amlogic,meson-gx-mmc-clkc"
+		"amlogic,meson-axg-mmc-clkc"
+
+- #clock-cells: should be 1.
+- clocks: phandles to clocks corresponding to the clock-names property
+- clock-names: list of parent clock names
+	- "clkin0", "clkin1"
+
+Parent node should have the following properties :
+- compatible: "amlogic,meson-axg-mmc-clkc", "syscon".
+- reg: base address and size of the MMC control register space.
+
+Example: Clock controller node:
+
+sd_mmc_c_clkc: clock-controller@7000 {
+	compatible = "amlogic,meson-axg-mmc-clkc", "syscon";
+	reg = <0x0 0x7000 0x0 0x4>;
+	#clock-cells = <1>;
+
+	clock-names = "clkin0", "clkin1";
+	clocks = <&clkc CLKID_SD_MMC_C_CLK0>,
+		 <&clkc CLKID_FCLK_DIV2>;
+};
diff --git a/include/dt-bindings/clock/amlogic,meson-mmc-clkc.h b/include/dt-bindings/clock/amlogic,meson-mmc-clkc.h
new file mode 100644
index 000000000000..2ae988ebc3ae
--- /dev/null
+++ b/include/dt-bindings/clock/amlogic,meson-mmc-clkc.h
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
+/*
+ * Meson MMC sub clock tree IDs
+ *
+ * Copyright (c) 2018 Amlogic, Inc. All rights reserved.
+ * Author: Yixun Lan <yixun.lan@amlogic.com>
+ */
+
+#ifndef __MMC_CLKC_H
+#define __MMC_CLKC_H
+
+#define CLKID_MMC_DIV				1
+#define CLKID_MMC_PHASE_TX			3
+#define CLKID_MMC_PHASE_RX			4
+
+#endif
-- 
2.18.0

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

* Re: [PATCH v3 1/2] clk: meson: add DT documentation for emmc clock controller
  2018-07-12 21:12 ` [PATCH v3 1/2] clk: meson: add DT documentation for emmc clock controller Yixun Lan
@ 2018-07-24 23:29   ` Rob Herring
  2018-07-27 14:14     ` Yixun Lan
  0 siblings, 1 reply; 5+ messages in thread
From: Rob Herring @ 2018-07-24 23:29 UTC (permalink / raw)
  To: Yixun Lan
  Cc: Jerome Brunet, Neil Armstrong, Kevin Hilman, Carlo Caione,
	Michael Turquette, Stephen Boyd, Miquel Raynal, Boris Brezillon,
	Martin Blumenstingl, Liang Yang, Qiufang Dai, Jian Hu, linux-clk,
	linux-amlogic, linux-arm-kernel, linux-kernel, devicetree

On Thu, Jul 12, 2018 at 09:12:43PM +0000, Yixun Lan wrote:
> Document the MMC sub clock controller driver, the potential consumer
> of this driver is MMC or NAND. Also add three clock bindings IDs which
> provided by this driver.
> 
> Signed-off-by: Yixun Lan <yixun.lan@amlogic.com>
> ---
>  .../bindings/clock/amlogic,mmc-clkc.txt       | 31 +++++++++++++++++++
>  .../clock/amlogic,meson-mmc-clkc.h            | 16 ++++++++++
>  2 files changed, 47 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/clock/amlogic,mmc-clkc.txt
>  create mode 100644 include/dt-bindings/clock/amlogic,meson-mmc-clkc.h

Reviewed-by: Rob Herring <robh@kernel.org>

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

* Re: [PATCH v3 1/2] clk: meson: add DT documentation for emmc clock controller
  2018-07-24 23:29   ` Rob Herring
@ 2018-07-27 14:14     ` Yixun Lan
  2018-07-30 17:23       ` Rob Herring
  0 siblings, 1 reply; 5+ messages in thread
From: Yixun Lan @ 2018-07-27 14:14 UTC (permalink / raw)
  To: Rob Herring
  Cc: yixun.lan, Jerome Brunet, Neil Armstrong, Kevin Hilman,
	Carlo Caione, Michael Turquette, Stephen Boyd, Miquel Raynal,
	Boris Brezillon, Martin Blumenstingl, Liang Yang, Qiufang Dai,
	Jian Hu, linux-clk, linux-amlogic, linux-arm-kernel, linux-kernel,
	devicetree


HI Rob

On 07/25/2018 07:29 AM, Rob Herring wrote:
> On Thu, Jul 12, 2018 at 09:12:43PM +0000, Yixun Lan wrote:
>> Document the MMC sub clock controller driver, the potential consumer
>> of this driver is MMC or NAND. Also add three clock bindings IDs which
>> provided by this driver.
>>
>> Signed-off-by: Yixun Lan <yixun.lan@amlogic.com>
>> ---
>>  .../bindings/clock/amlogic,mmc-clkc.txt       | 31 +++++++++++++++++++
>>  .../clock/amlogic,meson-mmc-clkc.h            | 16 ++++++++++
>>  2 files changed, 47 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/clock/amlogic,mmc-clkc.txt
>>  create mode 100644 include/dt-bindings/clock/amlogic,meson-mmc-clkc.h
> 
> Reviewed-by: Rob Herring <robh@kernel.org>
> 

Thanks for the review!

There is a discussion about dropping "meson-" prefix in the compatible
string[1]

So, I will send another version with the new compatible name adjusted
from "amlogic,meson-axg-mmc-clkc" to "amlogic,axg-mmc-clkc"..
probably also rename the dt-bindings header file to amlogc,mmc-clkc.h

[1]  https://lkml.kernel.org/r/7hk1prmg4w.fsf@baylibre.com


Yixun

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

* Re: [PATCH v3 1/2] clk: meson: add DT documentation for emmc clock controller
  2018-07-27 14:14     ` Yixun Lan
@ 2018-07-30 17:23       ` Rob Herring
  0 siblings, 0 replies; 5+ messages in thread
From: Rob Herring @ 2018-07-30 17:23 UTC (permalink / raw)
  To: Yixun Lan
  Cc: Jerome Brunet, Neil Armstrong, Kevin Hilman, Carlo Caione,
	Michael Turquette, Stephen Boyd, Miquèl Raynal,
	Boris Brezillon, Martin Blumenstingl, Liang Yang, Qiufang Dai,
	Jian Hu, linux-clk, linux-amlogic,
	moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE,
	linux-kernel@vger.kernel.org, devicetree

On Fri, Jul 27, 2018 at 8:14 AM Yixun Lan <yixun.lan@amlogic.com> wrote:
>
>
> HI Rob
>
> On 07/25/2018 07:29 AM, Rob Herring wrote:
> > On Thu, Jul 12, 2018 at 09:12:43PM +0000, Yixun Lan wrote:
> >> Document the MMC sub clock controller driver, the potential consumer
> >> of this driver is MMC or NAND. Also add three clock bindings IDs which
> >> provided by this driver.
> >>
> >> Signed-off-by: Yixun Lan <yixun.lan@amlogic.com>
> >> ---
> >>  .../bindings/clock/amlogic,mmc-clkc.txt       | 31 +++++++++++++++++++
> >>  .../clock/amlogic,meson-mmc-clkc.h            | 16 ++++++++++
> >>  2 files changed, 47 insertions(+)
> >>  create mode 100644 Documentation/devicetree/bindings/clock/amlogic,mmc-clkc.txt
> >>  create mode 100644 include/dt-bindings/clock/amlogic,meson-mmc-clkc.h
> >
> > Reviewed-by: Rob Herring <robh@kernel.org>
> >
>
> Thanks for the review!
>
> There is a discussion about dropping "meson-" prefix in the compatible
> string[1]
>
> So, I will send another version with the new compatible name adjusted
> from "amlogic,meson-axg-mmc-clkc" to "amlogic,axg-mmc-clkc"..
> probably also rename the dt-bindings header file to amlogc,mmc-clkc.h

Okay, you can keep my R-by.

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

end of thread, other threads:[~2018-07-30 17:23 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-12 21:12 [PATCH v3 0/2] clk: meson: add a sub EMMC clock controller support Yixun Lan
2018-07-12 21:12 ` [PATCH v3 1/2] clk: meson: add DT documentation for emmc clock controller Yixun Lan
2018-07-24 23:29   ` Rob Herring
2018-07-27 14:14     ` Yixun Lan
2018-07-30 17:23       ` Rob Herring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).