0001 # SPDX-License-Identifier: GPL-2.0
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/i2c/brcm,brcmstb-i2c.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Broadcom STB BSC IIC Master Controller
0008
0009 maintainers:
0010 - Kamal Dasu <kdasu.kdev@gmail.com>
0011
0012 allOf:
0013 - $ref: /schemas/i2c/i2c-controller.yaml#
0014
0015 properties:
0016 compatible:
0017 enum:
0018 - brcm,bcm2711-hdmi-i2c
0019 - brcm,brcmstb-i2c
0020 - brcm,brcmper-i2c
0021
0022 reg:
0023 minItems: 1
0024 items:
0025 - description: BSC register range
0026 - description: Auto-I2C register range
0027
0028 reg-names:
0029 items:
0030 - const: bsc
0031 - const: auto-i2c
0032
0033 interrupts:
0034 maxItems: 1
0035
0036 interrupt-names:
0037 maxItems: 1
0038
0039 clock-frequency:
0040 enum:
0041 - 46875
0042 - 50000
0043 - 93750
0044 - 97500
0045 - 187500
0046 - 200000
0047 - 375000
0048 - 390000
0049
0050 required:
0051 - compatible
0052 - reg
0053 - clock-frequency
0054
0055 unevaluatedProperties: false
0056
0057 if:
0058 properties:
0059 compatible:
0060 contains:
0061 enum:
0062 - brcm,bcm2711-hdmi-i2c
0063
0064 then:
0065 properties:
0066 reg:
0067 minItems: 2
0068
0069 required:
0070 - reg-names
0071
0072 else:
0073 properties:
0074 reg:
0075 maxItems: 1
0076
0077 examples:
0078 - |
0079 bsca: i2c@f0406200 {
0080 clock-frequency = <390000>;
0081 compatible = "brcm,brcmstb-i2c";
0082 interrupt-parent = <&irq0_intc>;
0083 reg = <0xf0406200 0x58>;
0084 interrupts = <0x18>;
0085 interrupt-names = "upg_bsca";
0086 };
0087
0088 - |
0089 ddc0: i2c@7ef04500 {
0090 compatible = "brcm,bcm2711-hdmi-i2c";
0091 reg = <0x7ef04500 0x100>, <0x7ef00b00 0x300>;
0092 reg-names = "bsc", "auto-i2c";
0093 clock-frequency = <390000>;
0094 };
0095
0096 ...