xref: /freebsd/sys/contrib/device-tree/Bindings/mtd/partitions/linux,ubi.yaml (revision 01950c46b8155250f64374fb72fc11faa44bf099)
1*01950c46SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*01950c46SEmmanuel Vadot%YAML 1.2
3*01950c46SEmmanuel Vadot---
4*01950c46SEmmanuel Vadot$id: http://devicetree.org/schemas/mtd/partitions/linux,ubi.yaml#
5*01950c46SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*01950c46SEmmanuel Vadot
7*01950c46SEmmanuel Vadottitle: Unsorted Block Images
8*01950c46SEmmanuel Vadot
9*01950c46SEmmanuel Vadotdescription: |
10*01950c46SEmmanuel Vadot  UBI ("Unsorted Block Images") is a volume management system for raw
11*01950c46SEmmanuel Vadot  flash devices which manages multiple logical volumes on a single
12*01950c46SEmmanuel Vadot  physical flash device and spreads the I/O load (i.e wear-leveling)
13*01950c46SEmmanuel Vadot  across the whole flash chip.
14*01950c46SEmmanuel Vadot
15*01950c46SEmmanuel Vadotmaintainers:
16*01950c46SEmmanuel Vadot  - Daniel Golle <daniel@makrotopia.org>
17*01950c46SEmmanuel Vadot
18*01950c46SEmmanuel VadotallOf:
19*01950c46SEmmanuel Vadot  - $ref: partition.yaml#
20*01950c46SEmmanuel Vadot
21*01950c46SEmmanuel Vadotproperties:
22*01950c46SEmmanuel Vadot  compatible:
23*01950c46SEmmanuel Vadot    const: linux,ubi
24*01950c46SEmmanuel Vadot
25*01950c46SEmmanuel Vadot  volumes:
26*01950c46SEmmanuel Vadot    type: object
27*01950c46SEmmanuel Vadot    description: UBI Volumes
28*01950c46SEmmanuel Vadot
29*01950c46SEmmanuel Vadot    patternProperties:
30*01950c46SEmmanuel Vadot      "^ubi-volume-.*$":
31*01950c46SEmmanuel Vadot        $ref: /schemas/mtd/partitions/ubi-volume.yaml#
32*01950c46SEmmanuel Vadot
33*01950c46SEmmanuel Vadot    unevaluatedProperties: false
34*01950c46SEmmanuel Vadot
35*01950c46SEmmanuel Vadotrequired:
36*01950c46SEmmanuel Vadot  - compatible
37*01950c46SEmmanuel Vadot
38*01950c46SEmmanuel VadotunevaluatedProperties: false
39*01950c46SEmmanuel Vadot
40*01950c46SEmmanuel Vadotexamples:
41*01950c46SEmmanuel Vadot  - |
42*01950c46SEmmanuel Vadot    partitions {
43*01950c46SEmmanuel Vadot        compatible = "fixed-partitions";
44*01950c46SEmmanuel Vadot        #address-cells = <1>;
45*01950c46SEmmanuel Vadot        #size-cells = <1>;
46*01950c46SEmmanuel Vadot
47*01950c46SEmmanuel Vadot        partition@0 {
48*01950c46SEmmanuel Vadot            reg = <0x0 0x100000>;
49*01950c46SEmmanuel Vadot            label = "bootloader";
50*01950c46SEmmanuel Vadot            read-only;
51*01950c46SEmmanuel Vadot        };
52*01950c46SEmmanuel Vadot
53*01950c46SEmmanuel Vadot        partition@100000 {
54*01950c46SEmmanuel Vadot            reg = <0x100000 0x1ff00000>;
55*01950c46SEmmanuel Vadot            label = "ubi";
56*01950c46SEmmanuel Vadot            compatible = "linux,ubi";
57*01950c46SEmmanuel Vadot
58*01950c46SEmmanuel Vadot            volumes {
59*01950c46SEmmanuel Vadot                ubi-volume-caldata {
60*01950c46SEmmanuel Vadot                    volid = <2>;
61*01950c46SEmmanuel Vadot                    volname = "rf";
62*01950c46SEmmanuel Vadot
63*01950c46SEmmanuel Vadot                    nvmem-layout {
64*01950c46SEmmanuel Vadot                        compatible = "fixed-layout";
65*01950c46SEmmanuel Vadot                        #address-cells = <1>;
66*01950c46SEmmanuel Vadot                        #size-cells = <1>;
67*01950c46SEmmanuel Vadot
68*01950c46SEmmanuel Vadot                        eeprom@0 {
69*01950c46SEmmanuel Vadot                            reg = <0x0 0x1000>;
70*01950c46SEmmanuel Vadot                        };
71*01950c46SEmmanuel Vadot                    };
72*01950c46SEmmanuel Vadot                };
73*01950c46SEmmanuel Vadot            };
74*01950c46SEmmanuel Vadot        };
75*01950c46SEmmanuel Vadot    };
76