1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/i2c/apple,i2c.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Apple/PASemi I2C controller 8 9maintainers: 10 - Sven Peter <sven@svenpeter.dev> 11 12description: | 13 Apple SoCs such as the M1 come with a I2C controller based on the one found 14 in machines with P. A. Semi's PWRficient processors. 15 The bus is used to communicate with e.g. USB PD chips or the speaker 16 amp. 17 18allOf: 19 - $ref: /schemas/i2c/i2c-controller.yaml# 20 21properties: 22 compatible: 23 oneOf: 24 - items: 25 - enum: 26 - apple,t6020-i2c 27 - apple,t8122-i2c 28 - const: apple,t8103-i2c 29 - items: 30 - enum: 31 # Do not add additional SoC to this list. 32 - apple,s5l8960x-i2c 33 - apple,t7000-i2c 34 - apple,s8000-i2c 35 - apple,t8010-i2c 36 - apple,t8015-i2c 37 - apple,t8103-i2c 38 - apple,t8112-i2c 39 - apple,t6000-i2c 40 - const: apple,i2c 41 42 reg: 43 maxItems: 1 44 45 clocks: 46 items: 47 - description: I2C bus reference clock 48 49 interrupts: 50 maxItems: 1 51 52 clock-frequency: 53 description: | 54 Desired I2C bus clock frequency in Hz. If not specified, 100 kHz will be 55 used. This frequency is generated by dividing the reference clock. 56 Allowed values are between ref_clk/(16*4) and ref_clk/(16*255). 57 58 power-domains: 59 maxItems: 1 60 61required: 62 - compatible 63 - reg 64 - clocks 65 - interrupts 66 67unevaluatedProperties: false 68 69examples: 70 - | 71 i2c@35010000 { 72 compatible = "apple,t8103-i2c", "apple,i2c"; 73 reg = <0x35010000 0x4000>; 74 interrupt-parent = <&aic>; 75 interrupts = <0 627 4>; 76 clocks = <&ref_clk>; 77 #address-cells = <1>; 78 #size-cells = <0>; 79 }; 80