1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/i2c/brcm,iproc-i2c.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Broadcom iProc I2C controller 8 9maintainers: 10 - Rafał Miłecki <rafal@milecki.pl> 11 12properties: 13 compatible: 14 enum: 15 - brcm,iproc-i2c 16 - brcm,iproc-nic-i2c 17 18 reg: 19 minItems: 1 20 maxItems: 2 21 22 clock-frequency: 23 enum: [ 100000, 400000 ] 24 25 interrupts: 26 description: | 27 Should contain the I2C interrupt. For certain revisions of the I2C 28 controller, I2C interrupt is unwired to the interrupt controller. In such 29 case, this property should be left unspecified, and driver will fall back 30 to polling mode 31 maxItems: 1 32 33 brcm,ape-hsls-addr-mask: 34 $ref: /schemas/types.yaml#/definitions/uint32 35 description: Host view of address mask into the 'APE' co-processor 36 37allOf: 38 - $ref: /schemas/i2c/i2c-controller.yaml# 39 - if: 40 properties: 41 compatible: 42 contains: 43 const: brcm,iproc-nic-i2c 44 then: 45 properties: 46 reg: 47 minItems: 2 48 required: 49 - brcm,ape-hsls-addr-mask 50 else: 51 properties: 52 reg: 53 maxItems: 1 54 55unevaluatedProperties: false 56 57required: 58 - reg 59 - clock-frequency 60 - '#address-cells' 61 - '#size-cells' 62 63examples: 64 - | 65 #include <dt-bindings/interrupt-controller/arm-gic.h> 66 67 i2c@18008000 { 68 compatible = "brcm,iproc-i2c"; 69 reg = <0x18008000 0x100>; 70 #address-cells = <1>; 71 #size-cells = <0>; 72 interrupts = <GIC_SPI 85 IRQ_TYPE_NONE>; 73 clock-frequency = <100000>; 74 75 wm8750@1a { 76 compatible = "wlf,wm8750"; 77 reg = <0x1a>; 78 }; 79 }; 80