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

/* Flash partition table without support for Nordic nRF5 bootloader */

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

		/* The size of this partition ensures that MCUBoot can be built
		 * with an RTT console, CDC ACM support, and w/o optimizations.
		 */
		boot_partition: partition@0 {
			label = "mcuboot";
			reg = <0x00000000 0x00012000>;
		};

		slot0_partition: partition@12000 {
			label = "image-0";
			reg = <0x00012000 0x00069000>;
		};
		slot1_partition: partition@7b000 {
			label = "image-1";
			reg = <0x0007b000 0x00069000>;
		};
		scratch_partition: partition@e4000 {
			label = "image-scratch";
			reg = <0x000e4000 0x00018000>;
		};
		storage_partition: partition@fc000 {
			label = "storage";
			reg = <0x000fc000 0x00004000>;
		};
	};
};
