# Copyright (c) 2024 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

if SOC_SERIES_NRF54HX

rsource "Kconfig.defconfig.nrf54h*"

config SOC_SERIES
	default "nrf54h"

DT_CHOSEN_Z_SRAM = zephyr,sram
DT_CHOSEN_Z_CODE = zephyr,code-partition

config BUILD_OUTPUT_ADJUST_LMA
	depends on !XIP
	default "$(dt_chosen_partition_addr_hex,$(DT_CHOSEN_Z_CODE)) - \
		 $(dt_chosen_reg_addr_hex,$(DT_CHOSEN_Z_SRAM))"

endif # SOC_SERIES_NRF54HX
