xref: /linux/Documentation/devicetree/bindings/i2c/spacemit,k1-i2c.yaml (revision bbfd5594756011167b8f8de9a00e0c946afda1e6)
1*76fe9ac1STroy Mitchell# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*76fe9ac1STroy Mitchell%YAML 1.2
3*76fe9ac1STroy Mitchell---
4*76fe9ac1STroy Mitchell$id: http://devicetree.org/schemas/i2c/spacemit,k1-i2c.yaml#
5*76fe9ac1STroy Mitchell$schema: http://devicetree.org/meta-schemas/core.yaml#
6*76fe9ac1STroy Mitchell
7*76fe9ac1STroy Mitchelltitle: I2C controller embedded in SpacemiT's K1 SoC
8*76fe9ac1STroy Mitchell
9*76fe9ac1STroy Mitchellmaintainers:
10*76fe9ac1STroy Mitchell  - Troy Mitchell <troymitchell988@gmail.com>
11*76fe9ac1STroy Mitchell
12*76fe9ac1STroy Mitchellproperties:
13*76fe9ac1STroy Mitchell  compatible:
14*76fe9ac1STroy Mitchell    const: spacemit,k1-i2c
15*76fe9ac1STroy Mitchell
16*76fe9ac1STroy Mitchell  reg:
17*76fe9ac1STroy Mitchell    maxItems: 1
18*76fe9ac1STroy Mitchell
19*76fe9ac1STroy Mitchell  interrupts:
20*76fe9ac1STroy Mitchell    maxItems: 1
21*76fe9ac1STroy Mitchell
22*76fe9ac1STroy Mitchell  clocks:
23*76fe9ac1STroy Mitchell    items:
24*76fe9ac1STroy Mitchell      - description: I2C Functional Clock
25*76fe9ac1STroy Mitchell      - description: APB Bus Clock
26*76fe9ac1STroy Mitchell
27*76fe9ac1STroy Mitchell  clock-names:
28*76fe9ac1STroy Mitchell    items:
29*76fe9ac1STroy Mitchell      - const: func
30*76fe9ac1STroy Mitchell      - const: bus
31*76fe9ac1STroy Mitchell
32*76fe9ac1STroy Mitchell  clock-frequency:
33*76fe9ac1STroy Mitchell    description: |
34*76fe9ac1STroy Mitchell      K1 support three different modes which running different frequencies
35*76fe9ac1STroy Mitchell      standard speed mode: up to 100000 (100Hz)
36*76fe9ac1STroy Mitchell      fast speed mode    : up to 400000 (400Hz)
37*76fe9ac1STroy Mitchell      high speed mode    : up to 3300000 (3.3Mhz)
38*76fe9ac1STroy Mitchell    default: 400000
39*76fe9ac1STroy Mitchell    maximum: 3300000
40*76fe9ac1STroy Mitchell
41*76fe9ac1STroy Mitchellrequired:
42*76fe9ac1STroy Mitchell  - compatible
43*76fe9ac1STroy Mitchell  - reg
44*76fe9ac1STroy Mitchell  - interrupts
45*76fe9ac1STroy Mitchell  - clocks
46*76fe9ac1STroy Mitchell
47*76fe9ac1STroy MitchellunevaluatedProperties: false
48*76fe9ac1STroy Mitchell
49*76fe9ac1STroy Mitchellexamples:
50*76fe9ac1STroy Mitchell  - |
51*76fe9ac1STroy Mitchell    i2c@d4010800 {
52*76fe9ac1STroy Mitchell        compatible = "spacemit,k1-i2c";
53*76fe9ac1STroy Mitchell        reg = <0xd4010800 0x38>;
54*76fe9ac1STroy Mitchell        interrupt-parent = <&plic>;
55*76fe9ac1STroy Mitchell        interrupts = <36>;
56*76fe9ac1STroy Mitchell        clocks =<&ccu 32>, <&ccu 84>;
57*76fe9ac1STroy Mitchell        clock-names = "func", "bus";
58*76fe9ac1STroy Mitchell        clock-frequency = <100000>;
59*76fe9ac1STroy Mitchell    };
60*76fe9ac1STroy Mitchell
61*76fe9ac1STroy Mitchell...
62