0001 Broadcom TRX Container Partition
0002 ================================
0003
0004 TRX is Broadcom's official firmware format for the BCM947xx boards. It's used by
0005 most of the vendors building devices based on Broadcom's BCM47xx SoCs and is
0006 supported by the CFE bootloader.
0007
0008 Design of the TRX format is very minimalistic. Its header contains
0009 identification fields, CRC32 checksum and the locations of embedded partitions.
0010 Its purpose is to store a few partitions in a format that can be distributed as
0011 a standalone file and written in a flash memory.
0012
0013 Container can hold up to 4 partitions. The first partition has to contain a
0014 device executable binary (e.g. a kernel) as it's what the CFE bootloader starts
0015 executing. Other partitions can be used for operating system purposes. This is
0016 useful for systems that keep kernel and rootfs separated.
0017
0018 TRX doesn't enforce any strict partition boundaries or size limits. All
0019 partitions have to be less than the 4GiB max size limit.
0020
0021 There are two existing/known TRX variants:
0022 1) v1 which contains 3 partitions
0023 2) v2 which contains 4 partitions
0024
0025 There aren't separated compatible bindings for them as version can be trivialy
0026 detected by a software parsing TRX header.
0027
0028 Required properties:
0029 - compatible : (required) must be "brcm,trx"
0030
0031 Optional properties:
0032
0033 - brcm,trx-magic: TRX magic, if it is different from the default magic
0034 0x30524448 as a u32.
0035
0036 Example:
0037
0038 flash@0 {
0039 partitions {
0040 compatible = "brcm,trx";
0041 };
0042 };