1372401efSJerome Brunet* Amlogic AXG Audio Clock Controllers
2372401efSJerome Brunet
3372401efSJerome BrunetThe Amlogic AXG audio clock controller generates and supplies clock to the
4372401efSJerome Brunetother elements of the audio subsystem, such as fifos, i2s, spdif and pdm
5372401efSJerome Brunetdevices.
6372401efSJerome Brunet
7372401efSJerome BrunetRequired Properties:
8372401efSJerome Brunet
9372401efSJerome Brunet- compatible	: should be "amlogic,axg-audio-clkc" for the A113X and A113D
10372401efSJerome Brunet- reg		: physical base address of the clock controller and length of
11372401efSJerome Brunet		  memory mapped region.
12372401efSJerome Brunet- clocks	: a list of phandle + clock-specifier pairs for the clocks listed
13372401efSJerome Brunet		  in clock-names.
14372401efSJerome Brunet- clock-names	: must contain the following:
15372401efSJerome Brunet		  * "pclk" - Main peripheral bus clock
16372401efSJerome Brunet		  may contain the following:
17372401efSJerome Brunet		  * "mst_in[0-7]" - 8 input plls to generate clock signals
18372401efSJerome Brunet		  * "slv_sclk[0-9]" - 10 slave bit clocks provided by external
19372401efSJerome Brunet				      components.
20372401efSJerome Brunet		  * "slv_lrclk[0-9]" - 10 slave sample clocks provided by external
21372401efSJerome Brunet				       components.
22372401efSJerome Brunet- resets	: phandle of the internal reset line
23372401efSJerome Brunet- #clock-cells	: should be 1.
24372401efSJerome Brunet
25372401efSJerome BrunetEach clock is assigned an identifier and client nodes can use this identifier
26372401efSJerome Brunetto specify the clock which they consume. All available clocks are defined as
27372401efSJerome Brunetpreprocessor macros in the dt-bindings/clock/axg-audio-clkc.h header and can be
28372401efSJerome Brunetused in device tree sources.
29372401efSJerome Brunet
30372401efSJerome BrunetExample:
31372401efSJerome Brunet
32372401efSJerome Brunetclkc_audio: clock-controller@0 {
33372401efSJerome Brunet	compatible = "amlogic,axg-audio-clkc";
34372401efSJerome Brunet	reg = <0x0 0x0 0x0 0xb4>;
35372401efSJerome Brunet	#clock-cells = <1>;
36372401efSJerome Brunet
37372401efSJerome Brunet	clocks = <&clkc CLKID_AUDIO>,
38372401efSJerome Brunet		 <&clkc CLKID_MPLL0>,
39372401efSJerome Brunet		 <&clkc CLKID_MPLL1>,
40372401efSJerome Brunet		 <&clkc CLKID_MPLL2>,
41372401efSJerome Brunet		 <&clkc CLKID_MPLL3>,
42372401efSJerome Brunet		 <&clkc CLKID_HIFI_PLL>,
43372401efSJerome Brunet		 <&clkc CLKID_FCLK_DIV3>,
44372401efSJerome Brunet		 <&clkc CLKID_FCLK_DIV4>,
45372401efSJerome Brunet		 <&clkc CLKID_GP0_PLL>;
46372401efSJerome Brunet	clock-names = "pclk",
47372401efSJerome Brunet		      "mst_in0",
48372401efSJerome Brunet		      "mst_in1",
49372401efSJerome Brunet		      "mst_in2",
50372401efSJerome Brunet		      "mst_in3",
51372401efSJerome Brunet		      "mst_in4",
52372401efSJerome Brunet		      "mst_in5",
53372401efSJerome Brunet		      "mst_in6",
54372401efSJerome Brunet		      "mst_in7";
55372401efSJerome Brunet	resets = <&reset RESET_AUDIO>;
56372401efSJerome Brunet};
57