[RFC PATCH 00/12] ARM: Decompressor multiplatform support
Domenico Andreoli
cavokz at gmail.com
Tue Jul 17 10:54:46 EDT 2012
On Tue, Jul 17, 2012 at 02:31:15PM +0000, Arnd Bergmann wrote:
> On Sunday 15 July 2012, Domenico Andreoli wrote:
> > My intent is to get rid of uncompress.h and prepare the decompressor
> > to dynamically select the various machine specific decompressor init
> > steps, included the selection of the appropriate console driver.
> >
> > Currently the mainline kernel defines these steps statically and indeed
> > has some trouble to boot on different boards with the same binary.
> >
> > What this patch does is allowing the four functions (arch_decomp_setup,
> > arch_error, putc and flush) currently used to define such static steps
> > to be packed in quantity and to be selected/executed by the decompressor
> > accordingly to the machid or DT passed by the boot loader.
>
> I definitely like the implementation, it looks very nicely done with the
> driver specific code being right inside of the actual device drivers.
yep, thanks.
> I think the main question we have to answer is whether we want to go
> this far for the decompressor output. IIRC the last time this was
> debated, the argument was made (I don't remember if it was by Russell
> or someone else) that the decompressor code is designed to be as simple
> as possible and we should add too much complexity in it that would make
> it harder to debug when the only purpose of that code is to debug the
> decompressor code itself.
I also made this question [0] but probably the message was too long and
nobody bothered to read it fully :)
The question applies almost unchanged for the arch_decomp_setup()/arch_error()
calls. Those could be worthy to preserve and probably less easy to dismiss
than the console ;)
> I find it hard to judge what the benefit of your implementation is
> compared to the risk of introducing bugs.
Indeed. I can also add that without a sound extraction of console data
from DT, where arm is heading, the thing looks even less appealing.
But I needed to publish it :)
> The other part I don't understand is how it relates to the
> early_print() infrastructure that has some of the same requirements.
If there is, it's not intentional.
cheers,
Domenico
[0] http://www.spinics.net/lists/arm-kernel/msg177843.html
More information about the linux-arm-kernel
mailing list