Re: [PATCH] dt-bindings: timer: Use non-empty ranges in example

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Dec 16, 2019 at 10:16:56PM -0800, Doug Anderson wrote:
> Hi,
> 
> On Mon, Dec 16, 2019 at 10:06 PM Douglas Anderson <dianders@xxxxxxxxxxxx> wrote:
> >
> > On many arm64 qcom device trees, running `make dtbs_check` yells:
> >
> >   timer@17c20000: #size-cells:0:0: 1 was expected
> >
> > It appears that someone was trying to assert the fact that sub-nodes
> > describing frames would never have a size that's more than 32-bits
> > big.  That does indeed appear to be true for all cases I could find.
> >
> > Currently many arm64 qcom device tree files have a #address-cells and
> > about in commit bede7d2dc8f3 ("arm64: dts: qcom: sdm845: Increase
> > address and size cells for soc").  That means the only way we can
> > shrink them down is to use a non-empty ranges.
> >
> > Since forever it has said in "writing-bindings.txt" to "DO use
> > non-empty 'ranges' to limit the size of child buses/devices".  I guess
> > we should start listening to it.

I probably need to condition that to account for dma-ranges as you 
wouldn't want to limit the bus in that case.

> >
> > I believe (but am not certain) that this also means that we should use
> > "ranges" to simplify the "reg" of our sub devices by specifying an
> > offset.  Let's update the example in the bindings to make this
> > obvious.
> >
> > Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
> > ---
> > See:
> >   https://lore.kernel.org/r/20191212113540.7.Ia9bd3fca24ad34a5faaf1c3e58095c74b38abca1@changeid
> >
> > ...for the patch that sparked this change.
> >
> >  .../devicetree/bindings/timer/arm,arch_timer_mmio.yaml | 10 +++++-----
> >  1 file changed, 5 insertions(+), 5 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/timer/arm,arch_timer_mmio.yaml b/Documentation/devicetree/bindings/timer/arm,arch_timer_mmio.yaml
> > index b3f0fe96ff0d..d927b42ddeb8 100644
> > --- a/Documentation/devicetree/bindings/timer/arm,arch_timer_mmio.yaml
> > +++ b/Documentation/devicetree/bindings/timer/arm,arch_timer_mmio.yaml
> > @@ -99,22 +99,22 @@ examples:
> >        compatible = "arm,armv7-timer-mem";
> >        #address-cells = <1>;
> >        #size-cells = <1>;
> > -      ranges;
> > +      ranges = <0 0xf0000000 0x1000>;
> 
> I checked this over a few times and yet I still screwed it up.  :(
> This should be:
> 
> ranges = <0 0xf0001000 0x1000>;
> 
> ...which makes the first "frame" below actually start at 0.  I'll wait
> before sending out a v2, though, in case this patch is totally wrong
> or something.

Looks good to me.

Rob



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux