186 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			186 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
 | 
						|
%YAML 1.2
 | 
						|
---
 | 
						|
$id: http://devicetree.org/schemas/mtd/partitions/fixed-partitions.yaml#
 | 
						|
$schema: http://devicetree.org/meta-schemas/core.yaml#
 | 
						|
 | 
						|
title: Fixed partitions
 | 
						|
 | 
						|
description: |
 | 
						|
  This binding can be used on platforms which have strong conventions about
 | 
						|
  which portions of a flash are used for what purposes, but which don't use an
 | 
						|
  on-flash partition table such as RedBoot.
 | 
						|
 | 
						|
  The partition table should be a node named "partitions". Partitions are then
 | 
						|
  defined as subnodes.  
 | 
						|
 | 
						|
maintainers:
 | 
						|
  - Rafał Miłecki <rafal@milecki.pl>
 | 
						|
 | 
						|
properties:
 | 
						|
  compatible:
 | 
						|
    oneOf:
 | 
						|
      - const: fixed-partitions
 | 
						|
      - items:
 | 
						|
          - const: sercomm,sc-partitions
 | 
						|
          - const: fixed-partitions
 | 
						|
 | 
						|
  "#address-cells": true
 | 
						|
 | 
						|
  "#size-cells": true
 | 
						|
 | 
						|
  compression:
 | 
						|
    $ref: /schemas/types.yaml#/definitions/string
 | 
						|
    description: |
 | 
						|
      Compression algorithm used to store the data in this partition, chosen
 | 
						|
      from a list of well-known algorithms.
 | 
						|
 | 
						|
      The contents are compressed using this algorithm.      
 | 
						|
 | 
						|
    enum:
 | 
						|
      - none
 | 
						|
      - bzip2
 | 
						|
      - gzip
 | 
						|
      - lzop
 | 
						|
      - lz4
 | 
						|
      - lzma
 | 
						|
      - xz
 | 
						|
      - zstd
 | 
						|
 | 
						|
patternProperties:
 | 
						|
  "@[0-9a-f]+$":
 | 
						|
    $ref: partition.yaml#
 | 
						|
 | 
						|
    properties:
 | 
						|
      sercomm,scpart-id:
 | 
						|
        description: Partition id in Sercomm partition map. Mtd parser
 | 
						|
          uses this id to find a record in the partition map containing
 | 
						|
          offset and size of the current partition. The values from
 | 
						|
          partition map overrides partition offset and size defined in
 | 
						|
          reg property of the dts. Frequently these values are the same,
 | 
						|
          but may differ if device has bad eraseblocks on a flash.
 | 
						|
        $ref: /schemas/types.yaml#/definitions/uint32
 | 
						|
 | 
						|
required:
 | 
						|
  - "#address-cells"
 | 
						|
  - "#size-cells"
 | 
						|
 | 
						|
additionalProperties: true
 | 
						|
 | 
						|
examples:
 | 
						|
  - |
 | 
						|
    partitions {
 | 
						|
        compatible = "fixed-partitions";
 | 
						|
        #address-cells = <1>;
 | 
						|
        #size-cells = <1>;
 | 
						|
 | 
						|
        partition@0 {
 | 
						|
            label = "u-boot";
 | 
						|
            reg = <0x0000000 0x100000>;
 | 
						|
            read-only;
 | 
						|
        };
 | 
						|
 | 
						|
        uimage@100000 {
 | 
						|
            reg = <0x0100000 0x200000>;
 | 
						|
            compress = "lzma";
 | 
						|
        };
 | 
						|
    };    
 | 
						|
 | 
						|
  - |
 | 
						|
    partitions {
 | 
						|
        compatible = "fixed-partitions";
 | 
						|
        #address-cells = <1>;
 | 
						|
        #size-cells = <2>;
 | 
						|
 | 
						|
        /* a 4 GiB partition */
 | 
						|
        partition@0 {
 | 
						|
            label = "filesystem";
 | 
						|
            reg = <0x00000000 0x1 0x00000000>;
 | 
						|
            linux,rootfs;
 | 
						|
        };
 | 
						|
    };    
 | 
						|
 | 
						|
  - |
 | 
						|
    partitions {
 | 
						|
        compatible = "fixed-partitions";
 | 
						|
        #address-cells = <2>;
 | 
						|
        #size-cells = <2>;
 | 
						|
 | 
						|
        /* an 8 GiB partition */
 | 
						|
        partition@0 {
 | 
						|
            label = "filesystem #1";
 | 
						|
            reg = <0x0 0x00000000 0x2 0x00000000>;
 | 
						|
        };
 | 
						|
 | 
						|
        /* a 4 GiB partition */
 | 
						|
        partition@200000000 {
 | 
						|
            label = "filesystem #2";
 | 
						|
            reg = <0x2 0x00000000 0x1 0x00000000>;
 | 
						|
        };
 | 
						|
    };    
 | 
						|
 | 
						|
  - |
 | 
						|
    partitions {
 | 
						|
        compatible = "fixed-partitions";
 | 
						|
        #address-cells = <1>;
 | 
						|
        #size-cells = <1>;
 | 
						|
 | 
						|
        partition@0 {
 | 
						|
            label = "bootloader";
 | 
						|
            reg = <0x000000 0x100000>;
 | 
						|
            read-only;
 | 
						|
        };
 | 
						|
 | 
						|
        firmware@100000 {
 | 
						|
            compatible = "brcm,trx";
 | 
						|
            label = "firmware";
 | 
						|
            reg = <0x100000 0xe00000>;
 | 
						|
        };
 | 
						|
 | 
						|
        calibration@f00000 {
 | 
						|
            compatible = "fixed-partitions";
 | 
						|
            label = "calibration";
 | 
						|
            reg = <0xf00000 0x100000>;
 | 
						|
            ranges = <0 0xf00000 0x100000>;
 | 
						|
            #address-cells = <1>;
 | 
						|
            #size-cells = <1>;
 | 
						|
 | 
						|
            partition@0 {
 | 
						|
                label = "wifi0";
 | 
						|
                reg = <0x000000 0x080000>;
 | 
						|
            };
 | 
						|
 | 
						|
            partition@80000 {
 | 
						|
                label = "wifi1";
 | 
						|
                reg = <0x080000 0x080000>;
 | 
						|
            };
 | 
						|
        };
 | 
						|
    };    
 | 
						|
 | 
						|
  - |
 | 
						|
    partitions {
 | 
						|
        compatible = "sercomm,sc-partitions", "fixed-partitions";
 | 
						|
        #address-cells = <1>;
 | 
						|
        #size-cells = <1>;
 | 
						|
 | 
						|
        partition@0 {
 | 
						|
            label = "u-boot";
 | 
						|
            reg = <0x0 0x100000>;
 | 
						|
            sercomm,scpart-id = <0>;
 | 
						|
            read-only;
 | 
						|
        };
 | 
						|
 | 
						|
        partition@100000 {
 | 
						|
            label = "dynamic partition map";
 | 
						|
            reg = <0x100000 0x100000>;
 | 
						|
            sercomm,scpart-id = <1>;
 | 
						|
        };
 | 
						|
 | 
						|
        partition@200000 {
 | 
						|
            label = "Factory";
 | 
						|
            reg = <0x200000 0x100000>;
 | 
						|
            sercomm,scpart-id = <2>;
 | 
						|
            read-only;
 | 
						|
        };
 | 
						|
    };    
 |