[U-Boot] [PATCH V2 08/21] mx6: add plugin file for use with imximage.cfg

Stefano Babic
2012-09-25T12:13:31Z

On 25/09/2012 00:23, Troy Kisky wrote:
> The advantages of a plugin over spl are
> 1. smaller code 0x190 bytes, plus the table.
> relying on the ROM to do the heavy lifting.

This is true. However, as you are writing in the next line, the bootROM
boots from devices having much more space as some bytes. Even on small
SPI-NOR (the smallest device I used with MX5), this was not an issue.

On the other side, you cannot influence the behavior of the bootROM, and
much more job is let to the bootROM, less possibilities to fix some
things. SPL is part of U-Boot, all sources are availbale and it is
easier to fix.

>
> 2. support all boot modes that the ROM does.
> NOR/NAND/ONENAND/MMC/eMMC
> Hard Disk and SSD devices using SATA
> Serial ROM through SPI/I2C

I do not know about booting from SATA, if a plugin is a must - but this
means that it fixes a problem in the bootROM.
Apart of that, there are no hardware limitation that avoi to use SPL
with these media devices.

> 3. Easy to switch back to previous DCD tables
> for debugging or permanently. I can see that many
> people will never use either plugin or SPL

I think you are talking specifically about mainlined i.MX boards. This
is correct, because patches to make SPL available will be merged now.
But if we see U-Boot in its globality, quite all TI's boards have a SPL.

> and will stick
> with the current method, or have separate cfg
> files for each processor type. I could still have
> the separate cfg files #include a common file.
> ie
> #define FOR_MX6Q
> #include "imx-common.cfg"

Using common file is a practice we should improve, definitely. But it
has nothing to do with plugin. Agree that similar boards and / or SOCs
should better share code.

> ------------
> #define FOR_MX6DL
> #include "imx-common.cfg"
>
> 4. plugin method is already working.

ok, this is right

> Let me know which features might make it to mainline
> 1. variable length headers

Absolutely yes !

> 2. parsing of cfg to pull the file, instead of push
> 3. C preprocessor

Yes, I agree with you that it is useful. As you said, using #define make
it more readable.

> 4. expression evaluation.

As you posted previously, this depends on plugin.

> 5 plugins

Currently, I do not see that plugin is strictly required and can move
iMX away from the rest of U-Boot development.

>
> and I'll post a new series.

Ok, thanks.

Best regards,
Stefano

--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================