18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/sound/nvidia,tegra210-ahub.yaml# 58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: Tegra210 AHUB Device Tree Bindings 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cidescription: | 108c2ecf20Sopenharmony_ci The Audio Hub (AHUB) comprises a collection of hardware accelerators 118c2ecf20Sopenharmony_ci for audio pre-processing, post-processing and a programmable full 128c2ecf20Sopenharmony_ci crossbar for routing audio data across these accelerators. It has 138c2ecf20Sopenharmony_ci external interfaces such as I2S, DMIC, DSPK. It interfaces with ADMA 148c2ecf20Sopenharmony_ci engine through ADMAIF. 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_cimaintainers: 178c2ecf20Sopenharmony_ci - Jon Hunter <jonathanh@nvidia.com> 188c2ecf20Sopenharmony_ci - Sameer Pujar <spujar@nvidia.com> 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ciproperties: 218c2ecf20Sopenharmony_ci $nodename: 228c2ecf20Sopenharmony_ci pattern: "^ahub@[0-9a-f]*$" 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci compatible: 258c2ecf20Sopenharmony_ci oneOf: 268c2ecf20Sopenharmony_ci - enum: 278c2ecf20Sopenharmony_ci - nvidia,tegra210-ahub 288c2ecf20Sopenharmony_ci - nvidia,tegra186-ahub 298c2ecf20Sopenharmony_ci - items: 308c2ecf20Sopenharmony_ci - const: nvidia,tegra194-ahub 318c2ecf20Sopenharmony_ci - const: nvidia,tegra186-ahub 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci reg: 348c2ecf20Sopenharmony_ci maxItems: 1 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci clocks: 378c2ecf20Sopenharmony_ci maxItems: 1 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ci clock-names: 408c2ecf20Sopenharmony_ci const: ahub 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ci assigned-clocks: 438c2ecf20Sopenharmony_ci maxItems: 1 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci assigned-clock-parents: 468c2ecf20Sopenharmony_ci maxItems: 1 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_ci assigned-clock-rates: 498c2ecf20Sopenharmony_ci maxItems: 1 508c2ecf20Sopenharmony_ci 518c2ecf20Sopenharmony_ci "#address-cells": 528c2ecf20Sopenharmony_ci const: 1 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ci "#size-cells": 558c2ecf20Sopenharmony_ci const: 1 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci ranges: true 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_cirequired: 608c2ecf20Sopenharmony_ci - compatible 618c2ecf20Sopenharmony_ci - reg 628c2ecf20Sopenharmony_ci - clocks 638c2ecf20Sopenharmony_ci - clock-names 648c2ecf20Sopenharmony_ci - assigned-clocks 658c2ecf20Sopenharmony_ci - assigned-clock-parents 668c2ecf20Sopenharmony_ci - "#address-cells" 678c2ecf20Sopenharmony_ci - "#size-cells" 688c2ecf20Sopenharmony_ci - ranges 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ciadditionalProperties: 718c2ecf20Sopenharmony_ci type: object 728c2ecf20Sopenharmony_ci 738c2ecf20Sopenharmony_ciexamples: 748c2ecf20Sopenharmony_ci - | 758c2ecf20Sopenharmony_ci #include<dt-bindings/clock/tegra210-car.h> 768c2ecf20Sopenharmony_ci 778c2ecf20Sopenharmony_ci ahub@702d0800 { 788c2ecf20Sopenharmony_ci compatible = "nvidia,tegra210-ahub"; 798c2ecf20Sopenharmony_ci reg = <0x702d0800 0x800>; 808c2ecf20Sopenharmony_ci clocks = <&tegra_car TEGRA210_CLK_D_AUDIO>; 818c2ecf20Sopenharmony_ci clock-names = "ahub"; 828c2ecf20Sopenharmony_ci assigned-clocks = <&tegra_car TEGRA210_CLK_D_AUDIO>; 838c2ecf20Sopenharmony_ci assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>; 848c2ecf20Sopenharmony_ci #address-cells = <1>; 858c2ecf20Sopenharmony_ci #size-cells = <1>; 868c2ecf20Sopenharmony_ci ranges = <0x702d0000 0x702d0000 0x0000e400>; 878c2ecf20Sopenharmony_ci 888c2ecf20Sopenharmony_ci // All AHUB child nodes below 898c2ecf20Sopenharmony_ci admaif@702d0000 { 908c2ecf20Sopenharmony_ci compatible = "nvidia,tegra210-admaif"; 918c2ecf20Sopenharmony_ci reg = <0x702d0000 0x800>; 928c2ecf20Sopenharmony_ci dmas = <&adma 1>, <&adma 1>, 938c2ecf20Sopenharmony_ci <&adma 2>, <&adma 2>, 948c2ecf20Sopenharmony_ci <&adma 3>, <&adma 3>, 958c2ecf20Sopenharmony_ci <&adma 4>, <&adma 4>, 968c2ecf20Sopenharmony_ci <&adma 5>, <&adma 5>, 978c2ecf20Sopenharmony_ci <&adma 6>, <&adma 6>, 988c2ecf20Sopenharmony_ci <&adma 7>, <&adma 7>, 998c2ecf20Sopenharmony_ci <&adma 8>, <&adma 8>, 1008c2ecf20Sopenharmony_ci <&adma 9>, <&adma 9>, 1018c2ecf20Sopenharmony_ci <&adma 10>, <&adma 10>; 1028c2ecf20Sopenharmony_ci dma-names = "rx1", "tx1", 1038c2ecf20Sopenharmony_ci "rx2", "tx2", 1048c2ecf20Sopenharmony_ci "rx3", "tx3", 1058c2ecf20Sopenharmony_ci "rx4", "tx4", 1068c2ecf20Sopenharmony_ci "rx5", "tx5", 1078c2ecf20Sopenharmony_ci "rx6", "tx6", 1088c2ecf20Sopenharmony_ci "rx7", "tx7", 1098c2ecf20Sopenharmony_ci "rx8", "tx8", 1108c2ecf20Sopenharmony_ci "rx9", "tx9", 1118c2ecf20Sopenharmony_ci "rx10", "tx10"; 1128c2ecf20Sopenharmony_ci }; 1138c2ecf20Sopenharmony_ci 1148c2ecf20Sopenharmony_ci i2s@702d1000 { 1158c2ecf20Sopenharmony_ci compatible = "nvidia,tegra210-i2s"; 1168c2ecf20Sopenharmony_ci reg = <0x702d1000 0x100>; 1178c2ecf20Sopenharmony_ci clocks = <&tegra_car TEGRA210_CLK_I2S0>; 1188c2ecf20Sopenharmony_ci clock-names = "i2s"; 1198c2ecf20Sopenharmony_ci assigned-clocks = <&tegra_car TEGRA210_CLK_I2S0>; 1208c2ecf20Sopenharmony_ci assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>; 1218c2ecf20Sopenharmony_ci assigned-clock-rates = <1536000>; 1228c2ecf20Sopenharmony_ci sound-name-prefix = "I2S1"; 1238c2ecf20Sopenharmony_ci }; 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_ci dmic@702d4000 { 1268c2ecf20Sopenharmony_ci compatible = "nvidia,tegra210-dmic"; 1278c2ecf20Sopenharmony_ci reg = <0x702d4000 0x100>; 1288c2ecf20Sopenharmony_ci clocks = <&tegra_car TEGRA210_CLK_DMIC1>; 1298c2ecf20Sopenharmony_ci clock-names = "dmic"; 1308c2ecf20Sopenharmony_ci assigned-clocks = <&tegra_car TEGRA210_CLK_DMIC1>; 1318c2ecf20Sopenharmony_ci assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>; 1328c2ecf20Sopenharmony_ci assigned-clock-rates = <3072000>; 1338c2ecf20Sopenharmony_ci sound-name-prefix = "DMIC1"; 1348c2ecf20Sopenharmony_ci }; 1358c2ecf20Sopenharmony_ci 1368c2ecf20Sopenharmony_ci // More child nodes to follow 1378c2ecf20Sopenharmony_ci }; 1388c2ecf20Sopenharmony_ci 1398c2ecf20Sopenharmony_ci... 140