/*
 * Copyright (c) 2023 by Rivos Inc.
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/ {
	#address-cells = <0x01>;
	#size-cells = <0x01>;
	compatible = "lowrisc,opentitan-earlgrey";

	cpus {
		#address-cells = <0x01>;
		#size-cells = <0x00>;
		timebase-frequency = <10000000>;

		cpu@0 {
			device_type = "cpu";
			reg = <0x00>;
			status = "okay";
			compatible = "riscv";
			riscv,isa = "rv32imcb_zicsr_zifencei";

			hlic: interrupt-controller {
				#interrupt-cells = <0x01>;
				interrupt-controller;
				compatible = "riscv,cpu-intc";
			};
		};
	};

	soc {
		#address-cells = <0x01>;
		#size-cells = <0x01>;
		compatible = "simple-bus";
		ranges;

		flash0: flash@20000000 {
			reg = <0x20000000 0x100000>;
			compatible = "soc-nv-flash";
		};

		ram0: memory@10000000 {
			device_type = "memory";
			reg = <0x10000000 0x10000>;
		};

		mtimer: timer@40100000 {
			compatible = "lowrisc,machine-timer";
			reg = <0x40100000 0x200>;
			interrupts = <7 0>;
			interrupt-parent = <&hlic>;
			status = "disabled";
		};

		aontimer: aontimer@40470000 {
			compatible = "lowrisc,opentitan-aontimer";
			reg = <0x40470000 0x1000>;
			interrupts = <156 1>;
			interrupt-names = "wdog_bark";
			interrupt-parent = <&plic>;
			clock-frequency = <200000>;
			status = "disabled";
		};

		pwrmgr: pwrmgr@40400000 {
			compatible = "lowrisc,opentitan-pwrmgr";
			reg = <0x40400000 0x80>;
			status = "okay";
		};

		plic: interrupt-controller@48000000 {
			compatible = "sifive,plic-1.0.0";
			#address-cells = <0>;
			#interrupt-cells = <2>;
			interrupt-controller;
			interrupts-extended = <&hlic 11>;
			reg = <0x48000000 0x04000000>;
			riscv,max-priority = <7>;
			riscv,ndev = <184>;
			status = "okay";
		};

		uart0: serial@40000000{
			reg = <0x40000000 0x1000>;
			compatible = "lowrisc,opentitan-uart";
			status = "disabled";
		};

		spi0: spi@40300000 {
			compatible = "lowrisc,opentitan-spi";
			status = "disabled";
			reg = <0x40300000 0x100>;
			clock-frequency = <96000000>;
			#address-cells = <1>;
			#size-cells = <0>;
		};

		spi1: spi@40310000 {
			compatible = "lowrisc,opentitan-spi";
			status = "disabled";
			reg = <0x40310000 0x100>;
			clock-frequency = <48000000>;
			#address-cells = <1>;
			#size-cells = <0>;
		};
	};
};

