Documentation/devicetree/bindings/i2c/apple,i2c.yaml

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/i2c/apple,i2c.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/i2c/apple,i2c.yaml
Extension
.yaml
Size
1866 bytes
Lines
80
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 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/i2c/apple,i2c.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Apple/PASemi I2C controller

maintainers:
  - Sven Peter <sven@svenpeter.dev>

description: |
  Apple SoCs such as the M1 come with a I2C controller based on the one found
  in machines with P. A. Semi's PWRficient processors.
  The bus is used to communicate with e.g. USB PD chips or the speaker
  amp.

allOf:
  - $ref: /schemas/i2c/i2c-controller.yaml#

properties:
  compatible:
    oneOf:
      - items:
          - enum:
              - apple,t6020-i2c
              - apple,t8122-i2c
          - const: apple,t8103-i2c
      - items:
          - enum:
              # Do not add additional SoC to this list.
              - apple,s5l8960x-i2c
              - apple,t7000-i2c
              - apple,s8000-i2c
              - apple,t8010-i2c
              - apple,t8015-i2c
              - apple,t8103-i2c
              - apple,t8112-i2c
              - apple,t6000-i2c
          - const: apple,i2c

  reg:
    maxItems: 1

  clocks:
    items:
      - description: I2C bus reference clock

  interrupts:
    maxItems: 1

  clock-frequency:
    description: |
      Desired I2C bus clock frequency in Hz. If not specified, 100 kHz will be
      used. This frequency is generated by dividing the reference clock.
      Allowed values are between ref_clk/(16*4) and ref_clk/(16*255).

  power-domains:
    maxItems: 1

required:
  - compatible
  - reg
  - clocks
  - interrupts

unevaluatedProperties: false

examples:
  - |

Annotation

Implementation Notes