blob: 7d7a8de7bcd89027154b247ae1a2d0620ae2d37a [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/i2c/hisilicon,ascend910-i2c.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: HiSilicon common I2C controller
8
9maintainers:
10 - Yicong Yang <yangyicong@hisilicon.com>
11
12description:
13 The HiSilicon common I2C controller can be used for many different
14 types of SoC such as Huawei Ascend AI series chips.
15
16allOf:
17 - $ref: /schemas/i2c/i2c-controller.yaml#
18
19properties:
20 compatible:
21 const: hisilicon,ascend910-i2c
22
23 reg:
24 maxItems: 1
25
26 interrupts:
27 maxItems: 1
28
29 clocks:
30 maxItems: 1
31
32 clock-frequency:
33 default: 400000
34
35 i2c-sda-falling-time-ns:
36 default: 343
37
38 i2c-scl-falling-time-ns:
39 default: 203
40
41 i2c-sda-hold-time-ns:
42 default: 830
43
44 i2c-scl-rising-time-ns:
45 default: 365
46
47 i2c-digital-filter-width-ns:
48 default: 0
49
50required:
51 - compatible
52 - reg
53 - interrupts
54
55unevaluatedProperties: false
56
57examples:
58 - |
59 #include <dt-bindings/interrupt-controller/arm-gic.h>
60
61 i2c@38b0000 {
62 compatible = "hisilicon,ascend910-i2c";
63 reg = <0x38b0000 0x10000>;
64 interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
65 i2c-sda-falling-time-ns = <56>;
66 i2c-scl-falling-time-ns = <56>;
67 i2c-sda-hold-time-ns = <56>;
68 i2c-scl-rising-time-ns = <56>;
69 i2c-digital-filter;
70 i2c-digital-filter-width-ns = <0x0>;
71 clocks = <&alg_clk>;
72 clock-frequency = <400000>;
73 };