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