1 /* 2 * SPDX-FileCopyrightText: 2021-2022 Espressif Systems (Shanghai) CO LTD 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 #pragma once 7 #include <stdlib.h> 8 #include <stdint.h> 9 #include <stdbool.h> 10 #include "sdkconfig.h" 11 #include "soc/soc_caps.h" 12 #include "hal/cache_types.h" 13 #include "hal/mmu_types.h" 14 15 #ifdef __cplusplus 16 extern "C" { 17 #endif 18 19 20 typedef struct { 21 uint32_t start; //laddr start 22 uint32_t end; //laddr end 23 size_t size; //region size 24 cache_bus_mask_t bus_id; //bus_id mask, for accessible cache buses 25 mmu_target_t targets; //region supported physical targets 26 uint32_t caps; //vaddr capabilities 27 } mmu_mem_region_t; 28 29 //These regions is referring to linear address 30 extern const mmu_mem_region_t g_mmu_mem_regions[SOC_MMU_LINEAR_ADDRESS_REGION_NUM]; 31 32 #ifdef __cplusplus 33 } 34 #endif 35