forked from Minki/linux
dt-bindings: mtd: document Broadcom's BCM47xx partitions
Broadcom based home router devices use partitions which have to be discovered in a specific way. They are not fixed and there is not any standard partition table. This commit adds and describes a new custom binding for such devices. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
This commit is contained in:
parent
ea092fb3ce
commit
5178b99cd3
@ -14,7 +14,7 @@ method is used for a given flash device. To describe the method there should be
|
||||
a subnode of the flash device that is named 'partitions'. It must have a
|
||||
'compatible' property, which is used to identify the method to use.
|
||||
|
||||
We currently only document a binding for fixed layouts.
|
||||
Available bindings are listed in the "partitions" subdirectory.
|
||||
|
||||
|
||||
Fixed Partitions
|
||||
|
@ -0,0 +1,42 @@
|
||||
Broadcom BCM47xx Partitions
|
||||
===========================
|
||||
|
||||
Broadcom is one of hardware manufacturers providing SoCs (BCM47xx) used in
|
||||
home routers. Their BCM947xx boards using CFE bootloader have several partitions
|
||||
without any on-flash partition table. On some devices their sizes and/or
|
||||
meanings can also vary so fixed partitioning can't be used.
|
||||
|
||||
Discovering partitions on these devices is possible thanks to having a special
|
||||
header and/or magic signature at the beginning of each of them. They are also
|
||||
block aligned which is important for determinig a size.
|
||||
|
||||
Most of partitions use ASCII text based magic for determining a type. More
|
||||
complex partitions (like TRX with its HDR0 magic) may include extra header
|
||||
containing some details, including a length.
|
||||
|
||||
A list of supported partitions includes:
|
||||
1) Bootloader with Broadcom's CFE (Common Firmware Environment)
|
||||
2) NVRAM with configuration/calibration data
|
||||
3) Device manufacturer's data with some default values (e.g. SSIDs)
|
||||
4) TRX firmware container which can hold up to 4 subpartitions
|
||||
5) Backup TRX firmware used after failed upgrade
|
||||
|
||||
As mentioned earlier, role of some partitions may depend on extra configuration.
|
||||
For example both: main firmware and backup firmware use the same TRX format with
|
||||
the same header. To distinguish currently used firmware a CFE's environment
|
||||
variable "bootpartition" is used.
|
||||
|
||||
|
||||
Devices using Broadcom partitions described above should should have flash node
|
||||
with a subnode named "partitions" using following properties:
|
||||
|
||||
Required properties:
|
||||
- compatible : (required) must be "brcm,bcm947xx-cfe-partitions"
|
||||
|
||||
Example:
|
||||
|
||||
flash@0 {
|
||||
partitions {
|
||||
compatible = "brcm,bcm947xx-cfe-partitions";
|
||||
};
|
||||
};
|
Loading…
Reference in New Issue
Block a user