58 lines
1.7 KiB
YAML
58 lines
1.7 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/mtd/partitions/tplink,safeloader-partitions.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: TP-Link SafeLoader partitions
|
|
|
|
description: |
|
|
TP-Link home routers store various data on flash (e.g. bootloader,
|
|
flash layout, firmware, product info, configuration, calibration
|
|
data). That requires flash partitioning.
|
|
|
|
Flash space layout of TP-Link devices is stored on flash itself using
|
|
a custom ASCII-based format. That format was first found in TP-Link
|
|
devices with a custom SafeLoader bootloader. Later it was adapted to
|
|
CFE and U-Boot bootloaders.
|
|
|
|
Partitions specified in partitions table cover whole flash space. Some
|
|
contain static data that shouldn't get modified (device's MAC or WiFi
|
|
calibration data). Others are semi-static (like kernel). Finally some
|
|
partitions contain fully changeable content (like rootfs).
|
|
|
|
This binding describes partitioning method and defines offset of ASCII
|
|
based partitions table. That offset is picked at manufacturing process
|
|
and doesn't change.
|
|
|
|
maintainers:
|
|
- Rafał Miłecki <rafal@milecki.pl>
|
|
|
|
properties:
|
|
compatible:
|
|
const: tplink,safeloader-partitions
|
|
|
|
partitions-table-offset:
|
|
description: Flash offset of partitions table
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
patternProperties:
|
|
"^partition-.*$":
|
|
$ref: partition.yaml#
|
|
|
|
required:
|
|
- partitions-table-offset
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
partitions {
|
|
compatible = "tplink,safeloader-partitions";
|
|
partitions-table-offset = <0x100000>;
|
|
|
|
partition-file-system {
|
|
linux,rootfs;
|
|
};
|
|
};
|