Linux Audio

Check our new training course

Embedded Linux training

Mar 10-20, 2025, special US time zones
Register
Loading...
Note: File does not exist in v6.9.4.
  1// SPDX-License-Identifier: GPL-2.0
  2// Copyright (c) 2018 Nuvoton Technology tomer.maimon@nuvoton.com
  3// Copyright 2018 Google, Inc.
  4
  5#include <dt-bindings/interrupt-controller/arm-gic.h>
  6
  7/ {
  8	#address-cells = <1>;
  9	#size-cells = <1>;
 10	interrupt-parent = <&gic>;
 11
 12	/* external reference clock */
 13	clk_refclk: clk_refclk {
 14		compatible = "fixed-clock";
 15		#clock-cells = <0>;
 16		clock-frequency = <25000000>;
 17		clock-output-names = "refclk";
 18	};
 19
 20	/* external reference clock for cpu. float in normal operation */
 21	clk_sysbypck: clk_sysbypck {
 22		compatible = "fixed-clock";
 23		#clock-cells = <0>;
 24		clock-frequency = <800000000>;
 25		clock-output-names = "sysbypck";
 26	};
 27
 28	/* external reference clock for MC. float in normal operation */
 29	clk_mcbypck: clk_mcbypck {
 30		compatible = "fixed-clock";
 31		#clock-cells = <0>;
 32		clock-frequency = <800000000>;
 33		clock-output-names = "mcbypck";
 34	};
 35
 36	 /* external clock signal rg1refck, supplied by the phy */
 37	clk_rg1refck: clk_rg1refck {
 38		compatible = "fixed-clock";
 39		#clock-cells = <0>;
 40		clock-frequency = <125000000>;
 41		clock-output-names = "clk_rg1refck";
 42	};
 43
 44	 /* external clock signal rg2refck, supplied by the phy */
 45	clk_rg2refck: clk_rg2refck {
 46		compatible = "fixed-clock";
 47		#clock-cells = <0>;
 48		clock-frequency = <125000000>;
 49		clock-output-names = "clk_rg2refck";
 50	};
 51
 52	clk_xin: clk_xin {
 53		compatible = "fixed-clock";
 54		#clock-cells = <0>;
 55		clock-frequency = <50000000>;
 56		clock-output-names = "clk_xin";
 57	};
 58
 59	soc {
 60		#address-cells = <1>;
 61		#size-cells = <1>;
 62		compatible = "simple-bus";
 63		interrupt-parent = <&gic>;
 64		ranges = <0x0 0xf0000000 0x00900000>;
 65
 66		gcr: gcr@800000 {
 67			compatible = "nuvoton,npcm750-gcr", "syscon",
 68				"simple-mfd";
 69			reg = <0x800000 0x1000>;
 70		};
 71
 72		scu: scu@3fe000 {
 73			compatible = "arm,cortex-a9-scu";
 74			reg = <0x3fe000 0x1000>;
 75		};
 76
 77		l2: cache-controller@3fc000 {
 78			compatible = "arm,pl310-cache";
 79			reg = <0x3fc000 0x1000>;
 80			interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
 81			cache-unified;
 82			cache-level = <2>;
 83			clocks = <&clk 10>;
 84			arm,shared-override;
 85		};
 86
 87		gic: interrupt-controller@3ff000 {
 88			compatible = "arm,cortex-a9-gic";
 89			interrupt-controller;
 90			#interrupt-cells = <3>;
 91			reg = <0x3ff000 0x1000>,
 92				<0x3fe100 0x100>;
 93		};
 94	};
 95
 96	ahb {
 97		#address-cells = <1>;
 98		#size-cells = <1>;
 99		compatible = "simple-bus";
100		interrupt-parent = <&gic>;
101		ranges;
102
103		clk: clock-controller@f0801000 {
104			compatible = "nuvoton,npcm750-clk", "syscon";
105			#clock-cells = <1>;
106			clock-controller;
107			reg = <0xf0801000 0x1000>;
108			clock-names = "refclk", "sysbypck", "mcbypck";
109			clocks = <&clk_refclk>, <&clk_sysbypck>, <&clk_mcbypck>;
110		};
111
112		apb {
113			#address-cells = <1>;
114			#size-cells = <1>;
115			compatible = "simple-bus";
116			interrupt-parent = <&gic>;
117			ranges = <0x0 0xf0000000 0x00300000>;
118
119			timer0: timer@8000 {
120				compatible = "nuvoton,npcm750-timer";
121				interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
122				reg = <0x8000 0x50>;
123				clocks = <&clk 5>;
124			};
125
126			watchdog0: watchdog@801C {
127				compatible = "nuvoton,npcm750-wdt";
128				interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
129				reg = <0x801C 0x4>;
130				status = "disabled";
131				clocks = <&clk 5>;
132			};
133
134			watchdog1: watchdog@901C {
135				compatible = "nuvoton,npcm750-wdt";
136				interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
137				reg = <0x901C 0x4>;
138				status = "disabled";
139				clocks = <&clk 5>;
140			};
141
142			watchdog2: watchdog@a01C {
143				compatible = "nuvoton,npcm750-wdt";
144				interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
145				reg = <0xa01C 0x4>;
146				status = "disabled";
147				clocks = <&clk 5>;
148			};
149
150			serial0: serial@1000 {
151				compatible = "nuvoton,npcm750-uart";
152				reg = <0x1000 0x1000>;
153				clocks = <&clk 6>;
154				interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
155				reg-shift = <2>;
156				status = "disabled";
157			};
158
159			serial1: serial@2000 {
160				compatible = "nuvoton,npcm750-uart";
161				reg = <0x2000 0x1000>;
162				clocks = <&clk 6>;
163				interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
164				reg-shift = <2>;
165				status = "disabled";
166			};
167
168			serial2: serial@3000 {
169				compatible = "nuvoton,npcm750-uart";
170				reg = <0x3000 0x1000>;
171				clocks = <&clk 6>;
172				interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
173				reg-shift = <2>;
174				status = "disabled";
175			};
176
177			serial3: serial@4000 {
178				compatible = "nuvoton,npcm750-uart";
179				reg = <0x4000 0x1000>;
180				clocks = <&clk 6>;
181				interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
182				reg-shift = <2>;
183				status = "disabled";
184			};
185		};
186	};
187};