xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/mfd/ac100.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunX-Powers AC100 Codec/RTC IC Device Tree bindings
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunAC100 is a audio codec and RTC subsystem combo IC. The 2 parts are
4*4882a593Smuzhiyunseparated, including power supplies and interrupt lines, but share
5*4882a593Smuzhiyuna common register address space and host interface.
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunRequired properties:
8*4882a593Smuzhiyun- compatible: "x-powers,ac100"
9*4882a593Smuzhiyun- reg: The I2C slave address or RSB hardware address for the chip
10*4882a593Smuzhiyun- sub-nodes:
11*4882a593Smuzhiyun  - codec
12*4882a593Smuzhiyun    - compatible:		"x-powers,ac100-codec"
13*4882a593Smuzhiyun    - interrupts:		SoC NMI / GPIO interrupt connected to the
14*4882a593Smuzhiyun    				IRQ_AUDIO pin
15*4882a593Smuzhiyun    - #clock-cells:		Shall be 0
16*4882a593Smuzhiyun    - clock-output-names:	"4M_adda"
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun    - see clock/clock-bindings.txt for common clock bindings
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun  - rtc
21*4882a593Smuzhiyun    - compatible:		"x-powers,ac100-rtc"
22*4882a593Smuzhiyun    - clocks:			A phandle to the codec's "4M_adda" clock
23*4882a593Smuzhiyun    - #clock-cells:		Shall be 1
24*4882a593Smuzhiyun    - clock-output-names:	"cko1_rtc", "cko2_rtc", "cko3_rtc"
25*4882a593Smuzhiyun
26*4882a593Smuzhiyun    - see clock/clock-bindings.txt for common clock bindings
27*4882a593Smuzhiyun
28*4882a593SmuzhiyunExample:
29*4882a593Smuzhiyun
30*4882a593Smuzhiyunac100: codec@e89 {
31*4882a593Smuzhiyun	compatible = "x-powers,ac100";
32*4882a593Smuzhiyun	reg = <0xe89>;
33*4882a593Smuzhiyun
34*4882a593Smuzhiyun	ac100_codec: codec {
35*4882a593Smuzhiyun		compatible = "x-powers,ac100-codec";
36*4882a593Smuzhiyun		interrupt-parent = <&r_pio>;
37*4882a593Smuzhiyun		interrupts = <0 9 IRQ_TYPE_LEVEL_LOW>; /* PL9 */
38*4882a593Smuzhiyun		#clock-cells = <0>;
39*4882a593Smuzhiyun		clock-output-names = "4M_adda";
40*4882a593Smuzhiyun	};
41*4882a593Smuzhiyun
42*4882a593Smuzhiyun	ac100_rtc: rtc {
43*4882a593Smuzhiyun		compatible = "x-powers,ac100-rtc";
44*4882a593Smuzhiyun		interrupt-parent = <&nmi_intc>;
45*4882a593Smuzhiyun		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
46*4882a593Smuzhiyun		clocks = <&ac100_codec>;
47*4882a593Smuzhiyun		#clock-cells = <1>;
48*4882a593Smuzhiyun		clock-output-names = "cko1_rtc", "cko2_rtc", "cko3_rtc";
49*4882a593Smuzhiyun	};
50*4882a593Smuzhiyun};
51