xref: /rk3399_ARM-atf/fdts/tc4.dts (revision 8dec63032e8d173215fc5a4b6540ecbc189cbf87)
13cedc47bSLeo Yan/*
23cedc47bSLeo Yan * Copyright (c) 2020-2024, Arm Limited. All rights reserved.
33cedc47bSLeo Yan *
43cedc47bSLeo Yan * SPDX-License-Identifier: BSD-3-Clause
53cedc47bSLeo Yan */
63cedc47bSLeo Yan
73cedc47bSLeo Yan/dts-v1/;
83cedc47bSLeo Yan
93cedc47bSLeo Yan#include <dt-bindings/interrupt-controller/arm-gic.h>
103cedc47bSLeo Yan#include <dt-bindings/interrupt-controller/irq.h>
113cedc47bSLeo Yan#include <platform_def.h>
123cedc47bSLeo Yan
133cedc47bSLeo Yan#define MHU_TX_ADDR			46240000 /* hex */
143cedc47bSLeo Yan#define MHU_RX_ADDR			46250000 /* hex */
153cedc47bSLeo Yan
163cedc47bSLeo Yan#define LIT_CPU_PMU_COMPATIBLE		"arm,armv8-pmuv3"
173cedc47bSLeo Yan#define MID_CPU_PMU_COMPATIBLE		"arm,armv8-pmuv3"
183cedc47bSLeo Yan#define BIG_CPU_PMU_COMPATIBLE		"arm,armv8-pmuv3"
193cedc47bSLeo Yan
2006fa4c4dSYu Shihai#define RSE_MHU_TX_ADDR			49020000 /* hex */
2106fa4c4dSYu Shihai#define RSE_MHU_RX_ADDR			49030000 /* hex */
2206fa4c4dSYu Shihai
23*8dec6303SJagdish Gediya#if TARGET_FLAVOUR_FVP
24e9e83e96SJackson Cooper-Driver#define ETHERNET_ADDR			64000000
25e9e83e96SJackson Cooper-Driver#define ETHERNET_INT			799
265de9d79bSJagdish Gediya#define SYS_REGS_ADDR			60080000
27e9e83e96SJackson Cooper-Driver#define MMC_ADDR			600b0000
28e9e83e96SJackson Cooper-Driver#define MMC_INT_0			778
29e9e83e96SJackson Cooper-Driver#define MMC_INT_1			779
30ba1faaf1SJagdish Gediya#else /* TARGET_FLAVOUR_FPGA */
31*8dec6303SJagdish Gediya#define ETHERNET_ADDR			18000000
32*8dec6303SJagdish Gediya#define ETHERNET_INT			109
335de9d79bSJagdish Gediya#define SYS_REGS_ADDR			1c010000
34ba1faaf1SJagdish Gediya#define MMC_ADDR			1c050000
35ba1faaf1SJagdish Gediya#define MMC_INT_0			107
36ba1faaf1SJagdish Gediya#define MMC_INT_1			108
37ba1faaf1SJagdish Gediya#endif /* TARGET_FLAVOUR_FVP */
38e9e83e96SJackson Cooper-Driver
39e9e83e96SJackson Cooper-Driver#define RTC_ADDR			600a0000
40e9e83e96SJackson Cooper-Driver#define RTC_INT				777
41e9e83e96SJackson Cooper-Driver
42e9e83e96SJackson Cooper-Driver#define KMI_0_ADDR			60100000
43e9e83e96SJackson Cooper-Driver#define KMI_0_INT			784
44e9e83e96SJackson Cooper-Driver#define KMI_1_ADDR			60110000
45e9e83e96SJackson Cooper-Driver#define KMI_1_INT			785
46e9e83e96SJackson Cooper-Driver
47e9e83e96SJackson Cooper-Driver#define VIRTIO_BLOCK_ADDR		60020000
48e9e83e96SJackson Cooper-Driver#define VIRTIO_BLOCK_INT		769
49e9e83e96SJackson Cooper-Driver
50bb9b8936SJagdish Gediya#if TARGET_FLAVOUR_FPGA
51bb9b8936SJagdish Gediya#define DPU_ADDR			4000000000
52bb9b8936SJagdish Gediya#define DPU_IRQ				579
53bb9b8936SJagdish Gediya#endif
54bb9b8936SJagdish Gediya
553cedc47bSLeo Yan#include "tc-common.dtsi"
563cedc47bSLeo Yan#if TARGET_FLAVOUR_FVP
573cedc47bSLeo Yan#include "tc-fvp.dtsi"
583cedc47bSLeo Yan#else
593cedc47bSLeo Yan#include "tc-fpga.dtsi"
603cedc47bSLeo Yan#endif /* TARGET_FLAVOUR_FVP */
613cedc47bSLeo Yan#include "tc3-4-base.dtsi"
62b3a4f8cfSLeo Yan
63b3a4f8cfSLeo Yan/ {
6411ec5de6SLeo Yan	smmu_700: iommu@3f000000 {
6511ec5de6SLeo Yan		status = "okay";
6611ec5de6SLeo Yan	};
6711ec5de6SLeo Yan
68e365479dSJackson Cooper-Driver	smmu_700_dpu: iommu@4002a00000 {
69e365479dSJackson Cooper-Driver		status = "okay";
70e365479dSJackson Cooper-Driver	};
71e365479dSJackson Cooper-Driver
72e365479dSJackson Cooper-Driver	dp0: display@DPU_ADDR {
73e365479dSJackson Cooper-Driver		iommus = <&smmu_700_dpu 0x000>, <&smmu_700_dpu 0x100>,
74e365479dSJackson Cooper-Driver			 <&smmu_700_dpu 0x200>, <&smmu_700_dpu 0x600>;
75e365479dSJackson Cooper-Driver	};
76e365479dSJackson Cooper-Driver
77b3a4f8cfSLeo Yan	gpu: gpu@2d000000 {
78b3a4f8cfSLeo Yan		interrupts = <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH 0>;
79b3a4f8cfSLeo Yan		interrupt-names = "IRQAW";
8011ec5de6SLeo Yan		iommus = <&smmu_700 0x200>;
81b3a4f8cfSLeo Yan	};
8250ad0cfdSJagdish Gediya
8350ad0cfdSJagdish Gediya	dsu-pmu {
8450ad0cfdSJagdish Gediya		interrupts = <GIC_SPI 258 IRQ_TYPE_LEVEL_HIGH 0>;
8550ad0cfdSJagdish Gediya	};
86624deb08SJagdish Gediya
87624deb08SJagdish Gediya	cs-pmu@4 {
88624deb08SJagdish Gediya		compatible = "arm,coresight-pmu";
89624deb08SJagdish Gediya		reg = <0x0 MCN_PMU_ADDR(4) 0x0 0xffc>;
90624deb08SJagdish Gediya	};
91624deb08SJagdish Gediya
92624deb08SJagdish Gediya	cs-pmu@5 {
93624deb08SJagdish Gediya		compatible = "arm,coresight-pmu";
94624deb08SJagdish Gediya		reg = <0x0 MCN_PMU_ADDR(5) 0x0 0xffc>;
95624deb08SJagdish Gediya	};
96624deb08SJagdish Gediya
97624deb08SJagdish Gediya	cs-pmu@6 {
98624deb08SJagdish Gediya		compatible = "arm,coresight-pmu";
99624deb08SJagdish Gediya		reg = <0x0 MCN_PMU_ADDR(6) 0x0 0xffc>;
100624deb08SJagdish Gediya	};
101624deb08SJagdish Gediya
102624deb08SJagdish Gediya	cs-pmu@7 {
103624deb08SJagdish Gediya		compatible = "arm,coresight-pmu";
104624deb08SJagdish Gediya		reg = <0x0 MCN_PMU_ADDR(7) 0x0 0xffc>;
105624deb08SJagdish Gediya	};
106b3a4f8cfSLeo Yan};
107