[PATCH 11/12] dt-bindings: clock: add imx8qxp clock binding doc
A.s. Dong
aisheng.dong at nxp.com
Wed May 2 10:40:54 PDT 2018
> -----Original Message-----
> From: Rob Herring [mailto:robh at kernel.org]
> Sent: Tuesday, May 1, 2018 11:37 PM
> To: A.s. Dong <aisheng.dong at nxp.com>
> Cc: linux-clk at vger.kernel.org; linux-arm-kernel at lists.infradead.org;
> sboyd at kernel.org; mturquette at baylibre.com; shawnguo at kernel.org; Fabio
> Estevam <fabio.estevam at nxp.com>; dl-linux-imx <linux-imx at nxp.com>;
> kernel at pengutronix.de; Mark Rutland <mark.rutland at arm.com>;
> devicetree at vger.kernel.org
> Subject: Re: [PATCH 11/12] dt-bindings: clock: add imx8qxp clock binding doc
>
> On Sat, Apr 28, 2018 at 02:56:42AM +0800, Dong Aisheng wrote:
> > Add imx8qxp clock binding doc.
> >
> > Cc: Shawn Guo <shawnguo at kernel.org>
> > Cc: Sascha Hauer <kernel at pengutronix.de>
> > Cc: Fabio Estevam <fabio.estevam at nxp.com>
> > Cc: Stephen Boyd <sboyd at kernel.org>
> > Cc: Michael Turquette <mturquette at baylibre.com>
> > Cc: Rob Herring <robh+dt at kernel.org>
> > Cc: Mark Rutland <mark.rutland at arm.com>
> > Cc: devicetree at vger.kernel.org
> > Signed-off-by: Dong Aisheng <aisheng.dong at nxp.com>
> > ---
> > .../devicetree/bindings/clock/imx8qxp-clk.txt | 39 +++
> > include/dt-bindings/clock/imx8qxp-clock.h | 362
> +++++++++++++++++++++
> > 2 files changed, 401 insertions(+)
> > create mode 100644
> > Documentation/devicetree/bindings/clock/imx8qxp-clk.txt
> > create mode 100644 include/dt-bindings/clock/imx8qxp-clock.h
> >
> > diff --git a/Documentation/devicetree/bindings/clock/imx8qxp-clk.txt
> > b/Documentation/devicetree/bindings/clock/imx8qxp-clk.txt
> > new file mode 100644
> > index 0000000..5e365d7
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/clock/imx8qxp-clk.txt
> > @@ -0,0 +1,39 @@
> > +NXP i.MX8QXP Clocks Based on SCFW
> > +--------------------------------------------------------------------
> > +
> > +Some i.MX SoCs contain a system controller that is responsible for
> > +providing clock control service for the IPs. Communication between
> > +the host processor running an OS and the system controller happens
> > +through a SCU protocol [1].
> > +
> > +[1] Documentation/devicetree/bindings/arm/freescale/fsl,scu.txt
> > +
> > +Required properties:
> > +
> > +- compatible: Should be "fsl,imx8qxp-clock".
> > +- #clock-cells: Should be <1>.
>
> There's no reason for this node. Just make the parent (SCU) a clock provider.
>
It can be done, but do I need to also remove other nodes like pinctrl, power domain
in the same sub-nodes Of SCU?
BTW i saw arm,scpi.txt also keep the clk node under scpi node.
Documentation/devicetree/bindings/arm/arm,scpi.txt
Seems like SCU like ARM SCPI is more like a protocol node while still needs
different drivers to provide services.
Regards
Dong Aisheng
> > +
> > +The clock consumer should specify the desired clock by having the
> > +clock ID in its "clocks" phandle cell.
> > +See include/dt-bindings/clock/imx8qxp-clock.h
> > +for the full list of i.MX8QXP clock IDs.
> > +
> > +Examples:
> > +
> > +#include <dt-bindings/clock/imx8qxp-clock.h>
> > +
> > +clk: clk {
> > + compatible = "fsl,imx8qxp-clk";
> > + #clock-cells = <1>;
> > +};
> > +
> > +i2c0: i2c at 5a800000 {
> > + compatible = "fsl,imx8qxp-lpi2c", "fsl,imx7ulp-lpi2c";
> > + reg = <0x0 0x5a800000 0x0 0x4000>;
> > + interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-parent = <&gic>;
> > + clocks = <&clk IMX8QXP_I2C0_CLK>,
> > + <&clk IMX8QXP_I2C0_IPG_CLK>;
> > + clock-names = "per", "ipg";
> > + ...
> > +};
More information about the linux-arm-kernel
mailing list