/*
 * Copyright (c) 2020-2024, Arm Limited. All rights reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

#include <common/tbbr/tbbr_img_def.h>
#include <platform_def.h>

/dts-v1/;

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

		tb_fw-config {
			load-address = <0x0 0x4001300>;
			max-size = <0x400>;
			id = <TB_FW_CONFIG_ID>;
		};

		tos_fw-config {
			load-address = <0x0 0x04001700>;
			max-size = <0x1000>;
			id = <TOS_FW_CONFIG_ID>;
		};

		hw-config {
			load-address = <0x0 PLAT_HW_CONFIG_DTB_BASE>;
			max-size = <PLAT_ARM_HW_CONFIG_SIZE>;
			id = <HW_CONFIG_ID>;
		};
		nt_fw-config {
			load-address = <0x0 (PLAT_HW_CONFIG_DTB_BASE + PLAT_ARM_HW_CONFIG_SIZE)>;
			max-size = <0x1000>;
			id = <NT_FW_CONFIG_ID>;
		};
	};
};
