[RFC PATCH 02/19] powerpc: gamecube: device tree

Benjamin Herrenschmidt benh at kernel.crashing.org
Thu Nov 26 15:27:12 EST 2009


On Wed, 2009-11-25 at 19:00 +0100, Segher Boessenkool wrote:
> > +	memory {
> > +		device_type = "memory";
> > +		/* 24M minus framebuffer memory area (640*576*2*2) */
> > +		reg = <0x00000000 0x01698000>;
> 
> Put the whole 24MB here, probe the framebuffer address and size
> in the platform code?

Agreed. That's what I was proposing. Though you need to be careful about
early boot code that will try to allocate the hash table etc... or even
the DT itself. So you need to probe and reserve the fb really early,
for example in the platform probe() routine itself. Or you can stick it
in the reserve map too I suppose.

> > +		video at 0c002000 {
> > +			compatible = "nintendo,flipper-video";
> > +			reg = <0x0c002000 0x100>;
> > +			interrupts = <8>;
> > +			interrupt-parent = <&pic>;
> > +			/* XFB is the eXternal FrameBuffer */
> > +			xfb-start = <0x01698000>; /* end-of-ram - xfb-size */
> > +			xfb-size = <0x168000>;
> 
> XFB address isn't fixed on the hardware, and the kernel might
> want to move it, and you can easily probe for it anyway.  Remove
> these last two properties please.

Ok but you need to know what it was setup to by the FW no ? To avoid
having a temporary display "glitch" while booting... Also on a 24M
config,it might get tough for the driver to allocate 2M contiguous like
that if it's done late in the boot process.
> 
> > +		auxram at 0c005000 {
> > +			compatible = "nintendo,flipper-auxram";
> > +			reg = <0x0c005000 0x200>;	/* DSP */
> > +			interrupts = <6>;
> > +			interrupt-parent = <&pic>;
> > +		};
> > +
> > +		audio at 0c005000 {
> > +			compatible = "nintendo,flipper-audio";
> > +			reg = <0x0c005000 0x200		/* DSP */
> > +			       0x0c006c00 0x20>;	/* AI */
> > +			interrupts = <6>;
> > +			interrupt-parent = <&pic>;
> > +		};
> 
> These two have the same address, not good.  Just remove the
> auxram node?

Or make it a child of audio ? :-)

Cheers,
Ben.




More information about the Linuxppc-dev mailing list