1e9a12e14SNeil Armstrong// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2e9a12e14SNeil Armstrong/* 3e9a12e14SNeil Armstrong * Copyright (c) 2019 BayLibre, SAS 4e9a12e14SNeil Armstrong * Author: Neil Armstrong <narmstrong@baylibre.com> 5e9a12e14SNeil Armstrong */ 6e9a12e14SNeil Armstrong 7e9a12e14SNeil Armstrong#include "meson-g12-common.dtsi" 8b3b81691SJerome Brunet#include <dt-bindings/clock/axg-audio-clkc.h> 9f4f1c8d9SNeil Armstrong#include <dt-bindings/power/meson-sm1-power.h> 10b3b81691SJerome Brunet#include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h> 11b3b81691SJerome Brunet#include <dt-bindings/reset/amlogic,meson-g12a-audio-reset.h> 12e9a12e14SNeil Armstrong 13e9a12e14SNeil Armstrong/ { 14e9a12e14SNeil Armstrong compatible = "amlogic,sm1"; 15e9a12e14SNeil Armstrong 16b3b81691SJerome Brunet tdmif_a: audio-controller-0 { 17b3b81691SJerome Brunet compatible = "amlogic,axg-tdm-iface"; 18b3b81691SJerome Brunet #sound-dai-cells = <0>; 19b3b81691SJerome Brunet sound-name-prefix = "TDM_A"; 20b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_MST_A_MCLK>, 21b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_MST_A_SCLK>, 22b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_MST_A_LRCLK>; 23b3b81691SJerome Brunet clock-names = "mclk", "sclk", "lrclk"; 24b3b81691SJerome Brunet status = "disabled"; 25b3b81691SJerome Brunet }; 26b3b81691SJerome Brunet 27b3b81691SJerome Brunet tdmif_b: audio-controller-1 { 28b3b81691SJerome Brunet compatible = "amlogic,axg-tdm-iface"; 29b3b81691SJerome Brunet #sound-dai-cells = <0>; 30b3b81691SJerome Brunet sound-name-prefix = "TDM_B"; 31b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_MST_B_MCLK>, 32b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_MST_B_SCLK>, 33b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_MST_B_LRCLK>; 34b3b81691SJerome Brunet clock-names = "mclk", "sclk", "lrclk"; 35b3b81691SJerome Brunet status = "disabled"; 36b3b81691SJerome Brunet }; 37b3b81691SJerome Brunet 38b3b81691SJerome Brunet tdmif_c: audio-controller-2 { 39b3b81691SJerome Brunet compatible = "amlogic,axg-tdm-iface"; 40b3b81691SJerome Brunet #sound-dai-cells = <0>; 41b3b81691SJerome Brunet sound-name-prefix = "TDM_C"; 42b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_MST_C_MCLK>, 43b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_MST_C_SCLK>, 44b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_MST_C_LRCLK>; 45b3b81691SJerome Brunet clock-names = "mclk", "sclk", "lrclk"; 46b3b81691SJerome Brunet status = "disabled"; 47b3b81691SJerome Brunet }; 48b3b81691SJerome Brunet 49e9a12e14SNeil Armstrong cpus { 50e9a12e14SNeil Armstrong #address-cells = <0x2>; 51e9a12e14SNeil Armstrong #size-cells = <0x0>; 52e9a12e14SNeil Armstrong 53e9a12e14SNeil Armstrong cpu0: cpu@0 { 54e9a12e14SNeil Armstrong device_type = "cpu"; 55e9a12e14SNeil Armstrong compatible = "arm,cortex-a55"; 56e9a12e14SNeil Armstrong reg = <0x0 0x0>; 57e9a12e14SNeil Armstrong enable-method = "psci"; 58e9a12e14SNeil Armstrong next-level-cache = <&l2>; 59c30dd927SNeil Armstrong #cooling-cells = <2>; 60e9a12e14SNeil Armstrong }; 61e9a12e14SNeil Armstrong 62e9a12e14SNeil Armstrong cpu1: cpu@1 { 63e9a12e14SNeil Armstrong device_type = "cpu"; 64e9a12e14SNeil Armstrong compatible = "arm,cortex-a55"; 65e9a12e14SNeil Armstrong reg = <0x0 0x1>; 66e9a12e14SNeil Armstrong enable-method = "psci"; 67e9a12e14SNeil Armstrong next-level-cache = <&l2>; 68c30dd927SNeil Armstrong #cooling-cells = <2>; 69e9a12e14SNeil Armstrong }; 70e9a12e14SNeil Armstrong 71e9a12e14SNeil Armstrong cpu2: cpu@2 { 72e9a12e14SNeil Armstrong device_type = "cpu"; 73e9a12e14SNeil Armstrong compatible = "arm,cortex-a55"; 74e9a12e14SNeil Armstrong reg = <0x0 0x2>; 75e9a12e14SNeil Armstrong enable-method = "psci"; 76e9a12e14SNeil Armstrong next-level-cache = <&l2>; 77c30dd927SNeil Armstrong #cooling-cells = <2>; 78e9a12e14SNeil Armstrong }; 79e9a12e14SNeil Armstrong 80e9a12e14SNeil Armstrong cpu3: cpu@3 { 81e9a12e14SNeil Armstrong device_type = "cpu"; 82e9a12e14SNeil Armstrong compatible = "arm,cortex-a55"; 83e9a12e14SNeil Armstrong reg = <0x0 0x3>; 84e9a12e14SNeil Armstrong enable-method = "psci"; 85e9a12e14SNeil Armstrong next-level-cache = <&l2>; 86c30dd927SNeil Armstrong #cooling-cells = <2>; 87e9a12e14SNeil Armstrong }; 88e9a12e14SNeil Armstrong 89e9a12e14SNeil Armstrong l2: l2-cache0 { 90e9a12e14SNeil Armstrong compatible = "cache"; 9149f65e2eSPierre Gondois cache-level = <2>; 92*c2258a94SKrzysztof Kozlowski cache-unified; 93e9a12e14SNeil Armstrong }; 94e9a12e14SNeil Armstrong }; 953d9e7648SNeil Armstrong 963d9e7648SNeil Armstrong cpu_opp_table: opp-table { 973d9e7648SNeil Armstrong compatible = "operating-points-v2"; 983d9e7648SNeil Armstrong opp-shared; 993d9e7648SNeil Armstrong 1003d9e7648SNeil Armstrong opp-1000000000 { 1013d9e7648SNeil Armstrong opp-hz = /bits/ 64 <1000000000>; 1023d9e7648SNeil Armstrong opp-microvolt = <770000>; 1033d9e7648SNeil Armstrong }; 1043d9e7648SNeil Armstrong 1053d9e7648SNeil Armstrong opp-1200000000 { 1063d9e7648SNeil Armstrong opp-hz = /bits/ 64 <1200000000>; 1073d9e7648SNeil Armstrong opp-microvolt = <780000>; 1083d9e7648SNeil Armstrong }; 1093d9e7648SNeil Armstrong 1103d9e7648SNeil Armstrong opp-1404000000 { 1113d9e7648SNeil Armstrong opp-hz = /bits/ 64 <1404000000>; 1123d9e7648SNeil Armstrong opp-microvolt = <790000>; 1133d9e7648SNeil Armstrong }; 1143d9e7648SNeil Armstrong 115b6a1c8a1SDongjin Kim opp-1500000000 { 1163d9e7648SNeil Armstrong opp-hz = /bits/ 64 <1500000000>; 1173d9e7648SNeil Armstrong opp-microvolt = <800000>; 1183d9e7648SNeil Armstrong }; 1193d9e7648SNeil Armstrong 1203d9e7648SNeil Armstrong opp-1608000000 { 1213d9e7648SNeil Armstrong opp-hz = /bits/ 64 <1608000000>; 1223d9e7648SNeil Armstrong opp-microvolt = <810000>; 1233d9e7648SNeil Armstrong }; 1243d9e7648SNeil Armstrong 1253d9e7648SNeil Armstrong opp-1704000000 { 1263d9e7648SNeil Armstrong opp-hz = /bits/ 64 <1704000000>; 1273d9e7648SNeil Armstrong opp-microvolt = <850000>; 1283d9e7648SNeil Armstrong }; 1293d9e7648SNeil Armstrong 1303d9e7648SNeil Armstrong opp-1800000000 { 1313d9e7648SNeil Armstrong opp-hz = /bits/ 64 <1800000000>; 1323d9e7648SNeil Armstrong opp-microvolt = <900000>; 1333d9e7648SNeil Armstrong }; 1343d9e7648SNeil Armstrong 1353d9e7648SNeil Armstrong opp-1908000000 { 1363d9e7648SNeil Armstrong opp-hz = /bits/ 64 <1908000000>; 1373d9e7648SNeil Armstrong opp-microvolt = <950000>; 1383d9e7648SNeil Armstrong }; 1393d9e7648SNeil Armstrong }; 140e9a12e14SNeil Armstrong}; 141e9a12e14SNeil Armstrong 142b3b81691SJerome Brunet&apb { 143b3b81691SJerome Brunet audio: bus@60000 { 144b3b81691SJerome Brunet compatible = "simple-bus"; 145b3b81691SJerome Brunet reg = <0x0 0x60000 0x0 0x1000>; 146b3b81691SJerome Brunet #address-cells = <2>; 147b3b81691SJerome Brunet #size-cells = <2>; 148b3b81691SJerome Brunet ranges = <0x0 0x0 0x0 0x60000 0x0 0x1000>; 149b3b81691SJerome Brunet 150b3b81691SJerome Brunet clkc_audio: clock-controller@0 { 151b3b81691SJerome Brunet status = "disabled"; 152b3b81691SJerome Brunet compatible = "amlogic,sm1-audio-clkc"; 153b3b81691SJerome Brunet reg = <0x0 0x0 0x0 0xb4>; 154b3b81691SJerome Brunet #clock-cells = <1>; 155b3b81691SJerome Brunet #reset-cells = <1>; 156b3b81691SJerome Brunet 157b3b81691SJerome Brunet clocks = <&clkc CLKID_AUDIO>, 158b3b81691SJerome Brunet <&clkc CLKID_MPLL0>, 159b3b81691SJerome Brunet <&clkc CLKID_MPLL1>, 160b3b81691SJerome Brunet <&clkc CLKID_MPLL2>, 161b3b81691SJerome Brunet <&clkc CLKID_MPLL3>, 162b3b81691SJerome Brunet <&clkc CLKID_HIFI_PLL>, 163b3b81691SJerome Brunet <&clkc CLKID_FCLK_DIV3>, 164b3b81691SJerome Brunet <&clkc CLKID_FCLK_DIV4>, 165b3b81691SJerome Brunet <&clkc CLKID_FCLK_DIV5>; 166b3b81691SJerome Brunet clock-names = "pclk", 167b3b81691SJerome Brunet "mst_in0", 168b3b81691SJerome Brunet "mst_in1", 169b3b81691SJerome Brunet "mst_in2", 170b3b81691SJerome Brunet "mst_in3", 171b3b81691SJerome Brunet "mst_in4", 172b3b81691SJerome Brunet "mst_in5", 173b3b81691SJerome Brunet "mst_in6", 174b3b81691SJerome Brunet "mst_in7"; 175b3b81691SJerome Brunet 176b3b81691SJerome Brunet resets = <&reset RESET_AUDIO>; 177b3b81691SJerome Brunet }; 178b3b81691SJerome Brunet 179b3b81691SJerome Brunet toddr_a: audio-controller@100 { 180b3b81691SJerome Brunet compatible = "amlogic,sm1-toddr", 181b3b81691SJerome Brunet "amlogic,axg-toddr"; 182b3b81691SJerome Brunet reg = <0x0 0x100 0x0 0x2c>; 183b3b81691SJerome Brunet #sound-dai-cells = <0>; 184b3b81691SJerome Brunet sound-name-prefix = "TODDR_A"; 185b3b81691SJerome Brunet interrupts = <GIC_SPI 148 IRQ_TYPE_EDGE_RISING>; 186b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TODDR_A>; 187b3b81691SJerome Brunet resets = <&arb AXG_ARB_TODDR_A>, 188b3b81691SJerome Brunet <&clkc_audio AUD_RESET_TODDR_A>; 189b3b81691SJerome Brunet reset-names = "arb", "rst"; 190be638075SJerome Brunet amlogic,fifo-depth = <8192>; 191b3b81691SJerome Brunet status = "disabled"; 192b3b81691SJerome Brunet }; 193b3b81691SJerome Brunet 194b3b81691SJerome Brunet toddr_b: audio-controller@140 { 195b3b81691SJerome Brunet compatible = "amlogic,sm1-toddr", 196b3b81691SJerome Brunet "amlogic,axg-toddr"; 197b3b81691SJerome Brunet reg = <0x0 0x140 0x0 0x2c>; 198b3b81691SJerome Brunet #sound-dai-cells = <0>; 199b3b81691SJerome Brunet sound-name-prefix = "TODDR_B"; 200b3b81691SJerome Brunet interrupts = <GIC_SPI 149 IRQ_TYPE_EDGE_RISING>; 201b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TODDR_B>; 202b3b81691SJerome Brunet resets = <&arb AXG_ARB_TODDR_B>, 203b3b81691SJerome Brunet <&clkc_audio AUD_RESET_TODDR_B>; 204b3b81691SJerome Brunet reset-names = "arb", "rst"; 205be638075SJerome Brunet amlogic,fifo-depth = <256>; 206b3b81691SJerome Brunet status = "disabled"; 207b3b81691SJerome Brunet }; 208b3b81691SJerome Brunet 209b3b81691SJerome Brunet toddr_c: audio-controller@180 { 210b3b81691SJerome Brunet compatible = "amlogic,sm1-toddr", 211b3b81691SJerome Brunet "amlogic,axg-toddr"; 212b3b81691SJerome Brunet reg = <0x0 0x180 0x0 0x2c>; 213b3b81691SJerome Brunet #sound-dai-cells = <0>; 214b3b81691SJerome Brunet sound-name-prefix = "TODDR_C"; 215b3b81691SJerome Brunet interrupts = <GIC_SPI 150 IRQ_TYPE_EDGE_RISING>; 216b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TODDR_C>; 217b3b81691SJerome Brunet resets = <&arb AXG_ARB_TODDR_C>, 218b3b81691SJerome Brunet <&clkc_audio AUD_RESET_TODDR_C>; 219b3b81691SJerome Brunet reset-names = "arb", "rst"; 220be638075SJerome Brunet amlogic,fifo-depth = <256>; 221b3b81691SJerome Brunet status = "disabled"; 222b3b81691SJerome Brunet }; 223b3b81691SJerome Brunet 224b3b81691SJerome Brunet frddr_a: audio-controller@1c0 { 225b3b81691SJerome Brunet compatible = "amlogic,sm1-frddr", 226b3b81691SJerome Brunet "amlogic,axg-frddr"; 227b3b81691SJerome Brunet reg = <0x0 0x1c0 0x0 0x2c>; 228b3b81691SJerome Brunet #sound-dai-cells = <0>; 229b3b81691SJerome Brunet sound-name-prefix = "FRDDR_A"; 230b3b81691SJerome Brunet interrupts = <GIC_SPI 152 IRQ_TYPE_EDGE_RISING>; 231b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_FRDDR_A>; 232b3b81691SJerome Brunet resets = <&arb AXG_ARB_FRDDR_A>, 233b3b81691SJerome Brunet <&clkc_audio AUD_RESET_FRDDR_A>; 234b3b81691SJerome Brunet reset-names = "arb", "rst"; 235be638075SJerome Brunet amlogic,fifo-depth = <512>; 236b3b81691SJerome Brunet status = "disabled"; 237b3b81691SJerome Brunet }; 238b3b81691SJerome Brunet 239b3b81691SJerome Brunet frddr_b: audio-controller@200 { 240b3b81691SJerome Brunet compatible = "amlogic,sm1-frddr", 241b3b81691SJerome Brunet "amlogic,axg-frddr"; 242b3b81691SJerome Brunet reg = <0x0 0x200 0x0 0x2c>; 243b3b81691SJerome Brunet #sound-dai-cells = <0>; 244b3b81691SJerome Brunet sound-name-prefix = "FRDDR_B"; 245b3b81691SJerome Brunet interrupts = <GIC_SPI 153 IRQ_TYPE_EDGE_RISING>; 246b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_FRDDR_B>; 247b3b81691SJerome Brunet resets = <&arb AXG_ARB_FRDDR_B>, 248b3b81691SJerome Brunet <&clkc_audio AUD_RESET_FRDDR_B>; 249b3b81691SJerome Brunet reset-names = "arb", "rst"; 250be638075SJerome Brunet amlogic,fifo-depth = <256>; 251b3b81691SJerome Brunet status = "disabled"; 252b3b81691SJerome Brunet }; 253b3b81691SJerome Brunet 254b3b81691SJerome Brunet frddr_c: audio-controller@240 { 255b3b81691SJerome Brunet compatible = "amlogic,sm1-frddr", 256b3b81691SJerome Brunet "amlogic,axg-frddr"; 257b3b81691SJerome Brunet reg = <0x0 0x240 0x0 0x2c>; 258b3b81691SJerome Brunet #sound-dai-cells = <0>; 259b3b81691SJerome Brunet sound-name-prefix = "FRDDR_C"; 260b3b81691SJerome Brunet interrupts = <GIC_SPI 154 IRQ_TYPE_EDGE_RISING>; 261b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_FRDDR_C>; 262b3b81691SJerome Brunet resets = <&arb AXG_ARB_FRDDR_C>, 263b3b81691SJerome Brunet <&clkc_audio AUD_RESET_FRDDR_C>; 264b3b81691SJerome Brunet reset-names = "arb", "rst"; 265be638075SJerome Brunet amlogic,fifo-depth = <256>; 266b3b81691SJerome Brunet status = "disabled"; 267b3b81691SJerome Brunet }; 268b3b81691SJerome Brunet 269b3b81691SJerome Brunet arb: reset-controller@280 { 270b3b81691SJerome Brunet status = "disabled"; 271b3b81691SJerome Brunet compatible = "amlogic,meson-sm1-audio-arb"; 272b3b81691SJerome Brunet reg = <0x0 0x280 0x0 0x4>; 273b3b81691SJerome Brunet #reset-cells = <1>; 274b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_DDR_ARB>; 275b3b81691SJerome Brunet }; 276b3b81691SJerome Brunet 277b3b81691SJerome Brunet tdmin_a: audio-controller@300 { 278b3b81691SJerome Brunet compatible = "amlogic,sm1-tdmin", 279b3b81691SJerome Brunet "amlogic,axg-tdmin"; 280b3b81691SJerome Brunet reg = <0x0 0x300 0x0 0x40>; 281b3b81691SJerome Brunet sound-name-prefix = "TDMIN_A"; 282b3b81691SJerome Brunet resets = <&clkc_audio AUD_RESET_TDMIN_A>; 283b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TDMIN_A>, 284b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_A_SCLK>, 285b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_A_SCLK_SEL>, 286b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>, 287b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>; 288b3b81691SJerome Brunet clock-names = "pclk", "sclk", "sclk_sel", 289b3b81691SJerome Brunet "lrclk", "lrclk_sel"; 290b3b81691SJerome Brunet status = "disabled"; 291b3b81691SJerome Brunet }; 292b3b81691SJerome Brunet 293b3b81691SJerome Brunet tdmin_b: audio-controller@340 { 294b3b81691SJerome Brunet compatible = "amlogic,sm1-tdmin", 295b3b81691SJerome Brunet "amlogic,axg-tdmin"; 296b3b81691SJerome Brunet reg = <0x0 0x340 0x0 0x40>; 297b3b81691SJerome Brunet sound-name-prefix = "TDMIN_B"; 298b3b81691SJerome Brunet resets = <&clkc_audio AUD_RESET_TDMIN_B>; 299b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TDMIN_B>, 300b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_B_SCLK>, 301b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_B_SCLK_SEL>, 302b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>, 303b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>; 304b3b81691SJerome Brunet clock-names = "pclk", "sclk", "sclk_sel", 305b3b81691SJerome Brunet "lrclk", "lrclk_sel"; 306b3b81691SJerome Brunet status = "disabled"; 307b3b81691SJerome Brunet }; 308b3b81691SJerome Brunet 309b3b81691SJerome Brunet tdmin_c: audio-controller@380 { 310b3b81691SJerome Brunet compatible = "amlogic,sm1-tdmin", 311b3b81691SJerome Brunet "amlogic,axg-tdmin"; 312b3b81691SJerome Brunet reg = <0x0 0x380 0x0 0x40>; 313b3b81691SJerome Brunet sound-name-prefix = "TDMIN_C"; 314b3b81691SJerome Brunet resets = <&clkc_audio AUD_RESET_TDMIN_C>; 315b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TDMIN_C>, 316b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_C_SCLK>, 317b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_C_SCLK_SEL>, 318b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>, 319b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>; 320b3b81691SJerome Brunet clock-names = "pclk", "sclk", "sclk_sel", 321b3b81691SJerome Brunet "lrclk", "lrclk_sel"; 322b3b81691SJerome Brunet status = "disabled"; 323b3b81691SJerome Brunet }; 324b3b81691SJerome Brunet 325b3b81691SJerome Brunet tdmin_lb: audio-controller@3c0 { 326b3b81691SJerome Brunet compatible = "amlogic,sm1-tdmin", 327b3b81691SJerome Brunet "amlogic,axg-tdmin"; 328b3b81691SJerome Brunet reg = <0x0 0x3c0 0x0 0x40>; 329b3b81691SJerome Brunet sound-name-prefix = "TDMIN_LB"; 330b3b81691SJerome Brunet resets = <&clkc_audio AUD_RESET_TDMIN_LB>; 331b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TDMIN_LB>, 332b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK>, 333b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK_SEL>, 334b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>, 335b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>; 336b3b81691SJerome Brunet clock-names = "pclk", "sclk", "sclk_sel", 337b3b81691SJerome Brunet "lrclk", "lrclk_sel"; 338b3b81691SJerome Brunet status = "disabled"; 339b3b81691SJerome Brunet }; 340b3b81691SJerome Brunet 34186f21594SArtem Lapkin spdifin: audio-controller@400 { 34286f21594SArtem Lapkin compatible = "amlogic,g12a-spdifin", 34386f21594SArtem Lapkin "amlogic,axg-spdifin"; 34486f21594SArtem Lapkin reg = <0x0 0x400 0x0 0x30>; 34586f21594SArtem Lapkin #sound-dai-cells = <0>; 34686f21594SArtem Lapkin sound-name-prefix = "SPDIFIN"; 34786f21594SArtem Lapkin interrupts = <GIC_SPI 151 IRQ_TYPE_EDGE_RISING>; 34886f21594SArtem Lapkin clocks = <&clkc_audio AUD_CLKID_SPDIFIN>, 34986f21594SArtem Lapkin <&clkc_audio AUD_CLKID_SPDIFIN_CLK>; 35086f21594SArtem Lapkin clock-names = "pclk", "refclk"; 35186f21594SArtem Lapkin resets = <&clkc_audio AUD_RESET_SPDIFIN>; 35286f21594SArtem Lapkin status = "disabled"; 35386f21594SArtem Lapkin }; 35486f21594SArtem Lapkin 35586f21594SArtem Lapkin spdifout_a: audio-controller@480 { 35686f21594SArtem Lapkin compatible = "amlogic,g12a-spdifout", 35786f21594SArtem Lapkin "amlogic,axg-spdifout"; 35886f21594SArtem Lapkin reg = <0x0 0x480 0x0 0x50>; 35986f21594SArtem Lapkin #sound-dai-cells = <0>; 36086f21594SArtem Lapkin sound-name-prefix = "SPDIFOUT_A"; 36186f21594SArtem Lapkin clocks = <&clkc_audio AUD_CLKID_SPDIFOUT>, 36286f21594SArtem Lapkin <&clkc_audio AUD_CLKID_SPDIFOUT_CLK>; 36386f21594SArtem Lapkin clock-names = "pclk", "mclk"; 36486f21594SArtem Lapkin resets = <&clkc_audio AUD_RESET_SPDIFOUT>; 36586f21594SArtem Lapkin status = "disabled"; 36686f21594SArtem Lapkin }; 36786f21594SArtem Lapkin 368b3b81691SJerome Brunet tdmout_a: audio-controller@500 { 369b3b81691SJerome Brunet compatible = "amlogic,sm1-tdmout"; 370b3b81691SJerome Brunet reg = <0x0 0x500 0x0 0x40>; 371b3b81691SJerome Brunet sound-name-prefix = "TDMOUT_A"; 372b3b81691SJerome Brunet resets = <&clkc_audio AUD_RESET_TDMOUT_A>; 373b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TDMOUT_A>, 374b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK>, 375b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK_SEL>, 376b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>, 377b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>; 378b3b81691SJerome Brunet clock-names = "pclk", "sclk", "sclk_sel", 379b3b81691SJerome Brunet "lrclk", "lrclk_sel"; 380b3b81691SJerome Brunet status = "disabled"; 381b3b81691SJerome Brunet }; 382b3b81691SJerome Brunet 383b3b81691SJerome Brunet tdmout_b: audio-controller@540 { 384b3b81691SJerome Brunet compatible = "amlogic,sm1-tdmout"; 385b3b81691SJerome Brunet reg = <0x0 0x540 0x0 0x40>; 386b3b81691SJerome Brunet sound-name-prefix = "TDMOUT_B"; 387b3b81691SJerome Brunet resets = <&clkc_audio AUD_RESET_TDMOUT_B>; 388b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TDMOUT_B>, 389b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK>, 390b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK_SEL>, 391b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>, 392b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>; 393b3b81691SJerome Brunet clock-names = "pclk", "sclk", "sclk_sel", 394b3b81691SJerome Brunet "lrclk", "lrclk_sel"; 395b3b81691SJerome Brunet status = "disabled"; 396b3b81691SJerome Brunet }; 397b3b81691SJerome Brunet 398b3b81691SJerome Brunet tdmout_c: audio-controller@580 { 399b3b81691SJerome Brunet compatible = "amlogic,sm1-tdmout"; 400b3b81691SJerome Brunet reg = <0x0 0x580 0x0 0x40>; 401b3b81691SJerome Brunet sound-name-prefix = "TDMOUT_C"; 402b3b81691SJerome Brunet resets = <&clkc_audio AUD_RESET_TDMOUT_C>; 403b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TDMOUT_C>, 404b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK>, 405b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK_SEL>, 406b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>, 407b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>; 408b3b81691SJerome Brunet clock-names = "pclk", "sclk", "sclk_sel", 409b3b81691SJerome Brunet "lrclk", "lrclk_sel"; 410b3b81691SJerome Brunet status = "disabled"; 411b3b81691SJerome Brunet }; 412b3b81691SJerome Brunet 413ddbdaa4dSNeil Armstrong toacodec: audio-controller@740 { 414ddbdaa4dSNeil Armstrong compatible = "amlogic,sm1-toacodec", 415ddbdaa4dSNeil Armstrong "amlogic,g12a-toacodec"; 416ddbdaa4dSNeil Armstrong reg = <0x0 0x740 0x0 0x4>; 417ddbdaa4dSNeil Armstrong #sound-dai-cells = <1>; 418ddbdaa4dSNeil Armstrong sound-name-prefix = "TOACODEC"; 419ddbdaa4dSNeil Armstrong resets = <&clkc_audio AUD_RESET_TOACODEC>; 420ddbdaa4dSNeil Armstrong status = "disabled"; 421ddbdaa4dSNeil Armstrong }; 422ddbdaa4dSNeil Armstrong 423b3b81691SJerome Brunet tohdmitx: audio-controller@744 { 424b3b81691SJerome Brunet compatible = "amlogic,sm1-tohdmitx", 425b3b81691SJerome Brunet "amlogic,g12a-tohdmitx"; 426b3b81691SJerome Brunet reg = <0x0 0x744 0x0 0x4>; 427b3b81691SJerome Brunet #sound-dai-cells = <1>; 428b3b81691SJerome Brunet sound-name-prefix = "TOHDMITX"; 429b3b81691SJerome Brunet resets = <&clkc_audio AUD_RESET_TOHDMITX>; 430b3b81691SJerome Brunet status = "disabled"; 431b3b81691SJerome Brunet }; 432b3b81691SJerome Brunet 433b3b81691SJerome Brunet toddr_d: audio-controller@840 { 434b3b81691SJerome Brunet compatible = "amlogic,sm1-toddr", 435b3b81691SJerome Brunet "amlogic,axg-toddr"; 436b3b81691SJerome Brunet reg = <0x0 0x840 0x0 0x2c>; 437b3b81691SJerome Brunet #sound-dai-cells = <0>; 438b3b81691SJerome Brunet sound-name-prefix = "TODDR_D"; 439b3b81691SJerome Brunet interrupts = <GIC_SPI 49 IRQ_TYPE_EDGE_RISING>; 440b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_TODDR_D>; 441b3b81691SJerome Brunet resets = <&arb AXG_ARB_TODDR_D>, 442b3b81691SJerome Brunet <&clkc_audio AUD_RESET_TODDR_D>; 443b3b81691SJerome Brunet reset-names = "arb", "rst"; 444be638075SJerome Brunet amlogic,fifo-depth = <256>; 445b3b81691SJerome Brunet status = "disabled"; 446b3b81691SJerome Brunet }; 447b3b81691SJerome Brunet 448b3b81691SJerome Brunet frddr_d: audio-controller@880 { 449b3b81691SJerome Brunet compatible = "amlogic,sm1-frddr", 450b3b81691SJerome Brunet "amlogic,axg-frddr"; 451b3b81691SJerome Brunet reg = <0x0 0x880 0x0 0x2c>; 452b3b81691SJerome Brunet #sound-dai-cells = <0>; 453b3b81691SJerome Brunet sound-name-prefix = "FRDDR_D"; 454b3b81691SJerome Brunet interrupts = <GIC_SPI 50 IRQ_TYPE_EDGE_RISING>; 455b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_FRDDR_D>; 456b3b81691SJerome Brunet resets = <&arb AXG_ARB_FRDDR_D>, 457b3b81691SJerome Brunet <&clkc_audio AUD_RESET_FRDDR_D>; 458b3b81691SJerome Brunet reset-names = "arb", "rst"; 459be638075SJerome Brunet amlogic,fifo-depth = <256>; 460b3b81691SJerome Brunet status = "disabled"; 461b3b81691SJerome Brunet }; 462b3b81691SJerome Brunet }; 463b3b81691SJerome Brunet 464b3b81691SJerome Brunet pdm: audio-controller@61000 { 465b3b81691SJerome Brunet compatible = "amlogic,sm1-pdm", 466b3b81691SJerome Brunet "amlogic,axg-pdm"; 467b3b81691SJerome Brunet reg = <0x0 0x61000 0x0 0x34>; 468b3b81691SJerome Brunet #sound-dai-cells = <0>; 469b3b81691SJerome Brunet sound-name-prefix = "PDM"; 470b3b81691SJerome Brunet clocks = <&clkc_audio AUD_CLKID_PDM>, 471b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_PDM_DCLK>, 472b3b81691SJerome Brunet <&clkc_audio AUD_CLKID_PDM_SYSCLK>; 473b3b81691SJerome Brunet clock-names = "pclk", "dclk", "sysclk"; 474ae5eed59SJerome Brunet resets = <&clkc_audio AUD_RESET_PDM>; 475b3b81691SJerome Brunet status = "disabled"; 476b3b81691SJerome Brunet }; 477b3b81691SJerome Brunet}; 478b3b81691SJerome Brunet 479e9a12e14SNeil Armstrong&cecb_AO { 480e9a12e14SNeil Armstrong compatible = "amlogic,meson-sm1-ao-cec"; 481e9a12e14SNeil Armstrong}; 482e9a12e14SNeil Armstrong 483e9a12e14SNeil Armstrong&clk_msr { 484e9a12e14SNeil Armstrong compatible = "amlogic,meson-sm1-clk-measure"; 485e9a12e14SNeil Armstrong}; 486e9a12e14SNeil Armstrong 487f4f1c8d9SNeil Armstrong 4883d9e7648SNeil Armstrong&clkc { 4893d9e7648SNeil Armstrong compatible = "amlogic,sm1-clkc"; 4903d9e7648SNeil Armstrong}; 4913d9e7648SNeil Armstrong 492c30dd927SNeil Armstrong&cpu_thermal { 493c30dd927SNeil Armstrong cooling-maps { 494c30dd927SNeil Armstrong map0 { 495c30dd927SNeil Armstrong trip = <&cpu_passive>; 496c30dd927SNeil Armstrong cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 497c30dd927SNeil Armstrong <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 498c30dd927SNeil Armstrong <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 499c30dd927SNeil Armstrong <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 500c30dd927SNeil Armstrong }; 501c30dd927SNeil Armstrong 502c30dd927SNeil Armstrong map1 { 503c30dd927SNeil Armstrong trip = <&cpu_hot>; 504c30dd927SNeil Armstrong cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 505c30dd927SNeil Armstrong <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 506c30dd927SNeil Armstrong <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 507c30dd927SNeil Armstrong <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 508c30dd927SNeil Armstrong }; 509c30dd927SNeil Armstrong }; 510c30dd927SNeil Armstrong}; 511c30dd927SNeil Armstrong 512f4f1c8d9SNeil Armstrongðmac { 513f4f1c8d9SNeil Armstrong power-domains = <&pwrc PWRC_SM1_ETH_ID>; 514f4f1c8d9SNeil Armstrong}; 515f4f1c8d9SNeil Armstrong 516e6b6d9d3SJerome Brunet&gpio_intc { 517e6b6d9d3SJerome Brunet compatible = "amlogic,meson-sm1-gpio-intc", 518e6b6d9d3SJerome Brunet "amlogic,meson-gpio-intc"; 519e6b6d9d3SJerome Brunet}; 520e6b6d9d3SJerome Brunet 5211f8607d5SNeil Armstrong&pcie { 5221f8607d5SNeil Armstrong power-domains = <&pwrc PWRC_SM1_PCIE_ID>; 5231f8607d5SNeil Armstrong}; 5241f8607d5SNeil Armstrong 52590cf8e21SJiucheng Xu&pmu { 52690cf8e21SJiucheng Xu compatible = "amlogic,sm1-ddr-pmu"; 52790cf8e21SJiucheng Xu}; 52890cf8e21SJiucheng Xu 529f4f1c8d9SNeil Armstrong&pwrc { 530f4f1c8d9SNeil Armstrong compatible = "amlogic,meson-sm1-pwrc"; 531e9a12e14SNeil Armstrong}; 532e9a12e14SNeil Armstrong 53315767cfdSNeil Armstrong&simplefb_cvbs { 53415767cfdSNeil Armstrong power-domains = <&pwrc PWRC_SM1_VPU_ID>; 53515767cfdSNeil Armstrong}; 53615767cfdSNeil Armstrong 53715767cfdSNeil Armstrong&simplefb_hdmi { 53815767cfdSNeil Armstrong power-domains = <&pwrc PWRC_SM1_VPU_ID>; 53915767cfdSNeil Armstrong}; 54015767cfdSNeil Armstrong 541302d95c6SNeil Armstrong&vdec { 542302d95c6SNeil Armstrong compatible = "amlogic,sm1-vdec"; 543302d95c6SNeil Armstrong}; 544302d95c6SNeil Armstrong 545e9a12e14SNeil Armstrong&vpu { 546f4f1c8d9SNeil Armstrong power-domains = <&pwrc PWRC_SM1_VPU_ID>; 547f4f1c8d9SNeil Armstrong}; 548f4f1c8d9SNeil Armstrong 549f4f1c8d9SNeil Armstrong&usb { 550f4f1c8d9SNeil Armstrong power-domains = <&pwrc PWRC_SM1_USB_ID>; 551e9a12e14SNeil Armstrong}; 55218b542e5STomeu Vizoso 55318b542e5STomeu Vizoso&npu { 55418b542e5STomeu Vizoso power-domains = <&pwrc PWRC_SM1_NNA_ID>; 55518b542e5STomeu Vizoso}; 556