[RFC 3/3] powerpc: Add DTS file for the Motorola PrPMC2800 platform

David Gibson david at gibson.dropbear.id.au
Thu Mar 29 10:35:50 EST 2007


On Wed, Mar 28, 2007 at 09:43:16AM -0700, Yoder Stuart-B08248 wrote:
[snip]
> > +
> > +	mv64x60 at f1000000 { /* Marvell Discovery */
> > +		#address-cells = <1>;
> > +		#size-cells = <1>;
> > +		#interrupt-cells = <1>;
> > +		device_type = "mv64360";
> > +		compatible = "mv64x60";
> > +		clock-frequency = <7f28155>;		/* 
> > 133.333333 Mhz */
> > +		reg = <f1000000 00010000>;
> > +		virtual-reg = <f1000000>;
> 
> What is virtual-reg for?  I gather it is related to the bootwrapper
> needed virtual addresses for devices reg blocks.  But, I counted
> 12 instances of the property in this file.  Are all needed by the
> bootwrapper??

That does seem like a lot.  The only thing that should need
virtual-reg properties is serial ports.  In fact, specifically, only
serial ports that the zImage is actually expected to use.

In fact, with Scott's addition of xlate_reg() to the bootwrapper,
virtual-reg should only be needed on systems that enter the zImage
with MMU on.

> Does anyone where this property came from historically?  If it's
> specifically for a Linux bootwrapper the name should reflect 
> that-- linux,bootwrapper-reg-vaddr -- or something...

> I also wonder if there is a better place to put this information.
> The device nodes strictly speaking should be describing the devices
> _physical_ characteristics.

Yes, but where else is there?  virtual-reg is a hack, but a very
useful one.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson



More information about the Linuxppc-dev mailing list