// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
/*
 * Copyright (c) 2021, STMicroelectronics - All Rights Reserved
 */

#include <common/tbbr/tbbr_img_def.h>

#include <platform_def.h>

/dts-v1/;

/ {
	dtb-registry {
		compatible = "fconf,dyn_cfg-dtb_registry";

		hw-config {
			load-address = <0x0 STM32MP_HW_CONFIG_BASE>;
			max-size = <STM32MP_HW_CONFIG_MAX_SIZE>;
			id = <HW_CONFIG_ID>;
		};

		nt_fw {
			load-address = <0x0 STM32MP_BL33_BASE>;
			max-size = <STM32MP_BL33_MAX_SIZE>;
			id = <BL33_IMAGE_ID>;
		};

#ifdef AARCH32_SP_OPTEE
		tos_fw {
			load-address = <0x0 STM32MP_OPTEE_BASE>;
			max-size = <STM32MP_OPTEE_SIZE>;
			id = <BL32_IMAGE_ID>;
		};
#else
		tos_fw {
			load-address = <0x0 STM32MP_BL32_BASE>;
			max-size = <STM32MP_BL32_SIZE>;
			id = <BL32_IMAGE_ID>;
		};

		tos_fw-config {
			load-address = <0x0 STM32MP_BL32_DTB_BASE>;
			max-size = <STM32MP_BL32_DTB_SIZE>;
			id = <TOS_FW_CONFIG_ID>;
		};
#endif
	};
};
