xref: /linux/Documentation/devicetree/bindings/i2c/i2c-opal.txt (revision e5451c8f8330e03ad3cfa16048b4daf961af434f)
1*47083450SNeelesh GuptaDevice-tree bindings for I2C OPAL driver
2*47083450SNeelesh Gupta----------------------------------------
3*47083450SNeelesh Gupta
4*47083450SNeelesh GuptaMost of the device node and properties layout is specific to the firmware and
5*47083450SNeelesh Guptaused by the firmware itself for configuring the port. From the linux
6*47083450SNeelesh Guptaperspective, the properties of use are "ibm,port-name" and "ibm,opal-id".
7*47083450SNeelesh Gupta
8*47083450SNeelesh GuptaRequired properties:
9*47083450SNeelesh Gupta
10*47083450SNeelesh Gupta- reg: Port-id within a given master
11*47083450SNeelesh Gupta- compatible: must be "ibm,opal-i2c"
12*47083450SNeelesh Gupta- ibm,opal-id: Refers to a specific bus and used to identify it when calling
13*47083450SNeelesh Gupta	       the relevant OPAL functions.
14*47083450SNeelesh Gupta- bus-frequency: Operating frequency of the i2c bus (in HZ). Informational for
15*47083450SNeelesh Gupta		 linux, used by the FW though.
16*47083450SNeelesh Gupta
17*47083450SNeelesh GuptaOptional properties:
18*47083450SNeelesh Gupta- ibm,port-name: Firmware provides this name that uniquely identifies the i2c
19*47083450SNeelesh Gupta		 port.
20*47083450SNeelesh Gupta
21*47083450SNeelesh GuptaThe node contains a number of other properties that are used by the FW itself
22*47083450SNeelesh Guptaand depend on the specific hardware implementation. The example below depicts
23*47083450SNeelesh Guptaa P8 on-chip bus.
24*47083450SNeelesh Gupta
25*47083450SNeelesh GuptaExample:
26*47083450SNeelesh Gupta
27*47083450SNeelesh Guptai2c-bus@0 {
28*47083450SNeelesh Gupta	reg = <0x0>;
29*47083450SNeelesh Gupta	bus-frequency = <0x61a80>;
30*47083450SNeelesh Gupta	compatible = "ibm,power8-i2c-port", "ibm,opal-i2c";
31*47083450SNeelesh Gupta	ibm,opal-id = <0x1>;
32*47083450SNeelesh Gupta	ibm,port-name = "p8_00000000_e1p0";
33*47083450SNeelesh Gupta	#address-cells = <0x1>;
34*47083450SNeelesh Gupta	phandle = <0x10000006>;
35*47083450SNeelesh Gupta	#size-cells = <0x0>;
36*47083450SNeelesh Gupta	linux,phandle = <0x10000006>;
37*47083450SNeelesh Gupta};
38