blob: 7070c04469ed70c78bb065c5df8919ac7c4f84b7 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/i2c/brcm,brcmstb-i2c.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom STB BSC IIC Master Controller
8
9maintainers:
10 - Kamal Dasu <kdasu.kdev@gmail.com>
11
12allOf:
13 - $ref: /schemas/i2c/i2c-controller.yaml#
14
15properties:
16 compatible:
17 enum:
18 - brcm,bcm2711-hdmi-i2c
19 - brcm,brcmstb-i2c
20 - brcm,brcmper-i2c
21
22 reg:
23 minItems: 1
24 items:
25 - description: BSC register range
26 - description: Auto-I2C register range
27
28 reg-names:
29 items:
30 - const: bsc
31 - const: auto-i2c
32
33 interrupts:
34 maxItems: 1
35
36 interrupt-names:
37 maxItems: 1
38
39 clock-frequency:
40 enum:
41 - 46875
42 - 50000
43 - 93750
44 - 97500
45 - 187500
46 - 200000
47 - 375000
48 - 390000
49
50required:
51 - compatible
52 - reg
53 - clock-frequency
54
55unevaluatedProperties: false
56
57if:
58 properties:
59 compatible:
60 contains:
61 enum:
62 - brcm,bcm2711-hdmi-i2c
63
64then:
65 properties:
66 reg:
67 minItems: 2
68
69 required:
70 - reg-names
71
72else:
73 properties:
74 reg:
75 maxItems: 1
76
77examples:
78 - |
79 bsca: i2c@f0406200 {
80 clock-frequency = <390000>;
81 compatible = "brcm,brcmstb-i2c";
82 interrupt-parent = <&irq0_intc>;
83 reg = <0xf0406200 0x58>;
84 interrupts = <0x18>;
85 interrupt-names = "upg_bsca";
86 };
87
88 - |
89 ddc0: i2c@7ef04500 {
90 compatible = "brcm,bcm2711-hdmi-i2c";
91 reg = <0x7ef04500 0x100>, <0x7ef00b00 0x300>;
92 reg-names = "bsc", "auto-i2c";
93 clock-frequency = <390000>;
94 };
95
96...