1 /* 2 * Copyright (c) 2019-2023 Arm Limited. All rights reserved. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #ifndef __TARGET_CFG_H__ 18 #define __TARGET_CFG_H__ 19 20 #include "tfm_plat_defs.h" 21 22 #define TFM_DRIVER_STDIO Driver_USART0 23 #define NS_DRIVER_STDIO Driver_USART0 24 25 /** 26 * \brief Defines the indexes of Subordinate Peripheral Protection Controller 27 * registers. 28 */ 29 typedef enum 30 { 31 PPC_SP_DO_NOT_CONFIGURE = -1, 32 PPC_SP_MAIN0 = 0, 33 PPC_SP_MAIN_EXP0 = 1, 34 PPC_SP_MAIN_EXP1 = 2, 35 PPC_SP_MAIN_EXP2 = 3, 36 PPC_SP_MAIN_EXP3 = 4, 37 PPC_SP_PERIPH0 = 5, 38 PPC_SP_PERIPH1 = 6, 39 PPC_SP_PERIPH_EXP0 = 7, 40 PPC_SP_PERIPH_EXP1 = 8, 41 PPC_SP_PERIPH_EXP2 = 9, 42 PPC_SP_PERIPH_EXP3 = 10, 43 } ppc_bank_t; 44 45 /** 46 * \brief Enumerates all the CCA and NON-CCA debug zones for the platform. 47 */ 48 enum tfm_debug_zones { 49 TFM_PLAT_NO_DEBUG = 0, 50 TFM_PLAT_CCA_ADAC_ZONE1, 51 TFM_PLAT_CCA_ADAC_ZONE2, 52 /* !!! If new zones are added, please update TFM_PLAT_LAST_CCA_ADAC_ZONE */ 53 TFM_PLAT_LAST_CCA_ADAC_ZONE = TFM_PLAT_CCA_ADAC_ZONE2, 54 TFM_PLAT_NON_CCA_DEBUG_ZONE1, 55 TFM_PLAT_NON_CCA_DEBUG_ZONE2, 56 TFM_PLAT_NON_CCA_DEBUG_ZONE3, 57 TFM_PLAT_NON_CCA_DEBUG_ZONE4, 58 TFM_PLAT_MAX_NUM_DEBUG_ZONES 59 }; 60 61 /** 62 * \brief Initialize the DMA devices and channels. 63 * 64 * \return Returns values as specified by the \ref tfm_plat_err_t 65 */ 66 enum tfm_plat_err_t dma_init_cfg(void); 67 68 #endif /* __TARGET_CFG_H__ */ 69