* [PATCH] dt-bindings: timer: gpt: update binding doc @ 2018-11-23 9:10 Anson Huang 2018-12-11 21:35 ` Rob Herring 0 siblings, 1 reply; 3+ messages in thread From: Anson Huang @ 2018-11-23 9:10 UTC (permalink / raw) To: daniel.lezcano@linaro.org, tglx@linutronix.de, robh+dt@kernel.org, mark.rutland@arm.com, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Cc: dl-linux-imx The i.MX GPT timer driver binding doc is out of date, the "interrupts", "clocks" and "clock-names" do NOT match current GPT driver implementation, update it and use i.MX6SX as example. Signed-off-by: Anson Huang <Anson.Huang@nxp.com> --- .../devicetree/bindings/timer/fsl,imxgpt.txt | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt b/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt index 9809b11..4e9fa16 100644 --- a/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt +++ b/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt @@ -2,17 +2,21 @@ Freescale i.MX General Purpose Timer (GPT) Required properties: -- compatible : should be "fsl,<soc>-gpt" -- reg : Specifies base physical address and size of the registers. -- interrupts : A list of 4 interrupts; one per timer channel. -- clocks : The clocks provided by the SoC to drive the timer. +- compatible : should be "fsl,<soc>-gpt". +- reg : specifies base physical address and size of the registers. +- interrupts : should be the clock event device interrupt. +- clocks : the clocks provided by the SoC to drive the timer, must contain + an entry for each entry in clock-names. +- clock-names : must include an "per" or "osc_per" entry, and "ipg" entry + is optional according to SoC design. Example: -gpt1: timer@10003000 { - compatible = "fsl,imx27-gpt", "fsl,imx1-gpt"; - reg = <0x10003000 0x1000>; - interrupts = <26>; - clocks = <&clks 46>, <&clks 61>; +gpt: gpt@2098000 { + compatible = "fsl,imx6sx-gpt", "fsl,imx31-gpt"; + reg = <0x02098000 0x4000>; + interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&clks IMX6SX_CLK_GPT_BUS>, + <&clks IMX6SX_CLK_GPT_3M>; clock-names = "ipg", "per"; }; -- 2.7.4 ^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] dt-bindings: timer: gpt: update binding doc 2018-11-23 9:10 [PATCH] dt-bindings: timer: gpt: update binding doc Anson Huang @ 2018-12-11 21:35 ` Rob Herring 2018-12-12 7:24 ` Anson Huang 0 siblings, 1 reply; 3+ messages in thread From: Rob Herring @ 2018-12-11 21:35 UTC (permalink / raw) To: Anson Huang Cc: daniel.lezcano@linaro.org, tglx@linutronix.de, mark.rutland@arm.com, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, dl-linux-imx On Fri, Nov 23, 2018 at 09:10:09AM +0000, Anson Huang wrote: > The i.MX GPT timer driver binding doc is out of date, > the "interrupts", "clocks" and "clock-names" do NOT match > current GPT driver implementation, update it and use i.MX6SX > as example. > > Signed-off-by: Anson Huang <Anson.Huang@nxp.com> > --- > .../devicetree/bindings/timer/fsl,imxgpt.txt | 22 +++++++++++++--------- > 1 file changed, 13 insertions(+), 9 deletions(-) > > diff --git a/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt b/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt > index 9809b11..4e9fa16 100644 > --- a/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt > +++ b/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt > @@ -2,17 +2,21 @@ Freescale i.MX General Purpose Timer (GPT) > > Required properties: > > -- compatible : should be "fsl,<soc>-gpt" > -- reg : Specifies base physical address and size of the registers. > -- interrupts : A list of 4 interrupts; one per timer channel. > -- clocks : The clocks provided by the SoC to drive the timer. > +- compatible : should be "fsl,<soc>-gpt". This should enumerate valid <soc> values. > +- reg : specifies base physical address and size of the registers. > +- interrupts : should be the clock event device interrupt. > +- clocks : the clocks provided by the SoC to drive the timer, must contain > + an entry for each entry in clock-names. > +- clock-names : must include an "per" or "osc_per" entry, and "ipg" entry > + is optional according to SoC design. Need to define the order. Ideally the optional clock should be last, but that's not what the example has. > > Example: > > -gpt1: timer@10003000 { > - compatible = "fsl,imx27-gpt", "fsl,imx1-gpt"; > - reg = <0x10003000 0x1000>; > - interrupts = <26>; > - clocks = <&clks 46>, <&clks 61>; > +gpt: gpt@2098000 { timer@... > + compatible = "fsl,imx6sx-gpt", "fsl,imx31-gpt"; You haven't documented "fsl,imx31-gpt" is a valid fallback. Is the old example not still valid for imx27? > + reg = <0x02098000 0x4000>; Using a size > 4KB just wastes virtual space which is valuable on 32-bit systems with >= 1GB RAM. > + interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; > + clocks = <&clks IMX6SX_CLK_GPT_BUS>, > + <&clks IMX6SX_CLK_GPT_3M>; > clock-names = "ipg", "per"; > }; > -- > 2.7.4 > ^ permalink raw reply [flat|nested] 3+ messages in thread
* RE: [PATCH] dt-bindings: timer: gpt: update binding doc 2018-12-11 21:35 ` Rob Herring @ 2018-12-12 7:24 ` Anson Huang 0 siblings, 0 replies; 3+ messages in thread From: Anson Huang @ 2018-12-12 7:24 UTC (permalink / raw) To: Rob Herring Cc: daniel.lezcano@linaro.org, tglx@linutronix.de, mark.rutland@arm.com, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, dl-linux-imx Hi, Rob Best Regards! Anson Huang > -----Original Message----- > From: Rob Herring [mailto:robh@kernel.org] > Sent: 2018年12月12日 5:35 > To: Anson Huang <anson.huang@nxp.com> > Cc: daniel.lezcano@linaro.org; tglx@linutronix.de; mark.rutland@arm.com; > linux-kernel@vger.kernel.org; devicetree@vger.kernel.org; dl-linux-imx > <linux-imx@nxp.com> > Subject: Re: [PATCH] dt-bindings: timer: gpt: update binding doc > > On Fri, Nov 23, 2018 at 09:10:09AM +0000, Anson Huang wrote: > > The i.MX GPT timer driver binding doc is out of date, the > > "interrupts", "clocks" and "clock-names" do NOT match current GPT > > driver implementation, update it and use i.MX6SX as example. > > > > Signed-off-by: Anson Huang <Anson.Huang@nxp.com> > > --- > > .../devicetree/bindings/timer/fsl,imxgpt.txt | 22 > +++++++++++++--------- > > 1 file changed, 13 insertions(+), 9 deletions(-) > > > > diff --git a/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt > > b/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt > > index 9809b11..4e9fa16 100644 > > --- a/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt > > +++ b/Documentation/devicetree/bindings/timer/fsl,imxgpt.txt > > @@ -2,17 +2,21 @@ Freescale i.MX General Purpose Timer (GPT) > > > > Required properties: > > > > -- compatible : should be "fsl,<soc>-gpt" > > -- reg : Specifies base physical address and size of the registers. > > -- interrupts : A list of 4 interrupts; one per timer channel. > > -- clocks : The clocks provided by the SoC to drive the timer. > > +- compatible : should be "fsl,<soc>-gpt". > > This should enumerate valid <soc> values. Agree, I list all the available compatible strings in GPT driver here in V2 patch. > > > +- reg : specifies base physical address and size of the registers. > > +- interrupts : should be the clock event device interrupt. > > +- clocks : the clocks provided by the SoC to drive the timer, must contain > > + an entry for each entry in clock-names. > > +- clock-names : must include an "per" or "osc_per" entry, and "ipg" entry > > + is optional according to SoC design. > > Need to define the order. Ideally the optional clock should be last, but that's > not what the example has. Current GPT driver does NOT have the order requirement since it all gets clk by name, but I think specifying the order is better, I update it in V2 patch. > > > > > Example: > > > > -gpt1: timer@10003000 { > > - compatible = "fsl,imx27-gpt", "fsl,imx1-gpt"; > > - reg = <0x10003000 0x1000>; > > - interrupts = <26>; > > - clocks = <&clks 46>, <&clks 61>; > > +gpt: gpt@2098000 { > > timer@... > > > + compatible = "fsl,imx6sx-gpt", "fsl,imx31-gpt"; > > You haven't documented "fsl,imx31-gpt" is a valid fallback. Is the old example > not still valid for imx27? > > > + reg = <0x02098000 0x4000>; > > Using a size > 4KB just wastes virtual space which is valuable on 32-bit systems > with >= 1GB RAM. I forgot that old example is still valid, so I will just use old example here, but the old example of i.MX27 GPT already NOT match with latest i.MX27 dtsi GPT node, I update it with latest GPT node in i.MX27 dtsi in V2 patch, please help review it, thanks. Anson. > > > + interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; > > + clocks = <&clks IMX6SX_CLK_GPT_BUS>, > > + <&clks IMX6SX_CLK_GPT_3M>; > > clock-names = "ipg", "per"; > > }; > > -- > > 2.7.4 > > ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-12-12 7:24 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-11-23 9:10 [PATCH] dt-bindings: timer: gpt: update binding doc Anson Huang 2018-12-11 21:35 ` Rob Herring 2018-12-12 7:24 ` Anson Huang
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).