[MTD] Support combined RedBoot FIS directory and configuration area
authorRod Whitby <rod@whitby.id.au>
Wed, 6 Dec 2006 01:41:15 +0000 (12:11 +1030)
committerDavid Woodhouse <dwmw2@infradead.org>
Fri, 8 Dec 2006 13:28:26 +0000 (13:28 +0000)
commitf33665d931f33a0baf44fc5d3594b23f8118eb44
tree21c95d1594395c5d9dc69c7483cae186ce9a5b84
parentdd11b8cdf0c455f4cfbc5daa70aabce9dcc6c07b
[MTD] Support combined RedBoot FIS directory and configuration area

RedBoot supports storing the FIS directory and the RedBoot
configuration area in the same block of flash memory.  This is
not the most common RedBoot configuration, but it is used on
commercially available boards supported by the kernel.

A recent patch to mtd/redboot.c (http://lkml.org/lkml/2006/3/20/410)
which corrected the skipping of deleted table entries has exposed the
latent problem of the kernel redboot parser running off the end of the
FIS directory and interpreting the RedBoot configuration information
as table entries.

This patch terminates the table parsing when the first truly empty
entry is found (table entry deletion only clears the first byte of the
name, so two cleared bytes in a row indicates the end of the table),
thereby supporting the combined redboot FIS directory and RedBoot
configuration information flash layout scenario.

Signed-off-by: Rod Whitby <rod@whitby.id.au>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
drivers/mtd/redboot.c