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


/delete-node/ &scratch_partition;
/delete-node/ &storage_partition;
/delete-node/ &slot0_partition;
/delete-node/ &slot1_partition;

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

		boot_partition: partition@0 {
			label = "mcuboot";
			reg = <0x00000000 0x00010000>;
		};
		slot0_partition: partition@10000 {
			label = "image-0";
			reg = <0x00010000 0x0000A000>;
		};
		slot1_partition: partition@1A000 {
			label = "image-1";
			reg = <0x0001A000 0x0000A000>;
		};
		slot2_partition: partition@24000 {
			label = "image-2";
			reg = <0x00024000 0x0000A000>;
		};
		slot3_partition: partition@2E000 {
			label = "image-3";
			reg = <0x0002E000 0x0000A000>;
		};
	};
};
