Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
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 };