1c9211fa2SKever Yang// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2c9211fa2SKever Yang/* 3c9211fa2SKever Yang * Copyright (c) 2021 Rockchip Electronics Co., Ltd. 4c9211fa2SKever Yang */ 5c9211fa2SKever Yang 6c9211fa2SKever Yang#include <dt-bindings/clock/rockchip,rk3588-cru.h> 7c9211fa2SKever Yang#include <dt-bindings/interrupt-controller/arm-gic.h> 8c9211fa2SKever Yang#include <dt-bindings/interrupt-controller/irq.h> 9c9211fa2SKever Yang#include <dt-bindings/power/rk3588-power.h> 10c9211fa2SKever Yang#include <dt-bindings/reset/rockchip,rk3588-cru.h> 11c9211fa2SKever Yang 12c9211fa2SKever Yang/ { 13c9211fa2SKever Yang compatible = "rockchip,rk3588"; 14c9211fa2SKever Yang 15c9211fa2SKever Yang interrupt-parent = <&gic>; 16c9211fa2SKever Yang #address-cells = <2>; 17c9211fa2SKever Yang #size-cells = <2>; 18c9211fa2SKever Yang 19c9211fa2SKever Yang cpus { 20c9211fa2SKever Yang #address-cells = <1>; 21c9211fa2SKever Yang #size-cells = <0>; 22c9211fa2SKever Yang 23c9211fa2SKever Yang cpu-map { 24c9211fa2SKever Yang cluster0 { 25c9211fa2SKever Yang core0 { 26c9211fa2SKever Yang cpu = <&cpu_l0>; 27c9211fa2SKever Yang }; 28c9211fa2SKever Yang core1 { 29c9211fa2SKever Yang cpu = <&cpu_l1>; 30c9211fa2SKever Yang }; 31c9211fa2SKever Yang core2 { 32c9211fa2SKever Yang cpu = <&cpu_l2>; 33c9211fa2SKever Yang }; 34c9211fa2SKever Yang core3 { 35c9211fa2SKever Yang cpu = <&cpu_l3>; 36c9211fa2SKever Yang }; 37c9211fa2SKever Yang }; 38c9211fa2SKever Yang cluster1 { 39c9211fa2SKever Yang core0 { 40c9211fa2SKever Yang cpu = <&cpu_b0>; 41c9211fa2SKever Yang }; 42c9211fa2SKever Yang core1 { 43c9211fa2SKever Yang cpu = <&cpu_b1>; 44c9211fa2SKever Yang }; 45c9211fa2SKever Yang }; 46c9211fa2SKever Yang cluster2 { 47c9211fa2SKever Yang core0 { 48c9211fa2SKever Yang cpu = <&cpu_b2>; 49c9211fa2SKever Yang }; 50c9211fa2SKever Yang core1 { 51c9211fa2SKever Yang cpu = <&cpu_b3>; 52c9211fa2SKever Yang }; 53c9211fa2SKever Yang }; 54c9211fa2SKever Yang }; 55c9211fa2SKever Yang 56c9211fa2SKever Yang cpu_l0: cpu@0 { 57c9211fa2SKever Yang device_type = "cpu"; 58c9211fa2SKever Yang compatible = "arm,cortex-a55"; 59c9211fa2SKever Yang reg = <0x0>; 60c9211fa2SKever Yang enable-method = "psci"; 61c9211fa2SKever Yang capacity-dmips-mhz = <530>; 62c9211fa2SKever Yang clocks = <&scmi_clk SCMI_CLK_CPUL>; 63c9211fa2SKever Yang cpu-idle-states = <&CPU_SLEEP>; 64c9211fa2SKever Yang i-cache-size = <32768>; 65c9211fa2SKever Yang i-cache-line-size = <64>; 66c9211fa2SKever Yang i-cache-sets = <128>; 67c9211fa2SKever Yang d-cache-size = <32768>; 68c9211fa2SKever Yang d-cache-line-size = <64>; 69c9211fa2SKever Yang d-cache-sets = <128>; 70c9211fa2SKever Yang next-level-cache = <&l2_cache_l0>; 71c9211fa2SKever Yang dynamic-power-coefficient = <228>; 72c9211fa2SKever Yang #cooling-cells = <2>; 73c9211fa2SKever Yang }; 74c9211fa2SKever Yang 75c9211fa2SKever Yang cpu_l1: cpu@100 { 76c9211fa2SKever Yang device_type = "cpu"; 77c9211fa2SKever Yang compatible = "arm,cortex-a55"; 78c9211fa2SKever Yang reg = <0x100>; 79c9211fa2SKever Yang enable-method = "psci"; 80c9211fa2SKever Yang capacity-dmips-mhz = <530>; 81c9211fa2SKever Yang clocks = <&scmi_clk SCMI_CLK_CPUL>; 82c9211fa2SKever Yang cpu-idle-states = <&CPU_SLEEP>; 83c9211fa2SKever Yang i-cache-size = <32768>; 84c9211fa2SKever Yang i-cache-line-size = <64>; 85c9211fa2SKever Yang i-cache-sets = <128>; 86c9211fa2SKever Yang d-cache-size = <32768>; 87c9211fa2SKever Yang d-cache-line-size = <64>; 88c9211fa2SKever Yang d-cache-sets = <128>; 89c9211fa2SKever Yang next-level-cache = <&l2_cache_l1>; 90c9211fa2SKever Yang dynamic-power-coefficient = <228>; 91c9211fa2SKever Yang #cooling-cells = <2>; 92c9211fa2SKever Yang }; 93c9211fa2SKever Yang 94c9211fa2SKever Yang cpu_l2: cpu@200 { 95c9211fa2SKever Yang device_type = "cpu"; 96c9211fa2SKever Yang compatible = "arm,cortex-a55"; 97c9211fa2SKever Yang reg = <0x200>; 98c9211fa2SKever Yang enable-method = "psci"; 99c9211fa2SKever Yang capacity-dmips-mhz = <530>; 100c9211fa2SKever Yang clocks = <&scmi_clk SCMI_CLK_CPUL>; 101c9211fa2SKever Yang cpu-idle-states = <&CPU_SLEEP>; 102c9211fa2SKever Yang i-cache-size = <32768>; 103c9211fa2SKever Yang i-cache-line-size = <64>; 104c9211fa2SKever Yang i-cache-sets = <128>; 105c9211fa2SKever Yang d-cache-size = <32768>; 106c9211fa2SKever Yang d-cache-line-size = <64>; 107c9211fa2SKever Yang d-cache-sets = <128>; 108c9211fa2SKever Yang next-level-cache = <&l2_cache_l2>; 109c9211fa2SKever Yang dynamic-power-coefficient = <228>; 110c9211fa2SKever Yang #cooling-cells = <2>; 111c9211fa2SKever Yang }; 112c9211fa2SKever Yang 113c9211fa2SKever Yang cpu_l3: cpu@300 { 114c9211fa2SKever Yang device_type = "cpu"; 115c9211fa2SKever Yang compatible = "arm,cortex-a55"; 116c9211fa2SKever Yang reg = <0x300>; 117c9211fa2SKever Yang enable-method = "psci"; 118c9211fa2SKever Yang capacity-dmips-mhz = <530>; 119c9211fa2SKever Yang clocks = <&scmi_clk SCMI_CLK_CPUL>; 120c9211fa2SKever Yang cpu-idle-states = <&CPU_SLEEP>; 121c9211fa2SKever Yang i-cache-size = <32768>; 122c9211fa2SKever Yang i-cache-line-size = <64>; 123c9211fa2SKever Yang i-cache-sets = <128>; 124c9211fa2SKever Yang d-cache-size = <32768>; 125c9211fa2SKever Yang d-cache-line-size = <64>; 126c9211fa2SKever Yang d-cache-sets = <128>; 127c9211fa2SKever Yang next-level-cache = <&l2_cache_l3>; 128c9211fa2SKever Yang dynamic-power-coefficient = <228>; 129c9211fa2SKever Yang #cooling-cells = <2>; 130c9211fa2SKever Yang }; 131c9211fa2SKever Yang 132c9211fa2SKever Yang cpu_b0: cpu@400 { 133c9211fa2SKever Yang device_type = "cpu"; 134c9211fa2SKever Yang compatible = "arm,cortex-a76"; 135c9211fa2SKever Yang reg = <0x400>; 136c9211fa2SKever Yang enable-method = "psci"; 137c9211fa2SKever Yang capacity-dmips-mhz = <1024>; 138c9211fa2SKever Yang clocks = <&scmi_clk SCMI_CLK_CPUB01>; 139c9211fa2SKever Yang cpu-idle-states = <&CPU_SLEEP>; 140c9211fa2SKever Yang i-cache-size = <65536>; 141c9211fa2SKever Yang i-cache-line-size = <64>; 142c9211fa2SKever Yang i-cache-sets = <256>; 143c9211fa2SKever Yang d-cache-size = <65536>; 144c9211fa2SKever Yang d-cache-line-size = <64>; 145c9211fa2SKever Yang d-cache-sets = <256>; 146c9211fa2SKever Yang next-level-cache = <&l2_cache_b0>; 147c9211fa2SKever Yang dynamic-power-coefficient = <416>; 148c9211fa2SKever Yang #cooling-cells = <2>; 149c9211fa2SKever Yang }; 150c9211fa2SKever Yang 151c9211fa2SKever Yang cpu_b1: cpu@500 { 152c9211fa2SKever Yang device_type = "cpu"; 153c9211fa2SKever Yang compatible = "arm,cortex-a76"; 154c9211fa2SKever Yang reg = <0x500>; 155c9211fa2SKever Yang enable-method = "psci"; 156c9211fa2SKever Yang capacity-dmips-mhz = <1024>; 157c9211fa2SKever Yang clocks = <&scmi_clk SCMI_CLK_CPUB01>; 158c9211fa2SKever Yang cpu-idle-states = <&CPU_SLEEP>; 159c9211fa2SKever Yang i-cache-size = <65536>; 160c9211fa2SKever Yang i-cache-line-size = <64>; 161c9211fa2SKever Yang i-cache-sets = <256>; 162c9211fa2SKever Yang d-cache-size = <65536>; 163c9211fa2SKever Yang d-cache-line-size = <64>; 164c9211fa2SKever Yang d-cache-sets = <256>; 165c9211fa2SKever Yang next-level-cache = <&l2_cache_b1>; 166c9211fa2SKever Yang dynamic-power-coefficient = <416>; 167c9211fa2SKever Yang #cooling-cells = <2>; 168c9211fa2SKever Yang }; 169c9211fa2SKever Yang 170c9211fa2SKever Yang cpu_b2: cpu@600 { 171c9211fa2SKever Yang device_type = "cpu"; 172c9211fa2SKever Yang compatible = "arm,cortex-a76"; 173c9211fa2SKever Yang reg = <0x600>; 174c9211fa2SKever Yang enable-method = "psci"; 175c9211fa2SKever Yang capacity-dmips-mhz = <1024>; 176c9211fa2SKever Yang clocks = <&scmi_clk SCMI_CLK_CPUB23>; 177c9211fa2SKever Yang cpu-idle-states = <&CPU_SLEEP>; 178c9211fa2SKever Yang i-cache-size = <65536>; 179c9211fa2SKever Yang i-cache-line-size = <64>; 180c9211fa2SKever Yang i-cache-sets = <256>; 181c9211fa2SKever Yang d-cache-size = <65536>; 182c9211fa2SKever Yang d-cache-line-size = <64>; 183c9211fa2SKever Yang d-cache-sets = <256>; 184c9211fa2SKever Yang next-level-cache = <&l2_cache_b2>; 185c9211fa2SKever Yang dynamic-power-coefficient = <416>; 186c9211fa2SKever Yang #cooling-cells = <2>; 187c9211fa2SKever Yang }; 188c9211fa2SKever Yang 189c9211fa2SKever Yang cpu_b3: cpu@700 { 190c9211fa2SKever Yang device_type = "cpu"; 191c9211fa2SKever Yang compatible = "arm,cortex-a76"; 192c9211fa2SKever Yang reg = <0x700>; 193c9211fa2SKever Yang enable-method = "psci"; 194c9211fa2SKever Yang capacity-dmips-mhz = <1024>; 195c9211fa2SKever Yang clocks = <&scmi_clk SCMI_CLK_CPUB23>; 196c9211fa2SKever Yang cpu-idle-states = <&CPU_SLEEP>; 197c9211fa2SKever Yang i-cache-size = <65536>; 198c9211fa2SKever Yang i-cache-line-size = <64>; 199c9211fa2SKever Yang i-cache-sets = <256>; 200c9211fa2SKever Yang d-cache-size = <65536>; 201c9211fa2SKever Yang d-cache-line-size = <64>; 202c9211fa2SKever Yang d-cache-sets = <256>; 203c9211fa2SKever Yang next-level-cache = <&l2_cache_b3>; 204c9211fa2SKever Yang dynamic-power-coefficient = <416>; 205c9211fa2SKever Yang #cooling-cells = <2>; 206c9211fa2SKever Yang }; 207c9211fa2SKever Yang 208c9211fa2SKever Yang idle-states { 209c9211fa2SKever Yang entry-method = "psci"; 210c9211fa2SKever Yang CPU_SLEEP: cpu-sleep { 211c9211fa2SKever Yang compatible = "arm,idle-state"; 212c9211fa2SKever Yang local-timer-stop; 213c9211fa2SKever Yang arm,psci-suspend-param = <0x0010000>; 214c9211fa2SKever Yang entry-latency-us = <100>; 215c9211fa2SKever Yang exit-latency-us = <120>; 216c9211fa2SKever Yang min-residency-us = <1000>; 217c9211fa2SKever Yang }; 218c9211fa2SKever Yang }; 219c9211fa2SKever Yang 220c9211fa2SKever Yang l2_cache_l0: l2-cache-l0 { 221c9211fa2SKever Yang compatible = "cache"; 222c9211fa2SKever Yang cache-size = <131072>; 223c9211fa2SKever Yang cache-line-size = <64>; 224c9211fa2SKever Yang cache-sets = <512>; 225c9211fa2SKever Yang next-level-cache = <&l3_cache>; 226c9211fa2SKever Yang }; 227c9211fa2SKever Yang 228c9211fa2SKever Yang l2_cache_l1: l2-cache-l1 { 229c9211fa2SKever Yang compatible = "cache"; 230c9211fa2SKever Yang cache-size = <131072>; 231c9211fa2SKever Yang cache-line-size = <64>; 232c9211fa2SKever Yang cache-sets = <512>; 233c9211fa2SKever Yang next-level-cache = <&l3_cache>; 234c9211fa2SKever Yang }; 235c9211fa2SKever Yang 236c9211fa2SKever Yang l2_cache_l2: l2-cache-l2 { 237c9211fa2SKever Yang compatible = "cache"; 238c9211fa2SKever Yang cache-size = <131072>; 239c9211fa2SKever Yang cache-line-size = <64>; 240c9211fa2SKever Yang cache-sets = <512>; 241c9211fa2SKever Yang next-level-cache = <&l3_cache>; 242c9211fa2SKever Yang }; 243c9211fa2SKever Yang 244c9211fa2SKever Yang l2_cache_l3: l2-cache-l3 { 245c9211fa2SKever Yang compatible = "cache"; 246c9211fa2SKever Yang cache-size = <131072>; 247c9211fa2SKever Yang cache-line-size = <64>; 248c9211fa2SKever Yang cache-sets = <512>; 249c9211fa2SKever Yang next-level-cache = <&l3_cache>; 250c9211fa2SKever Yang }; 251c9211fa2SKever Yang 252c9211fa2SKever Yang l2_cache_b0: l2-cache-b0 { 253c9211fa2SKever Yang compatible = "cache"; 254c9211fa2SKever Yang cache-size = <524288>; 255c9211fa2SKever Yang cache-line-size = <64>; 256c9211fa2SKever Yang cache-sets = <1024>; 257c9211fa2SKever Yang next-level-cache = <&l3_cache>; 258c9211fa2SKever Yang }; 259c9211fa2SKever Yang 260c9211fa2SKever Yang l2_cache_b1: l2-cache-b1 { 261c9211fa2SKever Yang compatible = "cache"; 262c9211fa2SKever Yang cache-size = <524288>; 263c9211fa2SKever Yang cache-line-size = <64>; 264c9211fa2SKever Yang cache-sets = <1024>; 265c9211fa2SKever Yang next-level-cache = <&l3_cache>; 266c9211fa2SKever Yang }; 267c9211fa2SKever Yang 268c9211fa2SKever Yang l2_cache_b2: l2-cache-b2 { 269c9211fa2SKever Yang compatible = "cache"; 270c9211fa2SKever Yang cache-size = <524288>; 271c9211fa2SKever Yang cache-line-size = <64>; 272c9211fa2SKever Yang cache-sets = <1024>; 273c9211fa2SKever Yang next-level-cache = <&l3_cache>; 274c9211fa2SKever Yang }; 275c9211fa2SKever Yang 276c9211fa2SKever Yang l2_cache_b3: l2-cache-b3 { 277c9211fa2SKever Yang compatible = "cache"; 278c9211fa2SKever Yang cache-size = <524288>; 279c9211fa2SKever Yang cache-line-size = <64>; 280c9211fa2SKever Yang cache-sets = <1024>; 281c9211fa2SKever Yang next-level-cache = <&l3_cache>; 282c9211fa2SKever Yang }; 283c9211fa2SKever Yang 284c9211fa2SKever Yang l3_cache: l3-cache { 285c9211fa2SKever Yang compatible = "cache"; 286c9211fa2SKever Yang cache-size = <3145728>; 287c9211fa2SKever Yang cache-line-size = <64>; 288c9211fa2SKever Yang cache-sets = <4096>; 289c9211fa2SKever Yang }; 290c9211fa2SKever Yang }; 291c9211fa2SKever Yang 292c9211fa2SKever Yang firmware { 293c9211fa2SKever Yang optee: optee { 294c9211fa2SKever Yang compatible = "linaro,optee-tz"; 295c9211fa2SKever Yang method = "smc"; 296c9211fa2SKever Yang }; 297c9211fa2SKever Yang 298c9211fa2SKever Yang scmi: scmi { 299c9211fa2SKever Yang compatible = "arm,scmi-smc"; 300c9211fa2SKever Yang arm,smc-id = <0x82000010>; 301c9211fa2SKever Yang shmem = <&scmi_shmem>; 302c9211fa2SKever Yang #address-cells = <1>; 303c9211fa2SKever Yang #size-cells = <0>; 304c9211fa2SKever Yang 305c9211fa2SKever Yang scmi_clk: protocol@14 { 306c9211fa2SKever Yang reg = <0x14>; 307c9211fa2SKever Yang assigned-clocks = <&scmi_clk SCMI_CLK_CPUB01>, 308c9211fa2SKever Yang <&scmi_clk SCMI_CLK_CPUB23>; 309c9211fa2SKever Yang assigned-clock-rates = <1200000000>, 310c9211fa2SKever Yang <1200000000>; 311c9211fa2SKever Yang #clock-cells = <1>; 312c9211fa2SKever Yang }; 313c9211fa2SKever Yang 314c9211fa2SKever Yang scmi_reset: protocol@16 { 315c9211fa2SKever Yang reg = <0x16>; 316c9211fa2SKever Yang #reset-cells = <1>; 317c9211fa2SKever Yang }; 318c9211fa2SKever Yang }; 319c9211fa2SKever Yang }; 320c9211fa2SKever Yang 321c9211fa2SKever Yang pmu-a55 { 322c9211fa2SKever Yang compatible = "arm,cortex-a55-pmu"; 323c9211fa2SKever Yang interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_partition0>; 324c9211fa2SKever Yang }; 325c9211fa2SKever Yang 326c9211fa2SKever Yang pmu-a76 { 327c9211fa2SKever Yang compatible = "arm,cortex-a76-pmu"; 328c9211fa2SKever Yang interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_partition1>; 329c9211fa2SKever Yang }; 330c9211fa2SKever Yang 331c9211fa2SKever Yang psci { 332c9211fa2SKever Yang compatible = "arm,psci-1.0"; 333c9211fa2SKever Yang method = "smc"; 334c9211fa2SKever Yang }; 335c9211fa2SKever Yang 336c9211fa2SKever Yang spll: clock-0 { 337c9211fa2SKever Yang compatible = "fixed-clock"; 338c9211fa2SKever Yang clock-frequency = <702000000>; 339c9211fa2SKever Yang clock-output-names = "spll"; 340c9211fa2SKever Yang #clock-cells = <0>; 341c9211fa2SKever Yang }; 342c9211fa2SKever Yang 343c9211fa2SKever Yang timer { 344c9211fa2SKever Yang compatible = "arm,armv8-timer"; 345c9211fa2SKever Yang interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH 0>, 346c9211fa2SKever Yang <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH 0>, 347c9211fa2SKever Yang <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH 0>, 348c9211fa2SKever Yang <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH 0>, 349c9211fa2SKever Yang <GIC_PPI 12 IRQ_TYPE_LEVEL_HIGH 0>; 350c9211fa2SKever Yang interrupt-names = "sec-phys", "phys", "virt", "hyp-phys", "hyp-virt"; 351c9211fa2SKever Yang }; 352c9211fa2SKever Yang 353c9211fa2SKever Yang xin24m: clock-1 { 354c9211fa2SKever Yang compatible = "fixed-clock"; 355c9211fa2SKever Yang clock-frequency = <24000000>; 356c9211fa2SKever Yang clock-output-names = "xin24m"; 357c9211fa2SKever Yang #clock-cells = <0>; 358c9211fa2SKever Yang }; 359c9211fa2SKever Yang 360c9211fa2SKever Yang xin32k: clock-2 { 361c9211fa2SKever Yang compatible = "fixed-clock"; 362c9211fa2SKever Yang clock-frequency = <32768>; 363c9211fa2SKever Yang clock-output-names = "xin32k"; 364c9211fa2SKever Yang #clock-cells = <0>; 365c9211fa2SKever Yang }; 366c9211fa2SKever Yang 367c9211fa2SKever Yang pmu_sram: sram@10f000 { 368c9211fa2SKever Yang compatible = "mmio-sram"; 369c9211fa2SKever Yang reg = <0x0 0x0010f000 0x0 0x100>; 370c9211fa2SKever Yang ranges = <0 0x0 0x0010f000 0x100>; 371c9211fa2SKever Yang #address-cells = <1>; 372c9211fa2SKever Yang #size-cells = <1>; 373c9211fa2SKever Yang 374c9211fa2SKever Yang scmi_shmem: sram@0 { 375c9211fa2SKever Yang compatible = "arm,scmi-shmem"; 376c9211fa2SKever Yang reg = <0x0 0x100>; 377c9211fa2SKever Yang }; 378c9211fa2SKever Yang }; 379c9211fa2SKever Yang 380c9211fa2SKever Yang sys_grf: syscon@fd58c000 { 381c9211fa2SKever Yang compatible = "rockchip,rk3588-sys-grf", "syscon"; 382c9211fa2SKever Yang reg = <0x0 0xfd58c000 0x0 0x1000>; 383c9211fa2SKever Yang }; 384c9211fa2SKever Yang 385c9211fa2SKever Yang php_grf: syscon@fd5b0000 { 386c9211fa2SKever Yang compatible = "rockchip,rk3588-php-grf", "syscon"; 387c9211fa2SKever Yang reg = <0x0 0xfd5b0000 0x0 0x1000>; 388c9211fa2SKever Yang }; 389c9211fa2SKever Yang 390c9211fa2SKever Yang ioc: syscon@fd5f0000 { 391c9211fa2SKever Yang compatible = "rockchip,rk3588-ioc", "syscon"; 392c9211fa2SKever Yang reg = <0x0 0xfd5f0000 0x0 0x10000>; 393c9211fa2SKever Yang }; 394c9211fa2SKever Yang 395c9211fa2SKever Yang system_sram1: sram@fd600000 { 396c9211fa2SKever Yang compatible = "mmio-sram"; 397c9211fa2SKever Yang reg = <0x0 0xfd600000 0x0 0x100000>; 398c9211fa2SKever Yang ranges = <0x0 0x0 0xfd600000 0x100000>; 399c9211fa2SKever Yang #address-cells = <1>; 400c9211fa2SKever Yang #size-cells = <1>; 401c9211fa2SKever Yang }; 402c9211fa2SKever Yang 403c9211fa2SKever Yang cru: clock-controller@fd7c0000 { 404c9211fa2SKever Yang compatible = "rockchip,rk3588-cru"; 405c9211fa2SKever Yang reg = <0x0 0xfd7c0000 0x0 0x5c000>; 406c9211fa2SKever Yang assigned-clocks = 407c9211fa2SKever Yang <&cru PLL_PPLL>, <&cru PLL_AUPLL>, 408c9211fa2SKever Yang <&cru PLL_NPLL>, <&cru PLL_GPLL>, 409c9211fa2SKever Yang <&cru ACLK_CENTER_ROOT>, 410c9211fa2SKever Yang <&cru HCLK_CENTER_ROOT>, <&cru ACLK_CENTER_LOW_ROOT>, 411c9211fa2SKever Yang <&cru ACLK_TOP_ROOT>, <&cru PCLK_TOP_ROOT>, 412c9211fa2SKever Yang <&cru ACLK_LOW_TOP_ROOT>, <&cru PCLK_PMU0_ROOT>, 413c9211fa2SKever Yang <&cru HCLK_PMU_CM0_ROOT>, <&cru ACLK_VOP>, 414c9211fa2SKever Yang <&cru ACLK_BUS_ROOT>, <&cru CLK_150M_SRC>, 415c9211fa2SKever Yang <&cru CLK_GPU>; 416c9211fa2SKever Yang assigned-clock-rates = 417c9211fa2SKever Yang <100000000>, <786432000>, 418c9211fa2SKever Yang <850000000>, <1188000000>, 419c9211fa2SKever Yang <702000000>, 420c9211fa2SKever Yang <400000000>, <500000000>, 421c9211fa2SKever Yang <800000000>, <100000000>, 422c9211fa2SKever Yang <400000000>, <100000000>, 423c9211fa2SKever Yang <200000000>, <500000000>, 424c9211fa2SKever Yang <375000000>, <150000000>, 425c9211fa2SKever Yang <200000000>; 426c9211fa2SKever Yang rockchip,grf = <&php_grf>; 427c9211fa2SKever Yang #clock-cells = <1>; 428c9211fa2SKever Yang #reset-cells = <1>; 429c9211fa2SKever Yang }; 430c9211fa2SKever Yang 431c9211fa2SKever Yang i2c0: i2c@fd880000 { 432c9211fa2SKever Yang compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 433c9211fa2SKever Yang reg = <0x0 0xfd880000 0x0 0x1000>; 434c9211fa2SKever Yang interrupts = <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH 0>; 435c9211fa2SKever Yang clocks = <&cru CLK_I2C0>, <&cru PCLK_I2C0>; 436c9211fa2SKever Yang clock-names = "i2c", "pclk"; 437c9211fa2SKever Yang pinctrl-0 = <&i2c0m0_xfer>; 438c9211fa2SKever Yang pinctrl-names = "default"; 439c9211fa2SKever Yang #address-cells = <1>; 440c9211fa2SKever Yang #size-cells = <0>; 441c9211fa2SKever Yang status = "disabled"; 442c9211fa2SKever Yang }; 443c9211fa2SKever Yang 444c9211fa2SKever Yang uart0: serial@fd890000 { 445c9211fa2SKever Yang compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 446c9211fa2SKever Yang reg = <0x0 0xfd890000 0x0 0x100>; 447c9211fa2SKever Yang interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH 0>; 448c9211fa2SKever Yang clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>; 449c9211fa2SKever Yang clock-names = "baudclk", "apb_pclk"; 450c9211fa2SKever Yang dmas = <&dmac0 6>, <&dmac0 7>; 451c9211fa2SKever Yang dma-names = "tx", "rx"; 452c9211fa2SKever Yang pinctrl-0 = <&uart0m1_xfer>; 453c9211fa2SKever Yang pinctrl-names = "default"; 454c9211fa2SKever Yang reg-shift = <2>; 455c9211fa2SKever Yang reg-io-width = <4>; 456c9211fa2SKever Yang status = "disabled"; 457c9211fa2SKever Yang }; 458c9211fa2SKever Yang 459c9211fa2SKever Yang pwm0: pwm@fd8b0000 { 460c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 461c9211fa2SKever Yang reg = <0x0 0xfd8b0000 0x0 0x10>; 462c9211fa2SKever Yang clocks = <&cru CLK_PMU1PWM>, <&cru PCLK_PMU1PWM>; 463c9211fa2SKever Yang clock-names = "pwm", "pclk"; 464c9211fa2SKever Yang pinctrl-0 = <&pwm0m0_pins>; 465c9211fa2SKever Yang pinctrl-names = "default"; 466c9211fa2SKever Yang #pwm-cells = <3>; 467c9211fa2SKever Yang status = "disabled"; 468c9211fa2SKever Yang }; 469c9211fa2SKever Yang 470c9211fa2SKever Yang pwm1: pwm@fd8b0010 { 471c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 472c9211fa2SKever Yang reg = <0x0 0xfd8b0010 0x0 0x10>; 473c9211fa2SKever Yang clocks = <&cru CLK_PMU1PWM>, <&cru PCLK_PMU1PWM>; 474c9211fa2SKever Yang clock-names = "pwm", "pclk"; 475c9211fa2SKever Yang pinctrl-0 = <&pwm1m0_pins>; 476c9211fa2SKever Yang pinctrl-names = "default"; 477c9211fa2SKever Yang #pwm-cells = <3>; 478c9211fa2SKever Yang status = "disabled"; 479c9211fa2SKever Yang }; 480c9211fa2SKever Yang 481c9211fa2SKever Yang pwm2: pwm@fd8b0020 { 482c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 483c9211fa2SKever Yang reg = <0x0 0xfd8b0020 0x0 0x10>; 484c9211fa2SKever Yang clocks = <&cru CLK_PMU1PWM>, <&cru PCLK_PMU1PWM>; 485c9211fa2SKever Yang clock-names = "pwm", "pclk"; 486c9211fa2SKever Yang pinctrl-0 = <&pwm2m0_pins>; 487c9211fa2SKever Yang pinctrl-names = "default"; 488c9211fa2SKever Yang #pwm-cells = <3>; 489c9211fa2SKever Yang status = "disabled"; 490c9211fa2SKever Yang }; 491c9211fa2SKever Yang 492c9211fa2SKever Yang pwm3: pwm@fd8b0030 { 493c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 494c9211fa2SKever Yang reg = <0x0 0xfd8b0030 0x0 0x10>; 495c9211fa2SKever Yang clocks = <&cru CLK_PMU1PWM>, <&cru PCLK_PMU1PWM>; 496c9211fa2SKever Yang clock-names = "pwm", "pclk"; 497c9211fa2SKever Yang pinctrl-0 = <&pwm3m0_pins>; 498c9211fa2SKever Yang pinctrl-names = "default"; 499c9211fa2SKever Yang #pwm-cells = <3>; 500c9211fa2SKever Yang status = "disabled"; 501c9211fa2SKever Yang }; 502c9211fa2SKever Yang 503c9211fa2SKever Yang pmu: power-management@fd8d8000 { 504c9211fa2SKever Yang compatible = "rockchip,rk3588-pmu", "syscon", "simple-mfd"; 505c9211fa2SKever Yang reg = <0x0 0xfd8d8000 0x0 0x400>; 506c9211fa2SKever Yang 507c9211fa2SKever Yang power: power-controller { 508c9211fa2SKever Yang compatible = "rockchip,rk3588-power-controller"; 509c9211fa2SKever Yang #address-cells = <1>; 510c9211fa2SKever Yang #power-domain-cells = <1>; 511c9211fa2SKever Yang #size-cells = <0>; 512c9211fa2SKever Yang status = "okay"; 513c9211fa2SKever Yang 514c9211fa2SKever Yang /* These power domains are grouped by VD_NPU */ 515c9211fa2SKever Yang power-domain@RK3588_PD_NPU { 516c9211fa2SKever Yang reg = <RK3588_PD_NPU>; 517c9211fa2SKever Yang #power-domain-cells = <0>; 518c9211fa2SKever Yang #address-cells = <1>; 519c9211fa2SKever Yang #size-cells = <0>; 520c9211fa2SKever Yang 521c9211fa2SKever Yang power-domain@RK3588_PD_NPUTOP { 522c9211fa2SKever Yang reg = <RK3588_PD_NPUTOP>; 523c9211fa2SKever Yang clocks = <&cru HCLK_NPU_ROOT>, 524c9211fa2SKever Yang <&cru PCLK_NPU_ROOT>, 525c9211fa2SKever Yang <&cru CLK_NPU_DSU0>, 526c9211fa2SKever Yang <&cru HCLK_NPU_CM0_ROOT>; 527c9211fa2SKever Yang pm_qos = <&qos_npu0_mwr>, 528c9211fa2SKever Yang <&qos_npu0_mro>, 529c9211fa2SKever Yang <&qos_mcu_npu>; 530c9211fa2SKever Yang #power-domain-cells = <0>; 531c9211fa2SKever Yang #address-cells = <1>; 532c9211fa2SKever Yang #size-cells = <0>; 533c9211fa2SKever Yang 534c9211fa2SKever Yang power-domain@RK3588_PD_NPU1 { 535c9211fa2SKever Yang reg = <RK3588_PD_NPU1>; 536c9211fa2SKever Yang clocks = <&cru HCLK_NPU_ROOT>, 537c9211fa2SKever Yang <&cru PCLK_NPU_ROOT>, 538c9211fa2SKever Yang <&cru CLK_NPU_DSU0>; 539c9211fa2SKever Yang pm_qos = <&qos_npu1>; 540c9211fa2SKever Yang #power-domain-cells = <0>; 541c9211fa2SKever Yang }; 542c9211fa2SKever Yang power-domain@RK3588_PD_NPU2 { 543c9211fa2SKever Yang reg = <RK3588_PD_NPU2>; 544c9211fa2SKever Yang clocks = <&cru HCLK_NPU_ROOT>, 545c9211fa2SKever Yang <&cru PCLK_NPU_ROOT>, 546c9211fa2SKever Yang <&cru CLK_NPU_DSU0>; 547c9211fa2SKever Yang pm_qos = <&qos_npu2>; 548c9211fa2SKever Yang #power-domain-cells = <0>; 549c9211fa2SKever Yang }; 550c9211fa2SKever Yang }; 551c9211fa2SKever Yang }; 552c9211fa2SKever Yang /* These power domains are grouped by VD_GPU */ 553c9211fa2SKever Yang power-domain@RK3588_PD_GPU { 554c9211fa2SKever Yang reg = <RK3588_PD_GPU>; 555c9211fa2SKever Yang clocks = <&cru CLK_GPU>, 556c9211fa2SKever Yang <&cru CLK_GPU_COREGROUP>, 557c9211fa2SKever Yang <&cru CLK_GPU_STACKS>; 558c9211fa2SKever Yang pm_qos = <&qos_gpu_m0>, 559c9211fa2SKever Yang <&qos_gpu_m1>, 560c9211fa2SKever Yang <&qos_gpu_m2>, 561c9211fa2SKever Yang <&qos_gpu_m3>; 562c9211fa2SKever Yang #power-domain-cells = <0>; 563c9211fa2SKever Yang }; 564c9211fa2SKever Yang /* These power domains are grouped by VD_VCODEC */ 565c9211fa2SKever Yang power-domain@RK3588_PD_VCODEC { 566c9211fa2SKever Yang reg = <RK3588_PD_VCODEC>; 567c9211fa2SKever Yang #address-cells = <1>; 568c9211fa2SKever Yang #size-cells = <0>; 569c9211fa2SKever Yang #power-domain-cells = <0>; 570c9211fa2SKever Yang 571c9211fa2SKever Yang power-domain@RK3588_PD_RKVDEC0 { 572c9211fa2SKever Yang reg = <RK3588_PD_RKVDEC0>; 573c9211fa2SKever Yang clocks = <&cru HCLK_RKVDEC0>, 574c9211fa2SKever Yang <&cru HCLK_VDPU_ROOT>, 575c9211fa2SKever Yang <&cru ACLK_VDPU_ROOT>, 576c9211fa2SKever Yang <&cru ACLK_RKVDEC0>, 577c9211fa2SKever Yang <&cru ACLK_RKVDEC_CCU>; 578c9211fa2SKever Yang pm_qos = <&qos_rkvdec0>; 579c9211fa2SKever Yang #power-domain-cells = <0>; 580c9211fa2SKever Yang }; 581c9211fa2SKever Yang power-domain@RK3588_PD_RKVDEC1 { 582c9211fa2SKever Yang reg = <RK3588_PD_RKVDEC1>; 583c9211fa2SKever Yang clocks = <&cru HCLK_RKVDEC1>, 584c9211fa2SKever Yang <&cru HCLK_VDPU_ROOT>, 585c9211fa2SKever Yang <&cru ACLK_VDPU_ROOT>, 586c9211fa2SKever Yang <&cru ACLK_RKVDEC1>; 587c9211fa2SKever Yang pm_qos = <&qos_rkvdec1>; 588c9211fa2SKever Yang #power-domain-cells = <0>; 589c9211fa2SKever Yang }; 590c9211fa2SKever Yang power-domain@RK3588_PD_VENC0 { 591c9211fa2SKever Yang reg = <RK3588_PD_VENC0>; 592c9211fa2SKever Yang clocks = <&cru HCLK_RKVENC0>, 593c9211fa2SKever Yang <&cru ACLK_RKVENC0>; 594c9211fa2SKever Yang pm_qos = <&qos_rkvenc0_m0ro>, 595c9211fa2SKever Yang <&qos_rkvenc0_m1ro>, 596c9211fa2SKever Yang <&qos_rkvenc0_m2wo>; 597c9211fa2SKever Yang #address-cells = <1>; 598c9211fa2SKever Yang #size-cells = <0>; 599c9211fa2SKever Yang #power-domain-cells = <0>; 600c9211fa2SKever Yang 601c9211fa2SKever Yang power-domain@RK3588_PD_VENC1 { 602c9211fa2SKever Yang reg = <RK3588_PD_VENC1>; 603c9211fa2SKever Yang clocks = <&cru HCLK_RKVENC1>, 604c9211fa2SKever Yang <&cru HCLK_RKVENC0>, 605c9211fa2SKever Yang <&cru ACLK_RKVENC0>, 606c9211fa2SKever Yang <&cru ACLK_RKVENC1>; 607c9211fa2SKever Yang pm_qos = <&qos_rkvenc1_m0ro>, 608c9211fa2SKever Yang <&qos_rkvenc1_m1ro>, 609c9211fa2SKever Yang <&qos_rkvenc1_m2wo>; 610c9211fa2SKever Yang #power-domain-cells = <0>; 611c9211fa2SKever Yang }; 612c9211fa2SKever Yang }; 613c9211fa2SKever Yang }; 614c9211fa2SKever Yang /* These power domains are grouped by VD_LOGIC */ 615c9211fa2SKever Yang power-domain@RK3588_PD_VDPU { 616c9211fa2SKever Yang reg = <RK3588_PD_VDPU>; 617c9211fa2SKever Yang clocks = <&cru HCLK_VDPU_ROOT>, 618c9211fa2SKever Yang <&cru ACLK_VDPU_LOW_ROOT>, 619c9211fa2SKever Yang <&cru ACLK_VDPU_ROOT>, 620c9211fa2SKever Yang <&cru ACLK_JPEG_DECODER_ROOT>, 621c9211fa2SKever Yang <&cru ACLK_IEP2P0>, 622c9211fa2SKever Yang <&cru HCLK_IEP2P0>, 623c9211fa2SKever Yang <&cru ACLK_JPEG_ENCODER0>, 624c9211fa2SKever Yang <&cru HCLK_JPEG_ENCODER0>, 625c9211fa2SKever Yang <&cru ACLK_JPEG_ENCODER1>, 626c9211fa2SKever Yang <&cru HCLK_JPEG_ENCODER1>, 627c9211fa2SKever Yang <&cru ACLK_JPEG_ENCODER2>, 628c9211fa2SKever Yang <&cru HCLK_JPEG_ENCODER2>, 629c9211fa2SKever Yang <&cru ACLK_JPEG_ENCODER3>, 630c9211fa2SKever Yang <&cru HCLK_JPEG_ENCODER3>, 631c9211fa2SKever Yang <&cru ACLK_JPEG_DECODER>, 632c9211fa2SKever Yang <&cru HCLK_JPEG_DECODER>, 633c9211fa2SKever Yang <&cru ACLK_RGA2>, 634c9211fa2SKever Yang <&cru HCLK_RGA2>; 635c9211fa2SKever Yang pm_qos = <&qos_iep>, 636c9211fa2SKever Yang <&qos_jpeg_dec>, 637c9211fa2SKever Yang <&qos_jpeg_enc0>, 638c9211fa2SKever Yang <&qos_jpeg_enc1>, 639c9211fa2SKever Yang <&qos_jpeg_enc2>, 640c9211fa2SKever Yang <&qos_jpeg_enc3>, 641c9211fa2SKever Yang <&qos_rga2_mro>, 642c9211fa2SKever Yang <&qos_rga2_mwo>; 643c9211fa2SKever Yang #address-cells = <1>; 644c9211fa2SKever Yang #size-cells = <0>; 645c9211fa2SKever Yang #power-domain-cells = <0>; 646c9211fa2SKever Yang 647c9211fa2SKever Yang 648c9211fa2SKever Yang power-domain@RK3588_PD_AV1 { 649c9211fa2SKever Yang reg = <RK3588_PD_AV1>; 650c9211fa2SKever Yang clocks = <&cru PCLK_AV1>, 651c9211fa2SKever Yang <&cru ACLK_AV1>, 652c9211fa2SKever Yang <&cru HCLK_VDPU_ROOT>; 653c9211fa2SKever Yang pm_qos = <&qos_av1>; 654c9211fa2SKever Yang #power-domain-cells = <0>; 655c9211fa2SKever Yang }; 656c9211fa2SKever Yang power-domain@RK3588_PD_RKVDEC0 { 657c9211fa2SKever Yang reg = <RK3588_PD_RKVDEC0>; 658c9211fa2SKever Yang clocks = <&cru HCLK_RKVDEC0>, 659c9211fa2SKever Yang <&cru HCLK_VDPU_ROOT>, 660c9211fa2SKever Yang <&cru ACLK_VDPU_ROOT>, 661c9211fa2SKever Yang <&cru ACLK_RKVDEC0>; 662c9211fa2SKever Yang pm_qos = <&qos_rkvdec0>; 663c9211fa2SKever Yang #power-domain-cells = <0>; 664c9211fa2SKever Yang }; 665c9211fa2SKever Yang power-domain@RK3588_PD_RKVDEC1 { 666c9211fa2SKever Yang reg = <RK3588_PD_RKVDEC1>; 667c9211fa2SKever Yang clocks = <&cru HCLK_RKVDEC1>, 668c9211fa2SKever Yang <&cru HCLK_VDPU_ROOT>, 669c9211fa2SKever Yang <&cru ACLK_VDPU_ROOT>; 670c9211fa2SKever Yang pm_qos = <&qos_rkvdec1>; 671c9211fa2SKever Yang #power-domain-cells = <0>; 672c9211fa2SKever Yang }; 673c9211fa2SKever Yang power-domain@RK3588_PD_RGA30 { 674c9211fa2SKever Yang reg = <RK3588_PD_RGA30>; 675c9211fa2SKever Yang clocks = <&cru ACLK_RGA3_0>, 676c9211fa2SKever Yang <&cru HCLK_RGA3_0>; 677c9211fa2SKever Yang pm_qos = <&qos_rga3_0>; 678c9211fa2SKever Yang #power-domain-cells = <0>; 679c9211fa2SKever Yang }; 680c9211fa2SKever Yang }; 681c9211fa2SKever Yang power-domain@RK3588_PD_VOP { 682c9211fa2SKever Yang reg = <RK3588_PD_VOP>; 683c9211fa2SKever Yang clocks = <&cru PCLK_VOP_ROOT>, 684c9211fa2SKever Yang <&cru HCLK_VOP_ROOT>, 685c9211fa2SKever Yang <&cru ACLK_VOP>; 686c9211fa2SKever Yang pm_qos = <&qos_vop_m0>, 687c9211fa2SKever Yang <&qos_vop_m1>; 688c9211fa2SKever Yang #address-cells = <1>; 689c9211fa2SKever Yang #size-cells = <0>; 690c9211fa2SKever Yang #power-domain-cells = <0>; 691c9211fa2SKever Yang 692c9211fa2SKever Yang power-domain@RK3588_PD_VO0 { 693c9211fa2SKever Yang reg = <RK3588_PD_VO0>; 694c9211fa2SKever Yang clocks = <&cru PCLK_VO0_ROOT>, 695c9211fa2SKever Yang <&cru PCLK_VO0_S_ROOT>, 696c9211fa2SKever Yang <&cru HCLK_VO0_S_ROOT>, 697c9211fa2SKever Yang <&cru ACLK_VO0_ROOT>, 698c9211fa2SKever Yang <&cru HCLK_HDCP0>, 699c9211fa2SKever Yang <&cru ACLK_HDCP0>, 700c9211fa2SKever Yang <&cru HCLK_VOP_ROOT>; 701c9211fa2SKever Yang pm_qos = <&qos_hdcp0>; 702c9211fa2SKever Yang #power-domain-cells = <0>; 703c9211fa2SKever Yang }; 704c9211fa2SKever Yang }; 705c9211fa2SKever Yang power-domain@RK3588_PD_VO1 { 706c9211fa2SKever Yang reg = <RK3588_PD_VO1>; 707c9211fa2SKever Yang clocks = <&cru PCLK_VO1_ROOT>, 708c9211fa2SKever Yang <&cru PCLK_VO1_S_ROOT>, 709c9211fa2SKever Yang <&cru HCLK_VO1_S_ROOT>, 710c9211fa2SKever Yang <&cru HCLK_HDCP1>, 711c9211fa2SKever Yang <&cru ACLK_HDCP1>, 712c9211fa2SKever Yang <&cru ACLK_HDMIRX_ROOT>, 713c9211fa2SKever Yang <&cru HCLK_VO1USB_TOP_ROOT>; 714c9211fa2SKever Yang pm_qos = <&qos_hdcp1>, 715c9211fa2SKever Yang <&qos_hdmirx>; 716c9211fa2SKever Yang #power-domain-cells = <0>; 717c9211fa2SKever Yang }; 718c9211fa2SKever Yang power-domain@RK3588_PD_VI { 719c9211fa2SKever Yang reg = <RK3588_PD_VI>; 720c9211fa2SKever Yang clocks = <&cru HCLK_VI_ROOT>, 721c9211fa2SKever Yang <&cru PCLK_VI_ROOT>, 722c9211fa2SKever Yang <&cru HCLK_ISP0>, 723c9211fa2SKever Yang <&cru ACLK_ISP0>, 724c9211fa2SKever Yang <&cru HCLK_VICAP>, 725c9211fa2SKever Yang <&cru ACLK_VICAP>; 726c9211fa2SKever Yang pm_qos = <&qos_isp0_mro>, 727c9211fa2SKever Yang <&qos_isp0_mwo>, 728c9211fa2SKever Yang <&qos_vicap_m0>, 729c9211fa2SKever Yang <&qos_vicap_m1>; 730c9211fa2SKever Yang #address-cells = <1>; 731c9211fa2SKever Yang #size-cells = <0>; 732c9211fa2SKever Yang #power-domain-cells = <0>; 733c9211fa2SKever Yang 734c9211fa2SKever Yang power-domain@RK3588_PD_ISP1 { 735c9211fa2SKever Yang reg = <RK3588_PD_ISP1>; 736c9211fa2SKever Yang clocks = <&cru HCLK_ISP1>, 737c9211fa2SKever Yang <&cru ACLK_ISP1>, 738c9211fa2SKever Yang <&cru HCLK_VI_ROOT>, 739c9211fa2SKever Yang <&cru PCLK_VI_ROOT>; 740c9211fa2SKever Yang pm_qos = <&qos_isp1_mwo>, 741c9211fa2SKever Yang <&qos_isp1_mro>; 742c9211fa2SKever Yang #power-domain-cells = <0>; 743c9211fa2SKever Yang }; 744c9211fa2SKever Yang power-domain@RK3588_PD_FEC { 745c9211fa2SKever Yang reg = <RK3588_PD_FEC>; 746c9211fa2SKever Yang clocks = <&cru HCLK_FISHEYE0>, 747c9211fa2SKever Yang <&cru ACLK_FISHEYE0>, 748c9211fa2SKever Yang <&cru HCLK_FISHEYE1>, 749c9211fa2SKever Yang <&cru ACLK_FISHEYE1>, 750c9211fa2SKever Yang <&cru PCLK_VI_ROOT>; 751c9211fa2SKever Yang pm_qos = <&qos_fisheye0>, 752c9211fa2SKever Yang <&qos_fisheye1>; 753c9211fa2SKever Yang #power-domain-cells = <0>; 754c9211fa2SKever Yang }; 755c9211fa2SKever Yang }; 756c9211fa2SKever Yang power-domain@RK3588_PD_RGA31 { 757c9211fa2SKever Yang reg = <RK3588_PD_RGA31>; 758c9211fa2SKever Yang clocks = <&cru HCLK_RGA3_1>, 759c9211fa2SKever Yang <&cru ACLK_RGA3_1>; 760c9211fa2SKever Yang pm_qos = <&qos_rga3_1>; 761c9211fa2SKever Yang #power-domain-cells = <0>; 762c9211fa2SKever Yang }; 763c9211fa2SKever Yang power-domain@RK3588_PD_USB { 764c9211fa2SKever Yang reg = <RK3588_PD_USB>; 765c9211fa2SKever Yang clocks = <&cru PCLK_PHP_ROOT>, 766c9211fa2SKever Yang <&cru ACLK_USB_ROOT>, 767c9211fa2SKever Yang <&cru HCLK_USB_ROOT>, 768c9211fa2SKever Yang <&cru HCLK_HOST0>, 769c9211fa2SKever Yang <&cru HCLK_HOST_ARB0>, 770c9211fa2SKever Yang <&cru HCLK_HOST1>, 771c9211fa2SKever Yang <&cru HCLK_HOST_ARB1>; 772c9211fa2SKever Yang pm_qos = <&qos_usb3_0>, 773c9211fa2SKever Yang <&qos_usb3_1>, 774c9211fa2SKever Yang <&qos_usb2host_0>, 775c9211fa2SKever Yang <&qos_usb2host_1>; 776c9211fa2SKever Yang #power-domain-cells = <0>; 777c9211fa2SKever Yang }; 778c9211fa2SKever Yang power-domain@RK3588_PD_GMAC { 779c9211fa2SKever Yang reg = <RK3588_PD_GMAC>; 780c9211fa2SKever Yang clocks = <&cru PCLK_PHP_ROOT>, 781c9211fa2SKever Yang <&cru ACLK_PCIE_ROOT>, 782c9211fa2SKever Yang <&cru ACLK_PHP_ROOT>; 783c9211fa2SKever Yang #power-domain-cells = <0>; 784c9211fa2SKever Yang }; 785c9211fa2SKever Yang power-domain@RK3588_PD_PCIE { 786c9211fa2SKever Yang reg = <RK3588_PD_PCIE>; 787c9211fa2SKever Yang clocks = <&cru PCLK_PHP_ROOT>, 788c9211fa2SKever Yang <&cru ACLK_PCIE_ROOT>, 789c9211fa2SKever Yang <&cru ACLK_PHP_ROOT>; 790c9211fa2SKever Yang #power-domain-cells = <0>; 791c9211fa2SKever Yang }; 792c9211fa2SKever Yang power-domain@RK3588_PD_SDIO { 793c9211fa2SKever Yang reg = <RK3588_PD_SDIO>; 794c9211fa2SKever Yang clocks = <&cru HCLK_SDIO>, 795c9211fa2SKever Yang <&cru HCLK_NVM_ROOT>; 796c9211fa2SKever Yang pm_qos = <&qos_sdio>; 797c9211fa2SKever Yang #power-domain-cells = <0>; 798c9211fa2SKever Yang }; 799c9211fa2SKever Yang power-domain@RK3588_PD_AUDIO { 800c9211fa2SKever Yang reg = <RK3588_PD_AUDIO>; 801c9211fa2SKever Yang clocks = <&cru HCLK_AUDIO_ROOT>, 802c9211fa2SKever Yang <&cru PCLK_AUDIO_ROOT>; 803c9211fa2SKever Yang #power-domain-cells = <0>; 804c9211fa2SKever Yang }; 805c9211fa2SKever Yang power-domain@RK3588_PD_SDMMC { 806c9211fa2SKever Yang reg = <RK3588_PD_SDMMC>; 807c9211fa2SKever Yang pm_qos = <&qos_sdmmc>; 808c9211fa2SKever Yang #power-domain-cells = <0>; 809c9211fa2SKever Yang }; 810c9211fa2SKever Yang }; 811c9211fa2SKever Yang }; 812c9211fa2SKever Yang 813c9211fa2SKever Yang qos_gpu_m0: qos@fdf35000 { 814c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 815c9211fa2SKever Yang reg = <0x0 0xfdf35000 0x0 0x20>; 816c9211fa2SKever Yang }; 817c9211fa2SKever Yang 818c9211fa2SKever Yang qos_gpu_m1: qos@fdf35200 { 819c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 820c9211fa2SKever Yang reg = <0x0 0xfdf35200 0x0 0x20>; 821c9211fa2SKever Yang }; 822c9211fa2SKever Yang 823c9211fa2SKever Yang qos_gpu_m2: qos@fdf35400 { 824c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 825c9211fa2SKever Yang reg = <0x0 0xfdf35400 0x0 0x20>; 826c9211fa2SKever Yang }; 827c9211fa2SKever Yang 828c9211fa2SKever Yang qos_gpu_m3: qos@fdf35600 { 829c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 830c9211fa2SKever Yang reg = <0x0 0xfdf35600 0x0 0x20>; 831c9211fa2SKever Yang }; 832c9211fa2SKever Yang 833c9211fa2SKever Yang qos_rga3_1: qos@fdf36000 { 834c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 835c9211fa2SKever Yang reg = <0x0 0xfdf36000 0x0 0x20>; 836c9211fa2SKever Yang }; 837c9211fa2SKever Yang 838c9211fa2SKever Yang qos_sdio: qos@fdf39000 { 839c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 840c9211fa2SKever Yang reg = <0x0 0xfdf39000 0x0 0x20>; 841c9211fa2SKever Yang }; 842c9211fa2SKever Yang 843c9211fa2SKever Yang qos_sdmmc: qos@fdf3d800 { 844c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 845c9211fa2SKever Yang reg = <0x0 0xfdf3d800 0x0 0x20>; 846c9211fa2SKever Yang }; 847c9211fa2SKever Yang 848c9211fa2SKever Yang qos_usb3_1: qos@fdf3e000 { 849c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 850c9211fa2SKever Yang reg = <0x0 0xfdf3e000 0x0 0x20>; 851c9211fa2SKever Yang }; 852c9211fa2SKever Yang 853c9211fa2SKever Yang qos_usb3_0: qos@fdf3e200 { 854c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 855c9211fa2SKever Yang reg = <0x0 0xfdf3e200 0x0 0x20>; 856c9211fa2SKever Yang }; 857c9211fa2SKever Yang 858c9211fa2SKever Yang qos_usb2host_0: qos@fdf3e400 { 859c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 860c9211fa2SKever Yang reg = <0x0 0xfdf3e400 0x0 0x20>; 861c9211fa2SKever Yang }; 862c9211fa2SKever Yang 863c9211fa2SKever Yang qos_usb2host_1: qos@fdf3e600 { 864c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 865c9211fa2SKever Yang reg = <0x0 0xfdf3e600 0x0 0x20>; 866c9211fa2SKever Yang }; 867c9211fa2SKever Yang 868c9211fa2SKever Yang qos_fisheye0: qos@fdf40000 { 869c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 870c9211fa2SKever Yang reg = <0x0 0xfdf40000 0x0 0x20>; 871c9211fa2SKever Yang }; 872c9211fa2SKever Yang 873c9211fa2SKever Yang qos_fisheye1: qos@fdf40200 { 874c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 875c9211fa2SKever Yang reg = <0x0 0xfdf40200 0x0 0x20>; 876c9211fa2SKever Yang }; 877c9211fa2SKever Yang 878c9211fa2SKever Yang qos_isp0_mro: qos@fdf40400 { 879c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 880c9211fa2SKever Yang reg = <0x0 0xfdf40400 0x0 0x20>; 881c9211fa2SKever Yang }; 882c9211fa2SKever Yang 883c9211fa2SKever Yang qos_isp0_mwo: qos@fdf40500 { 884c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 885c9211fa2SKever Yang reg = <0x0 0xfdf40500 0x0 0x20>; 886c9211fa2SKever Yang }; 887c9211fa2SKever Yang 888c9211fa2SKever Yang qos_vicap_m0: qos@fdf40600 { 889c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 890c9211fa2SKever Yang reg = <0x0 0xfdf40600 0x0 0x20>; 891c9211fa2SKever Yang }; 892c9211fa2SKever Yang 893c9211fa2SKever Yang qos_vicap_m1: qos@fdf40800 { 894c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 895c9211fa2SKever Yang reg = <0x0 0xfdf40800 0x0 0x20>; 896c9211fa2SKever Yang }; 897c9211fa2SKever Yang 898c9211fa2SKever Yang qos_isp1_mwo: qos@fdf41000 { 899c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 900c9211fa2SKever Yang reg = <0x0 0xfdf41000 0x0 0x20>; 901c9211fa2SKever Yang }; 902c9211fa2SKever Yang 903c9211fa2SKever Yang qos_isp1_mro: qos@fdf41100 { 904c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 905c9211fa2SKever Yang reg = <0x0 0xfdf41100 0x0 0x20>; 906c9211fa2SKever Yang }; 907c9211fa2SKever Yang 908c9211fa2SKever Yang qos_rkvenc0_m0ro: qos@fdf60000 { 909c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 910c9211fa2SKever Yang reg = <0x0 0xfdf60000 0x0 0x20>; 911c9211fa2SKever Yang }; 912c9211fa2SKever Yang 913c9211fa2SKever Yang qos_rkvenc0_m1ro: qos@fdf60200 { 914c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 915c9211fa2SKever Yang reg = <0x0 0xfdf60200 0x0 0x20>; 916c9211fa2SKever Yang }; 917c9211fa2SKever Yang 918c9211fa2SKever Yang qos_rkvenc0_m2wo: qos@fdf60400 { 919c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 920c9211fa2SKever Yang reg = <0x0 0xfdf60400 0x0 0x20>; 921c9211fa2SKever Yang }; 922c9211fa2SKever Yang 923c9211fa2SKever Yang qos_rkvenc1_m0ro: qos@fdf61000 { 924c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 925c9211fa2SKever Yang reg = <0x0 0xfdf61000 0x0 0x20>; 926c9211fa2SKever Yang }; 927c9211fa2SKever Yang 928c9211fa2SKever Yang qos_rkvenc1_m1ro: qos@fdf61200 { 929c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 930c9211fa2SKever Yang reg = <0x0 0xfdf61200 0x0 0x20>; 931c9211fa2SKever Yang }; 932c9211fa2SKever Yang 933c9211fa2SKever Yang qos_rkvenc1_m2wo: qos@fdf61400 { 934c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 935c9211fa2SKever Yang reg = <0x0 0xfdf61400 0x0 0x20>; 936c9211fa2SKever Yang }; 937c9211fa2SKever Yang 938c9211fa2SKever Yang qos_rkvdec0: qos@fdf62000 { 939c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 940c9211fa2SKever Yang reg = <0x0 0xfdf62000 0x0 0x20>; 941c9211fa2SKever Yang }; 942c9211fa2SKever Yang 943c9211fa2SKever Yang qos_rkvdec1: qos@fdf63000 { 944c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 945c9211fa2SKever Yang reg = <0x0 0xfdf63000 0x0 0x20>; 946c9211fa2SKever Yang }; 947c9211fa2SKever Yang 948c9211fa2SKever Yang qos_av1: qos@fdf64000 { 949c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 950c9211fa2SKever Yang reg = <0x0 0xfdf64000 0x0 0x20>; 951c9211fa2SKever Yang }; 952c9211fa2SKever Yang 953c9211fa2SKever Yang qos_iep: qos@fdf66000 { 954c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 955c9211fa2SKever Yang reg = <0x0 0xfdf66000 0x0 0x20>; 956c9211fa2SKever Yang }; 957c9211fa2SKever Yang 958c9211fa2SKever Yang qos_jpeg_dec: qos@fdf66200 { 959c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 960c9211fa2SKever Yang reg = <0x0 0xfdf66200 0x0 0x20>; 961c9211fa2SKever Yang }; 962c9211fa2SKever Yang 963c9211fa2SKever Yang qos_jpeg_enc0: qos@fdf66400 { 964c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 965c9211fa2SKever Yang reg = <0x0 0xfdf66400 0x0 0x20>; 966c9211fa2SKever Yang }; 967c9211fa2SKever Yang 968c9211fa2SKever Yang qos_jpeg_enc1: qos@fdf66600 { 969c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 970c9211fa2SKever Yang reg = <0x0 0xfdf66600 0x0 0x20>; 971c9211fa2SKever Yang }; 972c9211fa2SKever Yang 973c9211fa2SKever Yang qos_jpeg_enc2: qos@fdf66800 { 974c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 975c9211fa2SKever Yang reg = <0x0 0xfdf66800 0x0 0x20>; 976c9211fa2SKever Yang }; 977c9211fa2SKever Yang 978c9211fa2SKever Yang qos_jpeg_enc3: qos@fdf66a00 { 979c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 980c9211fa2SKever Yang reg = <0x0 0xfdf66a00 0x0 0x20>; 981c9211fa2SKever Yang }; 982c9211fa2SKever Yang 983c9211fa2SKever Yang qos_rga2_mro: qos@fdf66c00 { 984c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 985c9211fa2SKever Yang reg = <0x0 0xfdf66c00 0x0 0x20>; 986c9211fa2SKever Yang }; 987c9211fa2SKever Yang 988c9211fa2SKever Yang qos_rga2_mwo: qos@fdf66e00 { 989c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 990c9211fa2SKever Yang reg = <0x0 0xfdf66e00 0x0 0x20>; 991c9211fa2SKever Yang }; 992c9211fa2SKever Yang 993c9211fa2SKever Yang qos_rga3_0: qos@fdf67000 { 994c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 995c9211fa2SKever Yang reg = <0x0 0xfdf67000 0x0 0x20>; 996c9211fa2SKever Yang }; 997c9211fa2SKever Yang 998c9211fa2SKever Yang qos_vdpu: qos@fdf67200 { 999c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1000c9211fa2SKever Yang reg = <0x0 0xfdf67200 0x0 0x20>; 1001c9211fa2SKever Yang }; 1002c9211fa2SKever Yang 1003c9211fa2SKever Yang qos_npu1: qos@fdf70000 { 1004c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1005c9211fa2SKever Yang reg = <0x0 0xfdf70000 0x0 0x20>; 1006c9211fa2SKever Yang }; 1007c9211fa2SKever Yang 1008c9211fa2SKever Yang qos_npu2: qos@fdf71000 { 1009c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1010c9211fa2SKever Yang reg = <0x0 0xfdf71000 0x0 0x20>; 1011c9211fa2SKever Yang }; 1012c9211fa2SKever Yang 1013c9211fa2SKever Yang qos_npu0_mwr: qos@fdf72000 { 1014c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1015c9211fa2SKever Yang reg = <0x0 0xfdf72000 0x0 0x20>; 1016c9211fa2SKever Yang }; 1017c9211fa2SKever Yang 1018c9211fa2SKever Yang qos_npu0_mro: qos@fdf72200 { 1019c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1020c9211fa2SKever Yang reg = <0x0 0xfdf72200 0x0 0x20>; 1021c9211fa2SKever Yang }; 1022c9211fa2SKever Yang 1023c9211fa2SKever Yang qos_mcu_npu: qos@fdf72400 { 1024c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1025c9211fa2SKever Yang reg = <0x0 0xfdf72400 0x0 0x20>; 1026c9211fa2SKever Yang }; 1027c9211fa2SKever Yang 1028c9211fa2SKever Yang qos_hdcp0: qos@fdf80000 { 1029c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1030c9211fa2SKever Yang reg = <0x0 0xfdf80000 0x0 0x20>; 1031c9211fa2SKever Yang }; 1032c9211fa2SKever Yang 1033c9211fa2SKever Yang qos_hdcp1: qos@fdf81000 { 1034c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1035c9211fa2SKever Yang reg = <0x0 0xfdf81000 0x0 0x20>; 1036c9211fa2SKever Yang }; 1037c9211fa2SKever Yang 1038c9211fa2SKever Yang qos_hdmirx: qos@fdf81200 { 1039c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1040c9211fa2SKever Yang reg = <0x0 0xfdf81200 0x0 0x20>; 1041c9211fa2SKever Yang }; 1042c9211fa2SKever Yang 1043c9211fa2SKever Yang qos_vop_m0: qos@fdf82000 { 1044c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1045c9211fa2SKever Yang reg = <0x0 0xfdf82000 0x0 0x20>; 1046c9211fa2SKever Yang }; 1047c9211fa2SKever Yang 1048c9211fa2SKever Yang qos_vop_m1: qos@fdf82200 { 1049c9211fa2SKever Yang compatible = "rockchip,rk3588-qos", "syscon"; 1050c9211fa2SKever Yang reg = <0x0 0xfdf82200 0x0 0x20>; 1051c9211fa2SKever Yang }; 1052c9211fa2SKever Yang 1053c9211fa2SKever Yang gmac1: ethernet@fe1c0000 { 1054c9211fa2SKever Yang compatible = "rockchip,rk3588-gmac", "snps,dwmac-4.20a"; 1055c9211fa2SKever Yang reg = <0x0 0xfe1c0000 0x0 0x10000>; 1056c9211fa2SKever Yang interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH 0>, 1057c9211fa2SKever Yang <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH 0>; 1058c9211fa2SKever Yang interrupt-names = "macirq", "eth_wake_irq"; 1059c9211fa2SKever Yang clocks = <&cru CLK_GMAC_125M>, <&cru CLK_GMAC_50M>, 1060c9211fa2SKever Yang <&cru PCLK_GMAC1>, <&cru ACLK_GMAC1>, 1061c9211fa2SKever Yang <&cru CLK_GMAC1_PTP_REF>; 1062c9211fa2SKever Yang clock-names = "stmmaceth", "clk_mac_ref", 1063c9211fa2SKever Yang "pclk_mac", "aclk_mac", 1064c9211fa2SKever Yang "ptp_ref"; 1065c9211fa2SKever Yang power-domains = <&power RK3588_PD_GMAC>; 1066c9211fa2SKever Yang resets = <&cru SRST_A_GMAC1>; 1067c9211fa2SKever Yang reset-names = "stmmaceth"; 1068c9211fa2SKever Yang rockchip,grf = <&sys_grf>; 1069c9211fa2SKever Yang rockchip,php-grf = <&php_grf>; 1070c9211fa2SKever Yang snps,axi-config = <&gmac1_stmmac_axi_setup>; 1071c9211fa2SKever Yang snps,mixed-burst; 1072c9211fa2SKever Yang snps,mtl-rx-config = <&gmac1_mtl_rx_setup>; 1073c9211fa2SKever Yang snps,mtl-tx-config = <&gmac1_mtl_tx_setup>; 1074c9211fa2SKever Yang snps,tso; 1075c9211fa2SKever Yang status = "disabled"; 1076c9211fa2SKever Yang 1077c9211fa2SKever Yang mdio1: mdio { 1078c9211fa2SKever Yang compatible = "snps,dwmac-mdio"; 1079c9211fa2SKever Yang #address-cells = <0x1>; 1080c9211fa2SKever Yang #size-cells = <0x0>; 1081c9211fa2SKever Yang }; 1082c9211fa2SKever Yang 1083c9211fa2SKever Yang gmac1_stmmac_axi_setup: stmmac-axi-config { 1084c9211fa2SKever Yang snps,blen = <0 0 0 0 16 8 4>; 1085c9211fa2SKever Yang snps,wr_osr_lmt = <4>; 1086c9211fa2SKever Yang snps,rd_osr_lmt = <8>; 1087c9211fa2SKever Yang }; 1088c9211fa2SKever Yang 1089c9211fa2SKever Yang gmac1_mtl_rx_setup: rx-queues-config { 1090c9211fa2SKever Yang snps,rx-queues-to-use = <2>; 1091c9211fa2SKever Yang queue0 {}; 1092c9211fa2SKever Yang queue1 {}; 1093c9211fa2SKever Yang }; 1094c9211fa2SKever Yang 1095c9211fa2SKever Yang gmac1_mtl_tx_setup: tx-queues-config { 1096c9211fa2SKever Yang snps,tx-queues-to-use = <2>; 1097c9211fa2SKever Yang queue0 {}; 1098c9211fa2SKever Yang queue1 {}; 1099c9211fa2SKever Yang }; 1100c9211fa2SKever Yang }; 1101c9211fa2SKever Yang 1102dbe406d1SLucas Tanure sdmmc: mmc@fe2c0000 { 1103dbe406d1SLucas Tanure compatible = "rockchip,rk3588-dw-mshc", "rockchip,rk3288-dw-mshc"; 1104dbe406d1SLucas Tanure reg = <0x0 0xfe2c0000 0x0 0x4000>; 1105dbe406d1SLucas Tanure interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH 0>; 1106dbe406d1SLucas Tanure clocks = <&scmi_clk SCMI_HCLK_SD>, <&scmi_clk SCMI_CCLK_SD>, 1107dbe406d1SLucas Tanure <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>; 1108dbe406d1SLucas Tanure clock-names = "biu", "ciu", "ciu-drive", "ciu-sample"; 1109dbe406d1SLucas Tanure fifo-depth = <0x100>; 1110dbe406d1SLucas Tanure max-frequency = <200000000>; 1111dbe406d1SLucas Tanure pinctrl-names = "default"; 1112dbe406d1SLucas Tanure pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_det &sdmmc_bus4>; 1113dbe406d1SLucas Tanure power-domains = <&power RK3588_PD_SDMMC>; 1114dbe406d1SLucas Tanure status = "disabled"; 1115dbe406d1SLucas Tanure }; 1116dbe406d1SLucas Tanure 1117c9211fa2SKever Yang sdhci: mmc@fe2e0000 { 1118c9211fa2SKever Yang compatible = "rockchip,rk3588-dwcmshc"; 1119c9211fa2SKever Yang reg = <0x0 0xfe2e0000 0x0 0x10000>; 1120c9211fa2SKever Yang interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH 0>; 1121c9211fa2SKever Yang assigned-clocks = <&cru BCLK_EMMC>, <&cru TMCLK_EMMC>, <&cru CCLK_EMMC>; 1122c9211fa2SKever Yang assigned-clock-rates = <200000000>, <24000000>, <200000000>; 1123c9211fa2SKever Yang clocks = <&cru CCLK_EMMC>, <&cru HCLK_EMMC>, 1124c9211fa2SKever Yang <&cru ACLK_EMMC>, <&cru BCLK_EMMC>, 1125c9211fa2SKever Yang <&cru TMCLK_EMMC>; 1126c9211fa2SKever Yang clock-names = "core", "bus", "axi", "block", "timer"; 1127c9211fa2SKever Yang max-frequency = <200000000>; 1128c9211fa2SKever Yang resets = <&cru SRST_C_EMMC>, <&cru SRST_H_EMMC>, 1129c9211fa2SKever Yang <&cru SRST_A_EMMC>, <&cru SRST_B_EMMC>, 1130c9211fa2SKever Yang <&cru SRST_T_EMMC>; 1131c9211fa2SKever Yang reset-names = "core", "bus", "axi", "block", "timer"; 1132c9211fa2SKever Yang status = "disabled"; 1133c9211fa2SKever Yang }; 1134c9211fa2SKever Yang 1135c9211fa2SKever Yang gic: interrupt-controller@fe600000 { 1136c9211fa2SKever Yang compatible = "arm,gic-v3"; 1137c9211fa2SKever Yang reg = <0x0 0xfe600000 0 0x10000>, /* GICD */ 1138c9211fa2SKever Yang <0x0 0xfe680000 0 0x100000>; /* GICR */ 1139c9211fa2SKever Yang interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH 0>; 1140c9211fa2SKever Yang interrupt-controller; 1141c9211fa2SKever Yang mbi-alias = <0x0 0xfe610000>; 1142c9211fa2SKever Yang mbi-ranges = <424 56>; 1143c9211fa2SKever Yang msi-controller; 1144c9211fa2SKever Yang #interrupt-cells = <4>; 1145c9211fa2SKever Yang 1146c9211fa2SKever Yang ppi-partitions { 1147c9211fa2SKever Yang ppi_partition0: interrupt-partition-0 { 1148c9211fa2SKever Yang affinity = <&cpu_l0 &cpu_l1 &cpu_l2 &cpu_l3>; 1149c9211fa2SKever Yang }; 1150c9211fa2SKever Yang 1151c9211fa2SKever Yang ppi_partition1: interrupt-partition-1 { 1152c9211fa2SKever Yang affinity = <&cpu_b0 &cpu_b1 &cpu_b2 &cpu_b3>; 1153c9211fa2SKever Yang }; 1154c9211fa2SKever Yang }; 1155c9211fa2SKever Yang }; 1156c9211fa2SKever Yang 1157c9211fa2SKever Yang dmac0: dma-controller@fea10000 { 1158c9211fa2SKever Yang compatible = "arm,pl330", "arm,primecell"; 1159c9211fa2SKever Yang reg = <0x0 0xfea10000 0x0 0x4000>; 1160c9211fa2SKever Yang interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH 0>, 1161c9211fa2SKever Yang <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH 0>; 1162c9211fa2SKever Yang arm,pl330-periph-burst; 1163c9211fa2SKever Yang clocks = <&cru ACLK_DMAC0>; 1164c9211fa2SKever Yang clock-names = "apb_pclk"; 1165c9211fa2SKever Yang #dma-cells = <1>; 1166c9211fa2SKever Yang }; 1167c9211fa2SKever Yang 1168c9211fa2SKever Yang dmac1: dma-controller@fea30000 { 1169c9211fa2SKever Yang compatible = "arm,pl330", "arm,primecell"; 1170c9211fa2SKever Yang reg = <0x0 0xfea30000 0x0 0x4000>; 1171c9211fa2SKever Yang interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH 0>, 1172c9211fa2SKever Yang <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH 0>; 1173c9211fa2SKever Yang arm,pl330-periph-burst; 1174c9211fa2SKever Yang clocks = <&cru ACLK_DMAC1>; 1175c9211fa2SKever Yang clock-names = "apb_pclk"; 1176c9211fa2SKever Yang #dma-cells = <1>; 1177c9211fa2SKever Yang }; 1178c9211fa2SKever Yang 1179c9211fa2SKever Yang i2c1: i2c@fea90000 { 1180c9211fa2SKever Yang compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 1181c9211fa2SKever Yang reg = <0x0 0xfea90000 0x0 0x1000>; 1182c9211fa2SKever Yang clocks = <&cru CLK_I2C1>, <&cru PCLK_I2C1>; 1183c9211fa2SKever Yang clock-names = "i2c", "pclk"; 1184c9211fa2SKever Yang interrupts = <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH 0>; 1185c9211fa2SKever Yang pinctrl-0 = <&i2c1m0_xfer>; 1186c9211fa2SKever Yang pinctrl-names = "default"; 1187c9211fa2SKever Yang #address-cells = <1>; 1188c9211fa2SKever Yang #size-cells = <0>; 1189c9211fa2SKever Yang status = "disabled"; 1190c9211fa2SKever Yang }; 1191c9211fa2SKever Yang 1192c9211fa2SKever Yang i2c2: i2c@feaa0000 { 1193c9211fa2SKever Yang compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 1194c9211fa2SKever Yang reg = <0x0 0xfeaa0000 0x0 0x1000>; 1195c9211fa2SKever Yang clocks = <&cru CLK_I2C2>, <&cru PCLK_I2C2>; 1196c9211fa2SKever Yang clock-names = "i2c", "pclk"; 1197c9211fa2SKever Yang interrupts = <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH 0>; 1198c9211fa2SKever Yang pinctrl-0 = <&i2c2m0_xfer>; 1199c9211fa2SKever Yang pinctrl-names = "default"; 1200c9211fa2SKever Yang #address-cells = <1>; 1201c9211fa2SKever Yang #size-cells = <0>; 1202c9211fa2SKever Yang status = "disabled"; 1203c9211fa2SKever Yang }; 1204c9211fa2SKever Yang 1205c9211fa2SKever Yang i2c3: i2c@feab0000 { 1206c9211fa2SKever Yang compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 1207c9211fa2SKever Yang reg = <0x0 0xfeab0000 0x0 0x1000>; 1208c9211fa2SKever Yang clocks = <&cru CLK_I2C3>, <&cru PCLK_I2C3>; 1209c9211fa2SKever Yang clock-names = "i2c", "pclk"; 1210c9211fa2SKever Yang interrupts = <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH 0>; 1211c9211fa2SKever Yang pinctrl-0 = <&i2c3m0_xfer>; 1212c9211fa2SKever Yang pinctrl-names = "default"; 1213c9211fa2SKever Yang #address-cells = <1>; 1214c9211fa2SKever Yang #size-cells = <0>; 1215c9211fa2SKever Yang status = "disabled"; 1216c9211fa2SKever Yang }; 1217c9211fa2SKever Yang 1218c9211fa2SKever Yang i2c4: i2c@feac0000 { 1219c9211fa2SKever Yang compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 1220c9211fa2SKever Yang reg = <0x0 0xfeac0000 0x0 0x1000>; 1221c9211fa2SKever Yang clocks = <&cru CLK_I2C4>, <&cru PCLK_I2C4>; 1222c9211fa2SKever Yang clock-names = "i2c", "pclk"; 1223c9211fa2SKever Yang interrupts = <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH 0>; 1224c9211fa2SKever Yang pinctrl-0 = <&i2c4m0_xfer>; 1225c9211fa2SKever Yang pinctrl-names = "default"; 1226c9211fa2SKever Yang #address-cells = <1>; 1227c9211fa2SKever Yang #size-cells = <0>; 1228c9211fa2SKever Yang status = "disabled"; 1229c9211fa2SKever Yang }; 1230c9211fa2SKever Yang 1231c9211fa2SKever Yang i2c5: i2c@fead0000 { 1232c9211fa2SKever Yang compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 1233c9211fa2SKever Yang reg = <0x0 0xfead0000 0x0 0x1000>; 1234c9211fa2SKever Yang clocks = <&cru CLK_I2C5>, <&cru PCLK_I2C5>; 1235c9211fa2SKever Yang clock-names = "i2c", "pclk"; 1236c9211fa2SKever Yang interrupts = <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH 0>; 1237c9211fa2SKever Yang pinctrl-0 = <&i2c5m0_xfer>; 1238c9211fa2SKever Yang pinctrl-names = "default"; 1239c9211fa2SKever Yang #address-cells = <1>; 1240c9211fa2SKever Yang #size-cells = <0>; 1241c9211fa2SKever Yang status = "disabled"; 1242c9211fa2SKever Yang }; 1243c9211fa2SKever Yang 1244932d139eSShreeya Patel wdt: watchdog@feaf0000 { 1245932d139eSShreeya Patel compatible = "rockchip,rk3588-wdt", "snps,dw-wdt"; 1246932d139eSShreeya Patel reg = <0x0 0xfeaf0000 0x0 0x100>; 1247932d139eSShreeya Patel clocks = <&cru TCLK_WDT0>, <&cru PCLK_WDT0>; 1248932d139eSShreeya Patel clock-names = "tclk", "pclk"; 1249932d139eSShreeya Patel interrupts = <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH 0>; 1250932d139eSShreeya Patel }; 1251932d139eSShreeya Patel 1252c9211fa2SKever Yang spi0: spi@feb00000 { 1253c9211fa2SKever Yang compatible = "rockchip,rk3588-spi", "rockchip,rk3066-spi"; 1254c9211fa2SKever Yang reg = <0x0 0xfeb00000 0x0 0x1000>; 1255c9211fa2SKever Yang interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH 0>; 1256c9211fa2SKever Yang clocks = <&cru CLK_SPI0>, <&cru PCLK_SPI0>; 1257c9211fa2SKever Yang clock-names = "spiclk", "apb_pclk"; 1258c9211fa2SKever Yang dmas = <&dmac0 14>, <&dmac0 15>; 1259c9211fa2SKever Yang dma-names = "tx", "rx"; 1260c9211fa2SKever Yang num-cs = <2>; 1261c9211fa2SKever Yang pinctrl-0 = <&spi0m0_cs0 &spi0m0_cs1 &spi0m0_pins>; 1262c9211fa2SKever Yang pinctrl-names = "default"; 1263c9211fa2SKever Yang #address-cells = <1>; 1264c9211fa2SKever Yang #size-cells = <0>; 1265c9211fa2SKever Yang status = "disabled"; 1266c9211fa2SKever Yang }; 1267c9211fa2SKever Yang 1268c9211fa2SKever Yang spi1: spi@feb10000 { 1269c9211fa2SKever Yang compatible = "rockchip,rk3588-spi", "rockchip,rk3066-spi"; 1270c9211fa2SKever Yang reg = <0x0 0xfeb10000 0x0 0x1000>; 1271c9211fa2SKever Yang interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH 0>; 1272c9211fa2SKever Yang clocks = <&cru CLK_SPI1>, <&cru PCLK_SPI1>; 1273c9211fa2SKever Yang clock-names = "spiclk", "apb_pclk"; 1274c9211fa2SKever Yang dmas = <&dmac0 16>, <&dmac0 17>; 1275c9211fa2SKever Yang dma-names = "tx", "rx"; 1276c9211fa2SKever Yang num-cs = <2>; 1277c9211fa2SKever Yang pinctrl-0 = <&spi1m1_cs0 &spi1m1_cs1 &spi1m1_pins>; 1278c9211fa2SKever Yang pinctrl-names = "default"; 1279c9211fa2SKever Yang #address-cells = <1>; 1280c9211fa2SKever Yang #size-cells = <0>; 1281c9211fa2SKever Yang status = "disabled"; 1282c9211fa2SKever Yang }; 1283c9211fa2SKever Yang 1284c9211fa2SKever Yang spi2: spi@feb20000 { 1285c9211fa2SKever Yang compatible = "rockchip,rk3588-spi", "rockchip,rk3066-spi"; 1286c9211fa2SKever Yang reg = <0x0 0xfeb20000 0x0 0x1000>; 1287c9211fa2SKever Yang interrupts = <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH 0>; 1288c9211fa2SKever Yang clocks = <&cru CLK_SPI2>, <&cru PCLK_SPI2>; 1289c9211fa2SKever Yang clock-names = "spiclk", "apb_pclk"; 1290c9211fa2SKever Yang dmas = <&dmac1 15>, <&dmac1 16>; 1291c9211fa2SKever Yang dma-names = "tx", "rx"; 1292c9211fa2SKever Yang num-cs = <2>; 1293c9211fa2SKever Yang pinctrl-0 = <&spi2m2_cs0 &spi2m2_cs1 &spi2m2_pins>; 1294c9211fa2SKever Yang pinctrl-names = "default"; 1295c9211fa2SKever Yang #address-cells = <1>; 1296c9211fa2SKever Yang #size-cells = <0>; 1297c9211fa2SKever Yang status = "disabled"; 1298c9211fa2SKever Yang }; 1299c9211fa2SKever Yang 1300c9211fa2SKever Yang spi3: spi@feb30000 { 1301c9211fa2SKever Yang compatible = "rockchip,rk3588-spi", "rockchip,rk3066-spi"; 1302c9211fa2SKever Yang reg = <0x0 0xfeb30000 0x0 0x1000>; 1303c9211fa2SKever Yang interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH 0>; 1304c9211fa2SKever Yang clocks = <&cru CLK_SPI3>, <&cru PCLK_SPI3>; 1305c9211fa2SKever Yang clock-names = "spiclk", "apb_pclk"; 1306c9211fa2SKever Yang dmas = <&dmac1 17>, <&dmac1 18>; 1307c9211fa2SKever Yang dma-names = "tx", "rx"; 1308c9211fa2SKever Yang num-cs = <2>; 1309c9211fa2SKever Yang pinctrl-0 = <&spi3m1_cs0 &spi3m1_cs1 &spi3m1_pins>; 1310c9211fa2SKever Yang pinctrl-names = "default"; 1311c9211fa2SKever Yang #address-cells = <1>; 1312c9211fa2SKever Yang #size-cells = <0>; 1313c9211fa2SKever Yang status = "disabled"; 1314c9211fa2SKever Yang }; 1315c9211fa2SKever Yang 1316c9211fa2SKever Yang uart1: serial@feb40000 { 1317c9211fa2SKever Yang compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 1318c9211fa2SKever Yang reg = <0x0 0xfeb40000 0x0 0x100>; 1319c9211fa2SKever Yang interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH 0>; 1320c9211fa2SKever Yang clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>; 1321c9211fa2SKever Yang clock-names = "baudclk", "apb_pclk"; 1322c9211fa2SKever Yang dmas = <&dmac0 8>, <&dmac0 9>; 1323c9211fa2SKever Yang dma-names = "tx", "rx"; 1324c9211fa2SKever Yang pinctrl-0 = <&uart1m1_xfer>; 1325c9211fa2SKever Yang pinctrl-names = "default"; 1326c9211fa2SKever Yang reg-io-width = <4>; 1327c9211fa2SKever Yang reg-shift = <2>; 1328c9211fa2SKever Yang status = "disabled"; 1329c9211fa2SKever Yang }; 1330c9211fa2SKever Yang 1331c9211fa2SKever Yang uart2: serial@feb50000 { 1332c9211fa2SKever Yang compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 1333c9211fa2SKever Yang reg = <0x0 0xfeb50000 0x0 0x100>; 1334c9211fa2SKever Yang interrupts = <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH 0>; 1335c9211fa2SKever Yang clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>; 1336c9211fa2SKever Yang clock-names = "baudclk", "apb_pclk"; 1337c9211fa2SKever Yang dmas = <&dmac0 10>, <&dmac0 11>; 1338c9211fa2SKever Yang dma-names = "tx", "rx"; 1339c9211fa2SKever Yang pinctrl-0 = <&uart2m1_xfer>; 1340c9211fa2SKever Yang pinctrl-names = "default"; 1341c9211fa2SKever Yang reg-io-width = <4>; 1342c9211fa2SKever Yang reg-shift = <2>; 1343c9211fa2SKever Yang status = "disabled"; 1344c9211fa2SKever Yang }; 1345c9211fa2SKever Yang 1346c9211fa2SKever Yang uart3: serial@feb60000 { 1347c9211fa2SKever Yang compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 1348c9211fa2SKever Yang reg = <0x0 0xfeb60000 0x0 0x100>; 1349c9211fa2SKever Yang interrupts = <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH 0>; 1350c9211fa2SKever Yang clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>; 1351c9211fa2SKever Yang clock-names = "baudclk", "apb_pclk"; 1352c9211fa2SKever Yang dmas = <&dmac0 12>, <&dmac0 13>; 1353c9211fa2SKever Yang dma-names = "tx", "rx"; 1354c9211fa2SKever Yang pinctrl-0 = <&uart3m1_xfer>; 1355c9211fa2SKever Yang pinctrl-names = "default"; 1356c9211fa2SKever Yang reg-io-width = <4>; 1357c9211fa2SKever Yang reg-shift = <2>; 1358c9211fa2SKever Yang status = "disabled"; 1359c9211fa2SKever Yang }; 1360c9211fa2SKever Yang 1361c9211fa2SKever Yang uart4: serial@feb70000 { 1362c9211fa2SKever Yang compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 1363c9211fa2SKever Yang reg = <0x0 0xfeb70000 0x0 0x100>; 1364c9211fa2SKever Yang interrupts = <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH 0>; 1365c9211fa2SKever Yang clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>; 1366c9211fa2SKever Yang clock-names = "baudclk", "apb_pclk"; 1367c9211fa2SKever Yang dmas = <&dmac1 9>, <&dmac1 10>; 1368c9211fa2SKever Yang dma-names = "tx", "rx"; 1369c9211fa2SKever Yang pinctrl-0 = <&uart4m1_xfer>; 1370c9211fa2SKever Yang pinctrl-names = "default"; 1371c9211fa2SKever Yang reg-io-width = <4>; 1372c9211fa2SKever Yang reg-shift = <2>; 1373c9211fa2SKever Yang status = "disabled"; 1374c9211fa2SKever Yang }; 1375c9211fa2SKever Yang 1376c9211fa2SKever Yang uart5: serial@feb80000 { 1377c9211fa2SKever Yang compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 1378c9211fa2SKever Yang reg = <0x0 0xfeb80000 0x0 0x100>; 1379c9211fa2SKever Yang interrupts = <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH 0>; 1380c9211fa2SKever Yang clocks = <&cru SCLK_UART5>, <&cru PCLK_UART5>; 1381c9211fa2SKever Yang clock-names = "baudclk", "apb_pclk"; 1382c9211fa2SKever Yang dmas = <&dmac1 11>, <&dmac1 12>; 1383c9211fa2SKever Yang dma-names = "tx", "rx"; 1384c9211fa2SKever Yang pinctrl-0 = <&uart5m1_xfer>; 1385c9211fa2SKever Yang pinctrl-names = "default"; 1386c9211fa2SKever Yang reg-io-width = <4>; 1387c9211fa2SKever Yang reg-shift = <2>; 1388c9211fa2SKever Yang status = "disabled"; 1389c9211fa2SKever Yang }; 1390c9211fa2SKever Yang 1391c9211fa2SKever Yang uart6: serial@feb90000 { 1392c9211fa2SKever Yang compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 1393c9211fa2SKever Yang reg = <0x0 0xfeb90000 0x0 0x100>; 1394c9211fa2SKever Yang interrupts = <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH 0>; 1395c9211fa2SKever Yang clocks = <&cru SCLK_UART6>, <&cru PCLK_UART6>; 1396c9211fa2SKever Yang clock-names = "baudclk", "apb_pclk"; 1397c9211fa2SKever Yang dmas = <&dmac1 13>, <&dmac1 14>; 1398c9211fa2SKever Yang dma-names = "tx", "rx"; 1399c9211fa2SKever Yang pinctrl-0 = <&uart6m1_xfer>; 1400c9211fa2SKever Yang pinctrl-names = "default"; 1401c9211fa2SKever Yang reg-io-width = <4>; 1402c9211fa2SKever Yang reg-shift = <2>; 1403c9211fa2SKever Yang status = "disabled"; 1404c9211fa2SKever Yang }; 1405c9211fa2SKever Yang 1406c9211fa2SKever Yang uart7: serial@feba0000 { 1407c9211fa2SKever Yang compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 1408c9211fa2SKever Yang reg = <0x0 0xfeba0000 0x0 0x100>; 1409c9211fa2SKever Yang interrupts = <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH 0>; 1410c9211fa2SKever Yang clocks = <&cru SCLK_UART7>, <&cru PCLK_UART7>; 1411c9211fa2SKever Yang clock-names = "baudclk", "apb_pclk"; 1412c9211fa2SKever Yang dmas = <&dmac2 7>, <&dmac2 8>; 1413c9211fa2SKever Yang dma-names = "tx", "rx"; 1414c9211fa2SKever Yang pinctrl-0 = <&uart7m1_xfer>; 1415c9211fa2SKever Yang pinctrl-names = "default"; 1416c9211fa2SKever Yang reg-io-width = <4>; 1417c9211fa2SKever Yang reg-shift = <2>; 1418c9211fa2SKever Yang status = "disabled"; 1419c9211fa2SKever Yang }; 1420c9211fa2SKever Yang 1421c9211fa2SKever Yang uart8: serial@febb0000 { 1422c9211fa2SKever Yang compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 1423c9211fa2SKever Yang reg = <0x0 0xfebb0000 0x0 0x100>; 1424c9211fa2SKever Yang interrupts = <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH 0>; 1425c9211fa2SKever Yang clocks = <&cru SCLK_UART8>, <&cru PCLK_UART8>; 1426c9211fa2SKever Yang clock-names = "baudclk", "apb_pclk"; 1427c9211fa2SKever Yang dmas = <&dmac2 9>, <&dmac2 10>; 1428c9211fa2SKever Yang dma-names = "tx", "rx"; 1429c9211fa2SKever Yang pinctrl-0 = <&uart8m1_xfer>; 1430c9211fa2SKever Yang pinctrl-names = "default"; 1431c9211fa2SKever Yang reg-io-width = <4>; 1432c9211fa2SKever Yang reg-shift = <2>; 1433c9211fa2SKever Yang status = "disabled"; 1434c9211fa2SKever Yang }; 1435c9211fa2SKever Yang 1436c9211fa2SKever Yang uart9: serial@febc0000 { 1437c9211fa2SKever Yang compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 1438c9211fa2SKever Yang reg = <0x0 0xfebc0000 0x0 0x100>; 1439c9211fa2SKever Yang interrupts = <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH 0>; 1440c9211fa2SKever Yang clocks = <&cru SCLK_UART9>, <&cru PCLK_UART9>; 1441c9211fa2SKever Yang clock-names = "baudclk", "apb_pclk"; 1442c9211fa2SKever Yang dmas = <&dmac2 11>, <&dmac2 12>; 1443c9211fa2SKever Yang dma-names = "tx", "rx"; 1444c9211fa2SKever Yang pinctrl-0 = <&uart9m1_xfer>; 1445c9211fa2SKever Yang pinctrl-names = "default"; 1446c9211fa2SKever Yang reg-io-width = <4>; 1447c9211fa2SKever Yang reg-shift = <2>; 1448c9211fa2SKever Yang status = "disabled"; 1449c9211fa2SKever Yang }; 1450c9211fa2SKever Yang 1451c9211fa2SKever Yang pwm4: pwm@febd0000 { 1452c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1453c9211fa2SKever Yang reg = <0x0 0xfebd0000 0x0 0x10>; 1454c9211fa2SKever Yang clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>; 1455c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1456c9211fa2SKever Yang pinctrl-0 = <&pwm4m0_pins>; 1457c9211fa2SKever Yang pinctrl-names = "default"; 1458c9211fa2SKever Yang #pwm-cells = <3>; 1459c9211fa2SKever Yang status = "disabled"; 1460c9211fa2SKever Yang }; 1461c9211fa2SKever Yang 1462c9211fa2SKever Yang pwm5: pwm@febd0010 { 1463c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1464c9211fa2SKever Yang reg = <0x0 0xfebd0010 0x0 0x10>; 1465c9211fa2SKever Yang clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>; 1466c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1467c9211fa2SKever Yang pinctrl-0 = <&pwm5m0_pins>; 1468c9211fa2SKever Yang pinctrl-names = "default"; 1469c9211fa2SKever Yang #pwm-cells = <3>; 1470c9211fa2SKever Yang status = "disabled"; 1471c9211fa2SKever Yang }; 1472c9211fa2SKever Yang 1473c9211fa2SKever Yang pwm6: pwm@febd0020 { 1474c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1475c9211fa2SKever Yang reg = <0x0 0xfebd0020 0x0 0x10>; 1476c9211fa2SKever Yang clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>; 1477c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1478c9211fa2SKever Yang pinctrl-0 = <&pwm6m0_pins>; 1479c9211fa2SKever Yang pinctrl-names = "default"; 1480c9211fa2SKever Yang #pwm-cells = <3>; 1481c9211fa2SKever Yang status = "disabled"; 1482c9211fa2SKever Yang }; 1483c9211fa2SKever Yang 1484c9211fa2SKever Yang pwm7: pwm@febd0030 { 1485c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1486c9211fa2SKever Yang reg = <0x0 0xfebd0030 0x0 0x10>; 1487c9211fa2SKever Yang clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>; 1488c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1489c9211fa2SKever Yang pinctrl-0 = <&pwm7m0_pins>; 1490c9211fa2SKever Yang pinctrl-names = "default"; 1491c9211fa2SKever Yang #pwm-cells = <3>; 1492c9211fa2SKever Yang status = "disabled"; 1493c9211fa2SKever Yang }; 1494c9211fa2SKever Yang 1495c9211fa2SKever Yang pwm8: pwm@febe0000 { 1496c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1497c9211fa2SKever Yang reg = <0x0 0xfebe0000 0x0 0x10>; 1498c9211fa2SKever Yang clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>; 1499c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1500c9211fa2SKever Yang pinctrl-0 = <&pwm8m0_pins>; 1501c9211fa2SKever Yang pinctrl-names = "default"; 1502c9211fa2SKever Yang #pwm-cells = <3>; 1503c9211fa2SKever Yang status = "disabled"; 1504c9211fa2SKever Yang }; 1505c9211fa2SKever Yang 1506c9211fa2SKever Yang pwm9: pwm@febe0010 { 1507c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1508c9211fa2SKever Yang reg = <0x0 0xfebe0010 0x0 0x10>; 1509c9211fa2SKever Yang clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>; 1510c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1511c9211fa2SKever Yang pinctrl-0 = <&pwm9m0_pins>; 1512c9211fa2SKever Yang pinctrl-names = "default"; 1513c9211fa2SKever Yang #pwm-cells = <3>; 1514c9211fa2SKever Yang status = "disabled"; 1515c9211fa2SKever Yang }; 1516c9211fa2SKever Yang 1517c9211fa2SKever Yang pwm10: pwm@febe0020 { 1518c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1519c9211fa2SKever Yang reg = <0x0 0xfebe0020 0x0 0x10>; 1520c9211fa2SKever Yang clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>; 1521c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1522c9211fa2SKever Yang pinctrl-0 = <&pwm10m0_pins>; 1523c9211fa2SKever Yang pinctrl-names = "default"; 1524c9211fa2SKever Yang #pwm-cells = <3>; 1525c9211fa2SKever Yang status = "disabled"; 1526c9211fa2SKever Yang }; 1527c9211fa2SKever Yang 1528c9211fa2SKever Yang pwm11: pwm@febe0030 { 1529c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1530c9211fa2SKever Yang reg = <0x0 0xfebe0030 0x0 0x10>; 1531c9211fa2SKever Yang clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>; 1532c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1533c9211fa2SKever Yang pinctrl-0 = <&pwm11m0_pins>; 1534c9211fa2SKever Yang pinctrl-names = "default"; 1535c9211fa2SKever Yang #pwm-cells = <3>; 1536c9211fa2SKever Yang status = "disabled"; 1537c9211fa2SKever Yang }; 1538c9211fa2SKever Yang 1539c9211fa2SKever Yang pwm12: pwm@febf0000 { 1540c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1541c9211fa2SKever Yang reg = <0x0 0xfebf0000 0x0 0x10>; 1542c9211fa2SKever Yang clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>; 1543c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1544c9211fa2SKever Yang pinctrl-0 = <&pwm12m0_pins>; 1545c9211fa2SKever Yang pinctrl-names = "default"; 1546c9211fa2SKever Yang #pwm-cells = <3>; 1547c9211fa2SKever Yang status = "disabled"; 1548c9211fa2SKever Yang }; 1549c9211fa2SKever Yang 1550c9211fa2SKever Yang pwm13: pwm@febf0010 { 1551c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1552c9211fa2SKever Yang reg = <0x0 0xfebf0010 0x0 0x10>; 1553c9211fa2SKever Yang clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>; 1554c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1555c9211fa2SKever Yang pinctrl-0 = <&pwm13m0_pins>; 1556c9211fa2SKever Yang pinctrl-names = "default"; 1557c9211fa2SKever Yang #pwm-cells = <3>; 1558c9211fa2SKever Yang status = "disabled"; 1559c9211fa2SKever Yang }; 1560c9211fa2SKever Yang 1561c9211fa2SKever Yang pwm14: pwm@febf0020 { 1562c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1563c9211fa2SKever Yang reg = <0x0 0xfebf0020 0x0 0x10>; 1564c9211fa2SKever Yang clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>; 1565c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1566c9211fa2SKever Yang pinctrl-0 = <&pwm14m0_pins>; 1567c9211fa2SKever Yang pinctrl-names = "default"; 1568c9211fa2SKever Yang #pwm-cells = <3>; 1569c9211fa2SKever Yang status = "disabled"; 1570c9211fa2SKever Yang }; 1571c9211fa2SKever Yang 1572c9211fa2SKever Yang pwm15: pwm@febf0030 { 1573c9211fa2SKever Yang compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 1574c9211fa2SKever Yang reg = <0x0 0xfebf0030 0x0 0x10>; 1575c9211fa2SKever Yang clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>; 1576c9211fa2SKever Yang clock-names = "pwm", "pclk"; 1577c9211fa2SKever Yang pinctrl-0 = <&pwm15m0_pins>; 1578c9211fa2SKever Yang pinctrl-names = "default"; 1579c9211fa2SKever Yang #pwm-cells = <3>; 1580c9211fa2SKever Yang status = "disabled"; 1581c9211fa2SKever Yang }; 1582c9211fa2SKever Yang 1583*32641b8aSSebastian Reichel tsadc: tsadc@fec00000 { 1584*32641b8aSSebastian Reichel compatible = "rockchip,rk3588-tsadc"; 1585*32641b8aSSebastian Reichel reg = <0x0 0xfec00000 0x0 0x400>; 1586*32641b8aSSebastian Reichel interrupts = <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH 0>; 1587*32641b8aSSebastian Reichel clocks = <&cru CLK_TSADC>, <&cru PCLK_TSADC>; 1588*32641b8aSSebastian Reichel clock-names = "tsadc", "apb_pclk"; 1589*32641b8aSSebastian Reichel assigned-clocks = <&cru CLK_TSADC>; 1590*32641b8aSSebastian Reichel assigned-clock-rates = <2000000>; 1591*32641b8aSSebastian Reichel resets = <&cru SRST_P_TSADC>, <&cru SRST_TSADC>; 1592*32641b8aSSebastian Reichel reset-names = "tsadc-apb", "tsadc"; 1593*32641b8aSSebastian Reichel rockchip,hw-tshut-temp = <120000>; 1594*32641b8aSSebastian Reichel rockchip,hw-tshut-mode = <0>; /* tshut mode 0:CRU 1:GPIO */ 1595*32641b8aSSebastian Reichel rockchip,hw-tshut-polarity = <0>; /* tshut polarity 0:LOW 1:HIGH */ 1596*32641b8aSSebastian Reichel pinctrl-0 = <&tsadc_gpio_func>; 1597*32641b8aSSebastian Reichel pinctrl-1 = <&tsadc_shut>; 1598*32641b8aSSebastian Reichel pinctrl-names = "gpio", "otpout"; 1599*32641b8aSSebastian Reichel #thermal-sensor-cells = <1>; 1600*32641b8aSSebastian Reichel status = "disabled"; 1601*32641b8aSSebastian Reichel }; 1602*32641b8aSSebastian Reichel 1603c9211fa2SKever Yang i2c6: i2c@fec80000 { 1604c9211fa2SKever Yang compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 1605c9211fa2SKever Yang reg = <0x0 0xfec80000 0x0 0x1000>; 1606c9211fa2SKever Yang clocks = <&cru CLK_I2C6>, <&cru PCLK_I2C6>; 1607c9211fa2SKever Yang clock-names = "i2c", "pclk"; 1608c9211fa2SKever Yang interrupts = <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH 0>; 1609c9211fa2SKever Yang pinctrl-0 = <&i2c6m0_xfer>; 1610c9211fa2SKever Yang pinctrl-names = "default"; 1611c9211fa2SKever Yang #address-cells = <1>; 1612c9211fa2SKever Yang #size-cells = <0>; 1613c9211fa2SKever Yang status = "disabled"; 1614c9211fa2SKever Yang }; 1615c9211fa2SKever Yang 1616c9211fa2SKever Yang i2c7: i2c@fec90000 { 1617c9211fa2SKever Yang compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 1618c9211fa2SKever Yang reg = <0x0 0xfec90000 0x0 0x1000>; 1619c9211fa2SKever Yang clocks = <&cru CLK_I2C7>, <&cru PCLK_I2C7>; 1620c9211fa2SKever Yang clock-names = "i2c", "pclk"; 1621c9211fa2SKever Yang interrupts = <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH 0>; 1622c9211fa2SKever Yang pinctrl-0 = <&i2c7m0_xfer>; 1623c9211fa2SKever Yang pinctrl-names = "default"; 1624c9211fa2SKever Yang #address-cells = <1>; 1625c9211fa2SKever Yang #size-cells = <0>; 1626c9211fa2SKever Yang status = "disabled"; 1627c9211fa2SKever Yang }; 1628c9211fa2SKever Yang 1629c9211fa2SKever Yang i2c8: i2c@feca0000 { 1630c9211fa2SKever Yang compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 1631c9211fa2SKever Yang reg = <0x0 0xfeca0000 0x0 0x1000>; 1632c9211fa2SKever Yang clocks = <&cru CLK_I2C8>, <&cru PCLK_I2C8>; 1633c9211fa2SKever Yang clock-names = "i2c", "pclk"; 1634c9211fa2SKever Yang interrupts = <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH 0>; 1635c9211fa2SKever Yang pinctrl-0 = <&i2c8m0_xfer>; 1636c9211fa2SKever Yang pinctrl-names = "default"; 1637c9211fa2SKever Yang #address-cells = <1>; 1638c9211fa2SKever Yang #size-cells = <0>; 1639c9211fa2SKever Yang status = "disabled"; 1640c9211fa2SKever Yang }; 1641c9211fa2SKever Yang 1642c9211fa2SKever Yang spi4: spi@fecb0000 { 1643c9211fa2SKever Yang compatible = "rockchip,rk3588-spi", "rockchip,rk3066-spi"; 1644c9211fa2SKever Yang reg = <0x0 0xfecb0000 0x0 0x1000>; 1645c9211fa2SKever Yang interrupts = <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH 0>; 1646c9211fa2SKever Yang clocks = <&cru CLK_SPI4>, <&cru PCLK_SPI4>; 1647c9211fa2SKever Yang clock-names = "spiclk", "apb_pclk"; 1648c9211fa2SKever Yang dmas = <&dmac2 13>, <&dmac2 14>; 1649c9211fa2SKever Yang dma-names = "tx", "rx"; 1650c9211fa2SKever Yang num-cs = <2>; 1651c9211fa2SKever Yang pinctrl-0 = <&spi4m0_cs0 &spi4m0_cs1 &spi4m0_pins>; 1652c9211fa2SKever Yang pinctrl-names = "default"; 1653c9211fa2SKever Yang #address-cells = <1>; 1654c9211fa2SKever Yang #size-cells = <0>; 1655c9211fa2SKever Yang status = "disabled"; 1656c9211fa2SKever Yang }; 1657c9211fa2SKever Yang 1658c9211fa2SKever Yang dmac2: dma-controller@fed10000 { 1659c9211fa2SKever Yang compatible = "arm,pl330", "arm,primecell"; 1660c9211fa2SKever Yang reg = <0x0 0xfed10000 0x0 0x4000>; 1661c9211fa2SKever Yang interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH 0>, 1662c9211fa2SKever Yang <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH 0>; 1663c9211fa2SKever Yang arm,pl330-periph-burst; 1664c9211fa2SKever Yang clocks = <&cru ACLK_DMAC2>; 1665c9211fa2SKever Yang clock-names = "apb_pclk"; 1666c9211fa2SKever Yang #dma-cells = <1>; 1667c9211fa2SKever Yang }; 1668c9211fa2SKever Yang 1669c9211fa2SKever Yang system_sram2: sram@ff001000 { 1670c9211fa2SKever Yang compatible = "mmio-sram"; 1671c9211fa2SKever Yang reg = <0x0 0xff001000 0x0 0xef000>; 1672c9211fa2SKever Yang ranges = <0x0 0x0 0xff001000 0xef000>; 1673c9211fa2SKever Yang #address-cells = <1>; 1674c9211fa2SKever Yang #size-cells = <1>; 1675c9211fa2SKever Yang }; 1676c9211fa2SKever Yang 1677c9211fa2SKever Yang pinctrl: pinctrl { 1678c9211fa2SKever Yang compatible = "rockchip,rk3588-pinctrl"; 1679c9211fa2SKever Yang ranges; 1680c9211fa2SKever Yang rockchip,grf = <&ioc>; 1681c9211fa2SKever Yang #address-cells = <2>; 1682c9211fa2SKever Yang #size-cells = <2>; 1683c9211fa2SKever Yang 1684c9211fa2SKever Yang gpio0: gpio@fd8a0000 { 1685c9211fa2SKever Yang compatible = "rockchip,gpio-bank"; 1686c9211fa2SKever Yang reg = <0x0 0xfd8a0000 0x0 0x100>; 1687c9211fa2SKever Yang interrupts = <GIC_SPI 277 IRQ_TYPE_LEVEL_HIGH 0>; 1688c9211fa2SKever Yang clocks = <&cru PCLK_GPIO0>, <&cru DBCLK_GPIO0>; 1689c9211fa2SKever Yang gpio-controller; 1690c9211fa2SKever Yang gpio-ranges = <&pinctrl 0 0 32>; 1691c9211fa2SKever Yang interrupt-controller; 1692c9211fa2SKever Yang #gpio-cells = <2>; 1693c9211fa2SKever Yang #interrupt-cells = <2>; 1694c9211fa2SKever Yang }; 1695c9211fa2SKever Yang 1696c9211fa2SKever Yang gpio1: gpio@fec20000 { 1697c9211fa2SKever Yang compatible = "rockchip,gpio-bank"; 1698c9211fa2SKever Yang reg = <0x0 0xfec20000 0x0 0x100>; 1699c9211fa2SKever Yang interrupts = <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH 0>; 1700c9211fa2SKever Yang clocks = <&cru PCLK_GPIO1>, <&cru DBCLK_GPIO1>; 1701c9211fa2SKever Yang gpio-controller; 1702c9211fa2SKever Yang gpio-ranges = <&pinctrl 0 32 32>; 1703c9211fa2SKever Yang interrupt-controller; 1704c9211fa2SKever Yang #gpio-cells = <2>; 1705c9211fa2SKever Yang #interrupt-cells = <2>; 1706c9211fa2SKever Yang }; 1707c9211fa2SKever Yang 1708c9211fa2SKever Yang gpio2: gpio@fec30000 { 1709c9211fa2SKever Yang compatible = "rockchip,gpio-bank"; 1710c9211fa2SKever Yang reg = <0x0 0xfec30000 0x0 0x100>; 1711c9211fa2SKever Yang interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH 0>; 1712c9211fa2SKever Yang clocks = <&cru PCLK_GPIO2>, <&cru DBCLK_GPIO2>; 1713c9211fa2SKever Yang gpio-controller; 1714c9211fa2SKever Yang gpio-ranges = <&pinctrl 0 64 32>; 1715c9211fa2SKever Yang interrupt-controller; 1716c9211fa2SKever Yang #gpio-cells = <2>; 1717c9211fa2SKever Yang #interrupt-cells = <2>; 1718c9211fa2SKever Yang }; 1719c9211fa2SKever Yang 1720c9211fa2SKever Yang gpio3: gpio@fec40000 { 1721c9211fa2SKever Yang compatible = "rockchip,gpio-bank"; 1722c9211fa2SKever Yang reg = <0x0 0xfec40000 0x0 0x100>; 1723c9211fa2SKever Yang interrupts = <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH 0>; 1724c9211fa2SKever Yang clocks = <&cru PCLK_GPIO3>, <&cru DBCLK_GPIO3>; 1725c9211fa2SKever Yang gpio-controller; 1726c9211fa2SKever Yang gpio-ranges = <&pinctrl 0 96 32>; 1727c9211fa2SKever Yang interrupt-controller; 1728c9211fa2SKever Yang #gpio-cells = <2>; 1729c9211fa2SKever Yang #interrupt-cells = <2>; 1730c9211fa2SKever Yang }; 1731c9211fa2SKever Yang 1732c9211fa2SKever Yang gpio4: gpio@fec50000 { 1733c9211fa2SKever Yang compatible = "rockchip,gpio-bank"; 1734c9211fa2SKever Yang reg = <0x0 0xfec50000 0x0 0x100>; 1735c9211fa2SKever Yang interrupts = <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH 0>; 1736c9211fa2SKever Yang clocks = <&cru PCLK_GPIO4>, <&cru DBCLK_GPIO4>; 1737c9211fa2SKever Yang gpio-controller; 1738c9211fa2SKever Yang gpio-ranges = <&pinctrl 0 128 32>; 1739c9211fa2SKever Yang interrupt-controller; 1740c9211fa2SKever Yang #gpio-cells = <2>; 1741c9211fa2SKever Yang #interrupt-cells = <2>; 1742c9211fa2SKever Yang }; 1743c9211fa2SKever Yang }; 1744c9211fa2SKever Yang}; 1745c9211fa2SKever Yang 1746c9211fa2SKever Yang#include "rk3588s-pinctrl.dtsi" 1747