162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * dts file for Hisilicon Hi3660 SoC 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright (C) 2016, HiSilicon Ltd. 662306a36Sopenharmony_ci */ 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h> 962306a36Sopenharmony_ci#include <dt-bindings/clock/hi3660-clock.h> 1062306a36Sopenharmony_ci#include <dt-bindings/thermal/thermal.h> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci/ { 1362306a36Sopenharmony_ci compatible = "hisilicon,hi3660"; 1462306a36Sopenharmony_ci interrupt-parent = <&gic>; 1562306a36Sopenharmony_ci #address-cells = <2>; 1662306a36Sopenharmony_ci #size-cells = <2>; 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ci psci { 1962306a36Sopenharmony_ci compatible = "arm,psci-0.2"; 2062306a36Sopenharmony_ci method = "smc"; 2162306a36Sopenharmony_ci }; 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci cpus { 2462306a36Sopenharmony_ci #address-cells = <2>; 2562306a36Sopenharmony_ci #size-cells = <0>; 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci cpu-map { 2862306a36Sopenharmony_ci cluster0 { 2962306a36Sopenharmony_ci core0 { 3062306a36Sopenharmony_ci cpu = <&cpu0>; 3162306a36Sopenharmony_ci }; 3262306a36Sopenharmony_ci core1 { 3362306a36Sopenharmony_ci cpu = <&cpu1>; 3462306a36Sopenharmony_ci }; 3562306a36Sopenharmony_ci core2 { 3662306a36Sopenharmony_ci cpu = <&cpu2>; 3762306a36Sopenharmony_ci }; 3862306a36Sopenharmony_ci core3 { 3962306a36Sopenharmony_ci cpu = <&cpu3>; 4062306a36Sopenharmony_ci }; 4162306a36Sopenharmony_ci }; 4262306a36Sopenharmony_ci cluster1 { 4362306a36Sopenharmony_ci core0 { 4462306a36Sopenharmony_ci cpu = <&cpu4>; 4562306a36Sopenharmony_ci }; 4662306a36Sopenharmony_ci core1 { 4762306a36Sopenharmony_ci cpu = <&cpu5>; 4862306a36Sopenharmony_ci }; 4962306a36Sopenharmony_ci core2 { 5062306a36Sopenharmony_ci cpu = <&cpu6>; 5162306a36Sopenharmony_ci }; 5262306a36Sopenharmony_ci core3 { 5362306a36Sopenharmony_ci cpu = <&cpu7>; 5462306a36Sopenharmony_ci }; 5562306a36Sopenharmony_ci }; 5662306a36Sopenharmony_ci }; 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci cpu0: cpu@0 { 5962306a36Sopenharmony_ci compatible = "arm,cortex-a53"; 6062306a36Sopenharmony_ci device_type = "cpu"; 6162306a36Sopenharmony_ci reg = <0x0 0x0>; 6262306a36Sopenharmony_ci enable-method = "psci"; 6362306a36Sopenharmony_ci next-level-cache = <&A53_L2>; 6462306a36Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 6562306a36Sopenharmony_ci capacity-dmips-mhz = <592>; 6662306a36Sopenharmony_ci clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; 6762306a36Sopenharmony_ci operating-points-v2 = <&cluster0_opp>; 6862306a36Sopenharmony_ci #cooling-cells = <2>; 6962306a36Sopenharmony_ci dynamic-power-coefficient = <110>; 7062306a36Sopenharmony_ci }; 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci cpu1: cpu@1 { 7362306a36Sopenharmony_ci compatible = "arm,cortex-a53"; 7462306a36Sopenharmony_ci device_type = "cpu"; 7562306a36Sopenharmony_ci reg = <0x0 0x1>; 7662306a36Sopenharmony_ci enable-method = "psci"; 7762306a36Sopenharmony_ci next-level-cache = <&A53_L2>; 7862306a36Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 7962306a36Sopenharmony_ci capacity-dmips-mhz = <592>; 8062306a36Sopenharmony_ci clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; 8162306a36Sopenharmony_ci operating-points-v2 = <&cluster0_opp>; 8262306a36Sopenharmony_ci #cooling-cells = <2>; 8362306a36Sopenharmony_ci }; 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci cpu2: cpu@2 { 8662306a36Sopenharmony_ci compatible = "arm,cortex-a53"; 8762306a36Sopenharmony_ci device_type = "cpu"; 8862306a36Sopenharmony_ci reg = <0x0 0x2>; 8962306a36Sopenharmony_ci enable-method = "psci"; 9062306a36Sopenharmony_ci next-level-cache = <&A53_L2>; 9162306a36Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 9262306a36Sopenharmony_ci capacity-dmips-mhz = <592>; 9362306a36Sopenharmony_ci clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; 9462306a36Sopenharmony_ci operating-points-v2 = <&cluster0_opp>; 9562306a36Sopenharmony_ci #cooling-cells = <2>; 9662306a36Sopenharmony_ci }; 9762306a36Sopenharmony_ci 9862306a36Sopenharmony_ci cpu3: cpu@3 { 9962306a36Sopenharmony_ci compatible = "arm,cortex-a53"; 10062306a36Sopenharmony_ci device_type = "cpu"; 10162306a36Sopenharmony_ci reg = <0x0 0x3>; 10262306a36Sopenharmony_ci enable-method = "psci"; 10362306a36Sopenharmony_ci next-level-cache = <&A53_L2>; 10462306a36Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 10562306a36Sopenharmony_ci capacity-dmips-mhz = <592>; 10662306a36Sopenharmony_ci clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; 10762306a36Sopenharmony_ci operating-points-v2 = <&cluster0_opp>; 10862306a36Sopenharmony_ci #cooling-cells = <2>; 10962306a36Sopenharmony_ci }; 11062306a36Sopenharmony_ci 11162306a36Sopenharmony_ci cpu4: cpu@100 { 11262306a36Sopenharmony_ci compatible = "arm,cortex-a73"; 11362306a36Sopenharmony_ci device_type = "cpu"; 11462306a36Sopenharmony_ci reg = <0x0 0x100>; 11562306a36Sopenharmony_ci enable-method = "psci"; 11662306a36Sopenharmony_ci next-level-cache = <&A73_L2>; 11762306a36Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; 11862306a36Sopenharmony_ci capacity-dmips-mhz = <1024>; 11962306a36Sopenharmony_ci clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; 12062306a36Sopenharmony_ci operating-points-v2 = <&cluster1_opp>; 12162306a36Sopenharmony_ci #cooling-cells = <2>; 12262306a36Sopenharmony_ci dynamic-power-coefficient = <550>; 12362306a36Sopenharmony_ci }; 12462306a36Sopenharmony_ci 12562306a36Sopenharmony_ci cpu5: cpu@101 { 12662306a36Sopenharmony_ci compatible = "arm,cortex-a73"; 12762306a36Sopenharmony_ci device_type = "cpu"; 12862306a36Sopenharmony_ci reg = <0x0 0x101>; 12962306a36Sopenharmony_ci enable-method = "psci"; 13062306a36Sopenharmony_ci next-level-cache = <&A73_L2>; 13162306a36Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; 13262306a36Sopenharmony_ci capacity-dmips-mhz = <1024>; 13362306a36Sopenharmony_ci clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; 13462306a36Sopenharmony_ci operating-points-v2 = <&cluster1_opp>; 13562306a36Sopenharmony_ci #cooling-cells = <2>; 13662306a36Sopenharmony_ci }; 13762306a36Sopenharmony_ci 13862306a36Sopenharmony_ci cpu6: cpu@102 { 13962306a36Sopenharmony_ci compatible = "arm,cortex-a73"; 14062306a36Sopenharmony_ci device_type = "cpu"; 14162306a36Sopenharmony_ci reg = <0x0 0x102>; 14262306a36Sopenharmony_ci enable-method = "psci"; 14362306a36Sopenharmony_ci next-level-cache = <&A73_L2>; 14462306a36Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; 14562306a36Sopenharmony_ci capacity-dmips-mhz = <1024>; 14662306a36Sopenharmony_ci clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; 14762306a36Sopenharmony_ci operating-points-v2 = <&cluster1_opp>; 14862306a36Sopenharmony_ci #cooling-cells = <2>; 14962306a36Sopenharmony_ci }; 15062306a36Sopenharmony_ci 15162306a36Sopenharmony_ci cpu7: cpu@103 { 15262306a36Sopenharmony_ci compatible = "arm,cortex-a73"; 15362306a36Sopenharmony_ci device_type = "cpu"; 15462306a36Sopenharmony_ci reg = <0x0 0x103>; 15562306a36Sopenharmony_ci enable-method = "psci"; 15662306a36Sopenharmony_ci next-level-cache = <&A73_L2>; 15762306a36Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; 15862306a36Sopenharmony_ci capacity-dmips-mhz = <1024>; 15962306a36Sopenharmony_ci clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; 16062306a36Sopenharmony_ci operating-points-v2 = <&cluster1_opp>; 16162306a36Sopenharmony_ci #cooling-cells = <2>; 16262306a36Sopenharmony_ci }; 16362306a36Sopenharmony_ci 16462306a36Sopenharmony_ci idle-states { 16562306a36Sopenharmony_ci entry-method = "psci"; 16662306a36Sopenharmony_ci 16762306a36Sopenharmony_ci CPU_SLEEP_0: cpu-sleep-0 { 16862306a36Sopenharmony_ci compatible = "arm,idle-state"; 16962306a36Sopenharmony_ci local-timer-stop; 17062306a36Sopenharmony_ci arm,psci-suspend-param = <0x0010000>; 17162306a36Sopenharmony_ci entry-latency-us = <400>; 17262306a36Sopenharmony_ci exit-latency-us = <650>; 17362306a36Sopenharmony_ci min-residency-us = <1500>; 17462306a36Sopenharmony_ci }; 17562306a36Sopenharmony_ci CLUSTER_SLEEP_0: cluster-sleep-0 { 17662306a36Sopenharmony_ci compatible = "arm,idle-state"; 17762306a36Sopenharmony_ci local-timer-stop; 17862306a36Sopenharmony_ci arm,psci-suspend-param = <0x1010000>; 17962306a36Sopenharmony_ci entry-latency-us = <500>; 18062306a36Sopenharmony_ci exit-latency-us = <1600>; 18162306a36Sopenharmony_ci min-residency-us = <3500>; 18262306a36Sopenharmony_ci }; 18362306a36Sopenharmony_ci 18462306a36Sopenharmony_ci 18562306a36Sopenharmony_ci CPU_SLEEP_1: cpu-sleep-1 { 18662306a36Sopenharmony_ci compatible = "arm,idle-state"; 18762306a36Sopenharmony_ci local-timer-stop; 18862306a36Sopenharmony_ci arm,psci-suspend-param = <0x0010000>; 18962306a36Sopenharmony_ci entry-latency-us = <400>; 19062306a36Sopenharmony_ci exit-latency-us = <550>; 19162306a36Sopenharmony_ci min-residency-us = <1500>; 19262306a36Sopenharmony_ci }; 19362306a36Sopenharmony_ci 19462306a36Sopenharmony_ci CLUSTER_SLEEP_1: cluster-sleep-1 { 19562306a36Sopenharmony_ci compatible = "arm,idle-state"; 19662306a36Sopenharmony_ci local-timer-stop; 19762306a36Sopenharmony_ci arm,psci-suspend-param = <0x1010000>; 19862306a36Sopenharmony_ci entry-latency-us = <800>; 19962306a36Sopenharmony_ci exit-latency-us = <2900>; 20062306a36Sopenharmony_ci min-residency-us = <3500>; 20162306a36Sopenharmony_ci }; 20262306a36Sopenharmony_ci }; 20362306a36Sopenharmony_ci 20462306a36Sopenharmony_ci A53_L2: l2-cache0 { 20562306a36Sopenharmony_ci compatible = "cache"; 20662306a36Sopenharmony_ci cache-level = <2>; 20762306a36Sopenharmony_ci cache-unified; 20862306a36Sopenharmony_ci }; 20962306a36Sopenharmony_ci 21062306a36Sopenharmony_ci A73_L2: l2-cache1 { 21162306a36Sopenharmony_ci compatible = "cache"; 21262306a36Sopenharmony_ci cache-level = <2>; 21362306a36Sopenharmony_ci cache-unified; 21462306a36Sopenharmony_ci }; 21562306a36Sopenharmony_ci }; 21662306a36Sopenharmony_ci 21762306a36Sopenharmony_ci cluster0_opp: opp-table-0 { 21862306a36Sopenharmony_ci compatible = "operating-points-v2"; 21962306a36Sopenharmony_ci opp-shared; 22062306a36Sopenharmony_ci 22162306a36Sopenharmony_ci opp00 { 22262306a36Sopenharmony_ci opp-hz = /bits/ 64 <533000000>; 22362306a36Sopenharmony_ci opp-microvolt = <700000>; 22462306a36Sopenharmony_ci clock-latency-ns = <300000>; 22562306a36Sopenharmony_ci }; 22662306a36Sopenharmony_ci 22762306a36Sopenharmony_ci opp01 { 22862306a36Sopenharmony_ci opp-hz = /bits/ 64 <999000000>; 22962306a36Sopenharmony_ci opp-microvolt = <800000>; 23062306a36Sopenharmony_ci clock-latency-ns = <300000>; 23162306a36Sopenharmony_ci }; 23262306a36Sopenharmony_ci 23362306a36Sopenharmony_ci opp02 { 23462306a36Sopenharmony_ci opp-hz = /bits/ 64 <1402000000>; 23562306a36Sopenharmony_ci opp-microvolt = <900000>; 23662306a36Sopenharmony_ci clock-latency-ns = <300000>; 23762306a36Sopenharmony_ci }; 23862306a36Sopenharmony_ci 23962306a36Sopenharmony_ci opp03 { 24062306a36Sopenharmony_ci opp-hz = /bits/ 64 <1709000000>; 24162306a36Sopenharmony_ci opp-microvolt = <1000000>; 24262306a36Sopenharmony_ci clock-latency-ns = <300000>; 24362306a36Sopenharmony_ci }; 24462306a36Sopenharmony_ci 24562306a36Sopenharmony_ci opp04 { 24662306a36Sopenharmony_ci opp-hz = /bits/ 64 <1844000000>; 24762306a36Sopenharmony_ci opp-microvolt = <1100000>; 24862306a36Sopenharmony_ci clock-latency-ns = <300000>; 24962306a36Sopenharmony_ci }; 25062306a36Sopenharmony_ci }; 25162306a36Sopenharmony_ci 25262306a36Sopenharmony_ci cluster1_opp: opp-table-1 { 25362306a36Sopenharmony_ci compatible = "operating-points-v2"; 25462306a36Sopenharmony_ci opp-shared; 25562306a36Sopenharmony_ci 25662306a36Sopenharmony_ci opp10 { 25762306a36Sopenharmony_ci opp-hz = /bits/ 64 <903000000>; 25862306a36Sopenharmony_ci opp-microvolt = <700000>; 25962306a36Sopenharmony_ci clock-latency-ns = <300000>; 26062306a36Sopenharmony_ci }; 26162306a36Sopenharmony_ci 26262306a36Sopenharmony_ci opp11 { 26362306a36Sopenharmony_ci opp-hz = /bits/ 64 <1421000000>; 26462306a36Sopenharmony_ci opp-microvolt = <800000>; 26562306a36Sopenharmony_ci clock-latency-ns = <300000>; 26662306a36Sopenharmony_ci }; 26762306a36Sopenharmony_ci 26862306a36Sopenharmony_ci opp12 { 26962306a36Sopenharmony_ci opp-hz = /bits/ 64 <1805000000>; 27062306a36Sopenharmony_ci opp-microvolt = <900000>; 27162306a36Sopenharmony_ci clock-latency-ns = <300000>; 27262306a36Sopenharmony_ci }; 27362306a36Sopenharmony_ci 27462306a36Sopenharmony_ci opp13 { 27562306a36Sopenharmony_ci opp-hz = /bits/ 64 <2112000000>; 27662306a36Sopenharmony_ci opp-microvolt = <1000000>; 27762306a36Sopenharmony_ci clock-latency-ns = <300000>; 27862306a36Sopenharmony_ci }; 27962306a36Sopenharmony_ci 28062306a36Sopenharmony_ci opp14 { 28162306a36Sopenharmony_ci opp-hz = /bits/ 64 <2362000000>; 28262306a36Sopenharmony_ci opp-microvolt = <1100000>; 28362306a36Sopenharmony_ci clock-latency-ns = <300000>; 28462306a36Sopenharmony_ci }; 28562306a36Sopenharmony_ci }; 28662306a36Sopenharmony_ci 28762306a36Sopenharmony_ci gic: interrupt-controller@e82b0000 { 28862306a36Sopenharmony_ci compatible = "arm,gic-400"; 28962306a36Sopenharmony_ci reg = <0x0 0xe82b1000 0 0x1000>, /* GICD */ 29062306a36Sopenharmony_ci <0x0 0xe82b2000 0 0x2000>, /* GICC */ 29162306a36Sopenharmony_ci <0x0 0xe82b4000 0 0x2000>, /* GICH */ 29262306a36Sopenharmony_ci <0x0 0xe82b6000 0 0x2000>; /* GICV */ 29362306a36Sopenharmony_ci #address-cells = <0>; 29462306a36Sopenharmony_ci #interrupt-cells = <3>; 29562306a36Sopenharmony_ci interrupt-controller; 29662306a36Sopenharmony_ci interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(8) | 29762306a36Sopenharmony_ci IRQ_TYPE_LEVEL_HIGH)>; 29862306a36Sopenharmony_ci }; 29962306a36Sopenharmony_ci 30062306a36Sopenharmony_ci a53-pmu { 30162306a36Sopenharmony_ci compatible = "arm,cortex-a53-pmu"; 30262306a36Sopenharmony_ci interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>, 30362306a36Sopenharmony_ci <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>, 30462306a36Sopenharmony_ci <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>, 30562306a36Sopenharmony_ci <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 30662306a36Sopenharmony_ci interrupt-affinity = <&cpu0>, 30762306a36Sopenharmony_ci <&cpu1>, 30862306a36Sopenharmony_ci <&cpu2>, 30962306a36Sopenharmony_ci <&cpu3>; 31062306a36Sopenharmony_ci }; 31162306a36Sopenharmony_ci 31262306a36Sopenharmony_ci a73-pmu { 31362306a36Sopenharmony_ci compatible = "arm,cortex-a73-pmu"; 31462306a36Sopenharmony_ci interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>, 31562306a36Sopenharmony_ci <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 31662306a36Sopenharmony_ci <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 31762306a36Sopenharmony_ci <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 31862306a36Sopenharmony_ci interrupt-affinity = <&cpu4>, 31962306a36Sopenharmony_ci <&cpu5>, 32062306a36Sopenharmony_ci <&cpu6>, 32162306a36Sopenharmony_ci <&cpu7>; 32262306a36Sopenharmony_ci }; 32362306a36Sopenharmony_ci 32462306a36Sopenharmony_ci timer { 32562306a36Sopenharmony_ci compatible = "arm,armv8-timer"; 32662306a36Sopenharmony_ci interrupt-parent = <&gic>; 32762306a36Sopenharmony_ci interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | 32862306a36Sopenharmony_ci IRQ_TYPE_LEVEL_LOW)>, 32962306a36Sopenharmony_ci <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | 33062306a36Sopenharmony_ci IRQ_TYPE_LEVEL_LOW)>, 33162306a36Sopenharmony_ci <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | 33262306a36Sopenharmony_ci IRQ_TYPE_LEVEL_LOW)>, 33362306a36Sopenharmony_ci <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | 33462306a36Sopenharmony_ci IRQ_TYPE_LEVEL_LOW)>; 33562306a36Sopenharmony_ci }; 33662306a36Sopenharmony_ci 33762306a36Sopenharmony_ci soc { 33862306a36Sopenharmony_ci compatible = "simple-bus"; 33962306a36Sopenharmony_ci #address-cells = <2>; 34062306a36Sopenharmony_ci #size-cells = <2>; 34162306a36Sopenharmony_ci ranges; 34262306a36Sopenharmony_ci 34362306a36Sopenharmony_ci crg_ctrl: crg_ctrl@fff35000 { 34462306a36Sopenharmony_ci compatible = "hisilicon,hi3660-crgctrl", "syscon"; 34562306a36Sopenharmony_ci reg = <0x0 0xfff35000 0x0 0x1000>; 34662306a36Sopenharmony_ci #clock-cells = <1>; 34762306a36Sopenharmony_ci }; 34862306a36Sopenharmony_ci 34962306a36Sopenharmony_ci crg_rst: crg_rst_controller { 35062306a36Sopenharmony_ci compatible = "hisilicon,hi3660-reset"; 35162306a36Sopenharmony_ci #reset-cells = <2>; 35262306a36Sopenharmony_ci hisi,rst-syscon = <&crg_ctrl>; 35362306a36Sopenharmony_ci }; 35462306a36Sopenharmony_ci 35562306a36Sopenharmony_ci 35662306a36Sopenharmony_ci pctrl: pctrl@e8a09000 { 35762306a36Sopenharmony_ci compatible = "hisilicon,hi3660-pctrl", "syscon"; 35862306a36Sopenharmony_ci reg = <0x0 0xe8a09000 0x0 0x2000>; 35962306a36Sopenharmony_ci #clock-cells = <1>; 36062306a36Sopenharmony_ci }; 36162306a36Sopenharmony_ci 36262306a36Sopenharmony_ci pmuctrl: crg_ctrl@fff34000 { 36362306a36Sopenharmony_ci compatible = "hisilicon,hi3660-pmuctrl", "syscon"; 36462306a36Sopenharmony_ci reg = <0x0 0xfff34000 0x0 0x1000>; 36562306a36Sopenharmony_ci #clock-cells = <1>; 36662306a36Sopenharmony_ci }; 36762306a36Sopenharmony_ci 36862306a36Sopenharmony_ci sctrl: sctrl@fff0a000 { 36962306a36Sopenharmony_ci compatible = "hisilicon,hi3660-sctrl", "syscon"; 37062306a36Sopenharmony_ci reg = <0x0 0xfff0a000 0x0 0x1000>; 37162306a36Sopenharmony_ci #clock-cells = <1>; 37262306a36Sopenharmony_ci }; 37362306a36Sopenharmony_ci 37462306a36Sopenharmony_ci iomcu: iomcu@ffd7e000 { 37562306a36Sopenharmony_ci compatible = "hisilicon,hi3660-iomcu", "syscon"; 37662306a36Sopenharmony_ci reg = <0x0 0xffd7e000 0x0 0x1000>; 37762306a36Sopenharmony_ci #clock-cells = <1>; 37862306a36Sopenharmony_ci 37962306a36Sopenharmony_ci }; 38062306a36Sopenharmony_ci 38162306a36Sopenharmony_ci iomcu_rst: reset { 38262306a36Sopenharmony_ci compatible = "hisilicon,hi3660-reset"; 38362306a36Sopenharmony_ci hisi,rst-syscon = <&iomcu>; 38462306a36Sopenharmony_ci #reset-cells = <2>; 38562306a36Sopenharmony_ci }; 38662306a36Sopenharmony_ci 38762306a36Sopenharmony_ci mailbox: mailbox@e896b000 { 38862306a36Sopenharmony_ci compatible = "hisilicon,hi3660-mbox"; 38962306a36Sopenharmony_ci reg = <0x0 0xe896b000 0x0 0x1000>; 39062306a36Sopenharmony_ci interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, 39162306a36Sopenharmony_ci <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>; 39262306a36Sopenharmony_ci #mbox-cells = <3>; 39362306a36Sopenharmony_ci }; 39462306a36Sopenharmony_ci 39562306a36Sopenharmony_ci stub_clock: stub_clock@e896b500 { 39662306a36Sopenharmony_ci compatible = "hisilicon,hi3660-stub-clk"; 39762306a36Sopenharmony_ci reg = <0x0 0xe896b500 0x0 0x0100>; 39862306a36Sopenharmony_ci #clock-cells = <1>; 39962306a36Sopenharmony_ci mboxes = <&mailbox 13 3 0>; 40062306a36Sopenharmony_ci }; 40162306a36Sopenharmony_ci 40262306a36Sopenharmony_ci dual_timer0: timer@fff14000 { 40362306a36Sopenharmony_ci compatible = "arm,sp804", "arm,primecell"; 40462306a36Sopenharmony_ci reg = <0x0 0xfff14000 0x0 0x1000>; 40562306a36Sopenharmony_ci interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>, 40662306a36Sopenharmony_ci <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 40762306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_OSC32K>, 40862306a36Sopenharmony_ci <&crg_ctrl HI3660_OSC32K>, 40962306a36Sopenharmony_ci <&crg_ctrl HI3660_OSC32K>; 41062306a36Sopenharmony_ci clock-names = "timer1", "timer2", "apb_pclk"; 41162306a36Sopenharmony_ci }; 41262306a36Sopenharmony_ci 41362306a36Sopenharmony_ci i2c0: i2c@ffd71000 { 41462306a36Sopenharmony_ci compatible = "snps,designware-i2c"; 41562306a36Sopenharmony_ci reg = <0x0 0xffd71000 0x0 0x1000>; 41662306a36Sopenharmony_ci interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>; 41762306a36Sopenharmony_ci #address-cells = <1>; 41862306a36Sopenharmony_ci #size-cells = <0>; 41962306a36Sopenharmony_ci clock-frequency = <400000>; 42062306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_I2C0>; 42162306a36Sopenharmony_ci resets = <&iomcu_rst 0x20 3>; 42262306a36Sopenharmony_ci pinctrl-names = "default"; 42362306a36Sopenharmony_ci pinctrl-0 = <&i2c0_pmx_func &i2c0_cfg_func>; 42462306a36Sopenharmony_ci status = "disabled"; 42562306a36Sopenharmony_ci }; 42662306a36Sopenharmony_ci 42762306a36Sopenharmony_ci i2c1: i2c@ffd72000 { 42862306a36Sopenharmony_ci compatible = "snps,designware-i2c"; 42962306a36Sopenharmony_ci reg = <0x0 0xffd72000 0x0 0x1000>; 43062306a36Sopenharmony_ci interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; 43162306a36Sopenharmony_ci #address-cells = <1>; 43262306a36Sopenharmony_ci #size-cells = <0>; 43362306a36Sopenharmony_ci clock-frequency = <400000>; 43462306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_I2C1>; 43562306a36Sopenharmony_ci resets = <&iomcu_rst 0x20 4>; 43662306a36Sopenharmony_ci pinctrl-names = "default"; 43762306a36Sopenharmony_ci pinctrl-0 = <&i2c1_pmx_func &i2c1_cfg_func>; 43862306a36Sopenharmony_ci status = "disabled"; 43962306a36Sopenharmony_ci }; 44062306a36Sopenharmony_ci 44162306a36Sopenharmony_ci i2c3: i2c@fdf0c000 { 44262306a36Sopenharmony_ci compatible = "snps,designware-i2c"; 44362306a36Sopenharmony_ci reg = <0x0 0xfdf0c000 0x0 0x1000>; 44462306a36Sopenharmony_ci interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 44562306a36Sopenharmony_ci #address-cells = <1>; 44662306a36Sopenharmony_ci #size-cells = <0>; 44762306a36Sopenharmony_ci clock-frequency = <400000>; 44862306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_I2C3>; 44962306a36Sopenharmony_ci resets = <&crg_rst 0x78 7>; 45062306a36Sopenharmony_ci pinctrl-names = "default"; 45162306a36Sopenharmony_ci pinctrl-0 = <&i2c3_pmx_func &i2c3_cfg_func>; 45262306a36Sopenharmony_ci status = "disabled"; 45362306a36Sopenharmony_ci }; 45462306a36Sopenharmony_ci 45562306a36Sopenharmony_ci i2c7: i2c@fdf0b000 { 45662306a36Sopenharmony_ci compatible = "snps,designware-i2c"; 45762306a36Sopenharmony_ci reg = <0x0 0xfdf0b000 0x0 0x1000>; 45862306a36Sopenharmony_ci interrupts = <GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH>; 45962306a36Sopenharmony_ci #address-cells = <1>; 46062306a36Sopenharmony_ci #size-cells = <0>; 46162306a36Sopenharmony_ci clock-frequency = <400000>; 46262306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_I2C7>; 46362306a36Sopenharmony_ci resets = <&crg_rst 0x60 14>; 46462306a36Sopenharmony_ci pinctrl-names = "default"; 46562306a36Sopenharmony_ci pinctrl-0 = <&i2c7_pmx_func &i2c7_cfg_func>; 46662306a36Sopenharmony_ci status = "disabled"; 46762306a36Sopenharmony_ci }; 46862306a36Sopenharmony_ci 46962306a36Sopenharmony_ci uart0: serial@fdf02000 { 47062306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 47162306a36Sopenharmony_ci reg = <0x0 0xfdf02000 0x0 0x1000>; 47262306a36Sopenharmony_ci interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 47362306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_MUX_UART0>, 47462306a36Sopenharmony_ci <&crg_ctrl HI3660_PCLK>; 47562306a36Sopenharmony_ci clock-names = "uartclk", "apb_pclk"; 47662306a36Sopenharmony_ci pinctrl-names = "default"; 47762306a36Sopenharmony_ci pinctrl-0 = <&uart0_pmx_func &uart0_cfg_func>; 47862306a36Sopenharmony_ci status = "disabled"; 47962306a36Sopenharmony_ci }; 48062306a36Sopenharmony_ci 48162306a36Sopenharmony_ci uart1: serial@fdf00000 { 48262306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 48362306a36Sopenharmony_ci reg = <0x0 0xfdf00000 0x0 0x1000>; 48462306a36Sopenharmony_ci interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 48562306a36Sopenharmony_ci dma-names = "rx", "tx"; 48662306a36Sopenharmony_ci dmas = <&dma0 2 &dma0 3>; 48762306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_UART1>, 48862306a36Sopenharmony_ci <&crg_ctrl HI3660_CLK_GATE_UART1>; 48962306a36Sopenharmony_ci clock-names = "uartclk", "apb_pclk"; 49062306a36Sopenharmony_ci pinctrl-names = "default"; 49162306a36Sopenharmony_ci pinctrl-0 = <&uart1_pmx_func &uart1_cfg_func>; 49262306a36Sopenharmony_ci status = "disabled"; 49362306a36Sopenharmony_ci }; 49462306a36Sopenharmony_ci 49562306a36Sopenharmony_ci uart2: serial@fdf03000 { 49662306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 49762306a36Sopenharmony_ci reg = <0x0 0xfdf03000 0x0 0x1000>; 49862306a36Sopenharmony_ci interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 49962306a36Sopenharmony_ci dma-names = "rx", "tx"; 50062306a36Sopenharmony_ci dmas = <&dma0 4 &dma0 5>; 50162306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_UART2>, 50262306a36Sopenharmony_ci <&crg_ctrl HI3660_PCLK>; 50362306a36Sopenharmony_ci clock-names = "uartclk", "apb_pclk"; 50462306a36Sopenharmony_ci pinctrl-names = "default"; 50562306a36Sopenharmony_ci pinctrl-0 = <&uart2_pmx_func &uart2_cfg_func>; 50662306a36Sopenharmony_ci status = "disabled"; 50762306a36Sopenharmony_ci }; 50862306a36Sopenharmony_ci 50962306a36Sopenharmony_ci uart3: serial@ffd74000 { 51062306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 51162306a36Sopenharmony_ci reg = <0x0 0xffd74000 0x0 0x1000>; 51262306a36Sopenharmony_ci interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 51362306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_FACTOR_UART3>, 51462306a36Sopenharmony_ci <&crg_ctrl HI3660_PCLK>; 51562306a36Sopenharmony_ci clock-names = "uartclk", "apb_pclk"; 51662306a36Sopenharmony_ci pinctrl-names = "default"; 51762306a36Sopenharmony_ci pinctrl-0 = <&uart3_pmx_func &uart3_cfg_func>; 51862306a36Sopenharmony_ci status = "disabled"; 51962306a36Sopenharmony_ci }; 52062306a36Sopenharmony_ci 52162306a36Sopenharmony_ci uart4: serial@fdf01000 { 52262306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 52362306a36Sopenharmony_ci reg = <0x0 0xfdf01000 0x0 0x1000>; 52462306a36Sopenharmony_ci interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 52562306a36Sopenharmony_ci dma-names = "rx", "tx"; 52662306a36Sopenharmony_ci dmas = <&dma0 6 &dma0 7>; 52762306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_UART4>, 52862306a36Sopenharmony_ci <&crg_ctrl HI3660_CLK_GATE_UART4>; 52962306a36Sopenharmony_ci clock-names = "uartclk", "apb_pclk"; 53062306a36Sopenharmony_ci pinctrl-names = "default"; 53162306a36Sopenharmony_ci pinctrl-0 = <&uart4_pmx_func &uart4_cfg_func>; 53262306a36Sopenharmony_ci status = "disabled"; 53362306a36Sopenharmony_ci }; 53462306a36Sopenharmony_ci 53562306a36Sopenharmony_ci uart5: serial@fdf05000 { 53662306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 53762306a36Sopenharmony_ci reg = <0x0 0xfdf05000 0x0 0x1000>; 53862306a36Sopenharmony_ci interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 53962306a36Sopenharmony_ci dma-names = "rx", "tx"; 54062306a36Sopenharmony_ci dmas = <&dma0 8 &dma0 9>; 54162306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_UART5>, 54262306a36Sopenharmony_ci <&crg_ctrl HI3660_CLK_GATE_UART5>; 54362306a36Sopenharmony_ci clock-names = "uartclk", "apb_pclk"; 54462306a36Sopenharmony_ci pinctrl-names = "default"; 54562306a36Sopenharmony_ci pinctrl-0 = <&uart5_pmx_func &uart5_cfg_func>; 54662306a36Sopenharmony_ci status = "disabled"; 54762306a36Sopenharmony_ci }; 54862306a36Sopenharmony_ci 54962306a36Sopenharmony_ci uart6: serial@fff32000 { 55062306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 55162306a36Sopenharmony_ci reg = <0x0 0xfff32000 0x0 0x1000>; 55262306a36Sopenharmony_ci interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 55362306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_UART6>, 55462306a36Sopenharmony_ci <&crg_ctrl HI3660_PCLK>; 55562306a36Sopenharmony_ci clock-names = "uartclk", "apb_pclk"; 55662306a36Sopenharmony_ci pinctrl-names = "default"; 55762306a36Sopenharmony_ci pinctrl-0 = <&uart6_pmx_func &uart6_cfg_func>; 55862306a36Sopenharmony_ci status = "disabled"; 55962306a36Sopenharmony_ci }; 56062306a36Sopenharmony_ci 56162306a36Sopenharmony_ci dma0: dma@fdf30000 { 56262306a36Sopenharmony_ci compatible = "hisilicon,k3-dma-1.0"; 56362306a36Sopenharmony_ci reg = <0x0 0xfdf30000 0x0 0x1000>; 56462306a36Sopenharmony_ci #dma-cells = <1>; 56562306a36Sopenharmony_ci dma-channels = <16>; 56662306a36Sopenharmony_ci dma-requests = <32>; 56762306a36Sopenharmony_ci dma-channel-mask = <0xfffe>; 56862306a36Sopenharmony_ci interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 56962306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_DMAC>; 57062306a36Sopenharmony_ci dma-no-cci; 57162306a36Sopenharmony_ci dma-type = "hi3660_dma"; 57262306a36Sopenharmony_ci }; 57362306a36Sopenharmony_ci 57462306a36Sopenharmony_ci asp_dmac: dma-controller@e804b000 { 57562306a36Sopenharmony_ci compatible = "hisilicon,hisi-pcm-asp-dma-1.0"; 57662306a36Sopenharmony_ci reg = <0x0 0xe804b000 0x0 0x1000>; 57762306a36Sopenharmony_ci #dma-cells = <1>; 57862306a36Sopenharmony_ci dma-channels = <16>; 57962306a36Sopenharmony_ci dma-requests = <32>; 58062306a36Sopenharmony_ci interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>; 58162306a36Sopenharmony_ci interrupt-names = "asp_dma_irq"; 58262306a36Sopenharmony_ci }; 58362306a36Sopenharmony_ci 58462306a36Sopenharmony_ci rtc0: rtc@fff04000 { 58562306a36Sopenharmony_ci compatible = "arm,pl031", "arm,primecell"; 58662306a36Sopenharmony_ci reg = <0x0 0Xfff04000 0x0 0x1000>; 58762306a36Sopenharmony_ci interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>; 58862306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK>; 58962306a36Sopenharmony_ci clock-names = "apb_pclk"; 59062306a36Sopenharmony_ci }; 59162306a36Sopenharmony_ci 59262306a36Sopenharmony_ci gpio0: gpio@e8a0b000 { 59362306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 59462306a36Sopenharmony_ci reg = <0 0xe8a0b000 0 0x1000>; 59562306a36Sopenharmony_ci interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 59662306a36Sopenharmony_ci gpio-controller; 59762306a36Sopenharmony_ci #gpio-cells = <2>; 59862306a36Sopenharmony_ci gpio-ranges = <&pmx0 1 0 7>; 59962306a36Sopenharmony_ci interrupt-controller; 60062306a36Sopenharmony_ci #interrupt-cells = <2>; 60162306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO0>; 60262306a36Sopenharmony_ci clock-names = "apb_pclk"; 60362306a36Sopenharmony_ci }; 60462306a36Sopenharmony_ci 60562306a36Sopenharmony_ci gpio1: gpio@e8a0c000 { 60662306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 60762306a36Sopenharmony_ci reg = <0 0xe8a0c000 0 0x1000>; 60862306a36Sopenharmony_ci interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 60962306a36Sopenharmony_ci gpio-controller; 61062306a36Sopenharmony_ci #gpio-cells = <2>; 61162306a36Sopenharmony_ci gpio-ranges = <&pmx0 1 7 7>; 61262306a36Sopenharmony_ci interrupt-controller; 61362306a36Sopenharmony_ci #interrupt-cells = <2>; 61462306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO1>; 61562306a36Sopenharmony_ci clock-names = "apb_pclk"; 61662306a36Sopenharmony_ci }; 61762306a36Sopenharmony_ci 61862306a36Sopenharmony_ci gpio2: gpio@e8a0d000 { 61962306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 62062306a36Sopenharmony_ci reg = <0 0xe8a0d000 0 0x1000>; 62162306a36Sopenharmony_ci interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 62262306a36Sopenharmony_ci gpio-controller; 62362306a36Sopenharmony_ci #gpio-cells = <2>; 62462306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 14 8>; 62562306a36Sopenharmony_ci interrupt-controller; 62662306a36Sopenharmony_ci #interrupt-cells = <2>; 62762306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO2>; 62862306a36Sopenharmony_ci clock-names = "apb_pclk"; 62962306a36Sopenharmony_ci }; 63062306a36Sopenharmony_ci 63162306a36Sopenharmony_ci gpio3: gpio@e8a0e000 { 63262306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 63362306a36Sopenharmony_ci reg = <0 0xe8a0e000 0 0x1000>; 63462306a36Sopenharmony_ci interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 63562306a36Sopenharmony_ci gpio-controller; 63662306a36Sopenharmony_ci #gpio-cells = <2>; 63762306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 22 8>; 63862306a36Sopenharmony_ci interrupt-controller; 63962306a36Sopenharmony_ci #interrupt-cells = <2>; 64062306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO3>; 64162306a36Sopenharmony_ci clock-names = "apb_pclk"; 64262306a36Sopenharmony_ci }; 64362306a36Sopenharmony_ci 64462306a36Sopenharmony_ci gpio4: gpio@e8a0f000 { 64562306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 64662306a36Sopenharmony_ci reg = <0 0xe8a0f000 0 0x1000>; 64762306a36Sopenharmony_ci interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; 64862306a36Sopenharmony_ci gpio-controller; 64962306a36Sopenharmony_ci #gpio-cells = <2>; 65062306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 30 8>; 65162306a36Sopenharmony_ci interrupt-controller; 65262306a36Sopenharmony_ci #interrupt-cells = <2>; 65362306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO4>; 65462306a36Sopenharmony_ci clock-names = "apb_pclk"; 65562306a36Sopenharmony_ci }; 65662306a36Sopenharmony_ci 65762306a36Sopenharmony_ci gpio5: gpio@e8a10000 { 65862306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 65962306a36Sopenharmony_ci reg = <0 0xe8a10000 0 0x1000>; 66062306a36Sopenharmony_ci interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; 66162306a36Sopenharmony_ci gpio-controller; 66262306a36Sopenharmony_ci #gpio-cells = <2>; 66362306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 38 8>; 66462306a36Sopenharmony_ci interrupt-controller; 66562306a36Sopenharmony_ci #interrupt-cells = <2>; 66662306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO5>; 66762306a36Sopenharmony_ci clock-names = "apb_pclk"; 66862306a36Sopenharmony_ci }; 66962306a36Sopenharmony_ci 67062306a36Sopenharmony_ci gpio6: gpio@e8a11000 { 67162306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 67262306a36Sopenharmony_ci reg = <0 0xe8a11000 0 0x1000>; 67362306a36Sopenharmony_ci interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 67462306a36Sopenharmony_ci gpio-controller; 67562306a36Sopenharmony_ci #gpio-cells = <2>; 67662306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 46 8>; 67762306a36Sopenharmony_ci interrupt-controller; 67862306a36Sopenharmony_ci #interrupt-cells = <2>; 67962306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO6>; 68062306a36Sopenharmony_ci clock-names = "apb_pclk"; 68162306a36Sopenharmony_ci }; 68262306a36Sopenharmony_ci 68362306a36Sopenharmony_ci gpio7: gpio@e8a12000 { 68462306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 68562306a36Sopenharmony_ci reg = <0 0xe8a12000 0 0x1000>; 68662306a36Sopenharmony_ci interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; 68762306a36Sopenharmony_ci gpio-controller; 68862306a36Sopenharmony_ci #gpio-cells = <2>; 68962306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 54 8>; 69062306a36Sopenharmony_ci interrupt-controller; 69162306a36Sopenharmony_ci #interrupt-cells = <2>; 69262306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO7>; 69362306a36Sopenharmony_ci clock-names = "apb_pclk"; 69462306a36Sopenharmony_ci }; 69562306a36Sopenharmony_ci 69662306a36Sopenharmony_ci gpio8: gpio@e8a13000 { 69762306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 69862306a36Sopenharmony_ci reg = <0 0xe8a13000 0 0x1000>; 69962306a36Sopenharmony_ci interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>; 70062306a36Sopenharmony_ci gpio-controller; 70162306a36Sopenharmony_ci #gpio-cells = <2>; 70262306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 62 8>; 70362306a36Sopenharmony_ci interrupt-controller; 70462306a36Sopenharmony_ci #interrupt-cells = <2>; 70562306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO8>; 70662306a36Sopenharmony_ci clock-names = "apb_pclk"; 70762306a36Sopenharmony_ci }; 70862306a36Sopenharmony_ci 70962306a36Sopenharmony_ci gpio9: gpio@e8a14000 { 71062306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 71162306a36Sopenharmony_ci reg = <0 0xe8a14000 0 0x1000>; 71262306a36Sopenharmony_ci interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 71362306a36Sopenharmony_ci gpio-controller; 71462306a36Sopenharmony_ci #gpio-cells = <2>; 71562306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 70 8>; 71662306a36Sopenharmony_ci interrupt-controller; 71762306a36Sopenharmony_ci #interrupt-cells = <2>; 71862306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO9>; 71962306a36Sopenharmony_ci clock-names = "apb_pclk"; 72062306a36Sopenharmony_ci }; 72162306a36Sopenharmony_ci 72262306a36Sopenharmony_ci gpio10: gpio@e8a15000 { 72362306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 72462306a36Sopenharmony_ci reg = <0 0xe8a15000 0 0x1000>; 72562306a36Sopenharmony_ci interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; 72662306a36Sopenharmony_ci gpio-controller; 72762306a36Sopenharmony_ci #gpio-cells = <2>; 72862306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 78 8>; 72962306a36Sopenharmony_ci interrupt-controller; 73062306a36Sopenharmony_ci #interrupt-cells = <2>; 73162306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO10>; 73262306a36Sopenharmony_ci clock-names = "apb_pclk"; 73362306a36Sopenharmony_ci }; 73462306a36Sopenharmony_ci 73562306a36Sopenharmony_ci gpio11: gpio@e8a16000 { 73662306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 73762306a36Sopenharmony_ci reg = <0 0xe8a16000 0 0x1000>; 73862306a36Sopenharmony_ci interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 73962306a36Sopenharmony_ci gpio-controller; 74062306a36Sopenharmony_ci #gpio-cells = <2>; 74162306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 86 8>; 74262306a36Sopenharmony_ci interrupt-controller; 74362306a36Sopenharmony_ci #interrupt-cells = <2>; 74462306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO11>; 74562306a36Sopenharmony_ci clock-names = "apb_pclk"; 74662306a36Sopenharmony_ci }; 74762306a36Sopenharmony_ci 74862306a36Sopenharmony_ci gpio12: gpio@e8a17000 { 74962306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 75062306a36Sopenharmony_ci reg = <0 0xe8a17000 0 0x1000>; 75162306a36Sopenharmony_ci interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 75262306a36Sopenharmony_ci gpio-controller; 75362306a36Sopenharmony_ci #gpio-cells = <2>; 75462306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 94 3 &pmx0 7 101 1>; 75562306a36Sopenharmony_ci interrupt-controller; 75662306a36Sopenharmony_ci #interrupt-cells = <2>; 75762306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO12>; 75862306a36Sopenharmony_ci clock-names = "apb_pclk"; 75962306a36Sopenharmony_ci }; 76062306a36Sopenharmony_ci 76162306a36Sopenharmony_ci gpio13: gpio@e8a18000 { 76262306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 76362306a36Sopenharmony_ci reg = <0 0xe8a18000 0 0x1000>; 76462306a36Sopenharmony_ci interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 76562306a36Sopenharmony_ci gpio-controller; 76662306a36Sopenharmony_ci #gpio-cells = <2>; 76762306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 102 8>; 76862306a36Sopenharmony_ci interrupt-controller; 76962306a36Sopenharmony_ci #interrupt-cells = <2>; 77062306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO13>; 77162306a36Sopenharmony_ci clock-names = "apb_pclk"; 77262306a36Sopenharmony_ci }; 77362306a36Sopenharmony_ci 77462306a36Sopenharmony_ci gpio14: gpio@e8a19000 { 77562306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 77662306a36Sopenharmony_ci reg = <0 0xe8a19000 0 0x1000>; 77762306a36Sopenharmony_ci interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 77862306a36Sopenharmony_ci gpio-controller; 77962306a36Sopenharmony_ci #gpio-cells = <2>; 78062306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 110 8>; 78162306a36Sopenharmony_ci interrupt-controller; 78262306a36Sopenharmony_ci #interrupt-cells = <2>; 78362306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO14>; 78462306a36Sopenharmony_ci clock-names = "apb_pclk"; 78562306a36Sopenharmony_ci }; 78662306a36Sopenharmony_ci 78762306a36Sopenharmony_ci gpio15: gpio@e8a1a000 { 78862306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 78962306a36Sopenharmony_ci reg = <0 0xe8a1a000 0 0x1000>; 79062306a36Sopenharmony_ci interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 79162306a36Sopenharmony_ci gpio-controller; 79262306a36Sopenharmony_ci #gpio-cells = <2>; 79362306a36Sopenharmony_ci gpio-ranges = <&pmx0 0 118 6>; 79462306a36Sopenharmony_ci interrupt-controller; 79562306a36Sopenharmony_ci #interrupt-cells = <2>; 79662306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO15>; 79762306a36Sopenharmony_ci clock-names = "apb_pclk"; 79862306a36Sopenharmony_ci }; 79962306a36Sopenharmony_ci 80062306a36Sopenharmony_ci gpio16: gpio@e8a1b000 { 80162306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 80262306a36Sopenharmony_ci reg = <0 0xe8a1b000 0 0x1000>; 80362306a36Sopenharmony_ci interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 80462306a36Sopenharmony_ci gpio-controller; 80562306a36Sopenharmony_ci #gpio-cells = <2>; 80662306a36Sopenharmony_ci interrupt-controller; 80762306a36Sopenharmony_ci #interrupt-cells = <2>; 80862306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO16>; 80962306a36Sopenharmony_ci clock-names = "apb_pclk"; 81062306a36Sopenharmony_ci }; 81162306a36Sopenharmony_ci 81262306a36Sopenharmony_ci gpio17: gpio@e8a1c000 { 81362306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 81462306a36Sopenharmony_ci reg = <0 0xe8a1c000 0 0x1000>; 81562306a36Sopenharmony_ci interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 81662306a36Sopenharmony_ci gpio-controller; 81762306a36Sopenharmony_ci #gpio-cells = <2>; 81862306a36Sopenharmony_ci interrupt-controller; 81962306a36Sopenharmony_ci #interrupt-cells = <2>; 82062306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO17>; 82162306a36Sopenharmony_ci clock-names = "apb_pclk"; 82262306a36Sopenharmony_ci }; 82362306a36Sopenharmony_ci 82462306a36Sopenharmony_ci gpio18: gpio@ff3b4000 { 82562306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 82662306a36Sopenharmony_ci reg = <0 0xff3b4000 0 0x1000>; 82762306a36Sopenharmony_ci interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 82862306a36Sopenharmony_ci gpio-controller; 82962306a36Sopenharmony_ci #gpio-cells = <2>; 83062306a36Sopenharmony_ci gpio-ranges = <&pmx2 0 0 8>; 83162306a36Sopenharmony_ci interrupt-controller; 83262306a36Sopenharmony_ci #interrupt-cells = <2>; 83362306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO18>; 83462306a36Sopenharmony_ci clock-names = "apb_pclk"; 83562306a36Sopenharmony_ci }; 83662306a36Sopenharmony_ci 83762306a36Sopenharmony_ci gpio19: gpio@ff3b5000 { 83862306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 83962306a36Sopenharmony_ci reg = <0 0xff3b5000 0 0x1000>; 84062306a36Sopenharmony_ci interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 84162306a36Sopenharmony_ci gpio-controller; 84262306a36Sopenharmony_ci #gpio-cells = <2>; 84362306a36Sopenharmony_ci gpio-ranges = <&pmx2 0 8 4>; 84462306a36Sopenharmony_ci interrupt-controller; 84562306a36Sopenharmony_ci #interrupt-cells = <2>; 84662306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO19>; 84762306a36Sopenharmony_ci clock-names = "apb_pclk"; 84862306a36Sopenharmony_ci }; 84962306a36Sopenharmony_ci 85062306a36Sopenharmony_ci gpio20: gpio@e8a1f000 { 85162306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 85262306a36Sopenharmony_ci reg = <0 0xe8a1f000 0 0x1000>; 85362306a36Sopenharmony_ci interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 85462306a36Sopenharmony_ci gpio-controller; 85562306a36Sopenharmony_ci #gpio-cells = <2>; 85662306a36Sopenharmony_ci gpio-ranges = <&pmx1 0 0 6>; 85762306a36Sopenharmony_ci interrupt-controller; 85862306a36Sopenharmony_ci #interrupt-cells = <2>; 85962306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO20>; 86062306a36Sopenharmony_ci clock-names = "apb_pclk"; 86162306a36Sopenharmony_ci }; 86262306a36Sopenharmony_ci 86362306a36Sopenharmony_ci gpio21: gpio@e8a20000 { 86462306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 86562306a36Sopenharmony_ci reg = <0 0xe8a20000 0 0x1000>; 86662306a36Sopenharmony_ci interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 86762306a36Sopenharmony_ci gpio-controller; 86862306a36Sopenharmony_ci #gpio-cells = <2>; 86962306a36Sopenharmony_ci interrupt-controller; 87062306a36Sopenharmony_ci #interrupt-cells = <2>; 87162306a36Sopenharmony_ci gpio-ranges = <&pmx3 0 0 6>; 87262306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCLK_GPIO21>; 87362306a36Sopenharmony_ci clock-names = "apb_pclk"; 87462306a36Sopenharmony_ci }; 87562306a36Sopenharmony_ci 87662306a36Sopenharmony_ci gpio22: gpio@fff0b000 { 87762306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 87862306a36Sopenharmony_ci reg = <0 0xfff0b000 0 0x1000>; 87962306a36Sopenharmony_ci interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 88062306a36Sopenharmony_ci gpio-controller; 88162306a36Sopenharmony_ci #gpio-cells = <2>; 88262306a36Sopenharmony_ci /* GPIO176 */ 88362306a36Sopenharmony_ci gpio-ranges = <&pmx4 2 0 6>; 88462306a36Sopenharmony_ci interrupt-controller; 88562306a36Sopenharmony_ci #interrupt-cells = <2>; 88662306a36Sopenharmony_ci clocks = <&sctrl HI3660_PCLK_AO_GPIO0>; 88762306a36Sopenharmony_ci clock-names = "apb_pclk"; 88862306a36Sopenharmony_ci }; 88962306a36Sopenharmony_ci 89062306a36Sopenharmony_ci gpio23: gpio@fff0c000 { 89162306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 89262306a36Sopenharmony_ci reg = <0 0xfff0c000 0 0x1000>; 89362306a36Sopenharmony_ci interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 89462306a36Sopenharmony_ci gpio-controller; 89562306a36Sopenharmony_ci #gpio-cells = <2>; 89662306a36Sopenharmony_ci /* GPIO184 */ 89762306a36Sopenharmony_ci gpio-ranges = <&pmx4 0 6 7>; 89862306a36Sopenharmony_ci interrupt-controller; 89962306a36Sopenharmony_ci #interrupt-cells = <2>; 90062306a36Sopenharmony_ci clocks = <&sctrl HI3660_PCLK_AO_GPIO1>; 90162306a36Sopenharmony_ci clock-names = "apb_pclk"; 90262306a36Sopenharmony_ci }; 90362306a36Sopenharmony_ci 90462306a36Sopenharmony_ci gpio24: gpio@fff0d000 { 90562306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 90662306a36Sopenharmony_ci reg = <0 0xfff0d000 0 0x1000>; 90762306a36Sopenharmony_ci interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; 90862306a36Sopenharmony_ci gpio-controller; 90962306a36Sopenharmony_ci #gpio-cells = <2>; 91062306a36Sopenharmony_ci /* GPIO192 */ 91162306a36Sopenharmony_ci gpio-ranges = <&pmx4 0 13 8>; 91262306a36Sopenharmony_ci interrupt-controller; 91362306a36Sopenharmony_ci #interrupt-cells = <2>; 91462306a36Sopenharmony_ci clocks = <&sctrl HI3660_PCLK_AO_GPIO2>; 91562306a36Sopenharmony_ci clock-names = "apb_pclk"; 91662306a36Sopenharmony_ci }; 91762306a36Sopenharmony_ci 91862306a36Sopenharmony_ci gpio25: gpio@fff0e000 { 91962306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 92062306a36Sopenharmony_ci reg = <0 0xfff0e000 0 0x1000>; 92162306a36Sopenharmony_ci interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; 92262306a36Sopenharmony_ci gpio-controller; 92362306a36Sopenharmony_ci #gpio-cells = <2>; 92462306a36Sopenharmony_ci /* GPIO200 */ 92562306a36Sopenharmony_ci gpio-ranges = <&pmx4 0 21 4 &pmx4 5 25 3>; 92662306a36Sopenharmony_ci interrupt-controller; 92762306a36Sopenharmony_ci #interrupt-cells = <2>; 92862306a36Sopenharmony_ci clocks = <&sctrl HI3660_PCLK_AO_GPIO3>; 92962306a36Sopenharmony_ci clock-names = "apb_pclk"; 93062306a36Sopenharmony_ci }; 93162306a36Sopenharmony_ci 93262306a36Sopenharmony_ci gpio26: gpio@fff0f000 { 93362306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 93462306a36Sopenharmony_ci reg = <0 0xfff0f000 0 0x1000>; 93562306a36Sopenharmony_ci interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 93662306a36Sopenharmony_ci gpio-controller; 93762306a36Sopenharmony_ci #gpio-cells = <2>; 93862306a36Sopenharmony_ci /* GPIO208 */ 93962306a36Sopenharmony_ci gpio-ranges = <&pmx4 0 28 8>; 94062306a36Sopenharmony_ci interrupt-controller; 94162306a36Sopenharmony_ci #interrupt-cells = <2>; 94262306a36Sopenharmony_ci clocks = <&sctrl HI3660_PCLK_AO_GPIO4>; 94362306a36Sopenharmony_ci clock-names = "apb_pclk"; 94462306a36Sopenharmony_ci }; 94562306a36Sopenharmony_ci 94662306a36Sopenharmony_ci gpio27: gpio@fff10000 { 94762306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 94862306a36Sopenharmony_ci reg = <0 0xfff10000 0 0x1000>; 94962306a36Sopenharmony_ci interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 95062306a36Sopenharmony_ci gpio-controller; 95162306a36Sopenharmony_ci #gpio-cells = <2>; 95262306a36Sopenharmony_ci /* GPIO216 */ 95362306a36Sopenharmony_ci gpio-ranges = <&pmx4 0 36 6>; 95462306a36Sopenharmony_ci interrupt-controller; 95562306a36Sopenharmony_ci #interrupt-cells = <2>; 95662306a36Sopenharmony_ci clocks = <&sctrl HI3660_PCLK_AO_GPIO5>; 95762306a36Sopenharmony_ci clock-names = "apb_pclk"; 95862306a36Sopenharmony_ci }; 95962306a36Sopenharmony_ci 96062306a36Sopenharmony_ci gpio28: gpio@fff1d000 { 96162306a36Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 96262306a36Sopenharmony_ci reg = <0 0xfff1d000 0 0x1000>; 96362306a36Sopenharmony_ci interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>; 96462306a36Sopenharmony_ci gpio-controller; 96562306a36Sopenharmony_ci #gpio-cells = <2>; 96662306a36Sopenharmony_ci interrupt-controller; 96762306a36Sopenharmony_ci #interrupt-cells = <2>; 96862306a36Sopenharmony_ci clocks = <&sctrl HI3660_PCLK_AO_GPIO6>; 96962306a36Sopenharmony_ci clock-names = "apb_pclk"; 97062306a36Sopenharmony_ci }; 97162306a36Sopenharmony_ci 97262306a36Sopenharmony_ci spi2: spi@ffd68000 { 97362306a36Sopenharmony_ci compatible = "arm,pl022", "arm,primecell"; 97462306a36Sopenharmony_ci reg = <0x0 0xffd68000 0x0 0x1000>; 97562306a36Sopenharmony_ci #address-cells = <1>; 97662306a36Sopenharmony_ci #size-cells = <0>; 97762306a36Sopenharmony_ci interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; 97862306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_SPI2>, <&crg_ctrl HI3660_CLK_GATE_SPI2>; 97962306a36Sopenharmony_ci clock-names = "sspclk", "apb_pclk"; 98062306a36Sopenharmony_ci pinctrl-names = "default"; 98162306a36Sopenharmony_ci pinctrl-0 = <&spi2_pmx_func &spi2_cfg_func>; 98262306a36Sopenharmony_ci num-cs = <1>; 98362306a36Sopenharmony_ci cs-gpios = <&gpio27 2 0>; 98462306a36Sopenharmony_ci status = "disabled"; 98562306a36Sopenharmony_ci }; 98662306a36Sopenharmony_ci 98762306a36Sopenharmony_ci spi3: spi@ff3b3000 { 98862306a36Sopenharmony_ci compatible = "arm,pl022", "arm,primecell"; 98962306a36Sopenharmony_ci reg = <0x0 0xff3b3000 0x0 0x1000>; 99062306a36Sopenharmony_ci #address-cells = <1>; 99162306a36Sopenharmony_ci #size-cells = <0>; 99262306a36Sopenharmony_ci interrupts = <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>; 99362306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_SPI3>, <&crg_ctrl HI3660_CLK_GATE_SPI3>; 99462306a36Sopenharmony_ci clock-names = "sspclk", "apb_pclk"; 99562306a36Sopenharmony_ci pinctrl-names = "default"; 99662306a36Sopenharmony_ci pinctrl-0 = <&spi3_pmx_func &spi3_cfg_func>; 99762306a36Sopenharmony_ci num-cs = <1>; 99862306a36Sopenharmony_ci cs-gpios = <&gpio18 5 0>; 99962306a36Sopenharmony_ci status = "disabled"; 100062306a36Sopenharmony_ci }; 100162306a36Sopenharmony_ci 100262306a36Sopenharmony_ci pcie@f4000000 { 100362306a36Sopenharmony_ci compatible = "hisilicon,kirin960-pcie"; 100462306a36Sopenharmony_ci reg = <0x0 0xf4000000 0x0 0x1000>, 100562306a36Sopenharmony_ci <0x0 0xff3fe000 0x0 0x1000>, 100662306a36Sopenharmony_ci <0x0 0xf3f20000 0x0 0x40000>, 100762306a36Sopenharmony_ci <0x0 0xf5000000 0x0 0x2000>; 100862306a36Sopenharmony_ci reg-names = "dbi", "apb", "phy", "config"; 100962306a36Sopenharmony_ci bus-range = <0x0 0xff>; 101062306a36Sopenharmony_ci #address-cells = <3>; 101162306a36Sopenharmony_ci #size-cells = <2>; 101262306a36Sopenharmony_ci device_type = "pci"; 101362306a36Sopenharmony_ci ranges = <0x02000000 0x0 0x00000000 101462306a36Sopenharmony_ci 0x0 0xf6000000 101562306a36Sopenharmony_ci 0x0 0x02000000>; 101662306a36Sopenharmony_ci num-lanes = <1>; 101762306a36Sopenharmony_ci #interrupt-cells = <1>; 101862306a36Sopenharmony_ci interrupts = <0 283 4>; 101962306a36Sopenharmony_ci interrupt-names = "msi"; 102062306a36Sopenharmony_ci interrupt-map-mask = <0xf800 0 0 7>; 102162306a36Sopenharmony_ci interrupt-map = <0x0 0 0 1 102262306a36Sopenharmony_ci &gic GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>, 102362306a36Sopenharmony_ci <0x0 0 0 2 102462306a36Sopenharmony_ci &gic GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>, 102562306a36Sopenharmony_ci <0x0 0 0 3 102662306a36Sopenharmony_ci &gic GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>, 102762306a36Sopenharmony_ci <0x0 0 0 4 102862306a36Sopenharmony_ci &gic GIC_SPI 285 IRQ_TYPE_LEVEL_HIGH>; 102962306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_PCIEPHY_REF>, 103062306a36Sopenharmony_ci <&crg_ctrl HI3660_CLK_GATE_PCIEAUX>, 103162306a36Sopenharmony_ci <&crg_ctrl HI3660_PCLK_GATE_PCIE_PHY>, 103262306a36Sopenharmony_ci <&crg_ctrl HI3660_PCLK_GATE_PCIE_SYS>, 103362306a36Sopenharmony_ci <&crg_ctrl HI3660_ACLK_GATE_PCIE>; 103462306a36Sopenharmony_ci clock-names = "pcie_phy_ref", "pcie_aux", 103562306a36Sopenharmony_ci "pcie_apb_phy", "pcie_apb_sys", 103662306a36Sopenharmony_ci "pcie_aclk"; 103762306a36Sopenharmony_ci reset-gpios = <&gpio11 1 0 >; 103862306a36Sopenharmony_ci }; 103962306a36Sopenharmony_ci 104062306a36Sopenharmony_ci /* UFS */ 104162306a36Sopenharmony_ci ufs: ufs@ff3b0000 { 104262306a36Sopenharmony_ci compatible = "hisilicon,hi3660-ufs", "jedec,ufs-1.1"; 104362306a36Sopenharmony_ci /* 0: HCI standard */ 104462306a36Sopenharmony_ci /* 1: UFS SYS CTRL */ 104562306a36Sopenharmony_ci reg = <0x0 0xff3b0000 0x0 0x1000>, 104662306a36Sopenharmony_ci <0x0 0xff3b1000 0x0 0x1000>; 104762306a36Sopenharmony_ci interrupt-parent = <&gic>; 104862306a36Sopenharmony_ci interrupts = <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>; 104962306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_UFSIO_REF>, 105062306a36Sopenharmony_ci <&crg_ctrl HI3660_CLK_GATE_UFSPHY_CFG>; 105162306a36Sopenharmony_ci clock-names = "ref_clk", "phy_clk"; 105262306a36Sopenharmony_ci freq-table-hz = <0 0>, 105362306a36Sopenharmony_ci <0 0>; 105462306a36Sopenharmony_ci /* offset: 0x84; bit: 12 */ 105562306a36Sopenharmony_ci resets = <&crg_rst 0x84 12>; 105662306a36Sopenharmony_ci reset-names = "rst"; 105762306a36Sopenharmony_ci }; 105862306a36Sopenharmony_ci 105962306a36Sopenharmony_ci /* SD */ 106062306a36Sopenharmony_ci dwmmc1: dwmmc1@ff37f000 { 106162306a36Sopenharmony_ci compatible = "hisilicon,hi3660-dw-mshc"; 106262306a36Sopenharmony_ci reg = <0x0 0xff37f000 0x0 0x1000>; 106362306a36Sopenharmony_ci #address-cells = <1>; 106462306a36Sopenharmony_ci #size-cells = <0>; 106562306a36Sopenharmony_ci interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>; 106662306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_SD>, 106762306a36Sopenharmony_ci <&crg_ctrl HI3660_HCLK_GATE_SD>; 106862306a36Sopenharmony_ci clock-names = "ciu", "biu"; 106962306a36Sopenharmony_ci clock-frequency = <3200000>; 107062306a36Sopenharmony_ci resets = <&crg_rst 0x94 18>; 107162306a36Sopenharmony_ci reset-names = "reset"; 107262306a36Sopenharmony_ci hisilicon,peripheral-syscon = <&sctrl>; 107362306a36Sopenharmony_ci card-detect-delay = <200>; 107462306a36Sopenharmony_ci status = "disabled"; 107562306a36Sopenharmony_ci }; 107662306a36Sopenharmony_ci 107762306a36Sopenharmony_ci /* SDIO */ 107862306a36Sopenharmony_ci dwmmc2: dwmmc2@ff3ff000 { 107962306a36Sopenharmony_ci compatible = "hisilicon,hi3660-dw-mshc"; 108062306a36Sopenharmony_ci reg = <0x0 0xff3ff000 0x0 0x1000>; 108162306a36Sopenharmony_ci #address-cells = <0x1>; 108262306a36Sopenharmony_ci #size-cells = <0x0>; 108362306a36Sopenharmony_ci interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; 108462306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_GATE_SDIO0>, 108562306a36Sopenharmony_ci <&crg_ctrl HI3660_HCLK_GATE_SDIO0>; 108662306a36Sopenharmony_ci clock-names = "ciu", "biu"; 108762306a36Sopenharmony_ci resets = <&crg_rst 0x94 20>; 108862306a36Sopenharmony_ci reset-names = "reset"; 108962306a36Sopenharmony_ci card-detect-delay = <200>; 109062306a36Sopenharmony_ci status = "disabled"; 109162306a36Sopenharmony_ci }; 109262306a36Sopenharmony_ci 109362306a36Sopenharmony_ci watchdog0: watchdog@e8a06000 { 109462306a36Sopenharmony_ci compatible = "arm,sp805", "arm,primecell"; 109562306a36Sopenharmony_ci reg = <0x0 0xe8a06000 0x0 0x1000>; 109662306a36Sopenharmony_ci interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; 109762306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_OSC32K>, 109862306a36Sopenharmony_ci <&crg_ctrl HI3660_OSC32K>; 109962306a36Sopenharmony_ci clock-names = "wdog_clk", "apb_pclk"; 110062306a36Sopenharmony_ci }; 110162306a36Sopenharmony_ci 110262306a36Sopenharmony_ci watchdog1: watchdog@e8a07000 { 110362306a36Sopenharmony_ci compatible = "arm,sp805", "arm,primecell"; 110462306a36Sopenharmony_ci reg = <0x0 0xe8a07000 0x0 0x1000>; 110562306a36Sopenharmony_ci interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 110662306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_OSC32K>, 110762306a36Sopenharmony_ci <&crg_ctrl HI3660_OSC32K>; 110862306a36Sopenharmony_ci clock-names = "wdog_clk", "apb_pclk"; 110962306a36Sopenharmony_ci }; 111062306a36Sopenharmony_ci 111162306a36Sopenharmony_ci tsensor: tsensor@fff30000 { 111262306a36Sopenharmony_ci compatible = "hisilicon,hi3660-tsensor"; 111362306a36Sopenharmony_ci reg = <0x0 0xfff30000 0x0 0x1000>; 111462306a36Sopenharmony_ci interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>; 111562306a36Sopenharmony_ci #thermal-sensor-cells = <1>; 111662306a36Sopenharmony_ci }; 111762306a36Sopenharmony_ci 111862306a36Sopenharmony_ci thermal-zones { 111962306a36Sopenharmony_ci 112062306a36Sopenharmony_ci cls0: cls0-thermal { 112162306a36Sopenharmony_ci polling-delay = <1000>; 112262306a36Sopenharmony_ci polling-delay-passive = <100>; 112362306a36Sopenharmony_ci sustainable-power = <4500>; 112462306a36Sopenharmony_ci 112562306a36Sopenharmony_ci /* sensor ID */ 112662306a36Sopenharmony_ci thermal-sensors = <&tsensor 1>; 112762306a36Sopenharmony_ci 112862306a36Sopenharmony_ci trips { 112962306a36Sopenharmony_ci threshold: trip-point0 { 113062306a36Sopenharmony_ci temperature = <65000>; 113162306a36Sopenharmony_ci hysteresis = <1000>; 113262306a36Sopenharmony_ci type = "passive"; 113362306a36Sopenharmony_ci }; 113462306a36Sopenharmony_ci 113562306a36Sopenharmony_ci target: trip-point1 { 113662306a36Sopenharmony_ci temperature = <75000>; 113762306a36Sopenharmony_ci hysteresis = <1000>; 113862306a36Sopenharmony_ci type = "passive"; 113962306a36Sopenharmony_ci }; 114062306a36Sopenharmony_ci }; 114162306a36Sopenharmony_ci 114262306a36Sopenharmony_ci cooling-maps { 114362306a36Sopenharmony_ci map0 { 114462306a36Sopenharmony_ci trip = <&target>; 114562306a36Sopenharmony_ci contribution = <1024>; 114662306a36Sopenharmony_ci cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 114762306a36Sopenharmony_ci <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 114862306a36Sopenharmony_ci <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 114962306a36Sopenharmony_ci <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 115062306a36Sopenharmony_ci }; 115162306a36Sopenharmony_ci map1 { 115262306a36Sopenharmony_ci trip = <&target>; 115362306a36Sopenharmony_ci contribution = <512>; 115462306a36Sopenharmony_ci cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 115562306a36Sopenharmony_ci <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 115662306a36Sopenharmony_ci <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 115762306a36Sopenharmony_ci <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 115862306a36Sopenharmony_ci }; 115962306a36Sopenharmony_ci }; 116062306a36Sopenharmony_ci }; 116162306a36Sopenharmony_ci }; 116262306a36Sopenharmony_ci 116362306a36Sopenharmony_ci usb3_otg_bc: usb3_otg_bc@ff200000 { 116462306a36Sopenharmony_ci compatible = "syscon", "simple-mfd"; 116562306a36Sopenharmony_ci reg = <0x0 0xff200000 0x0 0x1000>; 116662306a36Sopenharmony_ci 116762306a36Sopenharmony_ci usb_phy: usb-phy { 116862306a36Sopenharmony_ci compatible = "hisilicon,hi3660-usb-phy"; 116962306a36Sopenharmony_ci #phy-cells = <0>; 117062306a36Sopenharmony_ci hisilicon,pericrg-syscon = <&crg_ctrl>; 117162306a36Sopenharmony_ci hisilicon,pctrl-syscon = <&pctrl>; 117262306a36Sopenharmony_ci hisilicon,eye-diagram-param = <0x22466e4>; 117362306a36Sopenharmony_ci }; 117462306a36Sopenharmony_ci }; 117562306a36Sopenharmony_ci 117662306a36Sopenharmony_ci dwc3: usb@ff100000 { 117762306a36Sopenharmony_ci compatible = "snps,dwc3"; 117862306a36Sopenharmony_ci reg = <0x0 0xff100000 0x0 0x100000>; 117962306a36Sopenharmony_ci 118062306a36Sopenharmony_ci clocks = <&crg_ctrl HI3660_CLK_ABB_USB>, 118162306a36Sopenharmony_ci <&crg_ctrl HI3660_ACLK_GATE_USB3OTG>; 118262306a36Sopenharmony_ci clock-names = "ref", "bus_early"; 118362306a36Sopenharmony_ci 118462306a36Sopenharmony_ci assigned-clocks = <&crg_ctrl HI3660_ACLK_GATE_USB3OTG>; 118562306a36Sopenharmony_ci assigned-clock-rates = <229000000>; 118662306a36Sopenharmony_ci 118762306a36Sopenharmony_ci resets = <&crg_rst 0x90 8>, 118862306a36Sopenharmony_ci <&crg_rst 0x90 7>, 118962306a36Sopenharmony_ci <&crg_rst 0x90 6>, 119062306a36Sopenharmony_ci <&crg_rst 0x90 5>; 119162306a36Sopenharmony_ci 119262306a36Sopenharmony_ci interrupts = <0 159 4>, <0 161 4>; 119362306a36Sopenharmony_ci phys = <&usb_phy>; 119462306a36Sopenharmony_ci phy-names = "usb3-phy"; 119562306a36Sopenharmony_ci }; 119662306a36Sopenharmony_ci }; 119762306a36Sopenharmony_ci}; 119862306a36Sopenharmony_ci 119962306a36Sopenharmony_ci#include "hi3660-coresight.dtsi" 1200