Re: linux-2.4.11-pre4/drivers/mtd/bootldr.c does not compile

Erik Mouw
2001-10-06T10:00:22Z

On Fri, Oct 05, 2001 at 11:17:32PM +0100, Russell King wrote:
> On Fri, Oct 05, 2001 at 01:48:42PM -0700, Adam J. Richter wrote:
> > Attempting to compile linux-2.4.11-pre4/drivers/mtd/bootldr.c
> > fails with a bunch of compiler errors, including a complaint that
> > "struct tag" is not defined anywhere. Presumably this is the result
> > of an incompletely applied patch.
>
> Firstly, its ARM only. Secondly, Compaq decided that a partition table in
> flash isn't a good idea, so they're passing it from the boot loader, which
> is a set of tagged lists.

Did you ever get a motivation on why they want to pass it from the boot
loader? It sounds like a particularly bad idea to me.

We can't allocate memory in the tagged list parser so you need to have
it statically allocated in the kernel. That means that there is a
maximum number of partitions, or that we're wasting memory if we don't
use all partition table entries. This can of course be (partly) solved
by putting the partition table in the __initdata section, but in that
case you can't use the partition data if you have the MTD subsystem as
modules.

I wonder what was wrong with the previous solution where the kernel
just read the partition table directly from flash? If the bootloader
can read the partition table, why can't the kernel?

Erik

--
J.A.K. (Erik) Mouw, Information and Communication Theory Group, Department
of Electrical Engineering, Faculty of Information Technology and Systems,
Delft University of Technology, PO BOX 5031, 2600 GA Delft, The Netherlands
Phone: +31-15-2783635 Fax: +31-15-2781843 Email: J.A.K.Mouw@its.tudelft.nl
WWW: http://www-ict.its.tudelft.nl/~erik/