[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <DU0PR04MB941718AEF4D3DF64F3E551B888D79@DU0PR04MB9417.eurprd04.prod.outlook.com>
Date: Tue, 24 May 2022 12:07:05 +0000
From: Peng Fan <peng.fan@....com>
To: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
"Peng Fan (OSS)" <peng.fan@....nxp.com>,
"robh+dt@...nel.org" <robh+dt@...nel.org>,
"krzysztof.kozlowski+dt@...aro.org"
<krzysztof.kozlowski+dt@...aro.org>,
"sboyd@...nel.org" <sboyd@...nel.org>,
"mturquette@...libre.com" <mturquette@...libre.com>,
"shawnguo@...nel.org" <shawnguo@...nel.org>,
"s.hauer@...gutronix.de" <s.hauer@...gutronix.de>
CC: Aisheng Dong <aisheng.dong@....com>,
"l.stach@...gutronix.de" <l.stach@...gutronix.de>,
"kernel@...gutronix.de" <kernel@...gutronix.de>,
"festevam@...il.com" <festevam@...il.com>,
dl-linux-imx <linux-imx@....com>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>
Subject: RE: [PATCH 1/7] dt-bindings: soc: add bindings for i.MX93 SRC
> Subject: Re: [PATCH 1/7] dt-bindings: soc: add bindings for i.MX93 SRC
>
> On 24/05/2022 12:37, Peng Fan wrote:
> >> Subject: Re: [PATCH 1/7] dt-bindings: soc: add bindings for i.MX93
> >> SRC
> >>
> >> On 23/05/2022 13:30, Peng Fan (OSS) wrote:
> >>> From: Peng Fan <peng.fan@....com>
> >>>
> >>> Add bindings for i.MX93 System Reset Controller(SRC). SRC supports
> >>> resets and power gating for mixes.
> >>>
> >>> Signed-off-by: Peng Fan <peng.fan@....com>
> >>> ---
> >>> .../bindings/soc/imx/fsl,imx93-src.yaml | 88
> >> +++++++++++++++++++
> >>> include/dt-bindings/power/imx93-power.h | 11 +++
> >>> 2 files changed, 99 insertions(+)
> >>> create mode 100644
> >>> Documentation/devicetree/bindings/soc/imx/fsl,imx93-src.yaml
> >>
> >> File should be in respective subsystem, so probably power/reset?
> >
> > ok, will put under power.
> >
> >>
> >>> create mode 100644 include/dt-bindings/power/imx93-power.h
> >>>
> >>> diff --git
> >>> a/Documentation/devicetree/bindings/soc/imx/fsl,imx93-src.yaml
> >>> b/Documentation/devicetree/bindings/soc/imx/fsl,imx93-src.yaml
> >>> new file mode 100644
> >>> index 000000000000..d45c1458b9c1
> >>> --- /dev/null
> >>> +++ b/Documentation/devicetree/bindings/soc/imx/fsl,imx93-src.yaml
> >>> @@ -0,0 +1,88 @@
> >>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2
> >>> +---
> >>> +$id:
> >>> +> > +title: NXP i.MX9 System Reset Controller
> >>> +
> >>> +maintainers:
> >>> + - Peng Fan <peng.fan@....com>
> >>> +
> >>> +description: |
> >>> + The System Reset Controller (SRC) is responsible for the
> >>> +generation of
> >>> + all the system reset signals and boot argument latching.
> >>> +
> >>> + Its main functions are as follows,
> >>> + - Deals with all global system reset sources from other modules,
> >>> + and generates global system reset.
> >>> + - Responsible for power gating of MIXs (Slices) and their memory
> >>> + low power control.
> >>> +
> >>> +properties:
> >>> + compatible:
> >>> + items:
> >>> + - const: fsl,imx93-src
> >>> + - const: syscon
> >>> +
> >>> + reg:
> >>> + maxItems: 1
> >>> +
> >>> + slice:
> >>
> >> Why do you need this subnode, instead of listing domains here?
> >
> > I follow
> > Documentation/devicetree/bindings/power/fsl,imx-gpcv2.yaml
> >
> > There are several slices in SRC, just like there are many pgcs in gpcv2.
>
> Wait, but you have only one slice and you do no allow more of them.
Slice is just a group node that could include many child nodes,
such as
slice {
mediamix {
};
mlmix {
};
}
The same
> as for gpcv2 - there is only one pgc. What's the point of that node?
There are many pgcs, pgc is just a group node there,
See arch/arm64/boot/dts/freescale/imx8mp.dtsi.
>
> >
> >
> >>
> >>> + type: object
> >>> + description: list of power domains provided by this controller.
> >>> +
> >>
> >> Hm, what about address/size cells? Is syscon schema bringing these?
> >
> > The slice submode should have address/size cells, but I not meet
> > yaml/dtbs check error. Will add it.
> >
> > Not sure syscon bringing or not.
> >
> >>
> >>> + patternProperties:
> >>> + "power-domain@[0-9]$":
> >>> + type: object
> >>
> >> Missing ref to power-domain.yaml
> >
> > Ok.
> >
> >>
> >>> + properties:
> >>> +
> >>> + '#power-domain-cells':
> >>> + const: 0
> >>> +
> >>> + reg:
> >>> + description: |
> >>> + Power domain index. Valid values are defined in
> >>> + include/dt-bindings/power/imx93-power.h for
> fsl,imx93-src
> >>> + maxItems: 1
> >>> +
> >>> + clocks:
> >>> + description: |
> >>> + A number of phandles to clocks that need to be enabled
> >>> + during domain power-up sequencing to ensure reset
> >>> + propagation into devices located inside this power
> domain.
> >>> + minItems: 1
> >>> + maxItems: 5
> >>> +
> >>> + required:
> >>> + - '#power-domain-cells'
> >>> + - reg
> >>> +
> >>> +required:
> >>> + - compatible
> >>> + - reg
> >>> + - slice
> >>> +
> >>> +additionalProperties: false
> >>> +
> >>> +examples:
> >>> + - |
> >>> + #include <dt-bindings/clock/imx93-clock.h>
> >>> + #include <dt-bindings/power/imx93-power.h>
> >>> +
> >>> + src@...60000 {
> >>
> >> reset-controller
> >> or some other generic node name.
> >
> > It is not a single reset or power domain controller, Currently linux
> > driver just use it as a power domain controller.
>
> Then maybe system-controller.
Ok.
Thanks,
Peng.
>
> >
> > Thanks,
> > Peng.
> >
> >>
> >>> + compatible = "fsl,imx93-src", "syscon";
> >>> + reg = <0x44460000 0x10000>;
> >>> +
> >>> + slice {
> >>> + #address-cells = <1>;
> >>> + #size-cells = <0>;
> >>> +
> >>> + mediamix: power-domain@0 {
> >>
> >> Best regards,
> >> Krzysztof
>
>
> Best regards,
> Krzysztof
Powered by blists - more mailing lists