/*
 * Copyright (c) 2021 Nordic Semiconductor ASA
 *
 * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
 */

 / {
	chosen {
		nordic,pm-ext-flash = &mx25r64;
	};
};

/*
 * This section is used to enable a partition which is used through the flash API
 * but which is in reality stored in RAM. This is done to load data from
 * external flash to the network core. Since the network core cannot access
 * the external flash directly, the data is buffered in RAM before being
 * copied by the network core to the network core flash.
 *
 * The partition must be enabled by the application configuration to prevent
 * bus faults when mcumgr tries to access simulated partition with network core
 * image data.
 */

/ {
	soc {
		/* Add a flash controller which has the compatible
		 * 'zephyr,sim-flash'. This will ensure that the flash
		 * simulator can use it. None of the other properties in this
		 * node is used for anything.
		 */
		nordic_ram_flash_controller: nordic_ram-flash-controller@0 {
			compatible = "zephyr,sim-flash";
			reg = <0x00000000 DT_SIZE_K(40)>;
			#address-cells = <1>;
			#size-cells = <1>;
			erase-value = <0xff>;
			label = "nordic_ram_flash_flash_controller";

			/* This node label must match that used in the flash
			 * simulator.
			 */
			flash_sim0: flash_sim@0 {
				status = "okay";
				compatible = "soc-nv-flash";
				label = "simulated_flash";
				erase-block-size = <4096>;
				write-block-size = <4>;
				reg = <0x00000000 DT_SIZE_K(256)>;

				partitions {
					compatible = "fixed-partitions";
					#address-cells = <1>;
					#size-cells = <1>;

					/* This partition must be defined for
					 * MCUboot to find the partition ID
					 * of the primary slot for image 1,
					 * which is stored in this partition.
					 */
					slot2_partition: partition@0 {
						label = "image-2";
						reg = <0x00000000 0x00000A000>;
					};
				};
			};
		};
	};

	chosen {
		zephyr,console = &cdc_acm_uart0;
	};
};

&zephyr_udc0 {
	cdc_acm_uart0: cdc_acm_uart0 {
		compatible = "zephyr,cdc-acm-uart";
		label = "CDC_ACM_0";
	};
};
