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 7title: Fixed partitions 8 9description: | 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 17maintainers: 18 - Rafał Miłecki <rafal@milecki.pl> 19 20properties: 21 compatible: 22 oneOf: 23 - const: fixed-partitions 24 - items: 25 - const: sercomm,sc-partitions 26 - const: fixed-partitions 27 28 "#address-cells": true 29 30 "#size-cells": true 31 32patternProperties: 33 "@[0-9a-f]+$": 34 $ref: partition.yaml# 35 36 properties: 37 sercomm,scpart-id: 38 description: Partition id in Sercomm partition map. Mtd parser 39 uses this id to find a record in the partition map containing 40 offset and size of the current partition. The values from 41 partition map overrides partition offset and size defined in 42 reg property of the dts. Frequently these values are the same, 43 but may differ if device has bad eraseblocks on a flash. 44 $ref: /schemas/types.yaml#/definitions/uint32 45 46required: 47 - "#address-cells" 48 - "#size-cells" 49 50additionalProperties: true 51 52examples: 53 - | 54 partitions { 55 compatible = "fixed-partitions"; 56 #address-cells = <1>; 57 #size-cells = <1>; 58 59 partition@0 { 60 label = "u-boot"; 61 reg = <0x0000000 0x100000>; 62 read-only; 63 }; 64 65 uimage@100000 { 66 reg = <0x0100000 0x200000>; 67 }; 68 }; 69 70 - | 71 partitions { 72 compatible = "fixed-partitions"; 73 #address-cells = <1>; 74 #size-cells = <2>; 75 76 /* a 4 GiB partition */ 77 partition@0 { 78 label = "filesystem"; 79 reg = <0x00000000 0x1 0x00000000>; 80 linux,rootfs; 81 }; 82 }; 83 84 - | 85 partitions { 86 compatible = "fixed-partitions"; 87 #address-cells = <2>; 88 #size-cells = <2>; 89 90 /* an 8 GiB partition */ 91 partition@0 { 92 label = "filesystem #1"; 93 reg = <0x0 0x00000000 0x2 0x00000000>; 94 }; 95 96 /* a 4 GiB partition */ 97 partition@200000000 { 98 label = "filesystem #2"; 99 reg = <0x2 0x00000000 0x1 0x00000000>; 100 }; 101 }; 102 103 - | 104 partitions { 105 compatible = "fixed-partitions"; 106 #address-cells = <1>; 107 #size-cells = <1>; 108 109 partition@0 { 110 label = "bootloader"; 111 reg = <0x000000 0x100000>; 112 read-only; 113 }; 114 115 firmware@100000 { 116 compatible = "brcm,trx"; 117 label = "firmware"; 118 reg = <0x100000 0xe00000>; 119 }; 120 121 calibration@f00000 { 122 compatible = "fixed-partitions"; 123 label = "calibration"; 124 reg = <0xf00000 0x100000>; 125 ranges = <0 0xf00000 0x100000>; 126 #address-cells = <1>; 127 #size-cells = <1>; 128 129 partition@0 { 130 label = "wifi0"; 131 reg = <0x000000 0x080000>; 132 }; 133 134 partition@80000 { 135 label = "wifi1"; 136 reg = <0x080000 0x080000>; 137 }; 138 }; 139 }; 140 141 - | 142 partitions { 143 compatible = "sercomm,sc-partitions", "fixed-partitions"; 144 #address-cells = <1>; 145 #size-cells = <1>; 146 147 partition@0 { 148 label = "u-boot"; 149 reg = <0x0 0x100000>; 150 sercomm,scpart-id = <0>; 151 read-only; 152 }; 153 154 partition@100000 { 155 label = "dynamic partition map"; 156 reg = <0x100000 0x100000>; 157 sercomm,scpart-id = <1>; 158 }; 159 160 partition@200000 { 161 label = "Factory"; 162 reg = <0x200000 0x100000>; 163 sercomm,scpart-id = <2>; 164 read-only; 165 }; 166 }; 167