18c2ecf20Sopenharmony_ciNVIDIA Tegra ACONNECT Bus
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciThe Tegra ACONNECT bus is an AXI switch which is used to connnect various
48c2ecf20Sopenharmony_cicomponents inside the Audio Processing Engine (APE). All CPU accesses to
58c2ecf20Sopenharmony_cithe APE subsystem go through the ACONNECT via an APB to AXI wrapper.
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_ciRequired properties:
88c2ecf20Sopenharmony_ci- compatible: Must be "nvidia,tegra210-aconnect".
98c2ecf20Sopenharmony_ci- clocks: Must contain the entries for the APE clock (TEGRA210_CLK_APE),
108c2ecf20Sopenharmony_ci  and APE interface clock (TEGRA210_CLK_APB2APE).
118c2ecf20Sopenharmony_ci- clock-names: Must contain the names "ape" and "apb2ape" for the corresponding
128c2ecf20Sopenharmony_ci  'clocks' entries.
138c2ecf20Sopenharmony_ci- power-domains: Must contain a phandle that points to the audio powergate
148c2ecf20Sopenharmony_ci  (namely 'aud') for Tegra210.
158c2ecf20Sopenharmony_ci- #address-cells: The number of cells used to represent physical base addresses
168c2ecf20Sopenharmony_ci  in the aconnect address space. Should be 1.
178c2ecf20Sopenharmony_ci- #size-cells: The number of cells used to represent the size of an address
188c2ecf20Sopenharmony_ci  range in the aconnect address space. Should be 1.
198c2ecf20Sopenharmony_ci- ranges: Mapping of the aconnect address space to the CPU address space.
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ciAll devices accessed via the ACONNNECT are described by child-nodes.
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ciExample:
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ci	aconnect@702c0000 {
268c2ecf20Sopenharmony_ci		compatible = "nvidia,tegra210-aconnect";
278c2ecf20Sopenharmony_ci		clocks = <&tegra_car TEGRA210_CLK_APE>,
288c2ecf20Sopenharmony_ci			 <&tegra_car TEGRA210_CLK_APB2APE>;
298c2ecf20Sopenharmony_ci		clock-names = "ape", "apb2ape";
308c2ecf20Sopenharmony_ci		power-domains = <&pd_audio>;
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ci		#address-cells = <1>;
338c2ecf20Sopenharmony_ci		#size-cells = <1>;
348c2ecf20Sopenharmony_ci		ranges = <0x702c0000 0x0 0x702c0000 0x00040000>;
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci		child1 {
388c2ecf20Sopenharmony_ci			...
398c2ecf20Sopenharmony_ci		};
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci		child2 {
428c2ecf20Sopenharmony_ci			...
438c2ecf20Sopenharmony_ci		};
448c2ecf20Sopenharmony_ci	};
45