// SPDX-License-Identifier: GPL-2.0-only OR MIT
/*
 * Device Tree Source for AM6 SoC Family Wakeup Domain peripherals
 *
 * Copyright (C) 2016-2024 Texas Instruments Incorporated - https://www.ti.com/
 */

&cbass_wakeup {
	dmsc: system-controller@44083000 {
		compatible = "ti,am654-sci";
		ti,host-id = <12>;

		mbox-names = "rx", "tx";

		mboxes = <&secure_proxy_main 11>,
			 <&secure_proxy_main 13>;

		reg-names = "debug_messages";
		reg = <0x44083000 0x1000>;

		k3_pds: power-controller {
			compatible = "ti,sci-pm-domain";
			#power-domain-cells = <2>;
		};

		k3_clks: clock-controller {
			compatible = "ti,k2g-sci-clk";
			#clock-cells = <2>;
		};

		k3_reset: reset-controller {
			compatible = "ti,sci-reset";
			#reset-cells = <2>;
		};
	};

	wkup_conf: bus@43000000 {
		compatible = "simple-bus";
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0x0 0x43000000 0x20000>;

		chipid: chipid@14 {
			compatible = "ti,am654-chipid";
			reg = <0x14 0x4>;
		};
	};

	wkup_pmx0: pinctrl@4301c000 {
		compatible = "pinctrl-single";
		reg = <0x4301c000 0x118>;
		#pinctrl-cells = <1>;
		pinctrl-single,register-width = <32>;
		pinctrl-single,function-mask = <0xffffffff>;
	};

	wkup_uart0: serial@42300000 {
		compatible = "ti,am654-uart";
		reg = <0x42300000 0x100>;
		interrupts = <GIC_SPI 697 IRQ_TYPE_LEVEL_HIGH>;
		clock-frequency = <48000000>;
		current-speed = <115200>;
		power-domains = <&k3_pds 150 TI_SCI_PD_EXCLUSIVE>;
		status = "disabled";
	};

	wkup_i2c0: i2c@42120000 {
		compatible = "ti,am654-i2c", "ti,omap4-i2c";
		reg = <0x42120000 0x100>;
		interrupts = <GIC_SPI 696 IRQ_TYPE_LEVEL_HIGH>;
		#address-cells = <1>;
		#size-cells = <0>;
		clock-names = "fck";
		clocks = <&k3_clks 115 1>;
		power-domains = <&k3_pds 115 TI_SCI_PD_EXCLUSIVE>;
		status = "disabled";
	};

	intr_wkup_gpio: interrupt-controller@42200000 {
		compatible = "ti,sci-intr";
		reg = <0x42200000 0x200>;
		ti,intr-trigger-type = <1>;
		interrupt-controller;
		interrupt-parent = <&gic500>;
		#interrupt-cells = <1>;
		ti,sci = <&dmsc>;
		ti,sci-dev-id = <156>;
		ti,interrupt-ranges = <0 712 16>;
	};

	wkup_gpio0: gpio@42110000 {
		compatible = "ti,am654-gpio", "ti,keystone-gpio";
		reg = <0x42110000 0x100>;
		gpio-controller;
		#gpio-cells = <2>;
		interrupt-parent = <&intr_wkup_gpio>;
		interrupts = <60>, <61>, <62>, <63>;
		interrupt-controller;
		#interrupt-cells = <2>;
		ti,ngpio = <56>;
		ti,davinci-gpio-unbanked = <0>;
		clocks = <&k3_clks 59 0>;
		clock-names = "gpio";
	};

	wkup_vtm0: temperature-sensor@42050000 {
		compatible = "ti,am654-vtm";
		reg = <0x42050000 0x25c>;
		power-domains = <&k3_pds 80 TI_SCI_PD_EXCLUSIVE>;
		#thermal-sensor-cells = <1>;
	};
};
