1114abfe1SNeil Armstrong// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2bb51b535SNeil Armstrong/* 3bb51b535SNeil Armstrong * Copyright (c) 2016 Endless Computers, Inc. 4bb51b535SNeil Armstrong * Author: Carlo Caione <carlo@endlessm.com> 5bb51b535SNeil Armstrong */ 6bb51b535SNeil Armstrong 7bb51b535SNeil Armstrong#include "meson-gxl.dtsi" 8bb51b535SNeil Armstrong 9bb51b535SNeil Armstrong/ { 10bb51b535SNeil Armstrong compatible = "amlogic,meson-gxm"; 11bb51b535SNeil Armstrong 12bb51b535SNeil Armstrong cpus { 13bb51b535SNeil Armstrong cpu-map { 14bb51b535SNeil Armstrong cluster0 { 15bb51b535SNeil Armstrong core0 { 16bb51b535SNeil Armstrong cpu = <&cpu0>; 17bb51b535SNeil Armstrong }; 18bb51b535SNeil Armstrong core1 { 19bb51b535SNeil Armstrong cpu = <&cpu1>; 20bb51b535SNeil Armstrong }; 21bb51b535SNeil Armstrong core2 { 22bb51b535SNeil Armstrong cpu = <&cpu2>; 23bb51b535SNeil Armstrong }; 24bb51b535SNeil Armstrong core3 { 25bb51b535SNeil Armstrong cpu = <&cpu3>; 26bb51b535SNeil Armstrong }; 27bb51b535SNeil Armstrong }; 28bb51b535SNeil Armstrong 29bb51b535SNeil Armstrong cluster1 { 30bb51b535SNeil Armstrong core0 { 31bb51b535SNeil Armstrong cpu = <&cpu4>; 32bb51b535SNeil Armstrong }; 33bb51b535SNeil Armstrong core1 { 34bb51b535SNeil Armstrong cpu = <&cpu5>; 35bb51b535SNeil Armstrong }; 36bb51b535SNeil Armstrong core2 { 37bb51b535SNeil Armstrong cpu = <&cpu6>; 38bb51b535SNeil Armstrong }; 39bb51b535SNeil Armstrong core3 { 40bb51b535SNeil Armstrong cpu = <&cpu7>; 41bb51b535SNeil Armstrong }; 42bb51b535SNeil Armstrong }; 43bb51b535SNeil Armstrong }; 44bb51b535SNeil Armstrong 45bb51b535SNeil Armstrong cpu4: cpu@100 { 46bb51b535SNeil Armstrong device_type = "cpu"; 4731af04cdSRob Herring compatible = "arm,cortex-a53"; 48bb51b535SNeil Armstrong reg = <0x0 0x100>; 49bb51b535SNeil Armstrong enable-method = "psci"; 50bb51b535SNeil Armstrong next-level-cache = <&l2>; 51bd97abc0SMartin Blumenstingl clocks = <&scpi_dvfs 1>; 52bb51b535SNeil Armstrong }; 53bb51b535SNeil Armstrong 54bb51b535SNeil Armstrong cpu5: cpu@101 { 55bb51b535SNeil Armstrong device_type = "cpu"; 5631af04cdSRob Herring compatible = "arm,cortex-a53"; 57bb51b535SNeil Armstrong reg = <0x0 0x101>; 58bb51b535SNeil Armstrong enable-method = "psci"; 59bb51b535SNeil Armstrong next-level-cache = <&l2>; 60bd97abc0SMartin Blumenstingl clocks = <&scpi_dvfs 1>; 61bb51b535SNeil Armstrong }; 62bb51b535SNeil Armstrong 63bb51b535SNeil Armstrong cpu6: cpu@102 { 64bb51b535SNeil Armstrong device_type = "cpu"; 6531af04cdSRob Herring compatible = "arm,cortex-a53"; 66bb51b535SNeil Armstrong reg = <0x0 0x102>; 67bb51b535SNeil Armstrong enable-method = "psci"; 68bb51b535SNeil Armstrong next-level-cache = <&l2>; 69bd97abc0SMartin Blumenstingl clocks = <&scpi_dvfs 1>; 70bb51b535SNeil Armstrong }; 71bb51b535SNeil Armstrong 72bb51b535SNeil Armstrong cpu7: cpu@103 { 73bb51b535SNeil Armstrong device_type = "cpu"; 7431af04cdSRob Herring compatible = "arm,cortex-a53"; 75bb51b535SNeil Armstrong reg = <0x0 0x103>; 76bb51b535SNeil Armstrong enable-method = "psci"; 77bb51b535SNeil Armstrong next-level-cache = <&l2>; 78bd97abc0SMartin Blumenstingl clocks = <&scpi_dvfs 1>; 79bb51b535SNeil Armstrong }; 80bb51b535SNeil Armstrong }; 81bb51b535SNeil Armstrong}; 82fafdbdf7SNeil Armstrong 83458baa95SMartin Blumenstingl&apb { 84458baa95SMartin Blumenstingl usb2_phy2: phy@78040 { 85458baa95SMartin Blumenstingl compatible = "amlogic,meson-gxl-usb2-phy"; 86458baa95SMartin Blumenstingl #phy-cells = <0>; 87458baa95SMartin Blumenstingl reg = <0x0 0x78040 0x0 0x20>; 88458baa95SMartin Blumenstingl clocks = <&clkc CLKID_USB>; 89458baa95SMartin Blumenstingl clock-names = "phy"; 90458baa95SMartin Blumenstingl resets = <&reset RESET_USB_OTG>; 91458baa95SMartin Blumenstingl reset-names = "phy"; 92458baa95SMartin Blumenstingl status = "okay"; 93458baa95SMartin Blumenstingl }; 9411f8e119SChristian Hewitt 9511f8e119SChristian Hewitt mali: gpu@c0000 { 9611f8e119SChristian Hewitt compatible = "amlogic,meson-gxm-mali", "arm,mali-t820"; 9711f8e119SChristian Hewitt reg = <0x0 0xc0000 0x0 0x40000>; 9811f8e119SChristian Hewitt interrupt-parent = <&gic>; 9911f8e119SChristian Hewitt interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>, 10011f8e119SChristian Hewitt <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>, 10111f8e119SChristian Hewitt <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>; 10211f8e119SChristian Hewitt interrupt-names = "gpu", "mmu", "job"; 10311f8e119SChristian Hewitt clocks = <&clkc CLKID_MALI>; 10411f8e119SChristian Hewitt resets = <&reset RESET_MALI_CAPB3>, <&reset RESET_MALI>; 10511f8e119SChristian Hewitt 10611f8e119SChristian Hewitt /* 10711f8e119SChristian Hewitt * Mali clocking is provided by two identical clock paths 10811f8e119SChristian Hewitt * MALI_0 and MALI_1 muxed to a single clock by a glitch 10911f8e119SChristian Hewitt * free mux to safely change frequency while running. 11011f8e119SChristian Hewitt */ 11111f8e119SChristian Hewitt assigned-clocks = <&clkc CLKID_MALI_0_SEL>, 11211f8e119SChristian Hewitt <&clkc CLKID_MALI_0>, 11311f8e119SChristian Hewitt <&clkc CLKID_MALI>; /* Glitch free mux */ 11411f8e119SChristian Hewitt assigned-clock-parents = <&clkc CLKID_FCLK_DIV3>, 11511f8e119SChristian Hewitt <0>, /* Do Nothing */ 11611f8e119SChristian Hewitt <&clkc CLKID_MALI_0>; 11711f8e119SChristian Hewitt assigned-clock-rates = <0>, /* Do Nothing */ 11811f8e119SChristian Hewitt <666666666>, 11911f8e119SChristian Hewitt <0>; /* Do Nothing */ 12011f8e119SChristian Hewitt }; 121458baa95SMartin Blumenstingl}; 122458baa95SMartin Blumenstingl 1237fd2c355SNeil Armstrong&clkc_AO { 1247fd2c355SNeil Armstrong compatible = "amlogic,meson-gxm-aoclkc", "amlogic,meson-gx-aoclkc"; 1257fd2c355SNeil Armstrong}; 1267fd2c355SNeil Armstrong 127bd80ef5eSMartin Blumenstingl&saradc { 128bd80ef5eSMartin Blumenstingl compatible = "amlogic,meson-gxm-saradc", "amlogic,meson-saradc"; 129bd80ef5eSMartin Blumenstingl}; 130bd80ef5eSMartin Blumenstingl 131bd97abc0SMartin Blumenstingl&scpi_dvfs { 132bd97abc0SMartin Blumenstingl clock-indices = <0 1>; 133bd97abc0SMartin Blumenstingl clock-output-names = "vbig", "vlittle"; 134bd97abc0SMartin Blumenstingl}; 135bd97abc0SMartin Blumenstingl 136fafdbdf7SNeil Armstrong&vpu { 137fafdbdf7SNeil Armstrong compatible = "amlogic,meson-gxm-vpu", "amlogic,meson-gx-vpu"; 138fafdbdf7SNeil Armstrong}; 139bd97abc0SMartin Blumenstingl 1406939db7eSNeil Armstrong&hdmi_tx { 1416939db7eSNeil Armstrong compatible = "amlogic,meson-gxm-dw-hdmi", "amlogic,meson-gx-dw-hdmi"; 1426939db7eSNeil Armstrong}; 143458baa95SMartin Blumenstingl 144458baa95SMartin Blumenstingl&dwc3 { 145458baa95SMartin Blumenstingl phys = <&usb3_phy>, <&usb2_phy0>, <&usb2_phy1>, <&usb2_phy2>; 146458baa95SMartin Blumenstingl}; 147*4be247f7SMaxime Jourdan 148*4be247f7SMaxime Jourdan&vdec { 149*4be247f7SMaxime Jourdan compatible = "amlogic,gxm-vdec", "amlogic,gx-vdec"; 150*4be247f7SMaxime Jourdan}; 151