1 /* 2 * Copyright (c) 2001-2019, Arm Limited and Contributors. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 /*! 8 @addtogroup cc_pal_apbc 9 @{ 10 */ 11 12 /*! 13 @file 14 @brief This file contains the definitions and APIs for APB-C implementation. 15 16 This is a placeholder for platform-specific APB-C implementation. 17 */ 18 19 #ifndef _CC_PAL_APBC_H 20 #define _CC_PAL_APBC_H 21 22 /*! 23 @brief This function initiates an atomic counter. 24 25 @return Void. 26 */ 27 void CC_PalApbcCntrInit(void); 28 29 /*! 30 @brief This function returns the number of APB-C access operations. 31 32 @return The value of the atomic counter. 33 */ 34 int32_t CC_PalApbcCntrValue(void); 35 36 /*! 37 @brief This function updates the atomic counter on each call to APB-C access. 38 39 On each call to APB-C access, the counter is increased. At the end of each 40 operation, the counter is decreased. 41 42 @return \c 0 on success. 43 @return A non-zero value on failure. 44 */ 45 CCError_t CC_PalApbcModeSelect( 46 /*! [in] Determines the APB-C mode: TRUE (APB-C start access). 47 FALSE (APB-C finish access). */ 48 CCBool isApbcInc 49 ); 50 51 52 /*! 53 @} 54 */ 55 #endif 56