1*dd8c7b78SManivannan Sadhasivam// SPDX-License-Identifier: GPL-2.0 2*dd8c7b78SManivannan Sadhasivam/* 3*dd8c7b78SManivannan Sadhasivam * dts file for Hisilicon Hi3670 SoC 4*dd8c7b78SManivannan Sadhasivam * 5*dd8c7b78SManivannan Sadhasivam * Copyright (C) 2016, Hisilicon Ltd. 6*dd8c7b78SManivannan Sadhasivam * Copyright (C) 2018, Linaro Ltd. 7*dd8c7b78SManivannan Sadhasivam */ 8*dd8c7b78SManivannan Sadhasivam 9*dd8c7b78SManivannan Sadhasivam#include <dt-bindings/interrupt-controller/arm-gic.h> 10*dd8c7b78SManivannan Sadhasivam 11*dd8c7b78SManivannan Sadhasivam/ { 12*dd8c7b78SManivannan Sadhasivam compatible = "hisilicon,hi3670"; 13*dd8c7b78SManivannan Sadhasivam interrupt-parent = <&gic>; 14*dd8c7b78SManivannan Sadhasivam #address-cells = <2>; 15*dd8c7b78SManivannan Sadhasivam #size-cells = <2>; 16*dd8c7b78SManivannan Sadhasivam 17*dd8c7b78SManivannan Sadhasivam psci { 18*dd8c7b78SManivannan Sadhasivam compatible = "arm,psci-0.2"; 19*dd8c7b78SManivannan Sadhasivam method = "smc"; 20*dd8c7b78SManivannan Sadhasivam }; 21*dd8c7b78SManivannan Sadhasivam 22*dd8c7b78SManivannan Sadhasivam cpus { 23*dd8c7b78SManivannan Sadhasivam #address-cells = <2>; 24*dd8c7b78SManivannan Sadhasivam #size-cells = <0>; 25*dd8c7b78SManivannan Sadhasivam 26*dd8c7b78SManivannan Sadhasivam cpu-map { 27*dd8c7b78SManivannan Sadhasivam cluster0 { 28*dd8c7b78SManivannan Sadhasivam core0 { 29*dd8c7b78SManivannan Sadhasivam cpu = <&cpu0>; 30*dd8c7b78SManivannan Sadhasivam }; 31*dd8c7b78SManivannan Sadhasivam core1 { 32*dd8c7b78SManivannan Sadhasivam cpu = <&cpu1>; 33*dd8c7b78SManivannan Sadhasivam }; 34*dd8c7b78SManivannan Sadhasivam core2 { 35*dd8c7b78SManivannan Sadhasivam cpu = <&cpu2>; 36*dd8c7b78SManivannan Sadhasivam }; 37*dd8c7b78SManivannan Sadhasivam core3 { 38*dd8c7b78SManivannan Sadhasivam cpu = <&cpu3>; 39*dd8c7b78SManivannan Sadhasivam }; 40*dd8c7b78SManivannan Sadhasivam }; 41*dd8c7b78SManivannan Sadhasivam cluster1 { 42*dd8c7b78SManivannan Sadhasivam core0 { 43*dd8c7b78SManivannan Sadhasivam cpu = <&cpu4>; 44*dd8c7b78SManivannan Sadhasivam }; 45*dd8c7b78SManivannan Sadhasivam core1 { 46*dd8c7b78SManivannan Sadhasivam cpu = <&cpu5>; 47*dd8c7b78SManivannan Sadhasivam }; 48*dd8c7b78SManivannan Sadhasivam core2 { 49*dd8c7b78SManivannan Sadhasivam cpu = <&cpu6>; 50*dd8c7b78SManivannan Sadhasivam }; 51*dd8c7b78SManivannan Sadhasivam core3 { 52*dd8c7b78SManivannan Sadhasivam cpu = <&cpu7>; 53*dd8c7b78SManivannan Sadhasivam }; 54*dd8c7b78SManivannan Sadhasivam }; 55*dd8c7b78SManivannan Sadhasivam }; 56*dd8c7b78SManivannan Sadhasivam 57*dd8c7b78SManivannan Sadhasivam cpu0: cpu@0 { 58*dd8c7b78SManivannan Sadhasivam compatible = "arm,cortex-a53", "arm,armv8"; 59*dd8c7b78SManivannan Sadhasivam device_type = "cpu"; 60*dd8c7b78SManivannan Sadhasivam reg = <0x0 0x0>; 61*dd8c7b78SManivannan Sadhasivam enable-method = "psci"; 62*dd8c7b78SManivannan Sadhasivam }; 63*dd8c7b78SManivannan Sadhasivam 64*dd8c7b78SManivannan Sadhasivam cpu1: cpu@1 { 65*dd8c7b78SManivannan Sadhasivam compatible = "arm,cortex-a53", "arm,armv8"; 66*dd8c7b78SManivannan Sadhasivam device_type = "cpu"; 67*dd8c7b78SManivannan Sadhasivam reg = <0x0 0x1>; 68*dd8c7b78SManivannan Sadhasivam enable-method = "psci"; 69*dd8c7b78SManivannan Sadhasivam }; 70*dd8c7b78SManivannan Sadhasivam 71*dd8c7b78SManivannan Sadhasivam cpu2: cpu@2 { 72*dd8c7b78SManivannan Sadhasivam compatible = "arm,cortex-a53", "arm,armv8"; 73*dd8c7b78SManivannan Sadhasivam device_type = "cpu"; 74*dd8c7b78SManivannan Sadhasivam reg = <0x0 0x2>; 75*dd8c7b78SManivannan Sadhasivam enable-method = "psci"; 76*dd8c7b78SManivannan Sadhasivam }; 77*dd8c7b78SManivannan Sadhasivam 78*dd8c7b78SManivannan Sadhasivam cpu3: cpu@3 { 79*dd8c7b78SManivannan Sadhasivam compatible = "arm,cortex-a53", "arm,armv8"; 80*dd8c7b78SManivannan Sadhasivam device_type = "cpu"; 81*dd8c7b78SManivannan Sadhasivam reg = <0x0 0x3>; 82*dd8c7b78SManivannan Sadhasivam enable-method = "psci"; 83*dd8c7b78SManivannan Sadhasivam }; 84*dd8c7b78SManivannan Sadhasivam 85*dd8c7b78SManivannan Sadhasivam cpu4: cpu@100 { 86*dd8c7b78SManivannan Sadhasivam compatible = "arm,cortex-a73", "arm,armv8"; 87*dd8c7b78SManivannan Sadhasivam device_type = "cpu"; 88*dd8c7b78SManivannan Sadhasivam reg = <0x0 0x100>; 89*dd8c7b78SManivannan Sadhasivam enable-method = "psci"; 90*dd8c7b78SManivannan Sadhasivam }; 91*dd8c7b78SManivannan Sadhasivam 92*dd8c7b78SManivannan Sadhasivam cpu5: cpu@101 { 93*dd8c7b78SManivannan Sadhasivam compatible = "arm,cortex-a73", "arm,armv8"; 94*dd8c7b78SManivannan Sadhasivam device_type = "cpu"; 95*dd8c7b78SManivannan Sadhasivam reg = <0x0 0x101>; 96*dd8c7b78SManivannan Sadhasivam enable-method = "psci"; 97*dd8c7b78SManivannan Sadhasivam }; 98*dd8c7b78SManivannan Sadhasivam 99*dd8c7b78SManivannan Sadhasivam cpu6: cpu@102 { 100*dd8c7b78SManivannan Sadhasivam compatible = "arm,cortex-a73", "arm,armv8"; 101*dd8c7b78SManivannan Sadhasivam device_type = "cpu"; 102*dd8c7b78SManivannan Sadhasivam reg = <0x0 0x102>; 103*dd8c7b78SManivannan Sadhasivam enable-method = "psci"; 104*dd8c7b78SManivannan Sadhasivam }; 105*dd8c7b78SManivannan Sadhasivam 106*dd8c7b78SManivannan Sadhasivam cpu7: cpu@103 { 107*dd8c7b78SManivannan Sadhasivam compatible = "arm,cortex-a73", "arm,armv8"; 108*dd8c7b78SManivannan Sadhasivam device_type = "cpu"; 109*dd8c7b78SManivannan Sadhasivam reg = <0x0 0x103>; 110*dd8c7b78SManivannan Sadhasivam enable-method = "psci"; 111*dd8c7b78SManivannan Sadhasivam }; 112*dd8c7b78SManivannan Sadhasivam }; 113*dd8c7b78SManivannan Sadhasivam 114*dd8c7b78SManivannan Sadhasivam gic: interrupt-controller@e82b0000 { 115*dd8c7b78SManivannan Sadhasivam compatible = "arm,gic-400"; 116*dd8c7b78SManivannan Sadhasivam reg = <0x0 0xe82b1000 0 0x1000>, /* GICD */ 117*dd8c7b78SManivannan Sadhasivam <0x0 0xe82b2000 0 0x2000>, /* GICC */ 118*dd8c7b78SManivannan Sadhasivam <0x0 0xe82b4000 0 0x2000>, /* GICH */ 119*dd8c7b78SManivannan Sadhasivam <0x0 0xe82b6000 0 0x2000>; /* GICV */ 120*dd8c7b78SManivannan Sadhasivam #interrupt-cells = <3>; 121*dd8c7b78SManivannan Sadhasivam #address-cells = <0>; 122*dd8c7b78SManivannan Sadhasivam interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(8) | 123*dd8c7b78SManivannan Sadhasivam IRQ_TYPE_LEVEL_HIGH)>; 124*dd8c7b78SManivannan Sadhasivam interrupt-controller; 125*dd8c7b78SManivannan Sadhasivam }; 126*dd8c7b78SManivannan Sadhasivam 127*dd8c7b78SManivannan Sadhasivam timer { 128*dd8c7b78SManivannan Sadhasivam compatible = "arm,armv8-timer"; 129*dd8c7b78SManivannan Sadhasivam interrupt-parent = <&gic>; 130*dd8c7b78SManivannan Sadhasivam interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | 131*dd8c7b78SManivannan Sadhasivam IRQ_TYPE_LEVEL_LOW)>, 132*dd8c7b78SManivannan Sadhasivam <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | 133*dd8c7b78SManivannan Sadhasivam IRQ_TYPE_LEVEL_LOW)>, 134*dd8c7b78SManivannan Sadhasivam <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | 135*dd8c7b78SManivannan Sadhasivam IRQ_TYPE_LEVEL_LOW)>, 136*dd8c7b78SManivannan Sadhasivam <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | 137*dd8c7b78SManivannan Sadhasivam IRQ_TYPE_LEVEL_LOW)>; 138*dd8c7b78SManivannan Sadhasivam clock-frequency = <1920000>; 139*dd8c7b78SManivannan Sadhasivam }; 140*dd8c7b78SManivannan Sadhasivam 141*dd8c7b78SManivannan Sadhasivam soc { 142*dd8c7b78SManivannan Sadhasivam compatible = "simple-bus"; 143*dd8c7b78SManivannan Sadhasivam #address-cells = <2>; 144*dd8c7b78SManivannan Sadhasivam #size-cells = <2>; 145*dd8c7b78SManivannan Sadhasivam ranges; 146*dd8c7b78SManivannan Sadhasivam 147*dd8c7b78SManivannan Sadhasivam uart6_clk: clk_19_2M { 148*dd8c7b78SManivannan Sadhasivam compatible = "fixed-clock"; 149*dd8c7b78SManivannan Sadhasivam #clock-cells = <0>; 150*dd8c7b78SManivannan Sadhasivam clock-frequency = <19200000>; 151*dd8c7b78SManivannan Sadhasivam }; 152*dd8c7b78SManivannan Sadhasivam 153*dd8c7b78SManivannan Sadhasivam uart6: serial@fff32000 { 154*dd8c7b78SManivannan Sadhasivam compatible = "arm,pl011", "arm,primecell"; 155*dd8c7b78SManivannan Sadhasivam reg = <0x0 0xfff32000 0x0 0x1000>; 156*dd8c7b78SManivannan Sadhasivam interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 157*dd8c7b78SManivannan Sadhasivam clocks = <&uart6_clk &uart6_clk>; 158*dd8c7b78SManivannan Sadhasivam clock-names = "uartclk", "apb_pclk"; 159*dd8c7b78SManivannan Sadhasivam status = "disabled"; 160*dd8c7b78SManivannan Sadhasivam }; 161*dd8c7b78SManivannan Sadhasivam }; 162*dd8c7b78SManivannan Sadhasivam}; 163