[PATCH 1/7] dt-bindings: soc: add bindings for i.MX93 SRC
Peng Fan
peng.fan at nxp.com
Tue May 24 05:07:05 PDT 2022
> 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 at nxp.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 at nxp.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 at nxp.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 at 44460000 {
> >>
> >> 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 at 0 {
> >>
> >> Best regards,
> >> Krzysztof
>
>
> Best regards,
> Krzysztof
More information about the linux-arm-kernel
mailing list