xref: /freebsd/sys/contrib/device-tree/Bindings/i3c/aspeed,ast2600-i3c.yaml (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
1*fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
2*fac71e4eSEmmanuel Vadot%YAML 1.2
3*fac71e4eSEmmanuel Vadot---
4*fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/i3c/aspeed,ast2600-i3c.yaml#
5*fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*fac71e4eSEmmanuel Vadot
7*fac71e4eSEmmanuel Vadottitle: ASPEED AST2600 i3c controller
8*fac71e4eSEmmanuel Vadot
9*fac71e4eSEmmanuel Vadotmaintainers:
10*fac71e4eSEmmanuel Vadot  - Jeremy Kerr <jk@codeconstruct.com.au>
11*fac71e4eSEmmanuel Vadot
12*fac71e4eSEmmanuel VadotallOf:
13*fac71e4eSEmmanuel Vadot  - $ref: i3c.yaml#
14*fac71e4eSEmmanuel Vadot
15*fac71e4eSEmmanuel Vadotproperties:
16*fac71e4eSEmmanuel Vadot  compatible:
17*fac71e4eSEmmanuel Vadot    const: aspeed,ast2600-i3c
18*fac71e4eSEmmanuel Vadot
19*fac71e4eSEmmanuel Vadot  reg:
20*fac71e4eSEmmanuel Vadot    maxItems: 1
21*fac71e4eSEmmanuel Vadot
22*fac71e4eSEmmanuel Vadot  clocks:
23*fac71e4eSEmmanuel Vadot    maxItems: 1
24*fac71e4eSEmmanuel Vadot
25*fac71e4eSEmmanuel Vadot  resets:
26*fac71e4eSEmmanuel Vadot    maxItems: 1
27*fac71e4eSEmmanuel Vadot
28*fac71e4eSEmmanuel Vadot  interrupts:
29*fac71e4eSEmmanuel Vadot    maxItems: 1
30*fac71e4eSEmmanuel Vadot
31*fac71e4eSEmmanuel Vadot  sda-pullup-ohms:
32*fac71e4eSEmmanuel Vadot    enum: [545, 750, 2000]
33*fac71e4eSEmmanuel Vadot    default: 2000
34*fac71e4eSEmmanuel Vadot    description: |
35*fac71e4eSEmmanuel Vadot      Value to configure SDA pullup resistor, in Ohms.
36*fac71e4eSEmmanuel Vadot
37*fac71e4eSEmmanuel Vadot  aspeed,global-regs:
38*fac71e4eSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle-array
39*fac71e4eSEmmanuel Vadot    items:
40*fac71e4eSEmmanuel Vadot      - items:
41*fac71e4eSEmmanuel Vadot          - description: phandle to i3c global register syscon node
42*fac71e4eSEmmanuel Vadot          - description: index of this i3c controller in the global register set
43*fac71e4eSEmmanuel Vadot    description: |
44*fac71e4eSEmmanuel Vadot      A (phandle, controller index) reference to the i3c global register set
45*fac71e4eSEmmanuel Vadot      used for this device.
46*fac71e4eSEmmanuel Vadot
47*fac71e4eSEmmanuel Vadotrequired:
48*fac71e4eSEmmanuel Vadot  - compatible
49*fac71e4eSEmmanuel Vadot  - reg
50*fac71e4eSEmmanuel Vadot  - clocks
51*fac71e4eSEmmanuel Vadot  - interrupts
52*fac71e4eSEmmanuel Vadot  - aspeed,global-regs
53*fac71e4eSEmmanuel Vadot
54*fac71e4eSEmmanuel VadotunevaluatedProperties: false
55*fac71e4eSEmmanuel Vadot
56*fac71e4eSEmmanuel Vadotexamples:
57*fac71e4eSEmmanuel Vadot  - |
58*fac71e4eSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
59*fac71e4eSEmmanuel Vadot
60*fac71e4eSEmmanuel Vadot    i3c-master@2000 {
61*fac71e4eSEmmanuel Vadot        compatible = "aspeed,ast2600-i3c";
62*fac71e4eSEmmanuel Vadot        reg = <0x2000 0x1000>;
63*fac71e4eSEmmanuel Vadot        #address-cells = <3>;
64*fac71e4eSEmmanuel Vadot        #size-cells = <0>;
65*fac71e4eSEmmanuel Vadot        clocks = <&syscon 0>;
66*fac71e4eSEmmanuel Vadot        resets = <&syscon 0>;
67*fac71e4eSEmmanuel Vadot        aspeed,global-regs = <&i3c_global 0>;
68*fac71e4eSEmmanuel Vadot        pinctrl-names = "default";
69*fac71e4eSEmmanuel Vadot        pinctrl-0 = <&pinctrl_i3c1_default>;
70*fac71e4eSEmmanuel Vadot        interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
71*fac71e4eSEmmanuel Vadot    };
72*fac71e4eSEmmanuel Vadot...
73