/* * Copyright (c) 2006-2021, RT-Thread Development Team * * SPDX-License-Identifier: Apache-2.0 * * Email: opensource_embedded@phytium.com.cn * * Change Logs: * Date Author Notes * 2022-10-26 huanghe first commit * 2022-10-26 zhugengyu support aarch64 * */ #include "rtconfig.h" #include #include #include #include #if defined(TARGET_ARMV8_AARCH64) #include #include #include #else #include "fgeneric_timer.h" /* for aarch32 */ #endif #include #include #include "fdebug.h" #include "fprintk.h" #include "fearly_uart.h" #include "fcpu_info.h" #include "fpsci.h" #define LOG_DEBUG_TAG "BOARD" #define BSP_LOG_ERROR(format, ...) FT_DEBUG_PRINT_E(LOG_DEBUG_TAG, format, ##__VA_ARGS__) #define BSP_LOG_WARN(format, ...) FT_DEBUG_PRINT_W(LOG_DEBUG_TAG, format, ##__VA_ARGS__) #define BSP_LOG_INFO(format, ...) FT_DEBUG_PRINT_I(LOG_DEBUG_TAG, format, ##__VA_ARGS__) #define BSP_LOG_DEBUG(format, ...) FT_DEBUG_PRINT_D(LOG_DEBUG_TAG, format, ##__VA_ARGS__) /* mmu config */ struct mem_desc platform_mem_desc[] = #if defined(TARGET_E2000) { { 0x00U, 0x00U + 0x40000000U, 0x00U, DEVICE_MEM }, { 0x40000000U, 0x40000000U + 0x10000000U, 0x40000000U, DEVICE_MEM }, { 0x50000000U, 0x50000000U + 0x30000000U, 0x50000000U, DEVICE_MEM }, { 0x80000000U, 0xffffffffU, 0x80000000U, NORMAL_MEM }, #if defined(TARGET_ARMV8_AARCH64) { 0x1000000000, 0x1000000000 + 0x1000000000, 0x1000000000, DEVICE_MEM }, { 0x2000000000, 0x2000000000 + 0x2000000000, 0x2000000000, NORMAL_MEM }, #endif }; #elif defined(TARGET_F2000_4) || defined(TARGET_D2000) { { 0x80000000, 0xFFFFFFFF, 0x80000000, DDR_MEM }, { 0, //< QSPI 0x1FFFFFFF, 0, DEVICE_MEM }, { 0x20000000, //