Documentation/devicetree/bindings/i2c/brcm,iproc-i2c.yaml

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

File Facts

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

title: Broadcom iProc I2C controller

maintainers:
  - Rafał Miłecki <rafal@milecki.pl>

properties:
  compatible:
    enum:
      - brcm,iproc-i2c
      - brcm,iproc-nic-i2c

  reg:
    minItems: 1
    maxItems: 2

  clock-frequency:
    enum: [ 100000, 400000 ]

  interrupts:
    description: |
      Should contain the I2C interrupt. For certain revisions of the I2C
      controller, I2C interrupt is unwired to the interrupt controller. In such
      case, this property should be left unspecified, and driver will fall back
      to polling mode
    maxItems: 1

  brcm,ape-hsls-addr-mask:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: Host view of address mask into the 'APE' co-processor

allOf:
  - $ref: /schemas/i2c/i2c-controller.yaml#
  - if:
      properties:
        compatible:
          contains:
            const: brcm,iproc-nic-i2c
    then:
      properties:
        reg:
          minItems: 2
      required:
        - brcm,ape-hsls-addr-mask
    else:
      properties:
        reg:
          maxItems: 1

unevaluatedProperties: false

required:
  - reg
  - clock-frequency
  - '#address-cells'
  - '#size-cells'

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    i2c@18008000 {
        compatible = "brcm,iproc-i2c";
        reg = <0x18008000 0x100>;
        #address-cells = <1>;

Annotation

Implementation Notes