# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/nvmem/layouts/fixed-cell.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Fixed offset & size NVMEM cell

maintainers:
  - Rafał Miłecki <rafal@milecki.pl>
  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

properties:
  compatible:
    oneOf:
      - const: mac-base
        description: >
          Cell with base MAC address to be used for calculating extra relative
          addresses.
          It can be stored in a plain binary format (cell length 6) or as an
          ASCII text like "00:11:22:33:44:55" (cell length 17).

  reg:
    maxItems: 1

  bits:
    $ref: /schemas/types.yaml#/definitions/uint32-array
    items:
      - minimum: 0
        maximum: 7
        description:
          Offset in bit within the address range specified by reg.
      - minimum: 1
        description:
          Size in bit within the address range specified by reg.

allOf:
  - if:
      required: [ compatible ]
    then:
      if:
        properties:
          compatible:
            contains:
              const: mac-base
      then:
        properties:
          "#nvmem-cell-cells":
            description: The first argument is a MAC address offset.
            const: 1
        required:
          - "#nvmem-cell-cells"

required:
  - reg

additionalProperties: true