xref: /freebsd/sys/contrib/device-tree/src/nds32/ae3xx.dts (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot/dts-v1/;
2*c66ec88fSEmmanuel Vadot/ {
3*c66ec88fSEmmanuel Vadot	compatible = "andestech,ae3xx";
4*c66ec88fSEmmanuel Vadot	#address-cells = <1>;
5*c66ec88fSEmmanuel Vadot	#size-cells = <1>;
6*c66ec88fSEmmanuel Vadot	interrupt-parent = <&intc>;
7*c66ec88fSEmmanuel Vadot
8*c66ec88fSEmmanuel Vadot	chosen {
9*c66ec88fSEmmanuel Vadot		stdout-path = &serial0;
10*c66ec88fSEmmanuel Vadot	};
11*c66ec88fSEmmanuel Vadot
12*c66ec88fSEmmanuel Vadot	memory@0 {
13*c66ec88fSEmmanuel Vadot		device_type = "memory";
14*c66ec88fSEmmanuel Vadot		reg = <0x00000000 0x40000000>;
15*c66ec88fSEmmanuel Vadot	};
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel Vadot	cpus {
18*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
19*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
20*c66ec88fSEmmanuel Vadot		cpu@0 {
21*c66ec88fSEmmanuel Vadot			device_type = "cpu";
22*c66ec88fSEmmanuel Vadot			compatible = "andestech,n13", "andestech,nds32v3";
23*c66ec88fSEmmanuel Vadot			reg = <0>;
24*c66ec88fSEmmanuel Vadot			clock-frequency = <60000000>;
25*c66ec88fSEmmanuel Vadot			next-level-cache = <&L2>;
26*c66ec88fSEmmanuel Vadot		};
27*c66ec88fSEmmanuel Vadot	};
28*c66ec88fSEmmanuel Vadot
29*c66ec88fSEmmanuel Vadot	intc: interrupt-controller {
30*c66ec88fSEmmanuel Vadot		compatible = "andestech,ativic32";
31*c66ec88fSEmmanuel Vadot		#interrupt-cells = <1>;
32*c66ec88fSEmmanuel Vadot		interrupt-controller;
33*c66ec88fSEmmanuel Vadot	};
34*c66ec88fSEmmanuel Vadot
35*c66ec88fSEmmanuel Vadot	clock: clk {
36*c66ec88fSEmmanuel Vadot		#clock-cells = <0>;
37*c66ec88fSEmmanuel Vadot		compatible = "fixed-clock";
38*c66ec88fSEmmanuel Vadot		clock-frequency = <30000000>;
39*c66ec88fSEmmanuel Vadot	};
40*c66ec88fSEmmanuel Vadot
41*c66ec88fSEmmanuel Vadot	apb {
42*c66ec88fSEmmanuel Vadot		compatible = "simple-bus";
43*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
44*c66ec88fSEmmanuel Vadot		#size-cells = <1>;
45*c66ec88fSEmmanuel Vadot		ranges;
46*c66ec88fSEmmanuel Vadot
47*c66ec88fSEmmanuel Vadot		serial0: serial@f0300000 {
48*c66ec88fSEmmanuel Vadot			compatible = "andestech,uart16550", "ns16550a";
49*c66ec88fSEmmanuel Vadot			reg = <0xf0300000 0x1000>;
50*c66ec88fSEmmanuel Vadot			interrupts = <8>;
51*c66ec88fSEmmanuel Vadot			clock-frequency = <14745600>;
52*c66ec88fSEmmanuel Vadot			reg-shift = <2>;
53*c66ec88fSEmmanuel Vadot			reg-offset = <32>;
54*c66ec88fSEmmanuel Vadot			no-loopback-test = <1>;
55*c66ec88fSEmmanuel Vadot		};
56*c66ec88fSEmmanuel Vadot
57*c66ec88fSEmmanuel Vadot		timer0: timer@f0400000 {
58*c66ec88fSEmmanuel Vadot			compatible = "andestech,atcpit100";
59*c66ec88fSEmmanuel Vadot			reg = <0xf0400000 0x1000>;
60*c66ec88fSEmmanuel Vadot			interrupts = <2>;
61*c66ec88fSEmmanuel Vadot			clocks = <&clock>;
62*c66ec88fSEmmanuel Vadot			clock-names = "PCLK";
63*c66ec88fSEmmanuel Vadot		};
64*c66ec88fSEmmanuel Vadot	};
65*c66ec88fSEmmanuel Vadot
66*c66ec88fSEmmanuel Vadot	ahb {
67*c66ec88fSEmmanuel Vadot		compatible = "simple-bus";
68*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
69*c66ec88fSEmmanuel Vadot		#size-cells = <1>;
70*c66ec88fSEmmanuel Vadot		ranges;
71*c66ec88fSEmmanuel Vadot
72*c66ec88fSEmmanuel Vadot		L2: cache-controller@e0500000 {
73*c66ec88fSEmmanuel Vadot			compatible = "andestech,atl2c";
74*c66ec88fSEmmanuel Vadot			reg = <0xe0500000 0x1000>;
75*c66ec88fSEmmanuel Vadot			cache-unified;
76*c66ec88fSEmmanuel Vadot			cache-level = <2>;
77*c66ec88fSEmmanuel Vadot		};
78*c66ec88fSEmmanuel Vadot
79*c66ec88fSEmmanuel Vadot		mac0: ethernet@e0100000 {
80*c66ec88fSEmmanuel Vadot			compatible = "andestech,atmac100";
81*c66ec88fSEmmanuel Vadot			reg = <0xe0100000 0x1000>;
82*c66ec88fSEmmanuel Vadot			interrupts = <18>;
83*c66ec88fSEmmanuel Vadot		};
84*c66ec88fSEmmanuel Vadot	};
85*c66ec88fSEmmanuel Vadot
86*c66ec88fSEmmanuel Vadot	pmu {
87*c66ec88fSEmmanuel Vadot		compatible = "andestech,nds32v3-pmu";
88*c66ec88fSEmmanuel Vadot		interrupts= <13>;
89*c66ec88fSEmmanuel Vadot	};
90*c66ec88fSEmmanuel Vadot};
91