diff mbox series

[V2,1/2] dt-bindings: mtd: document Broadcom's TRX firmware format binding

Message ID 20180625220508.21242-1-zajec5@gmail.com
State Accepted
Delegated to: Boris Brezillon
Headers show
Series [V2,1/2] dt-bindings: mtd: document Broadcom's TRX firmware format binding | expand

Commit Message

Rafał Miłecki June 25, 2018, 10:05 p.m. UTC
From: Rafał Miłecki <rafal@milecki.pl>

Broadcom based home router devices use TRX firmware format. It's a
container that can hold few partitions. If operating system is expected
to access them it has to understand that format and parse flash data
accordingly.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
---
V2: Drop unneeded "brcm,trx-v1" and "brcm,trx-v2" bindings.
---
 .../bindings/mtd/partitions/brcm,trx.txt           | 37 ++++++++++++++++++++++
 1 file changed, 37 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt

Comments

Rob Herring June 26, 2018, 2:21 p.m. UTC | #1
On Mon, Jun 25, 2018 at 4:07 PM Rafał Miłecki <zajec5@gmail.com> wrote:
>
> From: Rafał Miłecki <rafal@milecki.pl>
>
> Broadcom based home router devices use TRX firmware format. It's a
> container that can hold few partitions. If operating system is expected
> to access them it has to understand that format and parse flash data
> accordingly.
>
> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
> ---
> V2: Drop unneeded "brcm,trx-v1" and "brcm,trx-v2" bindings.
> ---
>  .../bindings/mtd/partitions/brcm,trx.txt           | 37 ++++++++++++++++++++++
>  1 file changed, 37 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt

Reviewed-by: Rob Herring <robh@kernel.org>
Boris Brezillon July 7, 2018, 10:01 a.m. UTC | #2
On Tue, 26 Jun 2018 00:05:07 +0200
Rafał Miłecki <zajec5@gmail.com> wrote:

> From: Rafał Miłecki <rafal@milecki.pl>
> 
> Broadcom based home router devices use TRX firmware format. It's a
> container that can hold few partitions. If operating system is expected
> to access them it has to understand that format and parse flash data
> accordingly.
> 
> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>

Applied both patches.

Thanks,

Boris

> ---
> V2: Drop unneeded "brcm,trx-v1" and "brcm,trx-v2" bindings.
> ---
>  .../bindings/mtd/partitions/brcm,trx.txt           | 37 ++++++++++++++++++++++
>  1 file changed, 37 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt
> 
> diff --git a/Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt b/Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt
> new file mode 100644
> index 000000000000..b677147ca4e1
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt
> @@ -0,0 +1,37 @@
> +Broadcom TRX Container Partition
> +================================
> +
> +TRX is Broadcom's official firmware format for the BCM947xx boards. It's used by
> +most of the vendors building devices based on Broadcom's BCM47xx SoCs and is
> +supported by the CFE bootloader.
> +
> +Design of the TRX format is very minimalistic. Its header contains
> +identification fields, CRC32 checksum and the locations of embedded partitions.
> +Its purpose is to store a few partitions in a format that can be distributed as
> +a standalone file and written in a flash memory.
> +
> +Container can hold up to 4 partitions. The first partition has to contain a
> +device executable binary (e.g. a kernel) as it's what the CFE bootloader starts
> +executing. Other partitions can be used for operating system purposes. This is
> +useful for systems that keep kernel and rootfs separated.
> +
> +TRX doesn't enforce any strict partition boundaries or size limits. All
> +partitions have to be less than the 4GiB max size limit.
> +
> +There are two existing/known TRX variants:
> +1) v1 which contains 3 partitions
> +2) v2 which contains 4 partitions
> +
> +There aren't separated compatible bindings for them as version can be trivialy
> +detected by a software parsing TRX header.
> +
> +Required properties:
> +- compatible : (required) must be "brcm,trx"
> +
> +Example:
> +
> +flash@0 {
> +	partitions {
> +		compatible = "brcm,trx";
> +	};
> +};
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt b/Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt
new file mode 100644
index 000000000000..b677147ca4e1
--- /dev/null
+++ b/Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt
@@ -0,0 +1,37 @@ 
+Broadcom TRX Container Partition
+================================
+
+TRX is Broadcom's official firmware format for the BCM947xx boards. It's used by
+most of the vendors building devices based on Broadcom's BCM47xx SoCs and is
+supported by the CFE bootloader.
+
+Design of the TRX format is very minimalistic. Its header contains
+identification fields, CRC32 checksum and the locations of embedded partitions.
+Its purpose is to store a few partitions in a format that can be distributed as
+a standalone file and written in a flash memory.
+
+Container can hold up to 4 partitions. The first partition has to contain a
+device executable binary (e.g. a kernel) as it's what the CFE bootloader starts
+executing. Other partitions can be used for operating system purposes. This is
+useful for systems that keep kernel and rootfs separated.
+
+TRX doesn't enforce any strict partition boundaries or size limits. All
+partitions have to be less than the 4GiB max size limit.
+
+There are two existing/known TRX variants:
+1) v1 which contains 3 partitions
+2) v2 which contains 4 partitions
+
+There aren't separated compatible bindings for them as version can be trivialy
+detected by a software parsing TRX header.
+
+Required properties:
+- compatible : (required) must be "brcm,trx"
+
+Example:
+
+flash@0 {
+	partitions {
+		compatible = "brcm,trx";
+	};
+};