Re: [RFC PATCH 11/11] arm/versatile: Add device tree support

From: Grant Likely
Date: Thu Jun 16 2011 - 10:57:11 EST


On Thu, Jun 16, 2011 at 04:20:37PM +0200, Arnd Bergmann wrote:
> On Thursday 16 June 2011, Grant Likely wrote:
> > This patch adds a new versatile platform for when using the device
> > tree. Add platform and amba devices are discovered and registered by
> > parsing the device tree. Clocks and initial io mappings are still
> > configured statically.
>
> Hi Grant,
>
> Two small questions about the device tree contents:
>
> > + i2c@10002000 {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + compatible = "arm,versatile-i2c";
> > + reg = <0x10002000 0x1000>;
> > +
> > + rtc@68 {
> > + compatible = "dallas,ds1338";
> > + reg = <0x68>;
> > + };
> > + };
> > +
> > + net@10010000 {
> > + compatible = "smsc,lan91c111";
> > + reg = <0x10010000 0x10000>;
> > + interrupts = <25>;
> > + };
> > +
> > + lcd@10008000 {
> > + compatible = "arm,versatile-lcd";
> > + reg = <0x10008000 0x1000>;
> > + };
>
> Why are these devices on the top level, rather than on the AMBA bus or
> the FPGA? From the documentation, it seems that they are implemented
> in the FPGA, which would also match the address layout.

Mostly because I 'faked' this device tree based on what is currently
in the kernel for the Versatile platform. I need to look at the
documentation and make it reflect reality, including setting up ranges
correctly (as you commented on below).

>
> > + amba {
> > + compatible = "arm,amba-bus";
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > + ranges;
> > +
> > + vic: intc@10140000 {
> > + compatible = "arm,versatile-vic", "arm,vic";
> > + interrupt-controller;
> > + #interrupt-cells = <1>;
> > + reg = <0x10140000 0x1000>;
> > + };
> > +
>
> Why the empty ranges property? All device registers are based on 0x10000000,
> so I'd expect this to be described like that here.
>
> Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/