58 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---4$id: http://devicetree.org/schemas/mtd/partitions/tplink,safeloader-partitions.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: TP-Link SafeLoader partitions8 9description: |10 TP-Link home routers store various data on flash (e.g. bootloader,11 flash layout, firmware, product info, configuration, calibration12 data). That requires flash partitioning.13 14 Flash space layout of TP-Link devices is stored on flash itself using15 a custom ASCII-based format. That format was first found in TP-Link16 devices with a custom SafeLoader bootloader. Later it was adapted to17 CFE and U-Boot bootloaders.18 19 Partitions specified in partitions table cover whole flash space. Some20 contain static data that shouldn't get modified (device's MAC or WiFi21 calibration data). Others are semi-static (like kernel). Finally some22 partitions contain fully changeable content (like rootfs).23 24 This binding describes partitioning method and defines offset of ASCII25 based partitions table. That offset is picked at manufacturing process26 and doesn't change.27 28maintainers:29 - Rafał Miłecki <rafal@milecki.pl>30 31properties:32 compatible:33 const: tplink,safeloader-partitions34 35 partitions-table-offset:36 description: Flash offset of partitions table37 $ref: /schemas/types.yaml#/definitions/uint3238 39patternProperties:40 "^partition-.*$":41 $ref: partition.yaml#42 43required:44 - partitions-table-offset45 46additionalProperties: false47 48examples:49 - |50 partitions {51 compatible = "tplink,safeloader-partitions";52 partitions-table-offset = <0x100000>;53 54 partition-file-system {55 linux,rootfs;56 };57 };58