/*
 * Copyright (c) 2022 Nordic Semiconductor ASA
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/ {
	chosen {
		/delete-property/ zephyr,ipc_shm;
	};

	reserved-memory {
		/delete-node/ memory@20070000;

		sram_ipc0_tx: memory@20070000 {
			reg = <0x20070000 0x4000>;
		};

		sram_ipc0_rx: memory@20074000 {
			reg = <0x20074000 0x4000>;
		};

		sram_ipc1_tx: memory@20078000 {
			reg = <0x20078000 0x4000>;
		};

		sram_ipc1_rx: memory@2007C000 {
			reg = <0x2007C000 0x4000>;
		};
	};

	ipc {
		/delete-node/ ipc0;

		ipc0: ipc0 {
			compatible = "zephyr,ipc-icmsg-me-initiator";
			tx-region = <&sram_ipc0_tx>;
			rx-region = <&sram_ipc0_rx>;
			mboxes = <&mbox 0>, <&mbox 1>;
			mbox-names = "tx", "rx";
			status = "okay";
		};

		ipc1: ipc1 {
			compatible = "zephyr,ipc-icmsg-me-initiator";
			tx-region = <&sram_ipc1_tx>;
			rx-region = <&sram_ipc1_rx>;
			mboxes = <&mbox 2>, <&mbox 3>;
			mbox-names = "tx", "rx";
			status = "okay";
		};
	};
};
