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