1 /*
2  * Copyright (c) 2024, Arm Limited. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 #include "ni_tower_util.h"
8 
ni_tower_check_region_overlaps(uint64_t region_base_1,uint64_t region_end_1,uint64_t region_base_2,uint64_t region_end_2)9 enum ni_tower_err ni_tower_check_region_overlaps(uint64_t region_base_1,
10                                                  uint64_t region_end_1,
11                                                  uint64_t region_base_2,
12                                                  uint64_t region_end_2)
13 {
14     if (region_base_2 > region_end_1) {
15         return NI_TOWER_SUCCESS;
16     } else if (region_base_2 >= region_base_1) {
17         return NI_TOWER_ERR_REGION_OVERLAPS;
18     } else if (region_end_2 >= region_base_1) {
19         return NI_TOWER_ERR_REGION_OVERLAPS;
20     }
21 
22     return NI_TOWER_SUCCESS;
23 }
24