Merge tag 'Smack-for-5.11-io_uring-fix' of git://github.com/cschaufler/smack-next
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / mtd / partitions / fixed-partitions.yaml
1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/mtd/partitions/fixed-partitions.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Fixed partitions
8
9 description: |
10   This binding can be used on platforms which have strong conventions about
11   which portions of a flash are used for what purposes, but which don't use an
12   on-flash partition table such as RedBoot.
13
14   The partition table should be a node named "partitions". Partitions are then
15   defined as subnodes.
16
17 maintainers:
18   - Rafał Miłecki <rafal@milecki.pl>
19
20 properties:
21   compatible:
22     const: fixed-partitions
23
24   "#address-cells": true
25
26   "#size-cells": true
27
28 patternProperties:
29   "@[0-9a-f]+$":
30     description: node describing a single flash partition
31     type: object
32
33     properties:
34       reg:
35         description: partition's offset and size within the flash
36         maxItems: 1
37
38       label:
39         description: The label / name for this partition. If omitted, the label
40           is taken from the node name (excluding the unit address).
41
42       read-only:
43         description: This parameter, if present, is a hint that this partition
44           should only be mounted read-only. This is usually used for flash
45           partitions containing early-boot firmware images or data which should
46           not be clobbered.
47         type: boolean
48
49       lock:
50         description: Do not unlock the partition at initialization time (not
51           supported on all devices)
52         type: boolean
53
54       slc-mode:
55         description: This parameter, if present, allows one to emulate SLC mode
56           on a partition attached to an MLC NAND thus making this partition
57           immune to paired-pages corruptions
58         type: boolean
59
60     required:
61       - reg
62
63 required:
64   - "#address-cells"
65   - "#size-cells"
66
67 additionalProperties: true
68
69 examples:
70   - |
71     partitions {
72         compatible = "fixed-partitions";
73         #address-cells = <1>;
74         #size-cells = <1>;
75
76         partition@0 {
77             label = "u-boot";
78             reg = <0x0000000 0x100000>;
79             read-only;
80         };
81
82         uimage@100000 {
83             reg = <0x0100000 0x200000>;
84         };
85     };
86   - |
87     partitions {
88         compatible = "fixed-partitions";
89         #address-cells = <1>;
90         #size-cells = <2>;
91
92         /* a 4 GiB partition */
93         partition@0 {
94             label = "filesystem";
95             reg = <0x00000000 0x1 0x00000000>;
96         };
97     };
98   - |
99     partitions {
100         compatible = "fixed-partitions";
101         #address-cells = <2>;
102         #size-cells = <2>;
103
104         /* an 8 GiB partition */
105         partition@0 {
106             label = "filesystem #1";
107             reg = <0x0 0x00000000 0x2 0x00000000>;
108         };
109
110         /* a 4 GiB partition */
111         partition@200000000 {
112             label = "filesystem #2";
113             reg = <0x2 0x00000000 0x1 0x00000000>;
114         };
115     };
116   - |
117     partitions {
118         compatible = "fixed-partitions";
119         #address-cells = <1>;
120         #size-cells = <1>;
121
122         partition@0 {
123             label = "bootloader";
124             reg = <0x000000 0x100000>;
125             read-only;
126         };
127
128         firmware@100000 {
129             compatible = "brcm,trx";
130             label = "firmware";
131             reg = <0x100000 0xe00000>;
132         };
133
134         calibration@f00000 {
135             compatible = "fixed-partitions";
136             label = "calibration";
137             reg = <0xf00000 0x100000>;
138             ranges = <0 0xf00000 0x100000>;
139             #address-cells = <1>;
140             #size-cells = <1>;
141
142             partition@0 {
143                 label = "wifi0";
144                 reg = <0x000000 0x080000>;
145             };
146
147             partition@80000 {
148                 label = "wifi1";
149                 reg = <0x080000 0x080000>;
150             };
151         };
152     };