Documentation/devicetree/bindings/embedded-controller/google,cros-ec.yaml

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/embedded-controller/google,cros-ec.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/embedded-controller/google,cros-ec.yaml
Extension
.yaml
Size
7610 bytes
Lines
327
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: configuration, schema, or hardware description
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/embedded-controller/google,cros-ec.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: ChromeOS Embedded Controller

maintainers:
  - Benson Leung <bleung@chromium.org>
  - Guenter Roeck <groeck@chromium.org>

description:
  Google's ChromeOS EC is a microcontroller which talks to the AP and
  implements various functions such as keyboard and battery charging.
  The EC can be connected through various interfaces (I2C, SPI, and others)
  and the compatible string specifies which interface is being used.

properties:
  compatible:
    oneOf:
      - description:
          For implementations of the EC connected through I2C.
        const: google,cros-ec-i2c
      - description:
          For implementations of the EC connected through SPI.
        const: google,cros-ec-spi
      - description:
          For implementations of the FPMCU connected through SPI.
        items:
          - const: google,cros-ec-fp
          - const: google,cros-ec-spi
      - description:
          For implementations of the EC connected through RPMSG.
        const: google,cros-ec-rpmsg
      - description:
          For implementations of the EC connected through UART.
        const: google,cros-ec-uart

  controller-data: true

  google,cros-ec-spi-pre-delay:
    description:
      This property specifies the delay in usecs between the
      assertion of the CS and the first clock pulse.
    $ref: /schemas/types.yaml#/definitions/uint32
    default: 0

  google,cros-ec-spi-msg-delay:
    description:
      This property specifies the delay in usecs between messages.
    $ref: /schemas/types.yaml#/definitions/uint32
    default: 0

  google,has-vbc-nvram:
    description:
      Some implementations of the EC include a small nvram space used to
      store verified boot context data. This boolean flag is used to specify
      whether this nvram is present or not.
    type: boolean

  mediatek,rpmsg-name:
    description:
      Must be defined if the cros-ec is a rpmsg device for a Mediatek
      ARM Cortex M4 Co-processor. Contains the name of the rpmsg
      device. Used to match the subnode to the rpmsg device announced by
      the SCP.
    $ref: /schemas/types.yaml#/definitions/string

  spi-max-frequency: true

Annotation

Implementation Notes