brcm,bcm947xx-cfe-partitions.txt 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. Broadcom BCM47xx Partitions
  2. ===========================
  3. Broadcom is one of hardware manufacturers providing SoCs (BCM47xx) used in
  4. home routers. Their BCM947xx boards using CFE bootloader have several partitions
  5. without any on-flash partition table. On some devices their sizes and/or
  6. meanings can also vary so fixed partitioning can't be used.
  7. Discovering partitions on these devices is possible thanks to having a special
  8. header and/or magic signature at the beginning of each of them. They are also
  9. block aligned which is important for determinig a size.
  10. Most of partitions use ASCII text based magic for determining a type. More
  11. complex partitions (like TRX with its HDR0 magic) may include extra header
  12. containing some details, including a length.
  13. A list of supported partitions includes:
  14. 1) Bootloader with Broadcom's CFE (Common Firmware Environment)
  15. 2) NVRAM with configuration/calibration data
  16. 3) Device manufacturer's data with some default values (e.g. SSIDs)
  17. 4) TRX firmware container which can hold up to 4 subpartitions
  18. 5) Backup TRX firmware used after failed upgrade
  19. As mentioned earlier, role of some partitions may depend on extra configuration.
  20. For example both: main firmware and backup firmware use the same TRX format with
  21. the same header. To distinguish currently used firmware a CFE's environment
  22. variable "bootpartition" is used.
  23. Devices using Broadcom partitions described above should should have flash node
  24. with a subnode named "partitions" using following properties:
  25. Required properties:
  26. - compatible : (required) must be "brcm,bcm947xx-cfe-partitions"
  27. Example:
  28. flash@0 {
  29. partitions {
  30. compatible = "brcm,bcm947xx-cfe-partitions";
  31. };
  32. };