Skip to content

RFC ARM: uncompress.h multi-platform enablement

Stephen Warren linux-arm-kernel linux-tegra 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 RFC Latest0 of 3 patches 0 repliesNew

Patches in v1 No applies recorded yet

None of the 3 patches the cover letter announces are in this archive.

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [RFC PATCH 0/3] ARM: uncompress.h multi-platform enablement
Quoted 9 lines · Russell King - ARM Linux
Quoted 3 lines · Arnd Bergmann

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?

Quoted 8 lines

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.