xref: /freebsd-src/sys/contrib/device-tree/Bindings/fsi/fsi-controller.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1*0e8011faSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*0e8011faSEmmanuel Vadot%YAML 1.2
3*0e8011faSEmmanuel Vadot---
4*0e8011faSEmmanuel Vadot$id: http://devicetree.org/schemas/fsi/fsi-controller.yaml#
5*0e8011faSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*0e8011faSEmmanuel Vadot
7*0e8011faSEmmanuel Vadottitle: FSI Controller Common Properties
8*0e8011faSEmmanuel Vadot
9*0e8011faSEmmanuel Vadotmaintainers:
10*0e8011faSEmmanuel Vadot  - Eddie James <eajames@linux.ibm.com>
11*0e8011faSEmmanuel Vadot
12*0e8011faSEmmanuel Vadotdescription:
13*0e8011faSEmmanuel Vadot  FSI (FRU (Field Replaceable Unit) Service Interface) is a two wire bus. The
14*0e8011faSEmmanuel Vadot  FSI bus is connected to a CFAM (Common FRU Access Macro) which contains
15*0e8011faSEmmanuel Vadot  various engines such as I2C controllers, SPI controllers, etc.
16*0e8011faSEmmanuel Vadot
17*0e8011faSEmmanuel Vadotproperties:
18*0e8011faSEmmanuel Vadot  "#address-cells":
19*0e8011faSEmmanuel Vadot    const: 2
20*0e8011faSEmmanuel Vadot
21*0e8011faSEmmanuel Vadot  "#size-cells":
22*0e8011faSEmmanuel Vadot    const: 0
23*0e8011faSEmmanuel Vadot
24*0e8011faSEmmanuel Vadot  '#interrupt-cells':
25*0e8011faSEmmanuel Vadot    const: 1
26*0e8011faSEmmanuel Vadot
27*0e8011faSEmmanuel Vadot  bus-frequency:
28*0e8011faSEmmanuel Vadot    minimum: 1
29*0e8011faSEmmanuel Vadot    maximum: 200000000
30*0e8011faSEmmanuel Vadot
31*0e8011faSEmmanuel Vadot  interrupt-controller: true
32*0e8011faSEmmanuel Vadot
33*0e8011faSEmmanuel Vadot  no-scan-on-init:
34*0e8011faSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/flag
35*0e8011faSEmmanuel Vadot    description:
36*0e8011faSEmmanuel Vadot      The FSI controller cannot scan the bus during initialization.
37*0e8011faSEmmanuel Vadot
38*0e8011faSEmmanuel VadotpatternProperties:
39*0e8011faSEmmanuel Vadot  "cfam@[0-9a-f],[0-9a-f]":
40*0e8011faSEmmanuel Vadot    type: object
41*0e8011faSEmmanuel Vadot    properties:
42*0e8011faSEmmanuel Vadot      chip-id:
43*0e8011faSEmmanuel Vadot        $ref: /schemas/types.yaml#/definitions/uint32
44*0e8011faSEmmanuel Vadot        description:
45*0e8011faSEmmanuel Vadot          Processor index, a global unique chip ID which is used to identify
46*0e8011faSEmmanuel Vadot          the physical location of the chip in a system specific way.
47*0e8011faSEmmanuel Vadot
48*0e8011faSEmmanuel Vadot      bus-frequency:
49*0e8011faSEmmanuel Vadot        minimum: 1
50*0e8011faSEmmanuel Vadot        maximum: 100000000
51*0e8011faSEmmanuel Vadot
52*0e8011faSEmmanuel Vadot      reg:
53*0e8011faSEmmanuel Vadot        maxItems: 1
54*0e8011faSEmmanuel Vadot
55*0e8011faSEmmanuel Vadot      "#address-cells":
56*0e8011faSEmmanuel Vadot        const: 1
57*0e8011faSEmmanuel Vadot
58*0e8011faSEmmanuel Vadot      "#size-cells":
59*0e8011faSEmmanuel Vadot        const: 1
60*0e8011faSEmmanuel Vadot
61*0e8011faSEmmanuel Vadot    required:
62*0e8011faSEmmanuel Vadot      - reg
63*0e8011faSEmmanuel Vadot
64*0e8011faSEmmanuel Vadot    additionalProperties: true
65*0e8011faSEmmanuel Vadot
66*0e8011faSEmmanuel VadotadditionalProperties: true
67