blob: 915e8db4c83bc45ab12f8fae6fb3219f0a621c0e [file] [log] [blame]
/*
* Copyright (c) 2022, Carlo Caione <ccaione@baylibre.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/ztest.h>
#include <zephyr/devicetree.h>
#include <zephyr/device.h>
#include <zephyr/linker/devicetree_regions.h>
#define TEST_SRAM_NODE DT_NODELABEL(test_sram)
#define TEST_SRAM_SECT LINKER_DT_NODE_REGION_NAME(TEST_SRAM_NODE)
#define TEST_SRAM_ADDR DT_REG_ADDR(TEST_SRAM_NODE)
#define TEST_SRAM_SIZE DT_REG_SIZE(TEST_SRAM_NODE)
uint8_t var_in_test_sram[TEST_SRAM_SIZE] Z_GENERIC_SECTION(TEST_SRAM_SECT);
extern char __SRAM_REGION_start[];
extern char __SRAM_REGION_end[];
extern char __SRAM_REGION_size[];
extern char __SRAM_REGION_load_start[];
ZTEST(devicetree_memory_region, test_memory_region)
{
zassert_true(!strcmp(LINKER_DT_NODE_REGION_NAME(TEST_SRAM_NODE), "SRAM_REGION"), "");
zassert_equal_ptr(var_in_test_sram, TEST_SRAM_ADDR, "");
zassert_equal_ptr(__SRAM_REGION_start, TEST_SRAM_ADDR, "");
zassert_equal_ptr(__SRAM_REGION_end, TEST_SRAM_ADDR + TEST_SRAM_SIZE, "");
zassert_equal_ptr(__SRAM_REGION_load_start, TEST_SRAM_ADDR, "");
zassert_equal((unsigned long) __SRAM_REGION_size, TEST_SRAM_SIZE, "");
}
ZTEST_SUITE(devicetree_memory_region, NULL, NULL, NULL, NULL, NULL);