1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2c66ec88fSEmmanuel Vadot/* 3c66ec88fSEmmanuel Vadot * Copyright (c) 2016 Endless Computers, Inc. 4c66ec88fSEmmanuel Vadot * Author: Carlo Caione <carlo@endlessm.com> 5c66ec88fSEmmanuel Vadot */ 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadot#include "meson-gxl.dtsi" 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadot/ { 10c66ec88fSEmmanuel Vadot compatible = "amlogic,meson-gxm"; 11c66ec88fSEmmanuel Vadot 12c66ec88fSEmmanuel Vadot cpus { 13c66ec88fSEmmanuel Vadot cpu-map { 14c66ec88fSEmmanuel Vadot cluster0 { 15c66ec88fSEmmanuel Vadot core0 { 16c66ec88fSEmmanuel Vadot cpu = <&cpu0>; 17c66ec88fSEmmanuel Vadot }; 18c66ec88fSEmmanuel Vadot core1 { 19c66ec88fSEmmanuel Vadot cpu = <&cpu1>; 20c66ec88fSEmmanuel Vadot }; 21c66ec88fSEmmanuel Vadot core2 { 22c66ec88fSEmmanuel Vadot cpu = <&cpu2>; 23c66ec88fSEmmanuel Vadot }; 24c66ec88fSEmmanuel Vadot core3 { 25c66ec88fSEmmanuel Vadot cpu = <&cpu3>; 26c66ec88fSEmmanuel Vadot }; 27c66ec88fSEmmanuel Vadot }; 28c66ec88fSEmmanuel Vadot 29c66ec88fSEmmanuel Vadot cluster1 { 30c66ec88fSEmmanuel Vadot core0 { 31c66ec88fSEmmanuel Vadot cpu = <&cpu4>; 32c66ec88fSEmmanuel Vadot }; 33c66ec88fSEmmanuel Vadot core1 { 34c66ec88fSEmmanuel Vadot cpu = <&cpu5>; 35c66ec88fSEmmanuel Vadot }; 36c66ec88fSEmmanuel Vadot core2 { 37c66ec88fSEmmanuel Vadot cpu = <&cpu6>; 38c66ec88fSEmmanuel Vadot }; 39c66ec88fSEmmanuel Vadot core3 { 40c66ec88fSEmmanuel Vadot cpu = <&cpu7>; 41c66ec88fSEmmanuel Vadot }; 42c66ec88fSEmmanuel Vadot }; 43c66ec88fSEmmanuel Vadot }; 44c66ec88fSEmmanuel Vadot 45*5def4c47SEmmanuel Vadot cpu0: cpu@0 { 46*5def4c47SEmmanuel Vadot capacity-dmips-mhz = <1024>; 47*5def4c47SEmmanuel Vadot }; 48*5def4c47SEmmanuel Vadot 49*5def4c47SEmmanuel Vadot cpu1: cpu@1 { 50*5def4c47SEmmanuel Vadot capacity-dmips-mhz = <1024>; 51*5def4c47SEmmanuel Vadot }; 52*5def4c47SEmmanuel Vadot 53*5def4c47SEmmanuel Vadot cpu2: cpu@2 { 54*5def4c47SEmmanuel Vadot capacity-dmips-mhz = <1024>; 55*5def4c47SEmmanuel Vadot }; 56*5def4c47SEmmanuel Vadot 57*5def4c47SEmmanuel Vadot cpu3: cpu@3 { 58*5def4c47SEmmanuel Vadot capacity-dmips-mhz = <1024>; 59*5def4c47SEmmanuel Vadot }; 60*5def4c47SEmmanuel Vadot 61c66ec88fSEmmanuel Vadot cpu4: cpu@100 { 62c66ec88fSEmmanuel Vadot device_type = "cpu"; 63c66ec88fSEmmanuel Vadot compatible = "arm,cortex-a53"; 64c66ec88fSEmmanuel Vadot reg = <0x0 0x100>; 65c66ec88fSEmmanuel Vadot enable-method = "psci"; 66*5def4c47SEmmanuel Vadot capacity-dmips-mhz = <1024>; 67c66ec88fSEmmanuel Vadot next-level-cache = <&l2>; 68c66ec88fSEmmanuel Vadot clocks = <&scpi_dvfs 1>; 69c66ec88fSEmmanuel Vadot #cooling-cells = <2>; 70c66ec88fSEmmanuel Vadot }; 71c66ec88fSEmmanuel Vadot 72c66ec88fSEmmanuel Vadot cpu5: cpu@101 { 73c66ec88fSEmmanuel Vadot device_type = "cpu"; 74c66ec88fSEmmanuel Vadot compatible = "arm,cortex-a53"; 75c66ec88fSEmmanuel Vadot reg = <0x0 0x101>; 76c66ec88fSEmmanuel Vadot enable-method = "psci"; 77*5def4c47SEmmanuel Vadot capacity-dmips-mhz = <1024>; 78c66ec88fSEmmanuel Vadot next-level-cache = <&l2>; 79c66ec88fSEmmanuel Vadot clocks = <&scpi_dvfs 1>; 80c66ec88fSEmmanuel Vadot #cooling-cells = <2>; 81c66ec88fSEmmanuel Vadot }; 82c66ec88fSEmmanuel Vadot 83c66ec88fSEmmanuel Vadot cpu6: cpu@102 { 84c66ec88fSEmmanuel Vadot device_type = "cpu"; 85c66ec88fSEmmanuel Vadot compatible = "arm,cortex-a53"; 86c66ec88fSEmmanuel Vadot reg = <0x0 0x102>; 87c66ec88fSEmmanuel Vadot enable-method = "psci"; 88*5def4c47SEmmanuel Vadot capacity-dmips-mhz = <1024>; 89c66ec88fSEmmanuel Vadot next-level-cache = <&l2>; 90c66ec88fSEmmanuel Vadot clocks = <&scpi_dvfs 1>; 91c66ec88fSEmmanuel Vadot #cooling-cells = <2>; 92c66ec88fSEmmanuel Vadot }; 93c66ec88fSEmmanuel Vadot 94c66ec88fSEmmanuel Vadot cpu7: cpu@103 { 95c66ec88fSEmmanuel Vadot device_type = "cpu"; 96c66ec88fSEmmanuel Vadot compatible = "arm,cortex-a53"; 97c66ec88fSEmmanuel Vadot reg = <0x0 0x103>; 98c66ec88fSEmmanuel Vadot enable-method = "psci"; 99*5def4c47SEmmanuel Vadot capacity-dmips-mhz = <1024>; 100c66ec88fSEmmanuel Vadot next-level-cache = <&l2>; 101c66ec88fSEmmanuel Vadot clocks = <&scpi_dvfs 1>; 102c66ec88fSEmmanuel Vadot #cooling-cells = <2>; 103c66ec88fSEmmanuel Vadot }; 104c66ec88fSEmmanuel Vadot }; 105c66ec88fSEmmanuel Vadot 106c66ec88fSEmmanuel Vadot gpu_opp_table: opp-table { 107c66ec88fSEmmanuel Vadot compatible = "operating-points-v2"; 108c66ec88fSEmmanuel Vadot 109c66ec88fSEmmanuel Vadot opp-125000000 { 110c66ec88fSEmmanuel Vadot opp-hz = /bits/ 64 <125000000>; 111c66ec88fSEmmanuel Vadot opp-microvolt = <950000>; 112c66ec88fSEmmanuel Vadot }; 113c66ec88fSEmmanuel Vadot opp-250000000 { 114c66ec88fSEmmanuel Vadot opp-hz = /bits/ 64 <250000000>; 115c66ec88fSEmmanuel Vadot opp-microvolt = <950000>; 116c66ec88fSEmmanuel Vadot }; 117c66ec88fSEmmanuel Vadot opp-285714285 { 118c66ec88fSEmmanuel Vadot opp-hz = /bits/ 64 <285714285>; 119c66ec88fSEmmanuel Vadot opp-microvolt = <950000>; 120c66ec88fSEmmanuel Vadot }; 121c66ec88fSEmmanuel Vadot opp-400000000 { 122c66ec88fSEmmanuel Vadot opp-hz = /bits/ 64 <400000000>; 123c66ec88fSEmmanuel Vadot opp-microvolt = <950000>; 124c66ec88fSEmmanuel Vadot }; 125c66ec88fSEmmanuel Vadot opp-500000000 { 126c66ec88fSEmmanuel Vadot opp-hz = /bits/ 64 <500000000>; 127c66ec88fSEmmanuel Vadot opp-microvolt = <950000>; 128c66ec88fSEmmanuel Vadot }; 129c66ec88fSEmmanuel Vadot opp-666666666 { 130c66ec88fSEmmanuel Vadot opp-hz = /bits/ 64 <666666666>; 131c66ec88fSEmmanuel Vadot opp-microvolt = <950000>; 132c66ec88fSEmmanuel Vadot }; 133c66ec88fSEmmanuel Vadot }; 134c66ec88fSEmmanuel Vadot}; 135c66ec88fSEmmanuel Vadot 136c66ec88fSEmmanuel Vadot&apb { 137c66ec88fSEmmanuel Vadot usb2_phy2: phy@78040 { 138c66ec88fSEmmanuel Vadot compatible = "amlogic,meson-gxl-usb2-phy"; 139c66ec88fSEmmanuel Vadot #phy-cells = <0>; 140c66ec88fSEmmanuel Vadot reg = <0x0 0x78040 0x0 0x20>; 141c66ec88fSEmmanuel Vadot clocks = <&clkc CLKID_USB>; 142c66ec88fSEmmanuel Vadot clock-names = "phy"; 143c66ec88fSEmmanuel Vadot resets = <&reset RESET_USB_OTG>; 144c66ec88fSEmmanuel Vadot reset-names = "phy"; 145c66ec88fSEmmanuel Vadot status = "okay"; 146c66ec88fSEmmanuel Vadot }; 147c66ec88fSEmmanuel Vadot 148c66ec88fSEmmanuel Vadot mali: gpu@c0000 { 149c66ec88fSEmmanuel Vadot compatible = "amlogic,meson-gxm-mali", "arm,mali-t820"; 150c66ec88fSEmmanuel Vadot reg = <0x0 0xc0000 0x0 0x40000>; 151c66ec88fSEmmanuel Vadot interrupt-parent = <&gic>; 152c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>, 153c66ec88fSEmmanuel Vadot <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>, 154c66ec88fSEmmanuel Vadot <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>; 155c66ec88fSEmmanuel Vadot interrupt-names = "job", "mmu", "gpu"; 156c66ec88fSEmmanuel Vadot clocks = <&clkc CLKID_MALI>; 157c66ec88fSEmmanuel Vadot resets = <&reset RESET_MALI_CAPB3>, <&reset RESET_MALI>; 158c66ec88fSEmmanuel Vadot operating-points-v2 = <&gpu_opp_table>; 159c66ec88fSEmmanuel Vadot }; 160c66ec88fSEmmanuel Vadot}; 161c66ec88fSEmmanuel Vadot 162c66ec88fSEmmanuel Vadot&clkc_AO { 163c66ec88fSEmmanuel Vadot compatible = "amlogic,meson-gxm-aoclkc", "amlogic,meson-gx-aoclkc"; 164c66ec88fSEmmanuel Vadot}; 165c66ec88fSEmmanuel Vadot 166c66ec88fSEmmanuel Vadot&cpu_cooling_maps { 167c66ec88fSEmmanuel Vadot map0 { 168c66ec88fSEmmanuel Vadot cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 169c66ec88fSEmmanuel Vadot <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 170c66ec88fSEmmanuel Vadot <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 171c66ec88fSEmmanuel Vadot <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 172c66ec88fSEmmanuel Vadot <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 173c66ec88fSEmmanuel Vadot <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 174c66ec88fSEmmanuel Vadot <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 175c66ec88fSEmmanuel Vadot <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 176c66ec88fSEmmanuel Vadot }; 177c66ec88fSEmmanuel Vadot 178c66ec88fSEmmanuel Vadot map1 { 179c66ec88fSEmmanuel Vadot cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 180c66ec88fSEmmanuel Vadot <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 181c66ec88fSEmmanuel Vadot <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 182c66ec88fSEmmanuel Vadot <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 183c66ec88fSEmmanuel Vadot <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 184c66ec88fSEmmanuel Vadot <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 185c66ec88fSEmmanuel Vadot <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 186c66ec88fSEmmanuel Vadot <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 187c66ec88fSEmmanuel Vadot }; 188c66ec88fSEmmanuel Vadot}; 189c66ec88fSEmmanuel Vadot 190c66ec88fSEmmanuel Vadot&saradc { 191c66ec88fSEmmanuel Vadot compatible = "amlogic,meson-gxm-saradc", "amlogic,meson-saradc"; 192c66ec88fSEmmanuel Vadot}; 193c66ec88fSEmmanuel Vadot 194c66ec88fSEmmanuel Vadot&scpi_dvfs { 195c66ec88fSEmmanuel Vadot clock-indices = <0 1>; 196c66ec88fSEmmanuel Vadot clock-output-names = "vbig", "vlittle"; 197c66ec88fSEmmanuel Vadot}; 198c66ec88fSEmmanuel Vadot 199c66ec88fSEmmanuel Vadot&vpu { 200c66ec88fSEmmanuel Vadot compatible = "amlogic,meson-gxm-vpu", "amlogic,meson-gx-vpu"; 201c66ec88fSEmmanuel Vadot}; 202c66ec88fSEmmanuel Vadot 203c66ec88fSEmmanuel Vadot&hdmi_tx { 204c66ec88fSEmmanuel Vadot compatible = "amlogic,meson-gxm-dw-hdmi", "amlogic,meson-gx-dw-hdmi"; 205c66ec88fSEmmanuel Vadot}; 206c66ec88fSEmmanuel Vadot 207c66ec88fSEmmanuel Vadot&usb { 208c66ec88fSEmmanuel Vadot compatible = "amlogic,meson-gxm-usb-ctrl"; 209c66ec88fSEmmanuel Vadot 210c66ec88fSEmmanuel Vadot phy-names = "usb2-phy0", "usb2-phy1", "usb2-phy2"; 211c66ec88fSEmmanuel Vadot phys = <&usb2_phy0>, <&usb2_phy1>, <&usb2_phy2>; 212c66ec88fSEmmanuel Vadot}; 213c66ec88fSEmmanuel Vadot 214c66ec88fSEmmanuel Vadot&vdec { 215c66ec88fSEmmanuel Vadot compatible = "amlogic,gxm-vdec", "amlogic,gx-vdec"; 216c66ec88fSEmmanuel Vadot}; 217