Commit 2fa72941 authored by Rafał Miłecki's avatar Rafał Miłecki Committed by Miquel Raynal
Browse files

dt-bindings: mtd: add binding for Linksys Northstar partitions



Linksys on Broadcom Northstar devices uses fixed flash layout with
multiple firmware partitions.

Signed-off-by: default avatarRafał Miłecki <rafal@milecki.pl>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20210312134919.7767-1-zajec5@gmail.com
parent ac42c46f
Loading
Loading
Loading
Loading
+74 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/mtd/partitions/linksys,ns-partitions.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Linksys Northstar partitioning

description: |
  Linksys devices based on Broadcom Northstar architecture often use two
  firmware partitions. One is used for regular booting, the other is treated as
  fallback.

  This binding allows defining all fixed partitions and marking those containing
  firmware. System can use that information e.g. for booting or flashing
  purposes.

maintainers:
  - Rafał Miłecki <rafal@milecki.pl>

properties:
  compatible:
    const: linksys,ns-partitions

  "#address-cells":
    enum: [ 1, 2 ]

  "#size-cells":
    enum: [ 1, 2 ]

patternProperties:
  "^partition@[0-9a-f]+$":
    $ref: "partition.yaml#"
    properties:
      compatible:
        items:
          - const: linksys,ns-firmware
          - const: brcm,trx
    unevaluatedProperties: false

required:
  - "#address-cells"
  - "#size-cells"

additionalProperties: false

examples:
  - |
    partitions {
        compatible = "linksys,ns-partitions";
        #address-cells = <1>;
        #size-cells = <1>;

        partition@0 {
            label = "boot";
            reg = <0x0 0x100000>;
            read-only;
        };

        partition@100000 {
            label = "nvram";
            reg = <0x100000 0x100000>;
        };

        partition@200000 {
            compatible = "linksys,ns-firmware", "brcm,trx";
            reg = <0x200000 0xf00000>;
        };

        partition@1100000 {
            compatible = "linksys,ns-firmware", "brcm,trx";
            reg = <0x1100000 0xf00000>;
        };
    };