1 /** 2 ****************************************************************************** 3 * @file stm32h5xx_util_i3c.h 4 * @author MCD Application Team 5 * @brief Header of stm32h5xx_util_i3c.c 6 ****************************************************************************** 7 * @attention 8 * 9 * Copyright (c) 2022 STMicroelectronics. 10 * All rights reserved. 11 * 12 * This software is licensed under terms that can be found in the LICENSE file 13 * in the root directory of this software component. 14 * If no LICENSE file comes with this software, it is provided AS-IS. 15 * 16 ****************************************************************************** 17 */ 18 19 /* Define to prevent recursive inclusion -------------------------------------*/ 20 #ifndef __I3C_UTILITY_H 21 #define __I3C_UTILITY_H 22 23 /* Includes ------------------------------------------------------------------*/ 24 #if defined (USE_HAL_DRIVER) 25 #include "stm32h5xx_hal.h" 26 #else 27 #include "stm32h5xx_ll_i3c.h" 28 #endif /* USE_HAL_DRIVER */ 29 30 /* Exported constants --------------------------------------------------------*/ 31 /** @defgroup I3C_BUS_TYPE I3C BUS TYPE 32 * @{ 33 */ 34 #define I3C_PURE_I3C_BUS 0U /*!< Pure I3C bus, no I2C */ 35 #define I3C_MIXED_BUS 1U /*!< Mixed bus I3C and I2C */ 36 /** 37 * @} 38 */ 39 40 /* Exported functions ------------------------------------------------------- */ 41 ErrorStatus I3C_CtrlTimingComputation(LL_I3C_CtrlBusConfTypeDef *pConfig, uint32_t clockSrcFreq, uint32_t i3cFreq, 42 uint32_t i2cFreq, uint32_t dutyCycle, uint32_t busType); 43 ErrorStatus I3C_TgtTimingComputation(LL_I3C_TgtBusConfTypeDef *pConfig, uint32_t clockSrcFreq); 44 45 #endif /* __I3C_UTILITY_H */ 46