[PATCH V3] ARM: tegra: Define Tegra20 CAR binding

Stephen Warren swarren at nvidia.com
Thu Feb 16 08:30:59 EST 2012


Simon Glass wrote at Wednesday, February 15, 2012 1:25 PM:
> On Wed, Feb 15, 2012 at 11:14 AM, Stephen Warren <swarren at nvidia.com> wrote:
> > Simon Glass wrote at Wednesday, February 15, 2012 11:45 AM:
> >> On Wed, Feb 15, 2012 at 10:14 AM, Stephen Warren <swarren at nvidia.com> wrote:
> >> > The Tegra20 CAR (Clock And Reset) Controller controls most aspects of
> >> > most clocks within Tegra20. The device tree binding models this as a
> >> > single monolithic clock provider, which exports ~130 clocks. This reduces
> >> > the number of nodes needed in device tree to represent these clocks.
> >> >
> >> > This binding is only useful for Tegra20; the set of clocks that exists on
> >> > Tegra30 is sufficiently different to merit its own binding.
> >>
> >> It seems there is a large common element - they are almost backwards
> >> compatible. Should we not at least look at this now?
> >
> > I don't believe there's any need for the clock IDs for the two chips to
> > align in any way. These are two different chips, with different sets of
> > clocks, different tegra*.dtsi files, different clock "drivers" that define
> > the available clocks, etc.
> >
> > And while as you say, there are a lot of similarities, there are also a
> > number of differences within these first 96 clocks which make having
> > things completely aligned impractical. I imagine you'd rather that
> > Tegra30's binding follow Tegra30's CLK_OUT_ENB register layouts exactly,
> > rather than attempting to align with Tegra20 even in the face of
> > differences in HW.
> 
> OK my question was really more about how you deal with multi-arch in
> Linux / U-Boot. Does it make sense to ignore the commonality. Perhaps
> instead the range from 96 to 160 should be reserved?

I'm having a hard time seeing the problem here; the correct mapping from
device tree clock ID values to clock objects will be selected based on
the SoC version you're running on; there's no need to try and tie the
clock IDs for the two SoCs together, and there's always a way to know
which SoC version's numbering you should be dealing with at runtime.

-- 
nvpublic



More information about the devicetree-discuss mailing list