xref: /rk3399_ARM-atf/fdts/a5ds.dts (revision ec885bacb247e9a88c0e21406bdf42821eb340c7)
100c7d5acSUsama Arif/*
200c7d5acSUsama Arif * Copyright (c) 2019, Arm Limited. All rights reserved.
300c7d5acSUsama Arif *
400c7d5acSUsama Arif * SPDX-License-Identifier: BSD-3-Clause
500c7d5acSUsama Arif */
600c7d5acSUsama Arif
700c7d5acSUsama Arif/dts-v1/;
800c7d5acSUsama Arif
900c7d5acSUsama Arif/ {
1000c7d5acSUsama Arif	model = "A5DS";
1100c7d5acSUsama Arif	compatible = "arm,A5DS";
1200c7d5acSUsama Arif	interrupt-parent = <&gic>;
1300c7d5acSUsama Arif	#address-cells = <1>;
1400c7d5acSUsama Arif	#size-cells = <1>;
15*ec885bacSUsama Arif
16*ec885bacSUsama Arif	psci {
17*ec885bacSUsama Arif		compatible = "arm,psci-1.0", "arm,psci-0.2", "arm,psci";
18*ec885bacSUsama Arif		method = "smc";
19*ec885bacSUsama Arif		cpu_on = <0x84000003>;
20*ec885bacSUsama Arif	};
21*ec885bacSUsama Arif
2200c7d5acSUsama Arif	cpus {
2300c7d5acSUsama Arif		#address-cells = <1>;
2400c7d5acSUsama Arif		#size-cells = <0>;
2500c7d5acSUsama Arif		cpu@0 {
2600c7d5acSUsama Arif			device_type = "cpu";
2700c7d5acSUsama Arif			compatible = "arm,cortex-a5";
28*ec885bacSUsama Arif			enable-method = "psci";
2900c7d5acSUsama Arif			reg = <0>;
3000c7d5acSUsama Arif		};
31*ec885bacSUsama Arif		cpu@1 {
32*ec885bacSUsama Arif			device_type = "cpu";
33*ec885bacSUsama Arif			compatible = "arm,cortex-a5";
34*ec885bacSUsama Arif			enable-method = "psci";
35*ec885bacSUsama Arif			reg = <1>;
36*ec885bacSUsama Arif		};
37*ec885bacSUsama Arif		cpu@2 {
38*ec885bacSUsama Arif			device_type = "cpu";
39*ec885bacSUsama Arif			compatible = "arm,cortex-a5";
40*ec885bacSUsama Arif			enable-method = "psci";
41*ec885bacSUsama Arif			reg = <2>;
42*ec885bacSUsama Arif		};
43*ec885bacSUsama Arif		cpu@3 {
44*ec885bacSUsama Arif			device_type = "cpu";
45*ec885bacSUsama Arif			compatible = "arm,cortex-a5";
46*ec885bacSUsama Arif			enable-method = "psci";
47*ec885bacSUsama Arif			reg = <3>;
48*ec885bacSUsama Arif		};
4900c7d5acSUsama Arif	};
5000c7d5acSUsama Arif
5100c7d5acSUsama Arif	memory@80000000 {
5200c7d5acSUsama Arif		device_type = "memory";
5300c7d5acSUsama Arif		reg = <0x80000000 0x7F000000>;
5400c7d5acSUsama Arif	};
5500c7d5acSUsama Arif
5600c7d5acSUsama Arif	refclk100mhz: refclk100mhz {
5700c7d5acSUsama Arif		compatible = "fixed-clock";
5800c7d5acSUsama Arif		#clock-cells = <0>;
5900c7d5acSUsama Arif		clock-frequency = <100000000>;
6000c7d5acSUsama Arif		clock-output-names = "apb_pclk";
6100c7d5acSUsama Arif	};
6200c7d5acSUsama Arif
6300c7d5acSUsama Arif	smbclk: refclk24mhzx2 {
6400c7d5acSUsama Arif		compatible = "fixed-clock";
6500c7d5acSUsama Arif		#clock-cells = <0>;
6600c7d5acSUsama Arif		clock-frequency = <48000000>;
6700c7d5acSUsama Arif		clock-output-names = "smclk";
6800c7d5acSUsama Arif	};
6900c7d5acSUsama Arif
7000c7d5acSUsama Arif
7100c7d5acSUsama Arif	rtc@1a220000 {
7200c7d5acSUsama Arif		compatible = "arm,pl031", "arm,primecell";
7300c7d5acSUsama Arif		reg = <0x1a220000 0x1000>;
7400c7d5acSUsama Arif		clocks = <&refclk100mhz>;
7500c7d5acSUsama Arif		interrupts = <0 6 0xf04>;
7600c7d5acSUsama Arif		clock-names = "apb_pclk";
7700c7d5acSUsama Arif	};
7800c7d5acSUsama Arif
7900c7d5acSUsama Arif	gic: interrupt-controller@1c001000 {
8000c7d5acSUsama Arif		compatible = "arm,cortex-a9-gic";
8100c7d5acSUsama Arif		#interrupt-cells = <3>;
8200c7d5acSUsama Arif		#address-cells = <0>;
8300c7d5acSUsama Arif		interrupt-controller;
8400c7d5acSUsama Arif		reg = <0x1c001000 0x1000>,
8500c7d5acSUsama Arif			  <0x1c000100 0x100>;
8600c7d5acSUsama Arif		interrupts = <1 9 0xf04>;
8700c7d5acSUsama Arif	};
8800c7d5acSUsama Arif
8900c7d5acSUsama Arif	serial0: uart@1a200000 {
9000c7d5acSUsama Arif		compatible = "arm,pl011", "arm,primecell";
9100c7d5acSUsama Arif		reg = <0x1a200000 0x1000>;
9200c7d5acSUsama Arif		interrupt-parent = <&gic>;
9300c7d5acSUsama Arif		interrupts = <0 8 0xf04>;
9400c7d5acSUsama Arif		clocks = <&refclk100mhz>;
9500c7d5acSUsama Arif		clock-names = "apb_pclk";
9600c7d5acSUsama Arif	};
9700c7d5acSUsama Arif
9800c7d5acSUsama Arif	serial1: uart@1a210000 {
9900c7d5acSUsama Arif		compatible = "arm,pl011", "arm,primecell";
10000c7d5acSUsama Arif		reg = <0x1a210000 0x1000>;
10100c7d5acSUsama Arif		interrupt-parent = <&gic>;
10200c7d5acSUsama Arif		interrupts = <0 9 0xf04>;
10300c7d5acSUsama Arif		clocks = <&refclk100mhz>;
10400c7d5acSUsama Arif		clock-names = "apb_pclk";
10500c7d5acSUsama Arif	};
10600c7d5acSUsama Arif
10700c7d5acSUsama Arif	timer0: timer@1a040000 {
10800c7d5acSUsama Arif		compatible = "arm,armv7-timer-mem";
10900c7d5acSUsama Arif		#address-cells = <1>;
11000c7d5acSUsama Arif		#size-cells = <1>;
11100c7d5acSUsama Arif		ranges;
11200c7d5acSUsama Arif		reg = <0x1a040000 0x1000>;
11300c7d5acSUsama Arif		clock-frequency = <50000000>;
11400c7d5acSUsama Arif
11500c7d5acSUsama Arif		frame@1a050000 {
11600c7d5acSUsama Arif			frame-number = <0>;
11700c7d5acSUsama Arif			interrupts = <0 2 0xf04>;
11800c7d5acSUsama Arif			reg = <0x1a050000 0x1000>;
11900c7d5acSUsama Arif		};
12000c7d5acSUsama Arif	};
12100c7d5acSUsama Arif};
122