<html><body>
<p><tt>Benjamin Herrenschmidt <benh@kernel.crashing.org> wrote on 11/02/2006 05:30:25 PM:<br>
<br>
> <br>
> > What exactly is the intent of PPC_MULTIPLATFORM - the current desc<br>
> > states "Generic desktop/server/laptop" - which doesn't exactly scream<br>
> > 'embedded' to me either. I guess I saw embedded6xx as a 'catch-all'<br>
> > for everything else.<br>
> <br>
> It's historical. It was the good old prep/chrp/pmac option, meaning that<br>
> more than one board support can be built in the same kernel. I've made<br>
> the policy decision with ARCH=powerpc that we should now make that<br>
> mandatory for new boards (of course provided the CPUs are of the same<br>
> family) since, as Sascha rightfully pointed out, it costs nothing and<br>
> keeps things cleaner.<br>
> <br>
> Thus I'm all about getting rid of the option :)<br>
> </tt><br>
<br>
<tt>OK - so in this sense PPC_MULTIPLATFORM would be used more to help categorize (make ppc platforms depend on it in Kconfig) as opposed to enabling different code/function? (thus some of Sascha's patches getting rid of CONFIG_PPC_MMULTIPLATFORM ifdefs)</tt><br>
<br>
<tt>> > This may be slightly off topic - but one other thing I have noticed<br>
> > that the new boot wrapper script supports specific 'types' of zImage<br>
> > files associated w/ 'MUTIPLATFORMS' (PSERIES, CHRP, PREP etc.) and<br>
> > uImage - which is what I think the majority of 'embedded' platforms<br>
> > will use by defining CONFIG_DEFAULT_UIMAGE.<br>
> <br>
> That is not totally clear since they have non-compatible board info.</tt><br>
<tt><br>
I should have more properly said "the majority of the existing 'embedded' platforms (not PSERIES, CHRP, PREP etc.) currently implmented in /power seem to define CONFIG_DEFAULT_UIMAGE"</tt><br>
<tt><br>
> > For IBM boards with PIBS just 'normal' zImage ELF files get loaded -<br>
> > I'm not sure if there should be another type defined/supported for<br>
> > boards which don't fit necessarily into a PSERIES/CHRP/PREP definition<br>
> > and also don't use uboot - CONFIG_DEFAULT_ZIMAGE? <br>
> > <br>
> <br>
> Ask Paulus about the naming but pSeries is just "normal" in the sense<br>
> that it's "booted from a real OF" support.<br>
> <br>
> The problem is despite the ability to do those nice multiplatform kernel<br>
> images, we still have bootloader incompatibilities. Thus we want to move<br>
> those to the zImage wrapper which can produce, from an already built<br>
> vmlinux binary, any zImage that can be supported for a given firmware<br>
> interface.<br>
> <br>
> In the long run, we hope that firmwares will finally get their gears<br>
> together and use either a real OF entry point or a direct flat<br>
> device-tree entry point, which means that a single zImage (the "normal<br>
> one as you call it) will be able to boot everything.<br>
> <br>
> There's also a glitch with real OF zImages due to the fact that IBM<br>
> pSeries OF requires a Notes section forcing OF into real mode while<br>
> Apple OF is allergic to that (it will crash badly) so we need to keep a<br>
> separate zImage for PowerMac. However, the vmlinux are the same so if<br>
> you use something like yaboot, the same vmlinux cna be booted on all<br>
> those machines.</tt><br>
<tt><br>
Makes sense. Specific to the current wrapper though - the boot Makefile currently keys off the following for the different zImage 'types'</tt><br>
<br>
<tt>image-$(CONFIG_PPC_PSERIES) += zImage.pseries</tt><br>
<tt>image-$(CONFIG_PPC_MAPLE) += zImage.pseries</tt><br>
<tt>image-$(CONFIG_PPC_IBM_CELL_BLADE) += zImage.pseries</tt><br>
<tt>image-$(CONFIG_PPC_CHRP) += zImage.chrp</tt><br>
<tt>image-$(CONFIG_PPC_PMAC) += zImage.pmac</tt><br>
<tt>image-$(CONFIG_DEFAULT_UIMAGE) += uImage</tt><br>
<br>
<tt>My original point really was that if I have a ppc 'embedded' board which I don't want to classify/define as PSERIES/MAPLE/CELL_BLADE/CHRP/PMAC, and I don't want to generate a uImage, I think there needs to be another definition, something like CONFIG_DEFAULT_ZIMAGE (similar to how CONFIG_DEFAULT_UIMAGE is used in some of the existing /power platform defs to create a uImage) which would be used to produce a 'normal' zImage type (zImage.pseries?). Basically - a definition analogous to the exisiting CONFIG_DEFAULT_UIMAGE, but for zImage. It would be used in a similar way - where any platform could select in its configuration to result in a 'normal' zImage being created (indeed, could PPC_PSERIES/MAPLE/BLADE just select this more generic definition and the Makefile use it instead?)</tt><br>
<tt> <br>
</tt></body></html>