[RFC PATCH 0/3] ARM: uncompress.h multi-platform enablement
Stephen Warren
swarren at wwwdotorg.org
Wed Sep 26 11:34:46 EDT 2012
On 09/26/2012 09:10 AM, Russell King - ARM Linux wrote:
> On Wed, Sep 26, 2012 at 02:49:48PM +0000, Arnd Bergmann wrote:
>> Right now, a multiplatform kernel has no way of debugging the
>> decompressor using console output, so it's actually /smaller/
>> than a single-platform kernel, but also less capable.
>
> Err, are you sure about all your details above? You do realise when
> debugging is disabled there is no debug code included anywhere in the
> decompressor?
>
> I think what you're referring to is not the debug output, but the normal
> decompressor output. (The "Decompressing Linux..." message is not
> debug output.)
>
> Let's be a little more clear about what "less capable" means - it will
> be unable to report any errors that occur during the decompression.
> What that means is that you'll end up with mere silence should an
> error occur.
In the Tegra case, by omitting uncompress.h, we lose more than just the
"Decompressing Linux..." message; uncompress.h contains code to parse
extract the platform's debug UART ID from data set up by the boot ROM
(since we have 5 UARTs), and pass this on to debug-macro.S. Without
uncompress.h running, debug-macro.S would either have to hard-code a
single UART ID (and different boards uses different UARTs, which would
make running a single kernel image across all Tegra devices with
earlyprintk enabled impossible) *or* we'd have to port the UART ID
extraction code to debug-macro.S too, which I don't fancy very much
since that's assembly whereas uncompress.h is C.
More information about the linux-arm-kernel
mailing list