xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunNVIDIA Tegra ACONNECT Bus
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunThe Tegra ACONNECT bus is an AXI switch which is used to connnect various
4*4882a593Smuzhiyuncomponents inside the Audio Processing Engine (APE). All CPU accesses to
5*4882a593Smuzhiyunthe APE subsystem go through the ACONNECT via an APB to AXI wrapper.
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunRequired properties:
8*4882a593Smuzhiyun- compatible: Must be "nvidia,tegra210-aconnect".
9*4882a593Smuzhiyun- clocks: Must contain the entries for the APE clock (TEGRA210_CLK_APE),
10*4882a593Smuzhiyun  and APE interface clock (TEGRA210_CLK_APB2APE).
11*4882a593Smuzhiyun- clock-names: Must contain the names "ape" and "apb2ape" for the corresponding
12*4882a593Smuzhiyun  'clocks' entries.
13*4882a593Smuzhiyun- power-domains: Must contain a phandle that points to the audio powergate
14*4882a593Smuzhiyun  (namely 'aud') for Tegra210.
15*4882a593Smuzhiyun- #address-cells: The number of cells used to represent physical base addresses
16*4882a593Smuzhiyun  in the aconnect address space. Should be 1.
17*4882a593Smuzhiyun- #size-cells: The number of cells used to represent the size of an address
18*4882a593Smuzhiyun  range in the aconnect address space. Should be 1.
19*4882a593Smuzhiyun- ranges: Mapping of the aconnect address space to the CPU address space.
20*4882a593Smuzhiyun
21*4882a593SmuzhiyunAll devices accessed via the ACONNNECT are described by child-nodes.
22*4882a593Smuzhiyun
23*4882a593SmuzhiyunExample:
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun	aconnect@702c0000 {
26*4882a593Smuzhiyun		compatible = "nvidia,tegra210-aconnect";
27*4882a593Smuzhiyun		clocks = <&tegra_car TEGRA210_CLK_APE>,
28*4882a593Smuzhiyun			 <&tegra_car TEGRA210_CLK_APB2APE>;
29*4882a593Smuzhiyun		clock-names = "ape", "apb2ape";
30*4882a593Smuzhiyun		power-domains = <&pd_audio>;
31*4882a593Smuzhiyun
32*4882a593Smuzhiyun		#address-cells = <1>;
33*4882a593Smuzhiyun		#size-cells = <1>;
34*4882a593Smuzhiyun		ranges = <0x702c0000 0x0 0x702c0000 0x00040000>;
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun
37*4882a593Smuzhiyun		child1 {
38*4882a593Smuzhiyun			...
39*4882a593Smuzhiyun		};
40*4882a593Smuzhiyun
41*4882a593Smuzhiyun		child2 {
42*4882a593Smuzhiyun			...
43*4882a593Smuzhiyun		};
44*4882a593Smuzhiyun	};
45