2.4


Only the first line in this file is significant and should
contain the current compat level identifier for U-Boot
and/or Recovery updates. Compat level identifier is two
numbers separated by a '.', refered to as LevelA and
LevelB.

Make sure there is no extra whitespace around the compat level
identifier. Add to the history below when changing compat
identifier.

A compat level is a separate revisioning system which is used
to determine when U-Boot may be updated and what consequences
that has for the system at large.

It also controls downgrade rules. That is, it is possible to
restrict downgrades of the main system.

In general, all these rules apply only when an upgrade is performed
via the universal CDI. It does not apply when individual image
files are applied via flashtool.

There are two compat levels, represented by the two digits:

Level A:
	This digit represents incompatible changes. An incompatible
	change is a one-way street, downgrades are not allowed.

	If compat level A differs between the new and old systems
	during install, the following rules apply:

	old < new: Upgrade everything: Main, Recovery, U-Boot.
	old = new: Follow level B rules.
	old > new: Refuse downgrade.

Level B:
	This digit represents compatible changes. A compatible change
	is one that allows the main system to be upgraded or downgraded
	at will, within the limits of the Level A boundaries.

	old < new: Upgrade everything, Main, Recovery, U-Boot.
	old = new: Upgrade Main.
	old > new: Downgrade Main.

The build system uses the compat identifier in the first line of this
file to generate the ucompat.txt. This allows a developer to force
a new compat identifier without modifying the committed file.

The ucompat.txt file will be used by the U-Boot Makefile to add a
version extension to the version string. That is "U-Boot 2012.07 ..."
becomes "U-Boot 2012.07-2.1 ..." if the compat identifier happens
to be '2.1'. The file also gets placed inside the universal CDI,
the main-only CDI, the Bovine_bin directory and the rootfs.

The log of historical compat identifier changes lives in the
COMPAT_HISTORY file in the fsimage project (Bovine_src/fsimage,
svn://svn/main/Bovine/fsimage). Please update that file as required.


Iwo
