AW: Re: __setup_cpu_be problem

Benjamin Herrenschmidt benh at kernel.crashing.org
Wed Feb 15 08:22:09 EST 2006


> 
> Sorry about changing my mind on this Ben, but after reading the Book 4
> docs on page sizes I see that each partition can have independent
> page size settings.  I made the wrong assumption that all partitions
> needed the same size setting.  Based on this, and on Arnd's comments,
> I think in general we will need to setup page sizes in the kernel.
> This is particularly true if we setup 16M + 64k pages for the spufs,
> since the cpu default is 16M + 16M, which is probably what most
> firmware will use.
> 
> At any rate, I don't think we need to worry about it so much now,
> since those settings can be handled inside the platform code.  If
> it makes sense later we can have an interface to access the page
> size settings.

Well, I'll have to look more closely at the initialisation then. The
kernel currently assume that non-legacy page sizes (that is something
other than 4k and 16M) are completely described at boot by the
device-tree, and that would imply HID6 has already been setup.

If we want to do something differently, that means that we need a "hook"
for the platform code to fill the page size description array. However,
currently, there is no platform hook between that array being filled
from the device-tree and the memory management being initialized based
on those data.

An option would be to let platform probe() functions fill the table and
set a variable telling the later hash init code to ignore the
device-tree description of page sizes ...

Ben.





More information about the Linuxppc64-dev mailing list