/*
 * Copyright (c) 2023 TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include <mem.h>
#include <freq.h>
#include <arm/armv7-m.dtsi>
#include <zephyr/dt-bindings/interrupt-controller/renesas-ra-icu.h>

/ {
	cpus {
		#address-cells = <1>;
		#size-cells = <0>;

		cpu@0 {
			device_type = "cpu";
			compatible = "arm,cortex-m4";
			reg = <0>;
		};
	};

	clocks {
		mosc: mosc {
			compatible = "fixed-clock";
			clock-frequency = <1200000>;
			status = "disabled";
			#clock-cells = <0>;
		};

		sosc: sosc {
			compatible = "fixed-clock";
			clock-frequency = <32768>;
			status = "disabled";
			#clock-cells = <0>;
		};

		hoco: hoco {
			compatible = "fixed-clock";
			clock-frequency = <24000000>;
			status = "okay";
			#clock-cells = <0>;
		};

		moco: moco {
			compatible = "fixed-clock";
			clock-frequency = <8000000>;
			status = "okay";
			#clock-cells = <0>;
		};

		loco: loco {
			compatible = "fixed-clock";
			clock-frequency = <32768>;
			status = "okay";
			#clock-cells = <0>;
		};

		pll: pll {
			compatible = "fixed-factor-clock";
			status = "disabled";
			clocks = <&mosc>;
			clock-div = <2>;
			clock-mult = <8>;
			#clock-cells = <0>;
		};
	};

	sram0: memory0@20000000 {
		compatible = "mmio-sram";
		reg = <0x20000000 DT_SIZE_K(32)>;
	};

	soc {
		interrupt-parent = <&icu>;
		icu: interrupt-controller@40006000 {
			compatible = "renesas,ra-interrupt-controller-unit";
			reg = <0x40006000 0x40>;
			reg-names = "icu";
			interrupt-controller;
			#interrupt-cells = <3>;
		};

		cgc: cgc@4001e000 {
			compatible = "renesas,ra-clock-generation-circuit";
			reg = <0x4001e000 0x40 0x40047000 0x10>;
			reg-names = "system", "mstp";
			#clock-cells = <1>;

			clock-source = <&moco>;
			iclk-div = <16>;
			pclka-div = <16>;
			pclkb-div = <16>;
			pclkc-div = <16>;
			pclkd-div = <16>;
			fclk-div = <16>;
		};

		fcu: flash-controller@4001c000 {
			compatible = "renesas,ra-flash-controller";
			reg = <0x4001c000 0x44>;
			reg-names = "fcache";

			#address-cells = <1>;
			#size-cells = <1>;

			flash0: flash0@0 {
				compatible = "soc-nv-flash";
				reg = <0x00000000 DT_SIZE_K(256)>;
			};

			flash1: flash1@40100000 {
				compatible = "soc-nv-flash";
				reg = <0x40100000 DT_SIZE_K(8)>;
			};
		};

		ioport0: gpio@40040000 {
			compatible = "renesas,ra-gpio";
			reg = <0x40040000 0x20>;
			gpio-controller;
			#gpio-cells = <2>;
			ngpios = <16>;
			interrupts = <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ2>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ3>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ6>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ7>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ10>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ15>;
			interrupt-names = "port-irq2", "port-irq3", "port-irq6",
					  "port-irq7", "port-irq10", "port-irq15";
			port-irq2-pins = <2>;
			port-irq3-pins = <4>;
			port-irq6-pins = <0>;
			port-irq7-pins = <1 15>;
			port-irq10-pins = <5>;
			port-irq15-pins = <11>;
			status = "disabled";
		};

		ioport1: gpio@40040020 {
			compatible = "renesas,ra-gpio";
			reg = <0x40040020 0x20>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupts = <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ0>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ1>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ2>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ3>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ4>;
			interrupt-names = "port-irq0", "port-irq1", "port-irq2",
					  "port-irq3", "port-irq4";
			port-irq0-pins = <5>;
			port-irq1-pins = <1>;
			port-irq2-pins = <0>;
			port-irq3-pins = <10>;
			port-irq4-pins = <11>;
			ngpios = <16>;
			status = "disabled";
		};

		ioport2: gpio@40040040 {
			compatible = "renesas,ra-gpio";
			reg = <0x40040040 0x20>;
			gpio-controller;
			#gpio-cells = <2>;
			ngpios = <16>;
			interrupts = <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ0>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ1>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ2>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ3>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ9>;
			interrupt-names = "port-irq0", "port-irq1", "port-irq2",
					  "port-irq3", "port-irq9";
			port-irq0-pins = <6>;
			port-irq1-pins = <5>;
			port-irq2-pins = <13>;
			port-irq3-pins = <12>;
			status = "disabled";
		};

		ioport3: gpio@40040060 {
			compatible = "renesas,ra-gpio";
			reg = <0x40040060 0x20>;
			gpio-controller;
			#gpio-cells = <2>;
			ngpios = <16>;
			interrupts = <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ5>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ6>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ8>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ9>;
			interrupt-names = "port-irq5", "port-irq6", "port-irq8", "port-irq9";
			port-irq5-pins = <2>;
			port-irq6-pins = <1>;
			port-irq8-pins = <5>;
			port-irq9-pins = <4>;
			status = "disabled";
		};

		ioport4: gpio@40040080 {
			compatible = "renesas,ra-gpio";
			reg = <0x40040080 0x20>;
			gpio-controller;
			#gpio-cells = <2>;
			ngpios = <16>;
			interrupts = <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ0>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ4>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ5>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ6>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ7>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ8>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ9>;
			interrupt-names = "port-irq0", "port-irq4", "port-irq5", "port-irq6",
					  "port-irq7", "port-irq8", "port-irq9";
			port-irq0-pins = <0>;
			port-irq4-pins = <2 11>;
			port-irq5-pins = <1 10>;
			port-irq6-pins = <9>;
			port-irq7-pins = <8>;
			port-irq8-pins = <15>;
			port-irq9-pins = <14>;
			status = "disabled";
		};

		ioport5: gpio@400400a0 {
			compatible = "renesas,ra-gpio";
			reg = <0x400400a0 0x20>;
			gpio-controller;
			#gpio-cells = <2>;
			ngpios = <16>;
			interrupts = <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ11>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ12>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_PORT_IRQ14>;
			interrupt-names = "port-irq11", "port-irq12", "port-irq14";
			port-irq11-pins = <1>;
			port-irq12-pins = <2>;
			port-irq14-pins = <5>;
			status = "disabled";
		};

		pinctrl: pinctrl@40040800 {
			compatible = "renesas,ra-pinctrl";
			reg = <0x40040800 0x500 0x40040d03 0x1>;
			reg-names = "pfs", "pmisc_pwpr";
			status = "okay";
		};

		sci0: sci@40070000 {
			compatible = "renesas,ra-sci";
			reg = <0x40070000 0x20>;
			interrupts = <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI0_RXI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI0_TXI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI0_TEI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI0_ERI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI0_AM>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI0_RXI_OR_ERI>;
			interrupt-names = "rxi", "txi", "tei", "eri", "am", "rxi-or-eri";
			clocks = <&cgc RA_CLOCK_SCI(0)>;
			#clock-cells = <1>;
			status = "disabled";
			uart {
				compatible = "renesas,ra-uart-sci";
				status = "disabled";
			};
		};

		sci1: sci@40070020 {
			compatible = "renesas,ra-sci";
			reg = <0x40070020 0x20>;
			interrupts = <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI1_RXI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI1_TXI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI1_TEI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI1_ERI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI1_AM>;
			interrupt-names = "rxi", "txi", "tei", "eri", "am";
			clocks = <&cgc RA_CLOCK_SCI(1)>;
			#clock-cells = <1>;
			status = "disabled";
			uart {
				compatible = "renesas,ra-uart-sci";
				status = "disabled";
			};
		};

		sci9: sci@40070120 {
			compatible = "renesas,ra-sci";
			reg = <0x40070120 0x20>;
			interrupts = <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI9_RXI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI9_TXI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI9_TEI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI9_ERI>,
				     <RA_ICU_IRQ_UNSPECIFIED 0 RA_ICU_SCI9_AM>;
			interrupt-names = "rxi", "txi", "tei", "eri", "am";
			clocks = <&cgc RA_CLOCK_SCI(9)>;
			#clock-cells = <1>;
			status = "disabled";
			uart {
				compatible = "renesas,ra-uart-sci";
				status = "disabled";
			};
		};
	};
};

&nvic {
	arm,num-irq-priority-bits = <4>;
};
