lkml.org 
[lkml]   [2019]   [Sep]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRE: [v3,3/3] Documentation: dt: binding: fsl: Add 'fsl,ippdexpcr-alt-addr' property
    Date


    > -----Original Message-----
    > From: Biwen Li
    > Sent: Tuesday, September 24, 2019 10:47 PM
    > To: Leo Li <leoyang.li@nxp.com>; shawnguo@kernel.org;
    > robh+dt@kernel.org; mark.rutland@arm.com; Ran Wang
    > <ran.wang_1@nxp.com>
    > Cc: linuxppc-dev@lists.ozlabs.org; linux-arm-kernel@lists.infradead.org;
    > linux-kernel@vger.kernel.org; devicetree@vger.kernel.org
    > Subject: RE: [v3,3/3] Documentation: dt: binding: fsl: Add 'fsl,ippdexpcr-alt-
    > addr' property
    >
    > > > > > > >
    > > > > > > > The 'fsl,ippdexpcr-alt-addr' property is used to handle an
    > > > > > > > errata
    > > > > > > > A-008646 on LS1021A
    > > > > > > >
    > > > > > > > Signed-off-by: Biwen Li <biwen.li@nxp.com>
    > > > > > > > ---
    > > > > > > > Change in v3:
    > > > > > > > - rename property name
    > > > > > > > fsl,rcpm-scfg -> fsl,ippdexpcr-alt-addr
    > > > > > > >
    > > > > > > > Change in v2:
    > > > > > > > - update desc of the property 'fsl,rcpm-scfg'
    > > > > > > >
    > > > > > > > Documentation/devicetree/bindings/soc/fsl/rcpm.txt | 14
    > > > > > > > ++++++++++++++
    > > > > > > > 1 file changed, 14 insertions(+)
    > > > > > > >
    > > > > > > > diff --git
    > > > > > > > a/Documentation/devicetree/bindings/soc/fsl/rcpm.txt
    > > > > > > > b/Documentation/devicetree/bindings/soc/fsl/rcpm.txt
    > > > > > > > index 5a33619d881d..157dcf6da17c 100644
    > > > > > > > --- a/Documentation/devicetree/bindings/soc/fsl/rcpm.txt
    > > > > > > > +++ b/Documentation/devicetree/bindings/soc/fsl/rcpm.txt
    > > > > > > > @@ -34,6 +34,11 @@ Chassis Version Example
    > Chips
    > > > > > > > Optional properties:
    > > > > > > > - little-endian : RCPM register block is Little Endian.
    > > > > > > > Without it
    > > RCPM
    > > > > > > > will be Big Endian (default case).
    > > > > > > > + - fsl,ippdexpcr-alt-addr : Must add the property for SoC
    > > > > > > > + LS1021A,
    > > > > > >
    > > > > > > You probably should mention this is related to a hardware
    > > > > > > issue on LS1021a and only needed on LS1021a.
    > > > > > Okay, got it, thanks, I will add this in v4.
    > > > > > >
    > > > > > > > + Must include n + 1 entries (n = #fsl,rcpm-wakeup-cells, such as:
    > > > > > > > + #fsl,rcpm-wakeup-cells equal to 2, then must include 2 +
    > > > > > > > + 1
    > > entries).
    > > > > > >
    > > > > > > #fsl,rcpm-wakeup-cells is the number of IPPDEXPCR registers on
    > > > > > > an
    > > SoC.
    > > > > > > However you are defining an offset to scfg registers here.
    > > > > > > Why these two are related? The length here should actually be
    > > > > > > related to the #address-cells of the soc/. But since this is
    > > > > > > only needed for LS1021, you can
    > > > > > just make it 3.
    > > > > > I need set the value of IPPDEXPCR resgiters from ftm_alarm0
    > > > > > device node(fsl,rcpm-wakeup = <&rcpm 0x0 0x20000000>;
    > > > > > 0x0 is a value for IPPDEXPCR0, 0x20000000 is a value for
    > > IPPDEXPCR1).
    > > > > > But because of the hardware issue on LS1021A, I need store the
    > > > > > value of IPPDEXPCR registers to an alt address. So I defining an
    > > > > > offset to scfg registers, then RCPM driver get an abosolute
    > > > > > address from offset, RCPM driver write the value of IPPDEXPCR
    > > > > > registers to these abosolute addresses(backup the value of
    > > > > > IPPDEXPCR
    > > registers).
    > > > >
    > > > > I understand what you are trying to do. The problem is that the
    > > > > new fsl,ippdexpcr-alt-addr property contains a phandle and an offset.
    > > > > The size of it shouldn't be related to #fsl,rcpm-wakeup-cells.
    > > > You maybe like this: fsl,ippdexpcr-alt-addr = <&scfg 0x51c>;/*
    > > > SCFG_SPARECR8 */
    > >
    > > No. The #address-cell for the soc/ is 2, so the offset to scfg should
    > > be 0x0 0x51c. The total size should be 3, but it shouldn't be coming
    > > from #fsl,rcpm-wakeup-cells like you mentioned in the binding.
    > Oh, I got it. You want that fsl,ippdexpcr-alt-add is relative with #address-cells
    > instead of #fsl,rcpm-wakeup-cells.

    Yes.

    Regards,
    Leo
    > >
    > > > >
    > > > > > >
    > > > > > > > + The first entry must be a link to the SCFG device node.
    > > > > > > > + The non-first entry must be offset of registers of SCFG.
    > > > > > > >
    > > > > > > > Example:
    > > > > > > > The RCPM node for T4240:
    > > > > > > > @@ -43,6 +48,15 @@ The RCPM node for T4240:
    > > > > > > > #fsl,rcpm-wakeup-cells = <2>;
    > > > > > > > };
    > > > > > > >
    > > > > > > > +The RCPM node for LS1021A:
    > > > > > > > + rcpm: rcpm@1ee2140 {
    > > > > > > > + compatible = "fsl,ls1021a-rcpm", "fsl,qoriq-rcpm-
    > > > 2.1+";
    > > > > > > > + reg = <0x0 0x1ee2140 0x0 0x8>;
    > > > > > > > + #fsl,rcpm-wakeup-cells = <2>;
    > > > > > > > + fsl,ippdexpcr-alt-addr = <&scfg 0x0 0x51c>; /*
    > > > > > > > SCFG_SPARECR8 */
    > > > > > > > + };
    > > > > > > > +
    > > > > > > > +
    > > > > > > > * Freescale RCPM Wakeup Source Device Tree Bindings
    > > > > > > > -------------------------------------------
    > > > > > > > Required fsl,rcpm-wakeup property should be added to a
    > > > > > > > device node if the device
    > > > > > > > --
    > > > > > > > 2.17.1

    \
     
     \ /
      Last update: 2019-09-25 05:49    [W:2.964 / U:1.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site