1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun#include <dt-bindings/clock/zx296702-clock.h> 4*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h> 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun/ { 7*4882a593Smuzhiyun #address-cells = <1>; 8*4882a593Smuzhiyun #size-cells = <1>; 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun cpus { 11*4882a593Smuzhiyun #address-cells = <1>; 12*4882a593Smuzhiyun #size-cells = <0>; 13*4882a593Smuzhiyun enable-method = "zte,zx296702-smp"; 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun cpu@0 { 16*4882a593Smuzhiyun compatible = "arm,cortex-a9"; 17*4882a593Smuzhiyun device_type = "cpu"; 18*4882a593Smuzhiyun next-level-cache = <&l2cc>; 19*4882a593Smuzhiyun reg = <0>; 20*4882a593Smuzhiyun }; 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun cpu@1 { 23*4882a593Smuzhiyun compatible = "arm,cortex-a9"; 24*4882a593Smuzhiyun device_type = "cpu"; 25*4882a593Smuzhiyun next-level-cache = <&l2cc>; 26*4882a593Smuzhiyun reg = <1>; 27*4882a593Smuzhiyun }; 28*4882a593Smuzhiyun }; 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun soc { 32*4882a593Smuzhiyun #address-cells = <1>; 33*4882a593Smuzhiyun #size-cells = <1>; 34*4882a593Smuzhiyun compatible = "simple-bus"; 35*4882a593Smuzhiyun interrupt-parent = <&intc>; 36*4882a593Smuzhiyun ranges; 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun matrix: bus-matrix@400000 { 39*4882a593Smuzhiyun compatible = "zte,zx-bus-matrix"; 40*4882a593Smuzhiyun reg = <0x00400000 0x1000>; 41*4882a593Smuzhiyun }; 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun intc: interrupt-controller@801000 { 44*4882a593Smuzhiyun compatible = "arm,cortex-a9-gic"; 45*4882a593Smuzhiyun #interrupt-cells = <3>; 46*4882a593Smuzhiyun #address-cells = <1>; 47*4882a593Smuzhiyun #size-cells = <1>; 48*4882a593Smuzhiyun interrupt-controller; 49*4882a593Smuzhiyun reg = <0x00801000 0x1000>, 50*4882a593Smuzhiyun <0x00800100 0x100>; 51*4882a593Smuzhiyun }; 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun global_timer: timer@8000200 { 54*4882a593Smuzhiyun compatible = "arm,cortex-a9-global-timer"; 55*4882a593Smuzhiyun reg = <0x00800200 0x20>; 56*4882a593Smuzhiyun interrupts = <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>; 57*4882a593Smuzhiyun interrupt-parent = <&intc>; 58*4882a593Smuzhiyun clocks = <&topclk ZX296702_A9_PERIPHCLK>; 59*4882a593Smuzhiyun }; 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun l2cc: cache-controller@c00000 { 62*4882a593Smuzhiyun compatible = "arm,pl310-cache"; 63*4882a593Smuzhiyun reg = <0x00c00000 0x1000>; 64*4882a593Smuzhiyun cache-unified; 65*4882a593Smuzhiyun cache-level = <2>; 66*4882a593Smuzhiyun arm,data-latency = <1 1 1>; 67*4882a593Smuzhiyun arm,tag-latency = <1 1 1>; 68*4882a593Smuzhiyun arm,double-linefill = <1>; 69*4882a593Smuzhiyun arm,double-linefill-incr = <0>; 70*4882a593Smuzhiyun }; 71*4882a593Smuzhiyun 72*4882a593Smuzhiyun pcu: pcu@a0008000 { 73*4882a593Smuzhiyun compatible = "zte,zx296702-pcu"; 74*4882a593Smuzhiyun reg = <0xa0008000 0x1000>; 75*4882a593Smuzhiyun }; 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun topclk: topclk@9800000 { 78*4882a593Smuzhiyun compatible = "zte,zx296702-topcrm-clk"; 79*4882a593Smuzhiyun reg = <0x09800000 0x1000>; 80*4882a593Smuzhiyun #clock-cells = <1>; 81*4882a593Smuzhiyun }; 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun lsp1clk: lsp1clk@9400000 { 84*4882a593Smuzhiyun compatible = "zte,zx296702-lsp1crpm-clk"; 85*4882a593Smuzhiyun reg = <0x09400000 0x1000>; 86*4882a593Smuzhiyun #clock-cells = <1>; 87*4882a593Smuzhiyun }; 88*4882a593Smuzhiyun 89*4882a593Smuzhiyun lsp0clk: lsp0clk@b000000 { 90*4882a593Smuzhiyun compatible = "zte,zx296702-lsp0crpm-clk"; 91*4882a593Smuzhiyun reg = <0x0b000000 0x1000>; 92*4882a593Smuzhiyun #clock-cells = <1>; 93*4882a593Smuzhiyun }; 94*4882a593Smuzhiyun 95*4882a593Smuzhiyun uart0: serial@9405000 { 96*4882a593Smuzhiyun compatible = "zte,zx296702-uart"; 97*4882a593Smuzhiyun reg = <0x09405000 0x1000>; 98*4882a593Smuzhiyun interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 99*4882a593Smuzhiyun clocks = <&lsp1clk ZX296702_UART0_WCLK>; 100*4882a593Smuzhiyun status = "disabled"; 101*4882a593Smuzhiyun }; 102*4882a593Smuzhiyun 103*4882a593Smuzhiyun uart1: serial@9406000 { 104*4882a593Smuzhiyun compatible = "zte,zx296702-uart"; 105*4882a593Smuzhiyun reg = <0x09406000 0x1000>; 106*4882a593Smuzhiyun interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 107*4882a593Smuzhiyun clocks = <&lsp1clk ZX296702_UART1_WCLK>; 108*4882a593Smuzhiyun status = "disabled"; 109*4882a593Smuzhiyun }; 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun mmc0: mmc@9408000 { 112*4882a593Smuzhiyun compatible = "snps,dw-mshc"; 113*4882a593Smuzhiyun #address-cells = <1>; 114*4882a593Smuzhiyun #size-cells = <0>; 115*4882a593Smuzhiyun reg = <0x09408000 0x1000>; 116*4882a593Smuzhiyun interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 117*4882a593Smuzhiyun fifo-depth = <32>; 118*4882a593Smuzhiyun clocks = <&lsp1clk ZX296702_SDMMC0_PCLK>, 119*4882a593Smuzhiyun <&lsp1clk ZX296702_SDMMC0_WCLK>; 120*4882a593Smuzhiyun clock-names = "biu", "ciu"; 121*4882a593Smuzhiyun status = "disabled"; 122*4882a593Smuzhiyun }; 123*4882a593Smuzhiyun 124*4882a593Smuzhiyun mmc1: mmc@b003000 { 125*4882a593Smuzhiyun compatible = "snps,dw-mshc"; 126*4882a593Smuzhiyun #address-cells = <1>; 127*4882a593Smuzhiyun #size-cells = <0>; 128*4882a593Smuzhiyun reg = <0x0b003000 0x1000>; 129*4882a593Smuzhiyun interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 130*4882a593Smuzhiyun fifo-depth = <32>; 131*4882a593Smuzhiyun clocks = <&lsp0clk ZX296702_SDMMC1_PCLK>, 132*4882a593Smuzhiyun <&lsp0clk ZX296702_SDMMC1_WCLK>; 133*4882a593Smuzhiyun clock-names = "biu", "ciu"; 134*4882a593Smuzhiyun status = "disabled"; 135*4882a593Smuzhiyun }; 136*4882a593Smuzhiyun 137*4882a593Smuzhiyun sysctrl: sysctrl@a0007000 { 138*4882a593Smuzhiyun compatible = "zte,sysctrl", "syscon"; 139*4882a593Smuzhiyun reg = <0xa0007000 0x1000>; 140*4882a593Smuzhiyun }; 141*4882a593Smuzhiyun }; 142*4882a593Smuzhiyun}; 143