]> git.ipfire.org Git - thirdparty/u-boot.git/blob - Bindings/mtd/partitions/tplink,safeloader-partitions.yaml
Squashed 'dts/upstream/' content from commit aaba2d45dc2a
[thirdparty/u-boot.git] / Bindings / mtd / partitions / tplink,safeloader-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/tplink,safeloader-partitions.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: TP-Link SafeLoader partitions
8
9 description: |
10 TP-Link home routers store various data on flash (e.g. bootloader,
11 flash layout, firmware, product info, configuration, calibration
12 data). That requires flash partitioning.
13
14 Flash space layout of TP-Link devices is stored on flash itself using
15 a custom ASCII-based format. That format was first found in TP-Link
16 devices with a custom SafeLoader bootloader. Later it was adapted to
17 CFE and U-Boot bootloaders.
18
19 Partitions specified in partitions table cover whole flash space. Some
20 contain static data that shouldn't get modified (device's MAC or WiFi
21 calibration data). Others are semi-static (like kernel). Finally some
22 partitions contain fully changeable content (like rootfs).
23
24 This binding describes partitioning method and defines offset of ASCII
25 based partitions table. That offset is picked at manufacturing process
26 and doesn't change.
27
28 maintainers:
29 - Rafał Miłecki <rafal@milecki.pl>
30
31 properties:
32 compatible:
33 const: tplink,safeloader-partitions
34
35 partitions-table-offset:
36 description: Flash offset of partitions table
37 $ref: /schemas/types.yaml#/definitions/uint32
38
39 patternProperties:
40 "^partition-.*$":
41 $ref: partition.yaml#
42
43 required:
44 - partitions-table-offset
45
46 additionalProperties: false
47
48 examples:
49 - |
50 partitions {
51 compatible = "tplink,safeloader-partitions";
52 partitions-table-offset = <0x100000>;
53
54 partition-file-system {
55 linux,rootfs;
56 };
57 };