# Copyright (c) 2018, I-SENSE group of ICCS
# SPDX-License-Identifier: Apache-2.0

# Common fields for SPI devices

include: [base.yaml, power.yaml]

on-bus: spi

properties:
    reg:
      required: true
    spi-max-frequency:
      type: int
      required: true
      description: Maximum clock frequency of device's SPI interface in Hz
    label:
      required: true
    duplex:
      type: int
      default: 0
      required: false
      description: |
        Duplex mode, full or half. By default it's always full duplex thus 0
        as this is, by far, the most common mode.
        Use the macros not the actual enum value, here is the concordance
        list (see dt-bindings/spi/spi.h)
          0    SPI_FULL_DUPLEX
          2048 SPI_HALF_DUPLEX
      enum:
        - 0
        - 2048
    frame-format:
      type: int
      default: 0
      required: false
      description: |
        Motorola or TI frame format. By default it's always Motorola's,
        thus 0 as this is, by far, the most common format.
        Use the macros not the actual enum value, here is the concordance
        list (see dt-bindings/spi/spi.h)
          0     SPI_FRAME_FORMAT_MOTOROLA
          32768 SPI_FRAME_FORMAT_TI
      enum:
        - 0
        - 32768
