STM32H735xx HAL User Manual
stm32h7xx_ll_dmamux.h
Go to the documentation of this file.
00001 /**
00002   ******************************************************************************
00003   * @file    stm32h7xx_ll_dmamux.h
00004   * @author  MCD Application Team
00005   * @brief   Header file of DMAMUX LL module.
00006   ******************************************************************************
00007   * @attention
00008   *
00009   * Copyright (c) 2017 STMicroelectronics.
00010   * All rights reserved.
00011   *
00012   * This software is licensed under terms that can be found in the LICENSE file
00013   * in the root directory of this software component.
00014   * If no LICENSE file comes with this software, it is provided AS-IS.
00015   *
00016   ******************************************************************************
00017   */
00018 
00019 /* Define to prevent recursive inclusion -------------------------------------*/
00020 #ifndef STM32H7xx_LL_DMAMUX_H
00021 #define STM32H7xx_LL_DMAMUX_H
00022 
00023 #ifdef __cplusplus
00024 extern "C" {
00025 #endif
00026 
00027 /* Includes ------------------------------------------------------------------*/
00028 #include "stm32h7xx.h"
00029 
00030 /** @addtogroup STM32H7xx_LL_Driver
00031   * @{
00032   */
00033 
00034 #if defined (DMAMUX1) || defined (DMAMUX2)
00035 
00036 /** @defgroup DMAMUX_LL DMAMUX
00037   * @{
00038   */
00039 
00040 /* Private types -------------------------------------------------------------*/
00041 /* Private variables ---------------------------------------------------------*/
00042 /* Private constants ---------------------------------------------------------*/
00043 /** @defgroup DMAMUX_LL_Private_Constants DMAMUX Private Constants
00044   * @{
00045   */
00046 /* Define used to get DMAMUX CCR register size */
00047 #define DMAMUX_CCR_SIZE                   0x00000004U
00048 
00049 /* Define used to get DMAMUX RGCR register size */
00050 #define DMAMUX_RGCR_SIZE                  0x00000004U
00051 
00052 /* Define used to get DMAMUX RequestGenerator offset */
00053 #define DMAMUX_REQ_GEN_OFFSET             (DMAMUX1_RequestGenerator0_BASE - DMAMUX1_BASE)
00054 /* Define used to get DMAMUX Channel Status offset */
00055 #define DMAMUX_CH_STATUS_OFFSET           (DMAMUX1_ChannelStatus_BASE - DMAMUX1_BASE)
00056 /* Define used to get DMAMUX RequestGenerator status offset */
00057 #define DMAMUX_REQ_GEN_STATUS_OFFSET      (DMAMUX1_RequestGenStatus_BASE - DMAMUX1_BASE)
00058 
00059 /**
00060   * @}
00061   */
00062 
00063 /* Private macros ------------------------------------------------------------*/
00064 /* Exported types ------------------------------------------------------------*/
00065 /* Exported constants --------------------------------------------------------*/
00066 /** @defgroup DMAMUX_LL_Exported_Constants DMAMUX Exported Constants
00067   * @{
00068   */
00069 /** @defgroup DMAMUX_LL_EC_CLEAR_FLAG Clear Flags Defines
00070   * @brief    Flags defines which can be used with LL_DMAMUX_WriteReg function
00071   * @{
00072   */
00073 #define LL_DMAMUX_CFR_CSOF0               DMAMUX_CFR_CSOF0       /*!< Synchronization Event Overrun Flag Channel 0   */
00074 #define LL_DMAMUX_CFR_CSOF1               DMAMUX_CFR_CSOF1       /*!< Synchronization Event Overrun Flag Channel 1   */
00075 #define LL_DMAMUX_CFR_CSOF2               DMAMUX_CFR_CSOF2       /*!< Synchronization Event Overrun Flag Channel 2   */
00076 #define LL_DMAMUX_CFR_CSOF3               DMAMUX_CFR_CSOF3       /*!< Synchronization Event Overrun Flag Channel 3   */
00077 #define LL_DMAMUX_CFR_CSOF4               DMAMUX_CFR_CSOF4       /*!< Synchronization Event Overrun Flag Channel 4   */
00078 #define LL_DMAMUX_CFR_CSOF5               DMAMUX_CFR_CSOF5       /*!< Synchronization Event Overrun Flag Channel 5   */
00079 #define LL_DMAMUX_CFR_CSOF6               DMAMUX_CFR_CSOF6       /*!< Synchronization Event Overrun Flag Channel 6   */
00080 #define LL_DMAMUX_CFR_CSOF7               DMAMUX_CFR_CSOF7       /*!< Synchronization Event Overrun Flag Channel 7   */
00081 #define LL_DMAMUX_CFR_CSOF8               DMAMUX_CFR_CSOF8       /*!< Synchronization Event Overrun Flag Channel 8   */
00082 #define LL_DMAMUX_CFR_CSOF9               DMAMUX_CFR_CSOF9       /*!< Synchronization Event Overrun Flag Channel 9   */
00083 #define LL_DMAMUX_CFR_CSOF10              DMAMUX_CFR_CSOF10      /*!< Synchronization Event Overrun Flag Channel 10  */
00084 #define LL_DMAMUX_CFR_CSOF11              DMAMUX_CFR_CSOF11      /*!< Synchronization Event Overrun Flag Channel 11  */
00085 #define LL_DMAMUX_CFR_CSOF12              DMAMUX_CFR_CSOF12      /*!< Synchronization Event Overrun Flag Channel 12  */
00086 #define LL_DMAMUX_CFR_CSOF13              DMAMUX_CFR_CSOF13      /*!< Synchronization Event Overrun Flag Channel 13  */
00087 #define LL_DMAMUX_CFR_CSOF14              DMAMUX_CFR_CSOF14      /*!< Synchronization Event Overrun Flag Channel 14  */
00088 #define LL_DMAMUX_CFR_CSOF15              DMAMUX_CFR_CSOF15      /*!< Synchronization Event Overrun Flag Channel 15  */
00089 #define LL_DMAMUX_RGCFR_RGCOF0            DMAMUX_RGCFR_COF0      /*!< Request Generator 0 Trigger Event Overrun Flag */
00090 #define LL_DMAMUX_RGCFR_RGCOF1            DMAMUX_RGCFR_COF1      /*!< Request Generator 1 Trigger Event Overrun Flag */
00091 #define LL_DMAMUX_RGCFR_RGCOF2            DMAMUX_RGCFR_COF2      /*!< Request Generator 2 Trigger Event Overrun Flag */
00092 #define LL_DMAMUX_RGCFR_RGCOF3            DMAMUX_RGCFR_COF3      /*!< Request Generator 3 Trigger Event Overrun Flag */
00093 #define LL_DMAMUX_RGCFR_RGCOF4            DMAMUX_RGCFR_COF4      /*!< Request Generator 4 Trigger Event Overrun Flag */
00094 #define LL_DMAMUX_RGCFR_RGCOF5            DMAMUX_RGCFR_COF5      /*!< Request Generator 5 Trigger Event Overrun Flag */
00095 #define LL_DMAMUX_RGCFR_RGCOF6            DMAMUX_RGCFR_COF6      /*!< Request Generator 6 Trigger Event Overrun Flag */
00096 #define LL_DMAMUX_RGCFR_RGCOF7            DMAMUX_RGCFR_COF7      /*!< Request Generator 7 Trigger Event Overrun Flag */
00097 /**
00098   * @}
00099   */
00100 
00101 /** @defgroup DMAMUX_LL_EC_GET_FLAG Get Flags Defines
00102   * @brief    Flags defines which can be used with LL_DMAMUX_ReadReg function
00103   * @{
00104   */
00105 #define LL_DMAMUX_CSR_SOF0                DMAMUX_CSR_SOF0       /*!< Synchronization Event Overrun Flag Channel 0   */
00106 #define LL_DMAMUX_CSR_SOF1                DMAMUX_CSR_SOF1       /*!< Synchronization Event Overrun Flag Channel 1   */
00107 #define LL_DMAMUX_CSR_SOF2                DMAMUX_CSR_SOF2       /*!< Synchronization Event Overrun Flag Channel 2   */
00108 #define LL_DMAMUX_CSR_SOF3                DMAMUX_CSR_SOF3       /*!< Synchronization Event Overrun Flag Channel 3   */
00109 #define LL_DMAMUX_CSR_SOF4                DMAMUX_CSR_SOF4       /*!< Synchronization Event Overrun Flag Channel 4   */
00110 #define LL_DMAMUX_CSR_SOF5                DMAMUX_CSR_SOF5       /*!< Synchronization Event Overrun Flag Channel 5   */
00111 #define LL_DMAMUX_CSR_SOF6                DMAMUX_CSR_SOF6       /*!< Synchronization Event Overrun Flag Channel 6   */
00112 #define LL_DMAMUX_CSR_SOF7                DMAMUX_CSR_SOF7       /*!< Synchronization Event Overrun Flag Channel 7   */
00113 #define LL_DMAMUX_CSR_SOF8                DMAMUX_CSR_SOF8       /*!< Synchronization Event Overrun Flag Channel 8   */
00114 #define LL_DMAMUX_CSR_SOF9                DMAMUX_CSR_SOF9       /*!< Synchronization Event Overrun Flag Channel 9   */
00115 #define LL_DMAMUX_CSR_SOF10               DMAMUX_CSR_SOF10      /*!< Synchronization Event Overrun Flag Channel 10  */
00116 #define LL_DMAMUX_CSR_SOF11               DMAMUX_CSR_SOF11      /*!< Synchronization Event Overrun Flag Channel 11  */
00117 #define LL_DMAMUX_CSR_SOF12               DMAMUX_CSR_SOF12      /*!< Synchronization Event Overrun Flag Channel 12  */
00118 #define LL_DMAMUX_CSR_SOF13               DMAMUX_CSR_SOF13      /*!< Synchronization Event Overrun Flag Channel 13  */
00119 #define LL_DMAMUX_CSR_SOF14               DMAMUX_CSR_SOF14      /*!< Synchronization Event Overrun Flag Channel 14  */
00120 #define LL_DMAMUX_CSR_SOF15               DMAMUX_CSR_SOF15      /*!< Synchronization Event Overrun Flag Channel 15  */
00121 #define LL_DMAMUX_RGSR_RGOF0              DMAMUX_RGSR_OF0       /*!< Request Generator 0 Trigger Event Overrun Flag */
00122 #define LL_DMAMUX_RGSR_RGOF1              DMAMUX_RGSR_OF1       /*!< Request Generator 1 Trigger Event Overrun Flag */
00123 #define LL_DMAMUX_RGSR_RGOF2              DMAMUX_RGSR_OF2       /*!< Request Generator 2 Trigger Event Overrun Flag */
00124 #define LL_DMAMUX_RGSR_RGOF3              DMAMUX_RGSR_OF3       /*!< Request Generator 3 Trigger Event Overrun Flag */
00125 #define LL_DMAMUX_RGSR_RGOF4              DMAMUX_RGSR_OF4       /*!< Request Generator 4 Trigger Event Overrun Flag */
00126 #define LL_DMAMUX_RGSR_RGOF5              DMAMUX_RGSR_OF5       /*!< Request Generator 5 Trigger Event Overrun Flag */
00127 #define LL_DMAMUX_RGSR_RGOF6              DMAMUX_RGSR_OF6       /*!< Request Generator 6 Trigger Event Overrun Flag */
00128 #define LL_DMAMUX_RGSR_RGOF7              DMAMUX_RGSR_OF7       /*!< Request Generator 7 Trigger Event Overrun Flag */
00129 /**
00130   * @}
00131   */
00132 
00133 /** @defgroup DMAMUX_LL_EC_IT IT Defines
00134   * @brief    IT defines which can be used with LL_DMA_ReadReg and  LL_DMAMUX_WriteReg functions
00135   * @{
00136   */
00137 #define LL_DMAMUX_CCR_SOIE                DMAMUX_CxCR_SOIE          /*!< Synchronization Event Overrun Interrupt               */
00138 #define LL_DMAMUX_RGCR_RGOIE              DMAMUX_RGxCR_OIE          /*!< Request Generation Trigger Event Overrun Interrupt    */
00139 /**
00140   * @}
00141   */
00142 
00143 /** @defgroup DMAMUX1_Request_selection DMAMUX1 Request selection
00144   * @brief    DMAMUX1 Request selection
00145   * @{
00146   */
00147 /* DMAMUX1 requests */
00148 #define LL_DMAMUX1_REQ_MEM2MEM          0U   /*!< memory to memory transfer       */
00149 #define LL_DMAMUX1_REQ_GENERATOR0       1U   /*!< DMAMUX1 request generator 0     */
00150 #define LL_DMAMUX1_REQ_GENERATOR1       2U   /*!< DMAMUX1 request generator 1     */
00151 #define LL_DMAMUX1_REQ_GENERATOR2       3U   /*!< DMAMUX1 request generator 2     */
00152 #define LL_DMAMUX1_REQ_GENERATOR3       4U   /*!< DMAMUX1 request generator 3     */
00153 #define LL_DMAMUX1_REQ_GENERATOR4       5U   /*!< DMAMUX1 request generator 4     */
00154 #define LL_DMAMUX1_REQ_GENERATOR5       6U   /*!< DMAMUX1 request generator 5     */
00155 #define LL_DMAMUX1_REQ_GENERATOR6       7U   /*!< DMAMUX1 request generator 6     */
00156 #define LL_DMAMUX1_REQ_GENERATOR7       8U   /*!< DMAMUX1 request generator 7     */
00157 #define LL_DMAMUX1_REQ_ADC1             9U   /*!< DMAMUX1 ADC1 request            */
00158 #define LL_DMAMUX1_REQ_ADC2             10U  /*!< DMAMUX1 ADC2 request            */
00159 #define LL_DMAMUX1_REQ_TIM1_CH1         11U  /*!< DMAMUX1 TIM1 CH1 request        */
00160 #define LL_DMAMUX1_REQ_TIM1_CH2         12U  /*!< DMAMUX1 TIM1 CH2 request        */
00161 #define LL_DMAMUX1_REQ_TIM1_CH3         13U  /*!< DMAMUX1 TIM1 CH3 request        */
00162 #define LL_DMAMUX1_REQ_TIM1_CH4         14U  /*!< DMAMUX1 TIM1 CH4 request        */
00163 #define LL_DMAMUX1_REQ_TIM1_UP          15U  /*!< DMAMUX1 TIM1 UP request         */
00164 #define LL_DMAMUX1_REQ_TIM1_TRIG        16U  /*!< DMAMUX1 TIM1 TRIG request       */
00165 #define LL_DMAMUX1_REQ_TIM1_COM         17U  /*!< DMAMUX1 TIM1 COM request        */
00166 #define LL_DMAMUX1_REQ_TIM2_CH1         18U  /*!< DMAMUX1 TIM2 CH1 request        */
00167 #define LL_DMAMUX1_REQ_TIM2_CH2         19U  /*!< DMAMUX1 TIM2 CH2 request        */
00168 #define LL_DMAMUX1_REQ_TIM2_CH3         20U  /*!< DMAMUX1 TIM2 CH3 request        */
00169 #define LL_DMAMUX1_REQ_TIM2_CH4         21U  /*!< DMAMUX1 TIM2 CH4 request        */
00170 #define LL_DMAMUX1_REQ_TIM2_UP          22U  /*!< DMAMUX1 TIM2 UP request         */
00171 #define LL_DMAMUX1_REQ_TIM3_CH1         23U  /*!< DMAMUX1 TIM3 CH1 request        */
00172 #define LL_DMAMUX1_REQ_TIM3_CH2         24U  /*!< DMAMUX1 TIM3 CH2 request        */
00173 #define LL_DMAMUX1_REQ_TIM3_CH3         25U  /*!< DMAMUX1 TIM3 CH3 request        */
00174 #define LL_DMAMUX1_REQ_TIM3_CH4         26U  /*!< DMAMUX1 TIM3 CH4 request        */
00175 #define LL_DMAMUX1_REQ_TIM3_UP          27U  /*!< DMAMUX1 TIM3 UP request         */
00176 #define LL_DMAMUX1_REQ_TIM3_TRIG        28U  /*!< DMAMUX1 TIM3 TRIG request       */
00177 #define LL_DMAMUX1_REQ_TIM4_CH1         29U  /*!< DMAMUX1 TIM4 CH1 request        */
00178 #define LL_DMAMUX1_REQ_TIM4_CH2         30U  /*!< DMAMUX1 TIM4 CH2 request        */
00179 #define LL_DMAMUX1_REQ_TIM4_CH3         31U  /*!< DMAMUX1 TIM4 CH3 request        */
00180 #define LL_DMAMUX1_REQ_TIM4_UP          32U  /*!< DMAMUX1 TIM4 UP request         */
00181 #define LL_DMAMUX1_REQ_I2C1_RX          33U  /*!< DMAMUX1 I2C1 RX request         */
00182 #define LL_DMAMUX1_REQ_I2C1_TX          34U  /*!< DMAMUX1 I2C1 TX request         */
00183 #define LL_DMAMUX1_REQ_I2C2_RX          35U  /*!< DMAMUX1 I2C2 RX request         */
00184 #define LL_DMAMUX1_REQ_I2C2_TX          36U  /*!< DMAMUX1 I2C2 TX request         */
00185 #define LL_DMAMUX1_REQ_SPI1_RX          37U  /*!< DMAMUX1 SPI1 RX request         */
00186 #define LL_DMAMUX1_REQ_SPI1_TX          38U  /*!< DMAMUX1 SPI1 TX request         */
00187 #define LL_DMAMUX1_REQ_SPI2_RX          39U  /*!< DMAMUX1 SPI2 RX request         */
00188 #define LL_DMAMUX1_REQ_SPI2_TX          40U  /*!< DMAMUX1 SPI2 TX request         */
00189 #define LL_DMAMUX1_REQ_USART1_RX        41U  /*!< DMAMUX1 USART1 RX request       */
00190 #define LL_DMAMUX1_REQ_USART1_TX        42U  /*!< DMAMUX1 USART1 TX request       */
00191 #define LL_DMAMUX1_REQ_USART2_RX        43U  /*!< DMAMUX1 USART2 RX request       */
00192 #define LL_DMAMUX1_REQ_USART2_TX        44U  /*!< DMAMUX1 USART2 TX request       */
00193 #define LL_DMAMUX1_REQ_USART3_RX        45U  /*!< DMAMUX1 USART3 RX request       */
00194 #define LL_DMAMUX1_REQ_USART3_TX        46U  /*!< DMAMUX1 USART3 TX request       */
00195 #define LL_DMAMUX1_REQ_TIM8_CH1         47U  /*!< DMAMUX1 TIM8 CH1 request        */
00196 #define LL_DMAMUX1_REQ_TIM8_CH2         48U  /*!< DMAMUX1 TIM8 CH2 request        */
00197 #define LL_DMAMUX1_REQ_TIM8_CH3         49U  /*!< DMAMUX1 TIM8 CH3 request        */
00198 #define LL_DMAMUX1_REQ_TIM8_CH4         50U  /*!< DMAMUX1 TIM8 CH4 request        */
00199 #define LL_DMAMUX1_REQ_TIM8_UP          51U  /*!< DMAMUX1 TIM8 UP request         */
00200 #define LL_DMAMUX1_REQ_TIM8_TRIG        52U  /*!< DMAMUX1 TIM8 TRIG request       */
00201 #define LL_DMAMUX1_REQ_TIM8_COM         53U  /*!< DMAMUX1 TIM8 COM request        */
00202 #define LL_DMAMUX1_REQ_TIM5_CH1         55U  /*!< DMAMUX1 TIM5 CH1 request        */
00203 #define LL_DMAMUX1_REQ_TIM5_CH2         56U  /*!< DMAMUX1 TIM5 CH2 request        */
00204 #define LL_DMAMUX1_REQ_TIM5_CH3         57U  /*!< DMAMUX1 TIM5 CH3 request        */
00205 #define LL_DMAMUX1_REQ_TIM5_CH4         58U  /*!< DMAMUX1 TIM5 CH4 request        */
00206 #define LL_DMAMUX1_REQ_TIM5_UP          59U  /*!< DMAMUX1 TIM5 UP request         */
00207 #define LL_DMAMUX1_REQ_TIM5_TRIG        60U  /*!< DMAMUX1 TIM5 TRIG request       */
00208 #define LL_DMAMUX1_REQ_SPI3_RX          61U  /*!< DMAMUX1 SPI3 RX request         */
00209 #define LL_DMAMUX1_REQ_SPI3_TX          62U  /*!< DMAMUX1 SPI3 TX request         */
00210 #define LL_DMAMUX1_REQ_UART4_RX         63U  /*!< DMAMUX1 UART4 RX request        */
00211 #define LL_DMAMUX1_REQ_UART4_TX         64U  /*!< DMAMUX1 UART4 TX request        */
00212 #define LL_DMAMUX1_REQ_UART5_RX         65U  /*!< DMAMUX1 UART5 RX request        */
00213 #define LL_DMAMUX1_REQ_UART5_TX         66U  /*!< DMAMUX1 UART5 TX request        */
00214 #define LL_DMAMUX1_REQ_DAC1_CH1         67U  /*!< DMAMUX1 DAC1 Channel 1 request  */
00215 #define LL_DMAMUX1_REQ_DAC1_CH2         68U  /*!< DMAMUX1 DAC1 Channel 2 request  */
00216 #define LL_DMAMUX1_REQ_TIM6_UP          69U  /*!< DMAMUX1 TIM6 UP request         */
00217 #define LL_DMAMUX1_REQ_TIM7_UP          70U  /*!< DMAMUX1 TIM7 UP request         */
00218 #define LL_DMAMUX1_REQ_USART6_RX        71U  /*!< DMAMUX1 USART6 RX request       */
00219 #define LL_DMAMUX1_REQ_USART6_TX        72U  /*!< DMAMUX1 USART6 TX request       */
00220 #define LL_DMAMUX1_REQ_I2C3_RX          73U  /*!< DMAMUX1 I2C3 RX request         */
00221 #define LL_DMAMUX1_REQ_I2C3_TX          74U  /*!< DMAMUX1 I2C3 TX request         */
00222 #if defined (PSSI)
00223 #define LL_DMAMUX1_REQ_DCMI_PSSI        75U  /*!< DMAMUX1 DCMI/PSSI request       */
00224 #define LL_DMAMUX1_REQ_DCMI             LL_DMAMUX1_REQ_DCMI_PSSI /* Legacy define */
00225 #else
00226 #define LL_DMAMUX1_REQ_DCMI             75U  /*!< DMAMUX1 DCMI request            */
00227 #endif /* PSSI */
00228 #define LL_DMAMUX1_REQ_CRYP_IN          76U  /*!< DMAMUX1 CRYP IN request         */
00229 #define LL_DMAMUX1_REQ_CRYP_OUT         77U  /*!< DMAMUX1 CRYP OUT request        */
00230 #define LL_DMAMUX1_REQ_HASH_IN          78U  /*!< DMAMUX1 HASH IN request         */
00231 #define LL_DMAMUX1_REQ_UART7_RX         79U  /*!< DMAMUX1 UART7 RX request        */
00232 #define LL_DMAMUX1_REQ_UART7_TX         80U  /*!< DMAMUX1 UART7 TX request        */
00233 #define LL_DMAMUX1_REQ_UART8_RX         81U  /*!< DMAMUX1 UART8 RX request        */
00234 #define LL_DMAMUX1_REQ_UART8_TX         82U  /*!< DMAMUX1 UART8 TX request        */
00235 #define LL_DMAMUX1_REQ_SPI4_RX          83U  /*!< DMAMUX1 SPI4 RX request         */
00236 #define LL_DMAMUX1_REQ_SPI4_TX          84U  /*!< DMAMUX1 SPI4 TX request         */
00237 #define LL_DMAMUX1_REQ_SPI5_RX          85U  /*!< DMAMUX1 SPI5 RX request         */
00238 #define LL_DMAMUX1_REQ_SPI5_TX          86U  /*!< DMAMUX1 SPI5 TX request         */
00239 #define LL_DMAMUX1_REQ_SAI1_A           87U  /*!< DMAMUX1 SAI1 A request          */
00240 #define LL_DMAMUX1_REQ_SAI1_B           88U  /*!< DMAMUX1 SAI1 B request          */
00241 #if defined(SAI2)
00242 #define LL_DMAMUX1_REQ_SAI2_A           89U  /*!< DMAMUX1 SAI2 A request          */
00243 #define LL_DMAMUX1_REQ_SAI2_B           90U  /*!< DMAMUX1 SAI2 B request          */
00244 #endif /* SAI2 */
00245 #define LL_DMAMUX1_REQ_SWPMI_RX         91U  /*!< DMAMUX1 SWPMI RX request        */
00246 #define LL_DMAMUX1_REQ_SWPMI_TX         92U  /*!< DMAMUX1 SWPMI TX request        */
00247 #define LL_DMAMUX1_REQ_SPDIF_RX_DT      93U  /*!< DMAMUX1 SPDIF RXDT request      */
00248 #define LL_DMAMUX1_REQ_SPDIF_RX_CS      94U  /*!< DMAMUX1 SPDIF RXCS request      */
00249 #if defined (HRTIM1)
00250 #define LL_DMAMUX1_REQ_HRTIM_MASTER     95U  /*!< DMAMUX1 HRTIM1 Master request 1 */
00251 #define LL_DMAMUX1_REQ_HRTIM_TIMER_A    96U  /*!< DMAMUX1 HRTIM1 Timer A request 2 */
00252 #define LL_DMAMUX1_REQ_HRTIM_TIMER_B    97U  /*!< DMAMUX1 HRTIM1 Timer B request 3 */
00253 #define LL_DMAMUX1_REQ_HRTIM_TIMER_C    98U  /*!< DMAMUX1 HRTIM1 Timer C request 4 */
00254 #define LL_DMAMUX1_REQ_HRTIM_TIMER_D    99U  /*!< DMAMUX1 HRTIM1 Timer D request 5 */
00255 #define LL_DMAMUX1_REQ_HRTIM_TIMER_E   100U  /*!< DMAMUX1 HRTIM1 Timer E request 6 */
00256 #endif /* HRTIM1 */
00257 #define LL_DMAMUX1_REQ_DFSDM1_FLT0     101U  /*!< DMAMUX1 DFSDM1 Filter0 request  */
00258 #define LL_DMAMUX1_REQ_DFSDM1_FLT1     102U  /*!< DMAMUX1 DFSDM1 Filter1 request  */
00259 #define LL_DMAMUX1_REQ_DFSDM1_FLT2     103U  /*!< DMAMUX1 DFSDM1 Filter2 request  */
00260 #define LL_DMAMUX1_REQ_DFSDM1_FLT3     104U  /*!< DMAMUX1 DFSDM1 Filter3 request  */
00261 #define LL_DMAMUX1_REQ_TIM15_CH1       105U  /*!< DMAMUX1 TIM15 CH1 request       */
00262 #define LL_DMAMUX1_REQ_TIM15_UP        106U  /*!< DMAMUX1 TIM15 UP request        */
00263 #define LL_DMAMUX1_REQ_TIM15_TRIG      107U  /*!< DMAMUX1 TIM15 TRIG request      */
00264 #define LL_DMAMUX1_REQ_TIM15_COM       108U  /*!< DMAMUX1 TIM15 COM request       */
00265 #define LL_DMAMUX1_REQ_TIM16_CH1       109U  /*!< DMAMUX1 TIM16 CH1 request       */
00266 #define LL_DMAMUX1_REQ_TIM16_UP        110U  /*!< DMAMUX1 TIM16 UP request        */
00267 #define LL_DMAMUX1_REQ_TIM17_CH1       111U  /*!< DMAMUX1 TIM17 CH1 request       */
00268 #define LL_DMAMUX1_REQ_TIM17_UP        112U  /*!< DMAMUX1 TIM17 UP request        */
00269 #if defined (SAI3)
00270 #define LL_DMAMUX1_REQ_SAI3_A          113U  /*!< DMAMUX1 SAI3 A request          */
00271 #define LL_DMAMUX1_REQ_SAI3_B          114U  /*!< DMAMUX1 SAI3 B request          */
00272 #endif /* SAI3 */
00273 #if defined (ADC3)
00274 #define LL_DMAMUX1_REQ_ADC3            115U  /*!< DMAMUX1 ADC3  request           */
00275 #endif /* ADC3 */
00276 #if defined (UART9)
00277 #define LL_DMAMUX1_REQ_UART9_RX        116U  /*!< DMAMUX1 UART9 RX request        */
00278 #define LL_DMAMUX1_REQ_UART9_TX        117U  /*!< DMAMUX1 UART9 TX request        */
00279 #endif /* UART9 */
00280 #if defined (USART10)
00281 #define LL_DMAMUX1_REQ_USART10_RX      118U  /*!< DMAMUX1 USART10 RX request      */
00282 #define LL_DMAMUX1_REQ_USART10_TX      119U  /*!< DMAMUX1 USART10 TX request      */
00283 #endif /* USART10 */
00284 #if defined(FMAC)
00285 #define LL_DMAMUX1_REQ_FMAC_READ       120U  /*!< DMAMUX1 FMAC Read request       */
00286 #define LL_DMAMUX1_REQ_FMAC_WRITE      121U  /*!< DMAMUX1 FMAC Write request      */
00287 #endif /* FMAC */
00288 #if defined(CORDIC)
00289 #define LL_DMAMUX1_REQ_CORDIC_READ     122U  /*!< DMAMUX1 CORDIC Read request     */
00290 #define LL_DMAMUX1_REQ_CORDIC_WRITE    123U  /*!< DMAMUX1 CORDIC Write request    */
00291 #endif /* CORDIC */
00292 #if defined(I2C5)
00293 #define LL_DMAMUX1_REQ_I2C5_RX         124U  /*!< DMAMUX1 I2C5 RX request         */
00294 #define LL_DMAMUX1_REQ_I2C5_TX         125U  /*!< DMAMUX1 I2C5 TX request         */
00295 #endif /* I2C5 */
00296 #if defined(TIM23)
00297 #define LL_DMAMUX1_REQ_TIM23_CH1       126U  /*!< DMAMUX1 TIM23 CH1 request  */
00298 #define LL_DMAMUX1_REQ_TIM23_CH2       127U  /*!< DMAMUX1 TIM23 CH2 request  */
00299 #define LL_DMAMUX1_REQ_TIM23_CH3       128U  /*!< DMAMUX1 TIM23 CH3 request  */
00300 #define LL_DMAMUX1_REQ_TIM23_CH4       129U  /*!< DMAMUX1 TIM23 CH4 request  */
00301 #define LL_DMAMUX1_REQ_TIM23_UP        130U  /*!< DMAMUX1 TIM23 UP request   */
00302 #define LL_DMAMUX1_REQ_TIM23_TRIG      131U  /*!< DMAMUX1 TIM23 TRIG request */
00303 #endif /* TIM23 */
00304 #if defined(TIM24)
00305 #define LL_DMAMUX1_REQ_TIM24_CH1       132U  /*!< DMAMUX1 TIM24 CH1 request  */
00306 #define LL_DMAMUX1_REQ_TIM24_CH2       133U  /*!< DMAMUX1 TIM24 CH2 request  */
00307 #define LL_DMAMUX1_REQ_TIM24_CH3       134U  /*!< DMAMUX1 TIM24 CH3 request  */
00308 #define LL_DMAMUX1_REQ_TIM24_CH4       135U  /*!< DMAMUX1 TIM24 CH4 request  */
00309 #define LL_DMAMUX1_REQ_TIM24_UP        136U  /*!< DMAMUX1 TIM24 UP request   */
00310 #define LL_DMAMUX1_REQ_TIM24_TRIG      137U  /*!< DMAMUX1 TIM24 TRIG request */
00311 #endif /* TIM24 */
00312 /**
00313   * @}
00314   */
00315 
00316 /** @defgroup DMAMUX2_Request_selection DMAMUX2 Request selection
00317   * @brief    DMAMUX2 Request selection
00318   * @{
00319   */
00320 /* DMAMUX2 requests */
00321 #define LL_DMAMUX2_REQ_MEM2MEM          0U  /*!< memory to memory transfer        */
00322 #define LL_DMAMUX2_REQ_GENERATOR0       1U  /*!< DMAMUX2 request generator 0      */
00323 #define LL_DMAMUX2_REQ_GENERATOR1       2U  /*!< DMAMUX2 request generator 1      */
00324 #define LL_DMAMUX2_REQ_GENERATOR2       3U  /*!< DMAMUX2 request generator 2      */
00325 #define LL_DMAMUX2_REQ_GENERATOR3       4U  /*!< DMAMUX2 request generator 3      */
00326 #define LL_DMAMUX2_REQ_GENERATOR4       5U  /*!< DMAMUX2 request generator 4      */
00327 #define LL_DMAMUX2_REQ_GENERATOR5       6U  /*!< DMAMUX2 request generator 5      */
00328 #define LL_DMAMUX2_REQ_GENERATOR6       7U  /*!< DMAMUX2 request generator 6      */
00329 #define LL_DMAMUX2_REQ_GENERATOR7       8U  /*!< DMAMUX2 request generator 7      */
00330 #define LL_DMAMUX2_REQ_LPUART1_RX       9U  /*!< DMAMUX2 LP_UART1_RX request      */
00331 #define LL_DMAMUX2_REQ_LPUART1_TX      10U  /*!< DMAMUX2 LP_UART1_TX request      */
00332 #define LL_DMAMUX2_REQ_SPI6_RX         11U  /*!< DMAMUX2 SPI6 RX request          */
00333 #define LL_DMAMUX2_REQ_SPI6_TX         12U  /*!< DMAMUX2 SPI6 TX request          */
00334 #define LL_DMAMUX2_REQ_I2C4_RX         13U  /*!< DMAMUX2 I2C4 RX request          */
00335 #define LL_DMAMUX2_REQ_I2C4_TX         14U  /*!< DMAMUX2 I2C4 TX request          */
00336 #if defined (SAI4)
00337 #define LL_DMAMUX2_REQ_SAI4_A          15U  /*!< DMAMUX2 SAI4 A request           */
00338 #define LL_DMAMUX2_REQ_SAI4_B          16U  /*!< DMAMUX2 SAI4 B request           */
00339 #endif /* SAI4 */
00340 #if defined (ADC3)
00341 #define LL_DMAMUX2_REQ_ADC3            17U  /*!< DMAMUX2 ADC3 request             */
00342 #endif /* ADC3 */
00343 #if defined (DAC2)
00344 #define LL_DMAMUX2_REQ_DAC2_CH1        17U  /*!< DMAMUX2 DAC2 CH1 request         */
00345 #endif /* DAC2 */
00346 #if defined (DFSDM2_Channel0)
00347 #define LL_DMAMUX2_REQ_DFSDM2_FLT0     18U  /*!< DMAMUX2 DFSDM2 Filter0 request   */
00348 #endif /* DFSDM2_Channel0 */
00349 /**
00350   * @}
00351   */
00352 
00353 
00354 /** @defgroup DMAMUX_LL_EC_CHANNEL DMAMUX Channel
00355   * @{
00356   */
00357 #define LL_DMAMUX_CHANNEL_0     0x00000000U  /*!< DMAMUX1 Channel 0  connected to DMA1 Channel 0 , DMAMUX2 Channel 0 connected to BDMA Channel 0 */
00358 #define LL_DMAMUX_CHANNEL_1     0x00000001U  /*!< DMAMUX1 Channel 1  connected to DMA1 Channel 1 , DMAMUX2 Channel 1 connected to BDMA Channel 1 */
00359 #define LL_DMAMUX_CHANNEL_2     0x00000002U  /*!< DMAMUX1 Channel 2  connected to DMA1 Channel 2 , DMAMUX2 Channel 2 connected to BDMA Channel 2 */
00360 #define LL_DMAMUX_CHANNEL_3     0x00000003U  /*!< DMAMUX1 Channel 3  connected to DMA1 Channel 3 , DMAMUX2 Channel 3 connected to BDMA Channel 3 */
00361 #define LL_DMAMUX_CHANNEL_4     0x00000004U  /*!< DMAMUX1 Channel 4  connected to DMA1 Channel 4 , DMAMUX2 Channel 4 connected to BDMA Channel 4 */
00362 #define LL_DMAMUX_CHANNEL_5     0x00000005U  /*!< DMAMUX1 Channel 5  connected to DMA1 Channel 5 , DMAMUX2 Channel 5 connected to BDMA Channel 5 */
00363 #define LL_DMAMUX_CHANNEL_6     0x00000006U  /*!< DMAMUX1 Channel 6  connected to DMA1 Channel 6 , DMAMUX2 Channel 6 connected to BDMA Channel 6 */
00364 #define LL_DMAMUX_CHANNEL_7     0x00000007U  /*!< DMAMUX1 Channel 7  connected to DMA1 Channel 7 , DMAMUX2 Channel 7 connected to BDMA Channel 7 */
00365 #define LL_DMAMUX_CHANNEL_8     0x00000008U  /*!< DMAMUX1 Channel 8  connected to DMA2 Channel 0 */
00366 #define LL_DMAMUX_CHANNEL_9     0x00000009U  /*!< DMAMUX1 Channel 9  connected to DMA2 Channel 1 */
00367 #define LL_DMAMUX_CHANNEL_10    0x0000000AU  /*!< DMAMUX1 Channel 10 connected to DMA2 Channel 2 */
00368 #define LL_DMAMUX_CHANNEL_11    0x0000000BU  /*!< DMAMUX1 Channel 11 connected to DMA2 Channel 3 */
00369 #define LL_DMAMUX_CHANNEL_12    0x0000000CU  /*!< DMAMUX1 Channel 12 connected to DMA2 Channel 4 */
00370 #define LL_DMAMUX_CHANNEL_13    0x0000000DU  /*!< DMAMUX1 Channel 13 connected to DMA2 Channel 5 */
00371 #define LL_DMAMUX_CHANNEL_14    0x0000000EU  /*!< DMAMUX1 Channel 14 connected to DMA2 Channel 6 */
00372 #define LL_DMAMUX_CHANNEL_15    0x0000000FU  /*!< DMAMUX1 Channel 15 connected to DMA2 Channel 7 */
00373 /**
00374   * @}
00375   */
00376 
00377 /** @defgroup DMAMUX_LL_EC_SYNC_NO Synchronization Signal Polarity
00378   * @{
00379   */
00380 #define LL_DMAMUX_SYNC_NO_EVENT            0x00000000U                               /*!< All requests are blocked                            */
00381 #define LL_DMAMUX_SYNC_POL_RISING          DMAMUX_CxCR_SPOL_0                        /*!< Synchronization on event on rising edge             */
00382 #define LL_DMAMUX_SYNC_POL_FALLING         DMAMUX_CxCR_SPOL_1                        /*!< Synchronization on event on falling edge            */
00383 #define LL_DMAMUX_SYNC_POL_RISING_FALLING  (DMAMUX_CxCR_SPOL_0 | DMAMUX_CxCR_SPOL_1) /*!< Synchronization on event on rising and falling edge */
00384 /**
00385   * @}
00386   */
00387 
00388 /** @defgroup DMAMUX_LL_EC_SYNC_EVT Synchronization Signal Event
00389   * @{
00390   */
00391 #define LL_DMAMUX1_SYNC_DMAMUX1_CH0_EVT   0x00000000U   /*!< DMAMUX1 synchronization Signal is DMAMUX1 Channel0 Event */
00392 #define LL_DMAMUX1_SYNC_DMAMUX1_CH1_EVT   0x01000000U   /*!< DMAMUX1 synchronization Signal is DMAMUX1 Channel1 Event */
00393 #define LL_DMAMUX1_SYNC_DMAMUX1_CH2_EVT   0x02000000U   /*!< DMAMUX1 synchronization Signal is DMAMUX1 Channel2 Event */
00394 #define LL_DMAMUX1_SYNC_LPTIM1_OUT        0x03000000U   /*!< DMAMUX1 synchronization Signal is LPTIM1 OUT             */
00395 #define LL_DMAMUX1_SYNC_LPTIM2_OUT        0x04000000U   /*!< DMAMUX1 synchronization Signal is LPTIM2 OUT             */
00396 #define LL_DMAMUX1_SYNC_LPTIM3_OUT        0x05000000U   /*!< DMAMUX1 synchronization Signal is LPTIM3 OUT             */
00397 #define LL_DMAMUX1_SYNC_EXTI0             0x06000000U   /*!< DMAMUX1 synchronization Signal is EXTI0 IT               */
00398 #define LL_DMAMUX1_SYNC_TIM12_TRGO        0x07000000U   /*!< DMAMUX1 synchronization Signal is TIM12 TRGO             */
00399 
00400 #define LL_DMAMUX2_SYNC_DMAMUX2_CH0_EVT   0x00000000U   /*!< DMAMUX2 synchronization Signal is DMAMUX2 Channel0 Event */
00401 #define LL_DMAMUX2_SYNC_DMAMUX2_CH1_EVT   0x01000000U   /*!< DMAMUX2 synchronization Signal is DMAMUX2 Channel1 Event */
00402 #define LL_DMAMUX2_SYNC_DMAMUX2_CH2_EVT   0x02000000U   /*!< DMAMUX2 synchronization Signal is DMAMUX2 Channel2 Event */
00403 #define LL_DMAMUX2_SYNC_DMAMUX2_CH3_EVT   0x03000000U   /*!< DMAMUX2 synchronization Signal is DMAMUX2 Channel3 Event */
00404 #define LL_DMAMUX2_SYNC_DMAMUX2_CH4_EVT   0x04000000U   /*!< DMAMUX2 synchronization Signal is DMAMUX2 Channel4 Event */
00405 #define LL_DMAMUX2_SYNC_DMAMUX2_CH5_EVT   0x05000000U   /*!< DMAMUX2 synchronization Signal is DMAMUX2 Channel5 Event */
00406 #define LL_DMAMUX2_SYNC_LPUART1_RX_WKUP   0x06000000U   /*!< DMAMUX2 synchronization Signal is LPUART1 RX Wakeup      */
00407 #define LL_DMAMUX2_SYNC_LPUART1_TX_WKUP   0x07000000U   /*!< DMAMUX2 synchronization Signal is LPUART1 TX Wakeup      */
00408 #define LL_DMAMUX2_SYNC_LPTIM2_OUT        0x08000000U   /*!< DMAMUX2 synchronization Signal is LPTIM2 output          */
00409 #define LL_DMAMUX2_SYNC_LPTIM3_OUT        0x09000000U   /*!< DMAMUX2 synchronization Signal is LPTIM3 output          */
00410 #define LL_DMAMUX2_SYNC_I2C4_WKUP         0x0A000000U   /*!< DMAMUX2 synchronization Signal is I2C4 Wakeup            */
00411 #define LL_DMAMUX2_SYNC_SPI6_WKUP         0x0B000000U   /*!< DMAMUX2 synchronization Signal is SPI6 Wakeup            */
00412 #define LL_DMAMUX2_SYNC_COMP1_OUT         0x0C000000U   /*!< DMAMUX2 synchronization Signal is Comparator 1 output    */
00413 #define LL_DMAMUX2_SYNC_RTC_WKUP          0x0D000000U   /*!< DMAMUX2 synchronization Signal is RTC Wakeup             */
00414 #define LL_DMAMUX2_SYNC_EXTI0             0x0E000000U   /*!< DMAMUX2 synchronization Signal is EXTI0 IT               */
00415 #define LL_DMAMUX2_SYNC_EXTI2             0x0F000000U   /*!< DMAMUX2 synchronization Signal is EXTI2 IT               */
00416 
00417 /**
00418   * @}
00419   */
00420 
00421 /** @defgroup DMAMUX_LL_EC_REQUEST_GENERATOR Request Generator Channel
00422   * @{
00423   */
00424 #define LL_DMAMUX_REQ_GEN_0           0x00000000U
00425 #define LL_DMAMUX_REQ_GEN_1           0x00000001U
00426 #define LL_DMAMUX_REQ_GEN_2           0x00000002U
00427 #define LL_DMAMUX_REQ_GEN_3           0x00000003U
00428 #define LL_DMAMUX_REQ_GEN_4           0x00000004U
00429 #define LL_DMAMUX_REQ_GEN_5           0x00000005U
00430 #define LL_DMAMUX_REQ_GEN_6           0x00000006U
00431 #define LL_DMAMUX_REQ_GEN_7           0x00000007U
00432 /**
00433   * @}
00434   */
00435 
00436 /** @defgroup DMAMUX_LL_EC_REQUEST_GEN_POLARITY External Request Signal Generation Polarity
00437   * @{
00438   */
00439 #define LL_DMAMUX_REQ_GEN_NO_EVENT             0x00000000U                                  /*!< No external DMA request  generation                        */
00440 #define LL_DMAMUX_REQ_GEN_POL_RISING           DMAMUX_RGxCR_GPOL_0                          /*!< External DMA request generation on event on rising edge    */
00441 #define LL_DMAMUX_REQ_GEN_POL_FALLING          DMAMUX_RGxCR_GPOL_1                          /*!< External DMA request generation on event on falling edge   */
00442 #define LL_DMAMUX_REQ_GEN_POL_RISING_FALLING   (DMAMUX_RGxCR_GPOL_0 | DMAMUX_RGxCR_GPOL_1)  /*!< External DMA request generation on rising and falling edge */
00443 /**
00444   * @}
00445   */
00446 
00447 /** @defgroup DMAMUX_LL_EC_REQUEST_GEN External Request Signal Generation
00448   * @{
00449   */
00450 #define LL_DMAMUX1_REQ_GEN_DMAMUX1_CH0_EVT   0U   /*!< DMAMUX1 Request generator Signal is DMAMUX1 Channel0 Event        */
00451 #define LL_DMAMUX1_REQ_GEN_DMAMUX1_CH1_EVT   1U   /*!< DMAMUX1 Request generator Signal is DMAMUX1 Channel1 Event        */
00452 #define LL_DMAMUX1_REQ_GEN_DMAMUX1_CH2_EVT   2U   /*!< DMAMUX1 Request generator Signal is DMAMUX1 Channel2 Event        */
00453 #define LL_DMAMUX1_REQ_GEN_LPTIM1_OUT        3U   /*!< DMAMUX1 Request generator Signal is LPTIM1 OUT                    */
00454 #define LL_DMAMUX1_REQ_GEN_LPTIM2_OUT        4U   /*!< DMAMUX1 Request generator Signal is LPTIM2 OUT                    */
00455 #define LL_DMAMUX1_REQ_GEN_LPTIM3_OUT        5U   /*!< DMAMUX1 Request generator Signal is LPTIM3 OUT                    */
00456 #define LL_DMAMUX1_REQ_GEN_EXTI0             6U   /*!< DMAMUX1 Request generator Signal is EXTI0 IT                      */
00457 #define LL_DMAMUX1_REQ_GEN_TIM12_TRGO        7U   /*!< DMAMUX1 Request generator Signal is TIM12 TRGO                    */
00458 
00459 #define LL_DMAMUX2_REQ_GEN_DMAMUX2_CH0_EVT   0U   /*!< DMAMUX2 Request generator Signal is DMAMUX2 Channel0 Event        */
00460 #define LL_DMAMUX2_REQ_GEN_DMAMUX2_CH1_EVT   1U   /*!< DMAMUX2 Request generator Signal is DMAMUX2 Channel1 Event        */
00461 #define LL_DMAMUX2_REQ_GEN_DMAMUX2_CH2_EVT   2U   /*!< DMAMUX2 Request generator Signal is DMAMUX2 Channel2 Event        */
00462 #define LL_DMAMUX2_REQ_GEN_DMAMUX2_CH3_EVT   3U   /*!< DMAMUX2 Request generator Signal is DMAMUX2 Channel3 Event        */
00463 #define LL_DMAMUX2_REQ_GEN_DMAMUX2_CH4_EVT   4U   /*!< DMAMUX2 Request generator Signal is DMAMUX2 Channel4 Event        */
00464 #define LL_DMAMUX2_REQ_GEN_DMAMUX2_CH5_EVT   5U   /*!< DMAMUX2 Request generator Signal is DMAMUX2 Channel5 Event        */
00465 #define LL_DMAMUX2_REQ_GEN_DMAMUX2_CH6_EVT   6U   /*!< DMAMUX2 Request generator Signal is DMAMUX2 Channel6 Event        */
00466 #define LL_DMAMUX2_REQ_GEN_LPUART1_RX_WKUP   7U   /*!< DMAMUX2 Request generator Signal is LPUART1 RX Wakeup             */
00467 #define LL_DMAMUX2_REQ_GEN_LPUART1_TX_WKUP   8U   /*!< DMAMUX2 Request generator Signal is LPUART1 TX Wakeup             */
00468 #define LL_DMAMUX2_REQ_GEN_LPTIM2_WKUP       9U   /*!< DMAMUX2 Request generator Signal is LPTIM2 Wakeup                 */
00469 #define LL_DMAMUX2_REQ_GEN_LPTIM2_OUT       10U   /*!< DMAMUX2 Request generator Signal is LPTIM2 OUT                    */
00470 #define LL_DMAMUX2_REQ_GEN_LPTIM3_WKUP      11U   /*!< DMAMUX2 Request generator Signal is LPTIM3 Wakeup                 */
00471 #define LL_DMAMUX2_REQ_GEN_LPTIM3_OUT       12U   /*!< DMAMUX2 Request generator Signal is LPTIM3 OUT                    */
00472 #if defined (LPTIM4)
00473 #define LL_DMAMUX2_REQ_GEN_LPTIM4_WKUP      13U   /*!< DMAMUX2 Request generator Signal is LPTIM4 Wakeup                 */
00474 #endif /* LPTIM4 */
00475 #if defined (LPTIM5)
00476 #define LL_DMAMUX2_REQ_GEN_LPTIM5_WKUP      14U   /*!< DMAMUX2 Request generator Signal is LPTIM5 Wakeup                 */
00477 #endif /* LPTIM5 */
00478 #define LL_DMAMUX2_REQ_GEN_I2C4_WKUP        15U   /*!< DMAMUX2 Request generator Signal is I2C4 Wakeup                   */
00479 #define LL_DMAMUX2_REQ_GEN_SPI6_WKUP        16U   /*!< DMAMUX2 Request generator Signal is SPI6 Wakeup                   */
00480 #define LL_DMAMUX2_REQ_GEN_COMP1_OUT        17U   /*!< DMAMUX2 Request generator Signal is Comparator 1 output           */
00481 #define LL_DMAMUX2_REQ_GEN_COMP2_OUT        18U   /*!< DMAMUX2 Request generator Signal is Comparator 2 output           */
00482 #define LL_DMAMUX2_REQ_GEN_RTC_WKUP         19U   /*!< DMAMUX2 Request generator Signal is RTC Wakeup                    */
00483 #define LL_DMAMUX2_REQ_GEN_EXTI0            20U   /*!< DMAMUX2 Request generator Signal is EXTI0                         */
00484 #define LL_DMAMUX2_REQ_GEN_EXTI2            21U   /*!< DMAMUX2 Request generator Signal is EXTI2                         */
00485 #define LL_DMAMUX2_REQ_GEN_I2C4_IT_EVT      22U   /*!< DMAMUX2 Request generator Signal is I2C4 IT Event                 */
00486 #define LL_DMAMUX2_REQ_GEN_SPI6_IT          23U   /*!< DMAMUX2 Request generator Signal is SPI6 IT                       */
00487 #define LL_DMAMUX2_REQ_GEN_LPUART1_TX_IT    24U   /*!< DMAMUX2 Request generator Signal is LPUART1 Tx IT                 */
00488 #define LL_DMAMUX2_REQ_GEN_LPUART1_RX_IT    25U   /*!< DMAMUX2 Request generator Signal is LPUART1 Rx IT                 */
00489 #if defined (ADC3)
00490 #define LL_DMAMUX2_REQ_GEN_ADC3_IT          26U   /*!< DMAMUX2 Request generator Signal is ADC3 IT                       */
00491 #define LL_DMAMUX2_REQ_GEN_ADC3_AWD1_OUT    27U   /*!< DMAMUX2 Request generator Signal is ADC3 Analog Watchdog 1 output */
00492 #endif /* ADC3 */
00493 #define LL_DMAMUX2_REQ_GEN_BDMA_CH0_IT      28U   /*!< DMAMUX2 Request generator Signal is BDMA Channel 0 IT             */
00494 #define LL_DMAMUX2_REQ_GEN_BDMA_CH1_IT      29U   /*!< DMAMUX2 Request generator Signal is BDMA Channel 1 IT             */
00495 /**
00496   * @}
00497   */
00498 
00499 /**
00500   * @}
00501   */
00502 
00503 /* Exported macro ------------------------------------------------------------*/
00504 /** @defgroup DMAMUX_LL_Exported_Macros DMAMUX Exported Macros
00505   * @{
00506   */
00507 
00508 /** @defgroup DMAMUX_LL_EM_WRITE_READ Common Write and read registers macros
00509   * @{
00510   */
00511 /**
00512   * @brief  Write a value in DMAMUX register
00513   * @param  __INSTANCE__ DMAMUX Instance
00514   * @param  __REG__ Register to be written
00515   * @param  __VALUE__ Value to be written in the register
00516   * @retval None
00517   */
00518 #define LL_DMAMUX_WriteReg(__INSTANCE__, __REG__, __VALUE__) WRITE_REG(__INSTANCE__->__REG__, (__VALUE__))
00519 
00520 /**
00521   * @brief  Read a value in DMAMUX register
00522   * @param  __INSTANCE__ DMAMUX Instance
00523   * @param  __REG__ Register to be read
00524   * @retval Register value
00525   */
00526 #define LL_DMAMUX_ReadReg(__INSTANCE__, __REG__) READ_REG(__INSTANCE__->__REG__)
00527 /**
00528   * @}
00529   */
00530 
00531 /**
00532   * @}
00533   */
00534 
00535 /* Exported functions --------------------------------------------------------*/
00536 /** @defgroup DMAMUX_LL_Exported_Functions DMAMUX Exported Functions
00537  * @{
00538  */
00539 
00540 /** @defgroup DMAMUX_LL_EF_Configuration Configuration
00541   * @{
00542   */
00543 /**
00544   * @brief  Set DMAMUX request ID for DMAMUX Channel x.
00545   * @note   DMAMUX1 channel 0 to 7 are mapped to DMA1 channel 0 to 7.
00546   *         DMAMUX1 channel 8 to 15 are mapped to DMA2 channel 0 to 7.
00547   *         DMAMUX2 channel 0 to 7 are mapped to  BDMA channel 0 to 7.
00548   * @rmtoll CxCR         DMAREQ_ID     LL_DMAMUX_SetRequestID
00549   * @param  DMAMUXx DMAMUXx Instance
00550   * @param  Channel This parameter can be one of the following values:
00551   *         @arg @ref LL_DMAMUX_CHANNEL_0
00552   *         @arg @ref LL_DMAMUX_CHANNEL_1
00553   *         @arg @ref LL_DMAMUX_CHANNEL_2
00554   *         @arg @ref LL_DMAMUX_CHANNEL_3
00555   *         @arg @ref LL_DMAMUX_CHANNEL_4
00556   *         @arg @ref LL_DMAMUX_CHANNEL_5
00557   *         @arg @ref LL_DMAMUX_CHANNEL_6
00558   *         @arg @ref LL_DMAMUX_CHANNEL_7
00559   *         @arg @ref LL_DMAMUX_CHANNEL_8
00560   *         @arg @ref LL_DMAMUX_CHANNEL_9
00561   *         @arg @ref LL_DMAMUX_CHANNEL_10
00562   *         @arg @ref LL_DMAMUX_CHANNEL_11
00563   *         @arg @ref LL_DMAMUX_CHANNEL_12
00564   *         @arg @ref LL_DMAMUX_CHANNEL_13
00565   *         @arg @ref LL_DMAMUX_CHANNEL_14
00566   *         @arg @ref LL_DMAMUX_CHANNEL_15
00567   * @param  Request This parameter can be one of the following values:
00568   *         @arg @ref LL_DMAMUX1_REQ_MEM2MEM
00569   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR0
00570   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR1
00571   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR2
00572   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR3
00573   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR4
00574   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR5
00575   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR6
00576   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR7
00577   *         @arg @ref LL_DMAMUX1_REQ_ADC1
00578   *         @arg @ref LL_DMAMUX1_REQ_ADC2
00579   *         @arg @ref LL_DMAMUX1_REQ_TIM1_CH1
00580   *         @arg @ref LL_DMAMUX1_REQ_TIM1_CH2
00581   *         @arg @ref LL_DMAMUX1_REQ_TIM1_CH3
00582   *         @arg @ref LL_DMAMUX1_REQ_TIM1_CH4
00583   *         @arg @ref LL_DMAMUX1_REQ_TIM1_UP
00584   *         @arg @ref LL_DMAMUX1_REQ_TIM1_TRIG
00585   *         @arg @ref LL_DMAMUX1_REQ_TIM1_COM
00586   *         @arg @ref LL_DMAMUX1_REQ_TIM2_CH1
00587   *         @arg @ref LL_DMAMUX1_REQ_TIM2_CH2
00588   *         @arg @ref LL_DMAMUX1_REQ_TIM2_CH3
00589   *         @arg @ref LL_DMAMUX1_REQ_TIM2_CH4
00590   *         @arg @ref LL_DMAMUX1_REQ_TIM2_UP
00591   *         @arg @ref LL_DMAMUX1_REQ_TIM3_CH1
00592   *         @arg @ref LL_DMAMUX1_REQ_TIM3_CH2
00593   *         @arg @ref LL_DMAMUX1_REQ_TIM3_CH3
00594   *         @arg @ref LL_DMAMUX1_REQ_TIM3_CH4
00595   *         @arg @ref LL_DMAMUX1_REQ_TIM3_UP
00596   *         @arg @ref LL_DMAMUX1_REQ_TIM3_TRIG
00597   *         @arg @ref LL_DMAMUX1_REQ_TIM4_CH1
00598   *         @arg @ref LL_DMAMUX1_REQ_TIM4_CH2
00599   *         @arg @ref LL_DMAMUX1_REQ_TIM4_CH3
00600   *         @arg @ref LL_DMAMUX1_REQ_TIM4_UP
00601   *         @arg @ref LL_DMAMUX1_REQ_I2C1_RX
00602   *         @arg @ref LL_DMAMUX1_REQ_I2C1_TX
00603   *         @arg @ref LL_DMAMUX1_REQ_I2C2_RX
00604   *         @arg @ref LL_DMAMUX1_REQ_I2C2_TX
00605   *         @arg @ref LL_DMAMUX1_REQ_SPI1_RX
00606   *         @arg @ref LL_DMAMUX1_REQ_SPI1_TX
00607   *         @arg @ref LL_DMAMUX1_REQ_SPI2_RX
00608   *         @arg @ref LL_DMAMUX1_REQ_SPI2_TX
00609   *         @arg @ref LL_DMAMUX1_REQ_USART1_RX
00610   *         @arg @ref LL_DMAMUX1_REQ_USART1_TX
00611   *         @arg @ref LL_DMAMUX1_REQ_USART2_RX
00612   *         @arg @ref LL_DMAMUX1_REQ_USART2_TX
00613   *         @arg @ref LL_DMAMUX1_REQ_USART3_RX
00614   *         @arg @ref LL_DMAMUX1_REQ_USART3_TX
00615   *         @arg @ref LL_DMAMUX1_REQ_TIM8_CH1
00616   *         @arg @ref LL_DMAMUX1_REQ_TIM8_CH2
00617   *         @arg @ref LL_DMAMUX1_REQ_TIM8_CH3
00618   *         @arg @ref LL_DMAMUX1_REQ_TIM8_CH4
00619   *         @arg @ref LL_DMAMUX1_REQ_TIM8_UP
00620   *         @arg @ref LL_DMAMUX1_REQ_TIM8_TRIG
00621   *         @arg @ref LL_DMAMUX1_REQ_TIM8_COM
00622   *         @arg @ref LL_DMAMUX1_REQ_TIM5_CH1
00623   *         @arg @ref LL_DMAMUX1_REQ_TIM5_CH2
00624   *         @arg @ref LL_DMAMUX1_REQ_TIM5_CH3
00625   *         @arg @ref LL_DMAMUX1_REQ_TIM5_CH4
00626   *         @arg @ref LL_DMAMUX1_REQ_TIM5_UP
00627   *         @arg @ref LL_DMAMUX1_REQ_TIM5_TRIG
00628   *         @arg @ref LL_DMAMUX1_REQ_SPI3_RX
00629   *         @arg @ref LL_DMAMUX1_REQ_SPI3_TX
00630   *         @arg @ref LL_DMAMUX1_REQ_UART4_RX
00631   *         @arg @ref LL_DMAMUX1_REQ_UART4_TX
00632   *         @arg @ref LL_DMAMUX1_REQ_UART5_RX
00633   *         @arg @ref LL_DMAMUX1_REQ_UART5_TX
00634   *         @arg @ref LL_DMAMUX1_REQ_DAC1_CH1
00635   *         @arg @ref LL_DMAMUX1_REQ_DAC1_CH2
00636   *         @arg @ref LL_DMAMUX1_REQ_TIM6_UP
00637   *         @arg @ref LL_DMAMUX1_REQ_TIM7_UP
00638   *         @arg @ref LL_DMAMUX1_REQ_USART6_RX
00639   *         @arg @ref LL_DMAMUX1_REQ_USART6_TX
00640   *         @arg @ref LL_DMAMUX1_REQ_I2C3_RX
00641   *         @arg @ref LL_DMAMUX1_REQ_I2C3_TX
00642   *         @arg @ref LL_DMAMUX1_REQ_DCMI_PSSI (*)
00643   *         @arg @ref LL_DMAMUX1_REQ_CRYP_IN
00644   *         @arg @ref LL_DMAMUX1_REQ_CRYP_OUT
00645   *         @arg @ref LL_DMAMUX1_REQ_HASH_IN
00646   *         @arg @ref LL_DMAMUX1_REQ_UART7_RX
00647   *         @arg @ref LL_DMAMUX1_REQ_UART7_TX
00648   *         @arg @ref LL_DMAMUX1_REQ_UART8_RX
00649   *         @arg @ref LL_DMAMUX1_REQ_UART8_TX
00650   *         @arg @ref LL_DMAMUX1_REQ_SPI4_RX
00651   *         @arg @ref LL_DMAMUX1_REQ_SPI4_TX
00652   *         @arg @ref LL_DMAMUX1_REQ_SPI5_RX
00653   *         @arg @ref LL_DMAMUX1_REQ_SPI5_TX
00654   *         @arg @ref LL_DMAMUX1_REQ_SAI1_A
00655   *         @arg @ref LL_DMAMUX1_REQ_SAI1_B
00656   *         @arg @ref LL_DMAMUX1_REQ_SAI2_A (*)
00657   *         @arg @ref LL_DMAMUX1_REQ_SAI2_B (*)
00658   *         @arg @ref LL_DMAMUX1_REQ_SWPMI_RX
00659   *         @arg @ref LL_DMAMUX1_REQ_SWPMI_TX
00660   *         @arg @ref LL_DMAMUX1_REQ_SPDIF_RX_DT
00661   *         @arg @ref LL_DMAMUX1_REQ_SPDIF_RX_CS
00662   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_MASTER (*)
00663   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_TIMER_A (*)
00664   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_TIMER_B (*)
00665   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_TIMER_C (*)
00666   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_TIMER_D (*)
00667   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_TIMER_E (*)
00668   *         @arg @ref LL_DMAMUX1_REQ_DFSDM1_FLT0
00669   *         @arg @ref LL_DMAMUX1_REQ_DFSDM1_FLT1
00670   *         @arg @ref LL_DMAMUX1_REQ_DFSDM1_FLT2
00671   *         @arg @ref LL_DMAMUX1_REQ_DFSDM1_FLT3
00672   *         @arg @ref LL_DMAMUX1_REQ_TIM15_CH1
00673   *         @arg @ref LL_DMAMUX1_REQ_TIM15_UP
00674   *         @arg @ref LL_DMAMUX1_REQ_TIM15_TRIG
00675   *         @arg @ref LL_DMAMUX1_REQ_TIM15_COM
00676   *         @arg @ref LL_DMAMUX1_REQ_TIM16_CH1
00677   *         @arg @ref LL_DMAMUX1_REQ_TIM16_UP
00678   *         @arg @ref LL_DMAMUX1_REQ_TIM17_CH1
00679   *         @arg @ref LL_DMAMUX1_REQ_TIM17_UP
00680   *         @arg @ref LL_DMAMUX1_REQ_SAI3_A (*)
00681   *         @arg @ref LL_DMAMUX1_REQ_SAI3_B (*)
00682   *         @arg @ref LL_DMAMUX1_REQ_ADC3 (*)
00683   *         @arg @ref LL_DMAMUX1_REQ_UART9_RX (*)
00684   *         @arg @ref LL_DMAMUX1_REQ_UART9_TX (*)
00685   *         @arg @ref LL_DMAMUX1_REQ_USART10_RX (*)
00686   *         @arg @ref LL_DMAMUX1_REQ_USART10_TX (*)
00687   *         @arg @ref LL_DMAMUX1_REQ_FMAC_READ  (*)
00688   *         @arg @ref LL_DMAMUX1_REQ_FMAC_WRITE (*)
00689   *         @arg @ref LL_DMAMUX1_REQ_CORDIC_READ (*)
00690   *         @arg @ref LL_DMAMUX1_REQ_CORDIC_WRITE(*)
00691   *         @arg @ref LL_DMAMUX1_REQ_I2C5_RX     (*)
00692   *         @arg @ref LL_DMAMUX1_REQ_I2C5_TX     (*)
00693   *         @arg @ref LL_DMAMUX1_REQ_TIM23_CH1   (*)
00694   *         @arg @ref LL_DMAMUX1_REQ_TIM23_CH2   (*)
00695   *         @arg @ref LL_DMAMUX1_REQ_TIM23_CH3   (*)
00696   *         @arg @ref LL_DMAMUX1_REQ_TIM23_CH4   (*)
00697   *         @arg @ref LL_DMAMUX1_REQ_TIM23_UP    (*)
00698   *         @arg @ref LL_DMAMUX1_REQ_TIM23_TRIG  (*)
00699   *         @arg @ref LL_DMAMUX1_REQ_TIM24_CH1   (*)
00700   *         @arg @ref LL_DMAMUX1_REQ_TIM24_CH2   (*)
00701   *         @arg @ref LL_DMAMUX1_REQ_TIM24_CH3   (*)
00702   *         @arg @ref LL_DMAMUX1_REQ_TIM24_CH4   (*)
00703   *         @arg @ref LL_DMAMUX1_REQ_TIM24_UP    (*)
00704   *         @arg @ref LL_DMAMUX1_REQ_TIM24_TRIG  (*)
00705   *         @arg @ref LL_DMAMUX2_REQ_MEM2MEM
00706   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR0
00707   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR1
00708   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR2
00709   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR3
00710   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR4
00711   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR5
00712   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR6
00713   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR7
00714   *         @arg @ref LL_DMAMUX2_REQ_LPUART1_RX
00715   *         @arg @ref LL_DMAMUX2_REQ_LPUART1_TX
00716   *         @arg @ref LL_DMAMUX2_REQ_SPI6_RX
00717   *         @arg @ref LL_DMAMUX2_REQ_SPI6_TX
00718   *         @arg @ref LL_DMAMUX2_REQ_I2C4_RX
00719   *         @arg @ref LL_DMAMUX2_REQ_I2C4_TX
00720   *         @arg @ref LL_DMAMUX2_REQ_SAI4_A (*)
00721   *         @arg @ref LL_DMAMUX2_REQ_SAI4_B (*)
00722   *         @arg @ref LL_DMAMUX2_REQ_ADC3 (*)
00723   *         @arg @ref LL_DMAMUX2_REQ_DAC2_CH1 (*)
00724   *         @arg @ref LL_DMAMUX2_REQ_DFSDM2_FLT0 (*)
00725   *
00726   * @note   (*) Availability depends on devices.
00727   * @retval None
00728   */
00729 __STATIC_INLINE void LL_DMAMUX_SetRequestID(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel, uint32_t Request)
00730 {
00731   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
00732 
00733   MODIFY_REG(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_DMAREQ_ID, Request);
00734 }
00735 
00736 /**
00737   * @brief  Get DMAMUX request ID for DMAMUX Channel x.
00738   * @note   DMAMUX1 channel 0 to 7  are mapped to DMA1 channel 0 to 7.
00739   *         DMAMUX1 channel 8 to 15 are mapped to DMA2 channel 0 to 7.
00740   *         DMAMUX2 channel 0 to 7  are mapped to BDMA channel 0 to 7.
00741   * @rmtoll CxCR         DMAREQ_ID     LL_DMAMUX_GetRequestID
00742   * @param  DMAMUXx DMAMUXx Instance
00743   * @param  Channel This parameter can be one of the following values:
00744   *         @arg @ref LL_DMAMUX_CHANNEL_0
00745   *         @arg @ref LL_DMAMUX_CHANNEL_1
00746   *         @arg @ref LL_DMAMUX_CHANNEL_2
00747   *         @arg @ref LL_DMAMUX_CHANNEL_3
00748   *         @arg @ref LL_DMAMUX_CHANNEL_4
00749   *         @arg @ref LL_DMAMUX_CHANNEL_5
00750   *         @arg @ref LL_DMAMUX_CHANNEL_6
00751   *         @arg @ref LL_DMAMUX_CHANNEL_7
00752   *         @arg @ref LL_DMAMUX_CHANNEL_8
00753   *         @arg @ref LL_DMAMUX_CHANNEL_9
00754   *         @arg @ref LL_DMAMUX_CHANNEL_10
00755   *         @arg @ref LL_DMAMUX_CHANNEL_11
00756   *         @arg @ref LL_DMAMUX_CHANNEL_12
00757   *         @arg @ref LL_DMAMUX_CHANNEL_13
00758   *         @arg @ref LL_DMAMUX_CHANNEL_14
00759   *         @arg @ref LL_DMAMUX_CHANNEL_15
00760   * @retval Returned value can be one of the following values:
00761   *         @arg @ref LL_DMAMUX1_REQ_MEM2MEM
00762   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR0
00763   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR1
00764   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR2
00765   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR3
00766   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR4
00767   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR5
00768   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR6
00769   *         @arg @ref LL_DMAMUX1_REQ_GENERATOR7
00770   *         @arg @ref LL_DMAMUX1_REQ_ADC1
00771   *         @arg @ref LL_DMAMUX1_REQ_ADC2
00772   *         @arg @ref LL_DMAMUX1_REQ_TIM1_CH1
00773   *         @arg @ref LL_DMAMUX1_REQ_TIM1_CH2
00774   *         @arg @ref LL_DMAMUX1_REQ_TIM1_CH3
00775   *         @arg @ref LL_DMAMUX1_REQ_TIM1_CH4
00776   *         @arg @ref LL_DMAMUX1_REQ_TIM1_UP
00777   *         @arg @ref LL_DMAMUX1_REQ_TIM1_TRIG
00778   *         @arg @ref LL_DMAMUX1_REQ_TIM1_COM
00779   *         @arg @ref LL_DMAMUX1_REQ_TIM2_CH1
00780   *         @arg @ref LL_DMAMUX1_REQ_TIM2_CH2
00781   *         @arg @ref LL_DMAMUX1_REQ_TIM2_CH3
00782   *         @arg @ref LL_DMAMUX1_REQ_TIM2_CH4
00783   *         @arg @ref LL_DMAMUX1_REQ_TIM2_UP
00784   *         @arg @ref LL_DMAMUX1_REQ_TIM3_CH1
00785   *         @arg @ref LL_DMAMUX1_REQ_TIM3_CH2
00786   *         @arg @ref LL_DMAMUX1_REQ_TIM3_CH3
00787   *         @arg @ref LL_DMAMUX1_REQ_TIM3_CH4
00788   *         @arg @ref LL_DMAMUX1_REQ_TIM3_UP
00789   *         @arg @ref LL_DMAMUX1_REQ_TIM3_TRIG
00790   *         @arg @ref LL_DMAMUX1_REQ_TIM4_CH1
00791   *         @arg @ref LL_DMAMUX1_REQ_TIM4_CH2
00792   *         @arg @ref LL_DMAMUX1_REQ_TIM4_CH3
00793   *         @arg @ref LL_DMAMUX1_REQ_TIM4_UP
00794   *         @arg @ref LL_DMAMUX1_REQ_I2C1_RX
00795   *         @arg @ref LL_DMAMUX1_REQ_I2C1_TX
00796   *         @arg @ref LL_DMAMUX1_REQ_I2C2_RX
00797   *         @arg @ref LL_DMAMUX1_REQ_I2C2_TX
00798   *         @arg @ref LL_DMAMUX1_REQ_SPI1_RX
00799   *         @arg @ref LL_DMAMUX1_REQ_SPI1_TX
00800   *         @arg @ref LL_DMAMUX1_REQ_SPI2_RX
00801   *         @arg @ref LL_DMAMUX1_REQ_SPI2_TX
00802   *         @arg @ref LL_DMAMUX1_REQ_USART1_RX
00803   *         @arg @ref LL_DMAMUX1_REQ_USART1_TX
00804   *         @arg @ref LL_DMAMUX1_REQ_USART2_RX
00805   *         @arg @ref LL_DMAMUX1_REQ_USART2_TX
00806   *         @arg @ref LL_DMAMUX1_REQ_USART3_RX
00807   *         @arg @ref LL_DMAMUX1_REQ_USART3_TX
00808   *         @arg @ref LL_DMAMUX1_REQ_TIM8_CH1
00809   *         @arg @ref LL_DMAMUX1_REQ_TIM8_CH2
00810   *         @arg @ref LL_DMAMUX1_REQ_TIM8_CH3
00811   *         @arg @ref LL_DMAMUX1_REQ_TIM8_CH4
00812   *         @arg @ref LL_DMAMUX1_REQ_TIM8_UP
00813   *         @arg @ref LL_DMAMUX1_REQ_TIM8_TRIG
00814   *         @arg @ref LL_DMAMUX1_REQ_TIM8_COM
00815   *         @arg @ref LL_DMAMUX1_REQ_TIM5_CH1
00816   *         @arg @ref LL_DMAMUX1_REQ_TIM5_CH2
00817   *         @arg @ref LL_DMAMUX1_REQ_TIM5_CH3
00818   *         @arg @ref LL_DMAMUX1_REQ_TIM5_CH4
00819   *         @arg @ref LL_DMAMUX1_REQ_TIM5_UP
00820   *         @arg @ref LL_DMAMUX1_REQ_TIM5_TRIG
00821   *         @arg @ref LL_DMAMUX1_REQ_SPI3_RX
00822   *         @arg @ref LL_DMAMUX1_REQ_SPI3_TX
00823   *         @arg @ref LL_DMAMUX1_REQ_UART4_RX
00824   *         @arg @ref LL_DMAMUX1_REQ_UART4_TX
00825   *         @arg @ref LL_DMAMUX1_REQ_UART5_RX
00826   *         @arg @ref LL_DMAMUX1_REQ_UART5_TX
00827   *         @arg @ref LL_DMAMUX1_REQ_DAC1_CH1
00828   *         @arg @ref LL_DMAMUX1_REQ_DAC1_CH2
00829   *         @arg @ref LL_DMAMUX1_REQ_TIM6_UP
00830   *         @arg @ref LL_DMAMUX1_REQ_TIM7_UP
00831   *         @arg @ref LL_DMAMUX1_REQ_USART6_RX
00832   *         @arg @ref LL_DMAMUX1_REQ_USART6_TX
00833   *         @arg @ref LL_DMAMUX1_REQ_I2C3_RX
00834   *         @arg @ref LL_DMAMUX1_REQ_I2C3_TX
00835   *         @arg @ref LL_DMAMUX1_REQ_DCMI_PSSI (*)
00836   *         @arg @ref LL_DMAMUX1_REQ_CRYP_IN
00837   *         @arg @ref LL_DMAMUX1_REQ_CRYP_OUT
00838   *         @arg @ref LL_DMAMUX1_REQ_HASH_IN
00839   *         @arg @ref LL_DMAMUX1_REQ_UART7_RX
00840   *         @arg @ref LL_DMAMUX1_REQ_UART7_TX
00841   *         @arg @ref LL_DMAMUX1_REQ_UART8_RX
00842   *         @arg @ref LL_DMAMUX1_REQ_UART8_TX
00843   *         @arg @ref LL_DMAMUX1_REQ_SPI4_RX
00844   *         @arg @ref LL_DMAMUX1_REQ_SPI4_TX
00845   *         @arg @ref LL_DMAMUX1_REQ_SPI5_RX
00846   *         @arg @ref LL_DMAMUX1_REQ_SPI5_TX
00847   *         @arg @ref LL_DMAMUX1_REQ_SAI1_A
00848   *         @arg @ref LL_DMAMUX1_REQ_SAI1_B
00849   *         @arg @ref LL_DMAMUX1_REQ_SAI2_A (*)
00850   *         @arg @ref LL_DMAMUX1_REQ_SAI2_B (*)
00851   *         @arg @ref LL_DMAMUX1_REQ_SWPMI_RX
00852   *         @arg @ref LL_DMAMUX1_REQ_SWPMI_TX
00853   *         @arg @ref LL_DMAMUX1_REQ_SPDIF_RX_DT
00854   *         @arg @ref LL_DMAMUX1_REQ_SPDIF_RX_CS
00855   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_MASTER (*)
00856   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_TIMER_A (*)
00857   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_TIMER_B (*)
00858   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_TIMER_C (*)
00859   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_TIMER_D (*)
00860   *         @arg @ref LL_DMAMUX1_REQ_HRTIM_TIMER_E (*)
00861   *         @arg @ref LL_DMAMUX1_REQ_DFSDM1_FLT0
00862   *         @arg @ref LL_DMAMUX1_REQ_DFSDM1_FLT1
00863   *         @arg @ref LL_DMAMUX1_REQ_DFSDM1_FLT2
00864   *         @arg @ref LL_DMAMUX1_REQ_DFSDM1_FLT3
00865   *         @arg @ref LL_DMAMUX1_REQ_TIM15_CH1
00866   *         @arg @ref LL_DMAMUX1_REQ_TIM15_UP
00867   *         @arg @ref LL_DMAMUX1_REQ_TIM15_TRIG
00868   *         @arg @ref LL_DMAMUX1_REQ_TIM15_COM
00869   *         @arg @ref LL_DMAMUX1_REQ_TIM16_CH1
00870   *         @arg @ref LL_DMAMUX1_REQ_TIM16_UP
00871   *         @arg @ref LL_DMAMUX1_REQ_TIM17_CH1
00872   *         @arg @ref LL_DMAMUX1_REQ_TIM17_UP
00873   *         @arg @ref LL_DMAMUX1_REQ_SAI3_A (*)
00874   *         @arg @ref LL_DMAMUX1_REQ_SAI3_B (*)
00875   *         @arg @ref LL_DMAMUX1_REQ_ADC3 (*)
00876   *         @arg @ref LL_DMAMUX1_REQ_UART9_RX (*)
00877   *         @arg @ref LL_DMAMUX1_REQ_UART9_TX (*)
00878   *         @arg @ref LL_DMAMUX1_REQ_USART10_RX (*)
00879   *         @arg @ref LL_DMAMUX1_REQ_USART10_TX (*)
00880   *         @arg @ref LL_DMAMUX1_REQ_FMAC_READ  (*)
00881   *         @arg @ref LL_DMAMUX1_REQ_FMAC_WRITE (*)
00882   *         @arg @ref LL_DMAMUX1_REQ_CORDIC_READ (*)
00883   *         @arg @ref LL_DMAMUX1_REQ_CORDIC_WRITE(*)
00884   *         @arg @ref LL_DMAMUX1_REQ_I2C5_RX     (*)
00885   *         @arg @ref LL_DMAMUX1_REQ_I2C5_TX     (*)
00886   *         @arg @ref LL_DMAMUX1_REQ_TIM23_CH1   (*)
00887   *         @arg @ref LL_DMAMUX1_REQ_TIM23_CH2   (*)
00888   *         @arg @ref LL_DMAMUX1_REQ_TIM23_CH3   (*)
00889   *         @arg @ref LL_DMAMUX1_REQ_TIM23_CH4   (*)
00890   *         @arg @ref LL_DMAMUX1_REQ_TIM23_UP    (*)
00891   *         @arg @ref LL_DMAMUX1_REQ_TIM23_TRIG  (*)
00892   *         @arg @ref LL_DMAMUX1_REQ_TIM24_CH1   (*)
00893   *         @arg @ref LL_DMAMUX1_REQ_TIM24_CH2   (*)
00894   *         @arg @ref LL_DMAMUX1_REQ_TIM24_CH3   (*)
00895   *         @arg @ref LL_DMAMUX1_REQ_TIM24_CH4   (*)
00896   *         @arg @ref LL_DMAMUX1_REQ_TIM24_UP    (*)
00897   *         @arg @ref LL_DMAMUX1_REQ_TIM24_TRIG  (*)
00898   *         @arg @ref LL_DMAMUX2_REQ_MEM2MEM
00899   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR0
00900   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR1
00901   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR2
00902   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR3
00903   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR4
00904   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR5
00905   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR6
00906   *         @arg @ref LL_DMAMUX2_REQ_GENERATOR7
00907   *         @arg @ref LL_DMAMUX2_REQ_LPUART1_RX
00908   *         @arg @ref LL_DMAMUX2_REQ_LPUART1_TX
00909   *         @arg @ref LL_DMAMUX2_REQ_SPI6_RX
00910   *         @arg @ref LL_DMAMUX2_REQ_SPI6_TX
00911   *         @arg @ref LL_DMAMUX2_REQ_I2C4_RX
00912   *         @arg @ref LL_DMAMUX2_REQ_I2C4_TX
00913   *         @arg @ref LL_DMAMUX2_REQ_SAI4_A (*)
00914   *         @arg @ref LL_DMAMUX2_REQ_SAI4_B (*)
00915   *         @arg @ref LL_DMAMUX2_REQ_ADC3 (*)
00916   *         @arg @ref LL_DMAMUX2_REQ_DAC2_CH1 (*)
00917   *         @arg @ref LL_DMAMUX2_REQ_DFSDM2_FLT0 (*)
00918   *
00919   * @note   (*) Availability depends on devices.
00920   * @retval None
00921   */
00922 __STATIC_INLINE uint32_t LL_DMAMUX_GetRequestID(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
00923 {
00924   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
00925 
00926   return (uint32_t)(READ_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_DMAREQ_ID));
00927 }
00928 
00929 /**
00930   * @brief  Set the number of DMA request that will be autorized after a synchronization event and/or the number of DMA request needed to generate an event.
00931   * @rmtoll CxCR         NBREQ         LL_DMAMUX_SetSyncRequestNb
00932   * @param  DMAMUXx DMAMUXx Instance
00933   * @param  Channel This parameter can be one of the following values:
00934   *         @arg @ref LL_DMAMUX_CHANNEL_0
00935   *         @arg @ref LL_DMAMUX_CHANNEL_1
00936   *         @arg @ref LL_DMAMUX_CHANNEL_2
00937   *         @arg @ref LL_DMAMUX_CHANNEL_3
00938   *         @arg @ref LL_DMAMUX_CHANNEL_4
00939   *         @arg @ref LL_DMAMUX_CHANNEL_5
00940   *         @arg @ref LL_DMAMUX_CHANNEL_6
00941   *         @arg @ref LL_DMAMUX_CHANNEL_7
00942   *         @arg @ref LL_DMAMUX_CHANNEL_8
00943   *         @arg @ref LL_DMAMUX_CHANNEL_9
00944   *         @arg @ref LL_DMAMUX_CHANNEL_10
00945   *         @arg @ref LL_DMAMUX_CHANNEL_11
00946   *         @arg @ref LL_DMAMUX_CHANNEL_12
00947   *         @arg @ref LL_DMAMUX_CHANNEL_13
00948   *         @arg @ref LL_DMAMUX_CHANNEL_14
00949   *         @arg @ref LL_DMAMUX_CHANNEL_15
00950   * @param  RequestNb This parameter must be a value between Min_Data = 1 and Max_Data = 32.
00951   * @retval None
00952   */
00953 __STATIC_INLINE void LL_DMAMUX_SetSyncRequestNb(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel, uint32_t RequestNb)
00954 {
00955   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
00956 
00957   MODIFY_REG(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_NBREQ, (RequestNb - 1U) << DMAMUX_CxCR_NBREQ_Pos);
00958 }
00959 
00960 /**
00961   * @brief  Get the number of DMA request that will be autorized after a synchronization event and/or the number of DMA request needed to generate an event.
00962   * @rmtoll CxCR         NBREQ         LL_DMAMUX_GetSyncRequestNb
00963   * @param  DMAMUXx DMAMUXx Instance
00964   * @param  Channel This parameter can be one of the following values:
00965   *         @arg @ref LL_DMAMUX_CHANNEL_0
00966   *         @arg @ref LL_DMAMUX_CHANNEL_1
00967   *         @arg @ref LL_DMAMUX_CHANNEL_2
00968   *         @arg @ref LL_DMAMUX_CHANNEL_3
00969   *         @arg @ref LL_DMAMUX_CHANNEL_4
00970   *         @arg @ref LL_DMAMUX_CHANNEL_5
00971   *         @arg @ref LL_DMAMUX_CHANNEL_6
00972   *         @arg @ref LL_DMAMUX_CHANNEL_7
00973   *         @arg @ref LL_DMAMUX_CHANNEL_8
00974   *         @arg @ref LL_DMAMUX_CHANNEL_9
00975   *         @arg @ref LL_DMAMUX_CHANNEL_10
00976   *         @arg @ref LL_DMAMUX_CHANNEL_11
00977   *         @arg @ref LL_DMAMUX_CHANNEL_12
00978   *         @arg @ref LL_DMAMUX_CHANNEL_13
00979   *         @arg @ref LL_DMAMUX_CHANNEL_14
00980   *         @arg @ref LL_DMAMUX_CHANNEL_15
00981   * @retval Between Min_Data = 1 and Max_Data = 32
00982   */
00983 __STATIC_INLINE uint32_t LL_DMAMUX_GetSyncRequestNb(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
00984 {
00985   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
00986 
00987   return (uint32_t)((READ_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_NBREQ) >> DMAMUX_CxCR_NBREQ_Pos) + 1U);
00988 }
00989 
00990 /**
00991   * @brief  Set the polarity of the signal on which the DMA request is synchronized.
00992   * @rmtoll CxCR         SPOL          LL_DMAMUX_SetSyncPolarity
00993   * @param  DMAMUXx DMAMUXx Instance
00994   * @param  Channel This parameter can be one of the following values:
00995   *         @arg @ref LL_DMAMUX_CHANNEL_0
00996   *         @arg @ref LL_DMAMUX_CHANNEL_1
00997   *         @arg @ref LL_DMAMUX_CHANNEL_2
00998   *         @arg @ref LL_DMAMUX_CHANNEL_3
00999   *         @arg @ref LL_DMAMUX_CHANNEL_4
01000   *         @arg @ref LL_DMAMUX_CHANNEL_5
01001   *         @arg @ref LL_DMAMUX_CHANNEL_6
01002   *         @arg @ref LL_DMAMUX_CHANNEL_7
01003   *         @arg @ref LL_DMAMUX_CHANNEL_8
01004   *         @arg @ref LL_DMAMUX_CHANNEL_9
01005   *         @arg @ref LL_DMAMUX_CHANNEL_10
01006   *         @arg @ref LL_DMAMUX_CHANNEL_11
01007   *         @arg @ref LL_DMAMUX_CHANNEL_12
01008   *         @arg @ref LL_DMAMUX_CHANNEL_13
01009   *         @arg @ref LL_DMAMUX_CHANNEL_14
01010   *         @arg @ref LL_DMAMUX_CHANNEL_15
01011   * @param  Polarity This parameter can be one of the following values:
01012   *         @arg @ref LL_DMAMUX_SYNC_NO_EVENT
01013   *         @arg @ref LL_DMAMUX_SYNC_POL_RISING
01014   *         @arg @ref LL_DMAMUX_SYNC_POL_FALLING
01015   *         @arg @ref LL_DMAMUX_SYNC_POL_RISING_FALLING
01016   * @retval None
01017   */
01018 __STATIC_INLINE void LL_DMAMUX_SetSyncPolarity(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel, uint32_t Polarity)
01019 {
01020   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01021 
01022   MODIFY_REG(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_SPOL, Polarity);
01023 }
01024 
01025 /**
01026   * @brief  Get the polarity of the signal on which the DMA request is synchronized.
01027   * @rmtoll CxCR         SPOL          LL_DMAMUX_GetSyncPolarity
01028   * @param  DMAMUXx DMAMUXx Instance
01029   * @param  Channel This parameter can be one of the following values:
01030   *         @arg @ref LL_DMAMUX_CHANNEL_0
01031   *         @arg @ref LL_DMAMUX_CHANNEL_1
01032   *         @arg @ref LL_DMAMUX_CHANNEL_2
01033   *         @arg @ref LL_DMAMUX_CHANNEL_3
01034   *         @arg @ref LL_DMAMUX_CHANNEL_4
01035   *         @arg @ref LL_DMAMUX_CHANNEL_5
01036   *         @arg @ref LL_DMAMUX_CHANNEL_6
01037   *         @arg @ref LL_DMAMUX_CHANNEL_7
01038   *         @arg @ref LL_DMAMUX_CHANNEL_8
01039   *         @arg @ref LL_DMAMUX_CHANNEL_9
01040   *         @arg @ref LL_DMAMUX_CHANNEL_10
01041   *         @arg @ref LL_DMAMUX_CHANNEL_11
01042   *         @arg @ref LL_DMAMUX_CHANNEL_12
01043   *         @arg @ref LL_DMAMUX_CHANNEL_13
01044   *         @arg @ref LL_DMAMUX_CHANNEL_14
01045   *         @arg @ref LL_DMAMUX_CHANNEL_15
01046   * @retval Returned value can be one of the following values:
01047   *         @arg @ref LL_DMAMUX_SYNC_NO_EVENT
01048   *         @arg @ref LL_DMAMUX_SYNC_POL_RISING
01049   *         @arg @ref LL_DMAMUX_SYNC_POL_FALLING
01050   *         @arg @ref LL_DMAMUX_SYNC_POL_RISING_FALLING
01051   */
01052 __STATIC_INLINE uint32_t LL_DMAMUX_GetSyncPolarity(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
01053 {
01054   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01055 
01056   return (uint32_t)(READ_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_SPOL));
01057 }
01058 
01059 /**
01060   * @brief  Enable the Event Generation on DMAMUX channel x.
01061   * @rmtoll CxCR         EGE           LL_DMAMUX_EnableEventGeneration
01062   * @param  DMAMUXx DMAMUXx Instance
01063   * @param  Channel This parameter can be one of the following values:
01064   *         @arg @ref LL_DMAMUX_CHANNEL_0
01065   *         @arg @ref LL_DMAMUX_CHANNEL_1
01066   *         @arg @ref LL_DMAMUX_CHANNEL_2
01067   *         @arg @ref LL_DMAMUX_CHANNEL_3
01068   *         @arg @ref LL_DMAMUX_CHANNEL_4
01069   *         @arg @ref LL_DMAMUX_CHANNEL_5
01070   *         @arg @ref LL_DMAMUX_CHANNEL_6
01071   *         @arg @ref LL_DMAMUX_CHANNEL_7
01072   *         @arg @ref LL_DMAMUX_CHANNEL_8
01073   *         @arg @ref LL_DMAMUX_CHANNEL_9
01074   *         @arg @ref LL_DMAMUX_CHANNEL_10
01075   *         @arg @ref LL_DMAMUX_CHANNEL_11
01076   *         @arg @ref LL_DMAMUX_CHANNEL_12
01077   *         @arg @ref LL_DMAMUX_CHANNEL_13
01078   *         @arg @ref LL_DMAMUX_CHANNEL_14
01079   *         @arg @ref LL_DMAMUX_CHANNEL_15
01080   * @retval None
01081   */
01082 __STATIC_INLINE void LL_DMAMUX_EnableEventGeneration(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
01083 {
01084   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01085 
01086   SET_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_EGE);
01087 }
01088 
01089 /**
01090   * @brief  Disable the Event Generation on DMAMUX channel x.
01091   * @rmtoll CxCR         EGE           LL_DMAMUX_DisableEventGeneration
01092   * @param  DMAMUXx DMAMUXx Instance
01093   * @param  Channel This parameter can be one of the following values:
01094   *         @arg @ref LL_DMAMUX_CHANNEL_0
01095   *         @arg @ref LL_DMAMUX_CHANNEL_1
01096   *         @arg @ref LL_DMAMUX_CHANNEL_2
01097   *         @arg @ref LL_DMAMUX_CHANNEL_3
01098   *         @arg @ref LL_DMAMUX_CHANNEL_4
01099   *         @arg @ref LL_DMAMUX_CHANNEL_5
01100   *         @arg @ref LL_DMAMUX_CHANNEL_6
01101   *         @arg @ref LL_DMAMUX_CHANNEL_7
01102   *         @arg @ref LL_DMAMUX_CHANNEL_8
01103   *         @arg @ref LL_DMAMUX_CHANNEL_9
01104   *         @arg @ref LL_DMAMUX_CHANNEL_10
01105   *         @arg @ref LL_DMAMUX_CHANNEL_11
01106   *         @arg @ref LL_DMAMUX_CHANNEL_12
01107   *         @arg @ref LL_DMAMUX_CHANNEL_13
01108   *         @arg @ref LL_DMAMUX_CHANNEL_14
01109   *         @arg @ref LL_DMAMUX_CHANNEL_15
01110   * @retval None
01111   */
01112 __STATIC_INLINE void LL_DMAMUX_DisableEventGeneration(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
01113 {
01114   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01115 
01116   CLEAR_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_EGE);
01117 }
01118 
01119 /**
01120   * @brief  Check if the Event Generation on DMAMUX channel x is enabled or disabled.
01121   * @rmtoll CxCR         EGE           LL_DMAMUX_IsEnabledEventGeneration
01122   * @param  DMAMUXx DMAMUXx Instance
01123   * @param  Channel This parameter can be one of the following values:
01124   *         @arg @ref LL_DMAMUX_CHANNEL_0
01125   *         @arg @ref LL_DMAMUX_CHANNEL_1
01126   *         @arg @ref LL_DMAMUX_CHANNEL_2
01127   *         @arg @ref LL_DMAMUX_CHANNEL_3
01128   *         @arg @ref LL_DMAMUX_CHANNEL_4
01129   *         @arg @ref LL_DMAMUX_CHANNEL_5
01130   *         @arg @ref LL_DMAMUX_CHANNEL_6
01131   *         @arg @ref LL_DMAMUX_CHANNEL_7
01132   *         @arg @ref LL_DMAMUX_CHANNEL_8
01133   *         @arg @ref LL_DMAMUX_CHANNEL_9
01134   *         @arg @ref LL_DMAMUX_CHANNEL_10
01135   *         @arg @ref LL_DMAMUX_CHANNEL_11
01136   *         @arg @ref LL_DMAMUX_CHANNEL_12
01137   *         @arg @ref LL_DMAMUX_CHANNEL_13
01138   *         @arg @ref LL_DMAMUX_CHANNEL_14
01139   *         @arg @ref LL_DMAMUX_CHANNEL_15
01140   * @retval State of bit (1 or 0).
01141   */
01142 __STATIC_INLINE uint32_t LL_DMAMUX_IsEnabledEventGeneration(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
01143 {
01144   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01145 
01146   return ((READ_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_EGE) == (DMAMUX_CxCR_EGE)) ? 1UL : 0UL);
01147 }
01148 
01149 /**
01150   * @brief  Enable the synchronization mode.
01151   * @rmtoll CxCR         SE            LL_DMAMUX_EnableSync
01152   * @param  DMAMUXx DMAMUXx Instance
01153   * @param  Channel This parameter can be one of the following values:
01154   *         @arg @ref LL_DMAMUX_CHANNEL_0
01155   *         @arg @ref LL_DMAMUX_CHANNEL_1
01156   *         @arg @ref LL_DMAMUX_CHANNEL_2
01157   *         @arg @ref LL_DMAMUX_CHANNEL_3
01158   *         @arg @ref LL_DMAMUX_CHANNEL_4
01159   *         @arg @ref LL_DMAMUX_CHANNEL_5
01160   *         @arg @ref LL_DMAMUX_CHANNEL_6
01161   *         @arg @ref LL_DMAMUX_CHANNEL_7
01162   *         @arg @ref LL_DMAMUX_CHANNEL_8
01163   *         @arg @ref LL_DMAMUX_CHANNEL_9
01164   *         @arg @ref LL_DMAMUX_CHANNEL_10
01165   *         @arg @ref LL_DMAMUX_CHANNEL_11
01166   *         @arg @ref LL_DMAMUX_CHANNEL_12
01167   *         @arg @ref LL_DMAMUX_CHANNEL_13
01168   *         @arg @ref LL_DMAMUX_CHANNEL_14
01169   *         @arg @ref LL_DMAMUX_CHANNEL_15
01170   * @retval None
01171   */
01172 __STATIC_INLINE void LL_DMAMUX_EnableSync(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
01173 {
01174   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01175 
01176   SET_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_SE);
01177 }
01178 
01179 /**
01180   * @brief  Disable the synchronization mode.
01181   * @rmtoll CxCR         SE            LL_DMAMUX_DisableSync
01182   * @param  DMAMUXx DMAMUXx Instance
01183   * @param  Channel This parameter can be one of the following values:
01184   *         @arg @ref LL_DMAMUX_CHANNEL_0
01185   *         @arg @ref LL_DMAMUX_CHANNEL_1
01186   *         @arg @ref LL_DMAMUX_CHANNEL_2
01187   *         @arg @ref LL_DMAMUX_CHANNEL_3
01188   *         @arg @ref LL_DMAMUX_CHANNEL_4
01189   *         @arg @ref LL_DMAMUX_CHANNEL_5
01190   *         @arg @ref LL_DMAMUX_CHANNEL_6
01191   *         @arg @ref LL_DMAMUX_CHANNEL_7
01192   *         @arg @ref LL_DMAMUX_CHANNEL_8
01193   *         @arg @ref LL_DMAMUX_CHANNEL_9
01194   *         @arg @ref LL_DMAMUX_CHANNEL_10
01195   *         @arg @ref LL_DMAMUX_CHANNEL_11
01196   *         @arg @ref LL_DMAMUX_CHANNEL_12
01197   *         @arg @ref LL_DMAMUX_CHANNEL_13
01198   *         @arg @ref LL_DMAMUX_CHANNEL_14
01199   *         @arg @ref LL_DMAMUX_CHANNEL_15
01200   * @retval None
01201   */
01202 __STATIC_INLINE void LL_DMAMUX_DisableSync(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
01203 {
01204   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01205 
01206   CLEAR_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_SE);
01207 }
01208 
01209 /**
01210   * @brief  Check if the synchronization mode is enabled or disabled.
01211   * @rmtoll CxCR         SE            LL_DMAMUX_IsEnabledSync
01212   * @param  DMAMUXx DMAMUXx Instance
01213   * @param  Channel This parameter can be one of the following values:
01214   *         @arg @ref LL_DMAMUX_CHANNEL_0
01215   *         @arg @ref LL_DMAMUX_CHANNEL_1
01216   *         @arg @ref LL_DMAMUX_CHANNEL_2
01217   *         @arg @ref LL_DMAMUX_CHANNEL_3
01218   *         @arg @ref LL_DMAMUX_CHANNEL_4
01219   *         @arg @ref LL_DMAMUX_CHANNEL_5
01220   *         @arg @ref LL_DMAMUX_CHANNEL_6
01221   *         @arg @ref LL_DMAMUX_CHANNEL_7
01222   *         @arg @ref LL_DMAMUX_CHANNEL_8
01223   *         @arg @ref LL_DMAMUX_CHANNEL_9
01224   *         @arg @ref LL_DMAMUX_CHANNEL_10
01225   *         @arg @ref LL_DMAMUX_CHANNEL_11
01226   *         @arg @ref LL_DMAMUX_CHANNEL_12
01227   *         @arg @ref LL_DMAMUX_CHANNEL_13
01228   *         @arg @ref LL_DMAMUX_CHANNEL_14
01229   *         @arg @ref LL_DMAMUX_CHANNEL_15
01230   * @retval State of bit (1 or 0).
01231   */
01232 __STATIC_INLINE uint32_t LL_DMAMUX_IsEnabledSync(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
01233 {
01234   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01235 
01236   return ((READ_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_SE) == (DMAMUX_CxCR_SE)) ? 1UL : 0UL);
01237 }
01238 
01239 /**
01240   * @brief  Set DMAMUX synchronization ID  on DMAMUX Channel x.
01241   * @rmtoll CxCR         SYNC_ID       LL_DMAMUX_SetSyncID
01242   * @param  DMAMUXx DMAMUXx Instance
01243   * @param  Channel This parameter can be one of the following values:
01244   *         @arg @ref LL_DMAMUX_CHANNEL_0
01245   *         @arg @ref LL_DMAMUX_CHANNEL_1
01246   *         @arg @ref LL_DMAMUX_CHANNEL_2
01247   *         @arg @ref LL_DMAMUX_CHANNEL_3
01248   *         @arg @ref LL_DMAMUX_CHANNEL_4
01249   *         @arg @ref LL_DMAMUX_CHANNEL_5
01250   *         @arg @ref LL_DMAMUX_CHANNEL_6
01251   *         @arg @ref LL_DMAMUX_CHANNEL_7
01252   *         @arg @ref LL_DMAMUX_CHANNEL_8
01253   *         @arg @ref LL_DMAMUX_CHANNEL_9
01254   *         @arg @ref LL_DMAMUX_CHANNEL_10
01255   *         @arg @ref LL_DMAMUX_CHANNEL_11
01256   *         @arg @ref LL_DMAMUX_CHANNEL_12
01257   *         @arg @ref LL_DMAMUX_CHANNEL_13
01258   *         @arg @ref LL_DMAMUX_CHANNEL_14
01259   *         @arg @ref LL_DMAMUX_CHANNEL_15
01260   * @param  SyncID This parameter can be one of the following values:
01261   *         @arg @ref LL_DMAMUX1_SYNC_DMAMUX1_CH0_EVT
01262   *         @arg @ref LL_DMAMUX1_SYNC_DMAMUX1_CH1_EVT
01263   *         @arg @ref LL_DMAMUX1_SYNC_DMAMUX1_CH2_EVT
01264   *         @arg @ref LL_DMAMUX1_SYNC_LPTIM1_OUT
01265   *         @arg @ref LL_DMAMUX1_SYNC_LPTIM2_OUT
01266   *         @arg @ref LL_DMAMUX1_SYNC_LPTIM3_OUT
01267   *         @arg @ref LL_DMAMUX1_SYNC_EXTI0
01268   *         @arg @ref LL_DMAMUX1_SYNC_TIM12_TRGO
01269   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH0_EVT
01270   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH1_EVT
01271   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH2_EVT
01272   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH3_EVT
01273   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH4_EVT
01274   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH5_EVT
01275   *         @arg @ref LL_DMAMUX2_SYNC_LPUART1_RX_WKUP
01276   *         @arg @ref LL_DMAMUX2_SYNC_LPUART1_TX_WKUP
01277   *         @arg @ref LL_DMAMUX2_SYNC_LPTIM2_OUT
01278   *         @arg @ref LL_DMAMUX2_SYNC_LPTIM3_OUT
01279   *         @arg @ref LL_DMAMUX2_SYNC_I2C4_WKUP
01280   *         @arg @ref LL_DMAMUX2_SYNC_SPI6_WKUP
01281   *         @arg @ref LL_DMAMUX2_SYNC_COMP1_OUT
01282   *         @arg @ref LL_DMAMUX2_SYNC_RTC_WKUP
01283   *         @arg @ref LL_DMAMUX2_SYNC_EXTI0
01284   *         @arg @ref LL_DMAMUX2_SYNC_EXTI2
01285   * @retval None
01286   */
01287 __STATIC_INLINE void LL_DMAMUX_SetSyncID(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel, uint32_t SyncID)
01288 {
01289   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01290 
01291   MODIFY_REG(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_SYNC_ID, SyncID);
01292 }
01293 
01294 /**
01295   * @brief  Get DMAMUX synchronization ID  on DMAMUX Channel x.
01296   * @rmtoll CxCR         SYNC_ID       LL_DMAMUX_GetSyncID
01297   * @param  DMAMUXx DMAMUXx Instance
01298   * @param  Channel This parameter can be one of the following values:
01299   *         @arg @ref LL_DMAMUX_CHANNEL_0
01300   *         @arg @ref LL_DMAMUX_CHANNEL_1
01301   *         @arg @ref LL_DMAMUX_CHANNEL_2
01302   *         @arg @ref LL_DMAMUX_CHANNEL_3
01303   *         @arg @ref LL_DMAMUX_CHANNEL_4
01304   *         @arg @ref LL_DMAMUX_CHANNEL_5
01305   *         @arg @ref LL_DMAMUX_CHANNEL_6
01306   *         @arg @ref LL_DMAMUX_CHANNEL_7
01307   *         @arg @ref LL_DMAMUX_CHANNEL_8
01308   *         @arg @ref LL_DMAMUX_CHANNEL_9
01309   *         @arg @ref LL_DMAMUX_CHANNEL_10
01310   *         @arg @ref LL_DMAMUX_CHANNEL_11
01311   *         @arg @ref LL_DMAMUX_CHANNEL_12
01312   *         @arg @ref LL_DMAMUX_CHANNEL_13
01313   *         @arg @ref LL_DMAMUX_CHANNEL_14
01314   *         @arg @ref LL_DMAMUX_CHANNEL_15
01315   * @retval Returned value can be one of the following values:
01316   *         @arg @ref LL_DMAMUX1_SYNC_DMAMUX1_CH0_EVT
01317   *         @arg @ref LL_DMAMUX1_SYNC_DMAMUX1_CH1_EVT
01318   *         @arg @ref LL_DMAMUX1_SYNC_DMAMUX1_CH2_EVT
01319   *         @arg @ref LL_DMAMUX1_SYNC_LPTIM1_OUT
01320   *         @arg @ref LL_DMAMUX1_SYNC_LPTIM2_OUT
01321   *         @arg @ref LL_DMAMUX1_SYNC_LPTIM3_OUT
01322   *         @arg @ref LL_DMAMUX1_SYNC_EXTI0
01323   *         @arg @ref LL_DMAMUX1_SYNC_TIM12_TRGO
01324   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH0_EVT
01325   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH1_EVT
01326   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH2_EVT
01327   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH3_EVT
01328   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH4_EVT
01329   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH5_EVT
01330   *         @arg @ref LL_DMAMUX2_SYNC_LPUART1_RX_WKUP
01331   *         @arg @ref LL_DMAMUX2_SYNC_LPUART1_TX_WKUP
01332   *         @arg @ref LL_DMAMUX2_SYNC_LPTIM2_OUT
01333   *         @arg @ref LL_DMAMUX2_SYNC_LPTIM3_OUT
01334   *         @arg @ref LL_DMAMUX2_SYNC_I2C4_WKUP
01335   *         @arg @ref LL_DMAMUX2_SYNC_SPI6_WKUP
01336   *         @arg @ref LL_DMAMUX2_SYNC_COMP1_OUT
01337   *         @arg @ref LL_DMAMUX2_SYNC_RTC_WKUP
01338   *         @arg @ref LL_DMAMUX2_SYNC_EXTI0
01339   *         @arg @ref LL_DMAMUX2_SYNC_EXTI2
01340   */
01341 __STATIC_INLINE uint32_t LL_DMAMUX_GetSyncID(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
01342 {
01343   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01344 
01345   return (uint32_t)(READ_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_SYNC_ID));
01346 }
01347 
01348 /**
01349   * @brief  Enable the Request Generator.
01350   * @rmtoll RGxCR        GE            LL_DMAMUX_EnableRequestGen
01351   * @param  DMAMUXx DMAMUXx Instance
01352   * @param  RequestGenChannel This parameter can be one of the following values:
01353   *         @arg @ref LL_DMAMUX_REQ_GEN_0
01354   *         @arg @ref LL_DMAMUX_REQ_GEN_1
01355   *         @arg @ref LL_DMAMUX_REQ_GEN_2
01356   *         @arg @ref LL_DMAMUX_REQ_GEN_3
01357   *         @arg @ref LL_DMAMUX_REQ_GEN_4
01358   *         @arg @ref LL_DMAMUX_REQ_GEN_5
01359   *         @arg @ref LL_DMAMUX_REQ_GEN_6
01360   *         @arg @ref LL_DMAMUX_REQ_GEN_7
01361   * @retval None
01362   */
01363 __STATIC_INLINE void LL_DMAMUX_EnableRequestGen(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel)
01364 {
01365   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01366 
01367   SET_BIT(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * (RequestGenChannel))))->RGCR, DMAMUX_RGxCR_GE);
01368 }
01369 
01370 /**
01371   * @brief  Disable the Request Generator.
01372   * @rmtoll RGxCR        GE            LL_DMAMUX_DisableRequestGen
01373   * @param  DMAMUXx DMAMUXx Instance
01374   * @param  RequestGenChannel This parameter can be one of the following values:
01375   *         @arg @ref LL_DMAMUX_REQ_GEN_0
01376   *         @arg @ref LL_DMAMUX_REQ_GEN_1
01377   *         @arg @ref LL_DMAMUX_REQ_GEN_2
01378   *         @arg @ref LL_DMAMUX_REQ_GEN_3
01379   * @retval None
01380   */
01381 __STATIC_INLINE void LL_DMAMUX_DisableRequestGen(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel)
01382 {
01383   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01384 
01385   CLEAR_BIT(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * (RequestGenChannel))))->RGCR, DMAMUX_RGxCR_GE);
01386 }
01387 
01388 /**
01389   * @brief  Check if the Request Generator is enabled or disabled.
01390   * @rmtoll RGxCR        GE            LL_DMAMUX_IsEnabledRequestGen
01391   * @param  DMAMUXx DMAMUXx Instance
01392   * @param  RequestGenChannel This parameter can be one of the following values:
01393   *         @arg @ref LL_DMAMUX_REQ_GEN_0
01394   *         @arg @ref LL_DMAMUX_REQ_GEN_1
01395   *         @arg @ref LL_DMAMUX_REQ_GEN_2
01396   *         @arg @ref LL_DMAMUX_REQ_GEN_3
01397   *         @arg @ref LL_DMAMUX_REQ_GEN_4
01398   *         @arg @ref LL_DMAMUX_REQ_GEN_5
01399   *         @arg @ref LL_DMAMUX_REQ_GEN_6
01400   *         @arg @ref LL_DMAMUX_REQ_GEN_7
01401   * @retval State of bit (1 or 0).
01402   */
01403 __STATIC_INLINE uint32_t LL_DMAMUX_IsEnabledRequestGen(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel)
01404 {
01405   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01406 
01407   return ((READ_BIT(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * RequestGenChannel)))->RGCR, DMAMUX_RGxCR_GE) == (DMAMUX_RGxCR_GE)) ? 1UL : 0UL);
01408 }
01409 
01410 /**
01411   * @brief  Set the polarity of the signal on which the DMA request is generated.
01412   * @rmtoll RGxCR        GPOL          LL_DMAMUX_SetRequestGenPolarity
01413   * @param  DMAMUXx DMAMUXx Instance
01414   * @param  RequestGenChannel This parameter can be one of the following values:
01415   *         @arg @ref LL_DMAMUX_REQ_GEN_0
01416   *         @arg @ref LL_DMAMUX_REQ_GEN_1
01417   *         @arg @ref LL_DMAMUX_REQ_GEN_2
01418   *         @arg @ref LL_DMAMUX_REQ_GEN_3
01419   *         @arg @ref LL_DMAMUX_REQ_GEN_4
01420   *         @arg @ref LL_DMAMUX_REQ_GEN_5
01421   *         @arg @ref LL_DMAMUX_REQ_GEN_6
01422   *         @arg @ref LL_DMAMUX_REQ_GEN_7
01423   * @param  Polarity This parameter can be one of the following values:
01424   *         @arg @ref LL_DMAMUX_REQ_GEN_NO_EVENT
01425   *         @arg @ref LL_DMAMUX_REQ_GEN_POL_RISING
01426   *         @arg @ref LL_DMAMUX_REQ_GEN_POL_FALLING
01427   *         @arg @ref LL_DMAMUX_REQ_GEN_POL_RISING_FALLING
01428   * @retval None
01429   */
01430 __STATIC_INLINE void LL_DMAMUX_SetRequestGenPolarity(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel, uint32_t Polarity)
01431 {
01432   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01433 
01434   MODIFY_REG(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * RequestGenChannel)))->RGCR, DMAMUX_RGxCR_GPOL, Polarity);
01435 }
01436 
01437 /**
01438   * @brief  Get the polarity of the signal on which the DMA request is generated.
01439   * @rmtoll RGxCR        GPOL          LL_DMAMUX_GetRequestGenPolarity
01440   * @param  DMAMUXx DMAMUXx Instance
01441   * @param  RequestGenChannel This parameter can be one of the following values:
01442   *         @arg @ref LL_DMAMUX_REQ_GEN_0
01443   *         @arg @ref LL_DMAMUX_REQ_GEN_1
01444   *         @arg @ref LL_DMAMUX_REQ_GEN_2
01445   *         @arg @ref LL_DMAMUX_REQ_GEN_3
01446   *         @arg @ref LL_DMAMUX_REQ_GEN_4
01447   *         @arg @ref LL_DMAMUX_REQ_GEN_5
01448   *         @arg @ref LL_DMAMUX_REQ_GEN_6
01449   *         @arg @ref LL_DMAMUX_REQ_GEN_7
01450   * @retval Returned value can be one of the following values:
01451   *         @arg @ref LL_DMAMUX_REQ_GEN_NO_EVENT
01452   *         @arg @ref LL_DMAMUX_REQ_GEN_POL_RISING
01453   *         @arg @ref LL_DMAMUX_REQ_GEN_POL_FALLING
01454   *         @arg @ref LL_DMAMUX_REQ_GEN_POL_RISING_FALLING
01455   */
01456 __STATIC_INLINE uint32_t LL_DMAMUX_GetRequestGenPolarity(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel)
01457 {
01458   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01459 
01460   return (uint32_t)(READ_BIT(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * RequestGenChannel)))->RGCR, DMAMUX_RGxCR_GPOL));
01461 }
01462 
01463 /**
01464   * @brief  Set the number of DMA request that will be autorized after a generation event.
01465   * @note   This field can only be written when Generator is disabled.
01466   * @rmtoll RGxCR        GNBREQ        LL_DMAMUX_SetGenRequestNb
01467   * @param  DMAMUXx DMAMUXx Instance
01468   * @param  RequestGenChannel This parameter can be one of the following values:
01469   *         @arg @ref LL_DMAMUX_REQ_GEN_0
01470   *         @arg @ref LL_DMAMUX_REQ_GEN_1
01471   *         @arg @ref LL_DMAMUX_REQ_GEN_2
01472   *         @arg @ref LL_DMAMUX_REQ_GEN_3
01473   *         @arg @ref LL_DMAMUX_REQ_GEN_4
01474   *         @arg @ref LL_DMAMUX_REQ_GEN_5
01475   *         @arg @ref LL_DMAMUX_REQ_GEN_6
01476   *         @arg @ref LL_DMAMUX_REQ_GEN_7
01477   * @param  RequestNb This parameter must be a value between Min_Data = 1 and Max_Data = 32.
01478   * @retval None
01479   */
01480 __STATIC_INLINE void LL_DMAMUX_SetGenRequestNb(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel, uint32_t RequestNb)
01481 {
01482   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01483 
01484   MODIFY_REG(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * RequestGenChannel)))->RGCR, DMAMUX_RGxCR_GNBREQ, (RequestNb - 1U) << DMAMUX_RGxCR_GNBREQ_Pos);
01485 }
01486 
01487 /**
01488   * @brief  Get the number of DMA request that will be autorized after a generation event.
01489   * @rmtoll RGxCR        GNBREQ        LL_DMAMUX_GetGenRequestNb
01490   * @param  DMAMUXx DMAMUXx Instance
01491   * @param  RequestGenChannel This parameter can be one of the following values:
01492   *         @arg @ref LL_DMAMUX_REQ_GEN_0
01493   *         @arg @ref LL_DMAMUX_REQ_GEN_1
01494   *         @arg @ref LL_DMAMUX_REQ_GEN_2
01495   *         @arg @ref LL_DMAMUX_REQ_GEN_3
01496   *         @arg @ref LL_DMAMUX_REQ_GEN_4
01497   *         @arg @ref LL_DMAMUX_REQ_GEN_5
01498   *         @arg @ref LL_DMAMUX_REQ_GEN_6
01499   *         @arg @ref LL_DMAMUX_REQ_GEN_7
01500   * @retval Between Min_Data = 1 and Max_Data = 32
01501   */
01502 __STATIC_INLINE uint32_t LL_DMAMUX_GetGenRequestNb(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel)
01503 {
01504   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01505 
01506   return (uint32_t)((READ_BIT(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * RequestGenChannel)))->RGCR, DMAMUX_RGxCR_GNBREQ) >> DMAMUX_RGxCR_GNBREQ_Pos) + 1U);
01507 }
01508 
01509 /**
01510   * @brief  Set DMAMUX external Request Signal ID on DMAMUX Request Generation Trigger Event Channel x.
01511   * @rmtoll RGxCR        SIG_ID        LL_DMAMUX_SetRequestSignalID
01512   * @param  DMAMUXx DMAMUXx Instance
01513   * @param  RequestGenChannel This parameter can be one of the following values:
01514   *         @arg @ref LL_DMAMUX_REQ_GEN_0
01515   *         @arg @ref LL_DMAMUX_REQ_GEN_1
01516   *         @arg @ref LL_DMAMUX_REQ_GEN_2
01517   *         @arg @ref LL_DMAMUX_REQ_GEN_3
01518   *         @arg @ref LL_DMAMUX_REQ_GEN_4
01519   *         @arg @ref LL_DMAMUX_REQ_GEN_5
01520   *         @arg @ref LL_DMAMUX_REQ_GEN_6
01521   *         @arg @ref LL_DMAMUX_REQ_GEN_7
01522   * @param  RequestSignalID This parameter can be one of the following values:
01523   *         @arg @ref LL_DMAMUX1_REQ_GEN_DMAMUX1_CH0_EVT
01524   *         @arg @ref LL_DMAMUX1_REQ_GEN_DMAMUX1_CH1_EVT
01525   *         @arg @ref LL_DMAMUX1_REQ_GEN_DMAMUX1_CH2_EVT
01526   *         @arg @ref LL_DMAMUX1_REQ_GEN_LPTIM1_OUT
01527   *         @arg @ref LL_DMAMUX1_REQ_GEN_LPTIM2_OUT
01528   *         @arg @ref LL_DMAMUX1_REQ_GEN_LPTIM3_OUT
01529   *         @arg @ref LL_DMAMUX1_REQ_GEN_EXTI0
01530   *         @arg @ref LL_DMAMUX1_REQ_GEN_TIM12_TRGO
01531   *         @arg @ref LL_DMAMUX2_REQ_GEN_DMAMUX2_CH0_EVT
01532   *         @arg @ref LL_DMAMUX2_REQ_GEN_DMAMUX2_CH1_EVT
01533   *         @arg @ref LL_DMAMUX2_REQ_GEN_DMAMUX2_CH2_EVT
01534   *         @arg @ref LL_DMAMUX2_REQ_GEN_DMAMUX2_CH3_EVT
01535   *         @arg @ref LL_DMAMUX2_REQ_GEN_DMAMUX2_CH4_EVT
01536   *         @arg @ref LL_DMAMUX2_REQ_GEN_DMAMUX2_CH5_EVT
01537   *         @arg @ref LL_DMAMUX2_REQ_GEN_DMAMUX2_CH6_EVT
01538   *         @arg @ref LL_DMAMUX2_REQ_GEN_LPUART1_RX_WKUP
01539   *         @arg @ref LL_DMAMUX2_REQ_GEN_LPUART1_TX_WKUP
01540   *         @arg @ref LL_DMAMUX2_REQ_GEN_LPTIM2_WKUP
01541   *         @arg @ref LL_DMAMUX2_REQ_GEN_LPTIM2_OUT
01542   *         @arg @ref LL_DMAMUX2_REQ_GEN_LPTIM3_WKUP
01543   *         @arg @ref LL_DMAMUX2_REQ_GEN_LPTIM3_OUT
01544   *         @arg @ref LL_DMAMUX2_REQ_GEN_LPTIM4_WKUP (*)
01545   *         @arg @ref LL_DMAMUX2_REQ_GEN_LPTIM5_WKUP (*)
01546   *         @arg @ref LL_DMAMUX2_REQ_GEN_I2C4_WKUP
01547   *         @arg @ref LL_DMAMUX2_REQ_GEN_SPI6_WKUP
01548   *         @arg @ref LL_DMAMUX2_REQ_GEN_COMP1_OUT
01549   *         @arg @ref LL_DMAMUX2_REQ_GEN_COMP2_OUT
01550   *         @arg @ref LL_DMAMUX2_REQ_GEN_RTC_WKUP
01551   *         @arg @ref LL_DMAMUX2_REQ_GEN_EXTI0
01552   *         @arg @ref LL_DMAMUX2_REQ_GEN_EXTI2
01553   *         @arg @ref LL_DMAMUX2_REQ_GEN_I2C4_IT_EVT
01554   *         @arg @ref LL_DMAMUX2_REQ_GEN_SPI6_IT
01555   *         @arg @ref LL_DMAMUX2_REQ_GEN_LPUART1_TX_IT
01556   *         @arg @ref LL_DMAMUX2_REQ_GEN_LPUART1_RX_IT
01557   *         @arg @ref LL_DMAMUX2_REQ_GEN_ADC3_IT (*)
01558   *         @arg @ref LL_DMAMUX2_REQ_GEN_ADC3_AWD1_OUT (*)
01559   *         @arg @ref LL_DMAMUX2_REQ_GEN_BDMA_CH0_IT
01560   *         @arg @ref LL_DMAMUX2_REQ_GEN_BDMA_CH1_IT
01561   * @note   (*) Availability depends on devices.
01562   * @retval None
01563   */
01564 __STATIC_INLINE void LL_DMAMUX_SetRequestSignalID(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel, uint32_t RequestSignalID)
01565 {
01566   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01567 
01568   MODIFY_REG(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * RequestGenChannel)))->RGCR, DMAMUX_RGxCR_SIG_ID, RequestSignalID);
01569 }
01570 
01571 /**
01572   * @brief  Get DMAMUX external Request Signal ID set on DMAMUX Channel x.
01573   * @rmtoll RGxCR        SIG_ID        LL_DMAMUX_GetRequestSignalID
01574   * @param  DMAMUXx DMAMUXx Instance
01575   * @param  RequestGenChannel This parameter can be one of the following values:
01576   *         @arg @ref LL_DMAMUX_REQ_GEN_0
01577   *         @arg @ref LL_DMAMUX_REQ_GEN_1
01578   *         @arg @ref LL_DMAMUX_REQ_GEN_2
01579   *         @arg @ref LL_DMAMUX_REQ_GEN_3
01580   *         @arg @ref LL_DMAMUX_REQ_GEN_4
01581   *         @arg @ref LL_DMAMUX_REQ_GEN_5
01582   *         @arg @ref LL_DMAMUX_REQ_GEN_6
01583   *         @arg @ref LL_DMAMUX_REQ_GEN_7
01584   * @retval Returned value can be one of the following values:
01585   *         @arg @ref LL_DMAMUX1_SYNC_DMAMUX1_CH0_EVT
01586   *         @arg @ref LL_DMAMUX1_SYNC_DMAMUX1_CH1_EVT
01587   *         @arg @ref LL_DMAMUX1_SYNC_DMAMUX1_CH2_EVT
01588   *         @arg @ref LL_DMAMUX1_SYNC_LPTIM1_OUT
01589   *         @arg @ref LL_DMAMUX1_SYNC_LPTIM2_OUT
01590   *         @arg @ref LL_DMAMUX1_SYNC_LPTIM3_OUT
01591   *         @arg @ref LL_DMAMUX1_SYNC_EXTI0
01592   *         @arg @ref LL_DMAMUX1_SYNC_TIM12_TRGO
01593   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH0_EVT
01594   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH1_EVT
01595   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH2_EVT
01596   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH3_EVT
01597   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH4_EVT
01598   *         @arg @ref LL_DMAMUX2_SYNC_DMAMUX2_CH5_EVT
01599   *         @arg @ref LL_DMAMUX2_SYNC_LPUART1_RX_WKUP
01600   *         @arg @ref LL_DMAMUX2_SYNC_LPUART1_TX_WKUP
01601   *         @arg @ref LL_DMAMUX2_SYNC_LPTIM2_OUT
01602   *         @arg @ref LL_DMAMUX2_SYNC_LPTIM3_OUT
01603   *         @arg @ref LL_DMAMUX2_SYNC_I2C4_WKUP
01604   *         @arg @ref LL_DMAMUX2_SYNC_SPI6_WKUP
01605   *         @arg @ref LL_DMAMUX2_SYNC_COMP1_OUT
01606   *         @arg @ref LL_DMAMUX2_SYNC_RTC_WKUP
01607   *         @arg @ref LL_DMAMUX2_SYNC_EXTI0
01608   *         @arg @ref LL_DMAMUX2_SYNC_EXTI2
01609   */
01610 __STATIC_INLINE uint32_t LL_DMAMUX_GetRequestSignalID(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel)
01611 {
01612   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01613 
01614   return (uint32_t)(READ_BIT(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * RequestGenChannel)))->RGCR, DMAMUX_RGxCR_SIG_ID));
01615 }
01616 
01617 /**
01618   * @}
01619   */
01620 
01621 /** @defgroup DMAMUX_LL_EF_FLAG_Management FLAG_Management
01622   * @{
01623   */
01624 
01625 /**
01626   * @brief  Get Synchronization Event Overrun Flag Channel 0.
01627   * @rmtoll CSR          SOF0          LL_DMAMUX_IsActiveFlag_SO0
01628   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01629   * @retval State of bit (1 or 0).
01630   */
01631 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO0(DMAMUX_Channel_TypeDef *DMAMUXx)
01632 {
01633   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01634 
01635   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF0) == (DMAMUX_CSR_SOF0)) ? 1UL : 0UL);
01636 }
01637 
01638 /**
01639   * @brief  Get Synchronization Event Overrun Flag Channel 1.
01640   * @rmtoll CSR          SOF1          LL_DMAMUX_IsActiveFlag_SO1
01641   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01642   * @retval State of bit (1 or 0).
01643   */
01644 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO1(DMAMUX_Channel_TypeDef *DMAMUXx)
01645 {
01646   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01647 
01648   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF1) == (DMAMUX_CSR_SOF1)) ? 1UL : 0UL);
01649 }
01650 
01651 /**
01652   * @brief  Get Synchronization Event Overrun Flag Channel 2.
01653   * @rmtoll CSR          SOF2          LL_DMAMUX_IsActiveFlag_SO2
01654   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01655   * @retval State of bit (1 or 0).
01656   */
01657 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO2(DMAMUX_Channel_TypeDef *DMAMUXx)
01658 {
01659   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01660 
01661   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF2) == (DMAMUX_CSR_SOF2)) ? 1UL : 0UL);
01662 }
01663 
01664 /**
01665   * @brief  Get Synchronization Event Overrun Flag Channel 3.
01666   * @rmtoll CSR          SOF3          LL_DMAMUX_IsActiveFlag_SO3
01667   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01668   * @retval State of bit (1 or 0).
01669   */
01670 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO3(DMAMUX_Channel_TypeDef *DMAMUXx)
01671 {
01672   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01673 
01674   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF3) == (DMAMUX_CSR_SOF3)) ? 1UL : 0UL);
01675 }
01676 
01677 /**
01678   * @brief  Get Synchronization Event Overrun Flag Channel 4.
01679   * @rmtoll CSR          SOF4          LL_DMAMUX_IsActiveFlag_SO4
01680   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01681   * @retval State of bit (1 or 0).
01682   */
01683 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO4(DMAMUX_Channel_TypeDef *DMAMUXx)
01684 {
01685   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01686 
01687   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF4) == (DMAMUX_CSR_SOF4)) ? 1UL : 0UL);
01688 }
01689 
01690 /**
01691   * @brief  Get Synchronization Event Overrun Flag Channel 5.
01692   * @rmtoll CSR          SOF5          LL_DMAMUX_IsActiveFlag_SO5
01693   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01694   * @retval State of bit (1 or 0).
01695   */
01696 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO5(DMAMUX_Channel_TypeDef *DMAMUXx)
01697 {
01698   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01699 
01700   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF5) == (DMAMUX_CSR_SOF5)) ? 1UL : 0UL);
01701 }
01702 
01703 /**
01704   * @brief  Get Synchronization Event Overrun Flag Channel 6.
01705   * @rmtoll CSR          SOF6          LL_DMAMUX_IsActiveFlag_SO6
01706   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01707   * @retval State of bit (1 or 0).
01708   */
01709 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO6(DMAMUX_Channel_TypeDef *DMAMUXx)
01710 {
01711   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01712 
01713   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF6) == (DMAMUX_CSR_SOF6)) ? 1UL : 0UL);
01714 }
01715 
01716 /**
01717   * @brief  Get Synchronization Event Overrun Flag Channel 7.
01718   * @rmtoll CSR          SOF7          LL_DMAMUX_IsActiveFlag_SO7
01719   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01720   * @retval State of bit (1 or 0).
01721   */
01722 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO7(DMAMUX_Channel_TypeDef *DMAMUXx)
01723 {
01724   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01725 
01726   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF7) == (DMAMUX_CSR_SOF7)) ? 1UL : 0UL);
01727 }
01728 
01729 /**
01730   * @brief  Get Synchronization Event Overrun Flag Channel 8.
01731   * @rmtoll CSR          SOF8          LL_DMAMUX_IsActiveFlag_SO8
01732   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01733   * @retval State of bit (1 or 0).
01734   */
01735 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO8(DMAMUX_Channel_TypeDef *DMAMUXx)
01736 {
01737   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01738 
01739   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF8) == (DMAMUX_CSR_SOF8)) ? 1UL : 0UL);
01740 }
01741 
01742 /**
01743   * @brief  Get Synchronization Event Overrun Flag Channel 9.
01744   * @rmtoll CSR          SOF9          LL_DMAMUX_IsActiveFlag_SO9
01745   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01746   * @retval State of bit (1 or 0).
01747   */
01748 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO9(DMAMUX_Channel_TypeDef *DMAMUXx)
01749 {
01750   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01751 
01752   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF9) == (DMAMUX_CSR_SOF9)) ? 1UL : 0UL);
01753 }
01754 
01755 /**
01756   * @brief  Get Synchronization Event Overrun Flag Channel 10.
01757   * @rmtoll CSR          SOF10         LL_DMAMUX_IsActiveFlag_SO10
01758   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01759   * @retval State of bit (1 or 0).
01760   */
01761 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO10(DMAMUX_Channel_TypeDef *DMAMUXx)
01762 {
01763   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01764 
01765   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF10) == (DMAMUX_CSR_SOF10)) ? 1UL : 0UL);
01766 }
01767 
01768 /**
01769   * @brief  Get Synchronization Event Overrun Flag Channel 11.
01770   * @rmtoll CSR          SOF11         LL_DMAMUX_IsActiveFlag_SO11
01771   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01772   * @retval State of bit (1 or 0).
01773   */
01774 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO11(DMAMUX_Channel_TypeDef *DMAMUXx)
01775 {
01776   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01777 
01778   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF11) == (DMAMUX_CSR_SOF11)) ? 1UL : 0UL);
01779 }
01780 
01781 /**
01782   * @brief  Get Synchronization Event Overrun Flag Channel 12.
01783   * @rmtoll CSR          SOF12         LL_DMAMUX_IsActiveFlag_SO12
01784   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01785   * @retval State of bit (1 or 0).
01786   */
01787 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO12(DMAMUX_Channel_TypeDef *DMAMUXx)
01788 {
01789   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01790 
01791   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF12) == (DMAMUX_CSR_SOF12)) ? 1UL : 0UL);
01792 }
01793 
01794 /**
01795   * @brief  Get Synchronization Event Overrun Flag Channel 13.
01796   * @rmtoll CSR          SOF13         LL_DMAMUX_IsActiveFlag_SO13
01797   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01798   * @retval State of bit (1 or 0).
01799   */
01800 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO13(DMAMUX_Channel_TypeDef *DMAMUXx)
01801 {
01802   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01803 
01804   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF13) == (DMAMUX_CSR_SOF13)) ? 1UL : 0UL);
01805 }
01806 
01807 /**
01808   * @brief  Get Synchronization Event Overrun Flag Channel 14.
01809   * @rmtoll CSR          SOF14         LL_DMAMUX_IsActiveFlag_SO14
01810   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01811   * @retval State of bit (1 or 0).
01812   */
01813 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO14(DMAMUX_Channel_TypeDef *DMAMUXx)
01814 {
01815   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01816 
01817   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF14) == (DMAMUX_CSR_SOF14)) ? 1UL : 0UL);
01818 }
01819 
01820 /**
01821   * @brief  Get Synchronization Event Overrun Flag Channel 15.
01822   * @rmtoll CSR          SOF15         LL_DMAMUX_IsActiveFlag_SO15
01823   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01824   * @retval State of bit (1 or 0).
01825   */
01826 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_SO15(DMAMUX_Channel_TypeDef *DMAMUXx)
01827 {
01828   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01829 
01830   return ((READ_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CSR, DMAMUX_CSR_SOF15) == (DMAMUX_CSR_SOF15)) ? 1UL : 0UL);
01831 }
01832 
01833 /**
01834   * @brief  Get Request Generator 0 Trigger Event Overrun Flag.
01835   * @rmtoll RGSR         OF0           LL_DMAMUX_IsActiveFlag_RGO0
01836   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01837   * @retval State of bit (1 or 0).
01838   */
01839 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_RGO0(DMAMUX_Channel_TypeDef *DMAMUXx)
01840 {
01841   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01842 
01843   return ((READ_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGSR, DMAMUX_RGSR_OF0) == (DMAMUX_RGSR_OF0)) ? 1UL : 0UL);
01844 }
01845 
01846 /**
01847   * @brief  Get Request Generator 1 Trigger Event Overrun Flag.
01848   * @rmtoll RGSR         OF1           LL_DMAMUX_IsActiveFlag_RGO1
01849   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01850   * @retval State of bit (1 or 0).
01851   */
01852 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_RGO1(DMAMUX_Channel_TypeDef *DMAMUXx)
01853 {
01854   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01855 
01856   return ((READ_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGSR, DMAMUX_RGSR_OF1) == (DMAMUX_RGSR_OF1)) ? 1UL : 0UL);
01857 }
01858 
01859 /**
01860   * @brief  Get Request Generator 2 Trigger Event Overrun Flag.
01861   * @rmtoll RGSR         OF2           LL_DMAMUX_IsActiveFlag_RGO2
01862   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01863   * @retval State of bit (1 or 0).
01864   */
01865 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_RGO2(DMAMUX_Channel_TypeDef *DMAMUXx)
01866 {
01867   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01868 
01869   return ((READ_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGSR, DMAMUX_RGSR_OF2) == (DMAMUX_RGSR_OF2)) ? 1UL : 0UL);
01870 }
01871 
01872 /**
01873   * @brief  Get Request Generator 3 Trigger Event Overrun Flag.
01874   * @rmtoll RGSR         OF3           LL_DMAMUX_IsActiveFlag_RGO3
01875   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01876   * @retval State of bit (1 or 0).
01877   */
01878 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_RGO3(DMAMUX_Channel_TypeDef *DMAMUXx)
01879 {
01880   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01881 
01882   return ((READ_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGSR, DMAMUX_RGSR_OF3) == (DMAMUX_RGSR_OF3)) ? 1UL : 0UL);
01883 }
01884 
01885 /**
01886   * @brief  Get Request Generator 4 Trigger Event Overrun Flag.
01887   * @rmtoll RGSR         OF4           LL_DMAMUX_IsActiveFlag_RGO4
01888   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01889   * @retval State of bit (1 or 0).
01890   */
01891 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_RGO4(DMAMUX_Channel_TypeDef *DMAMUXx)
01892 {
01893   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01894 
01895   return ((READ_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGSR, DMAMUX_RGSR_OF4) == (DMAMUX_RGSR_OF4)) ? 1UL : 0UL);
01896 }
01897 
01898 /**
01899   * @brief  Get Request Generator 5 Trigger Event Overrun Flag.
01900   * @rmtoll RGSR         OF5           LL_DMAMUX_IsActiveFlag_RGO5
01901   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01902   * @retval State of bit (1 or 0).
01903   */
01904 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_RGO5(DMAMUX_Channel_TypeDef *DMAMUXx)
01905 {
01906   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01907 
01908   return ((READ_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGSR, DMAMUX_RGSR_OF5) == (DMAMUX_RGSR_OF5)) ? 1UL : 0UL);
01909 }
01910 
01911 /**
01912   * @brief  Get Request Generator 6 Trigger Event Overrun Flag.
01913   * @rmtoll RGSR         OF6           LL_DMAMUX_IsActiveFlag_RGO6
01914   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01915   * @retval State of bit (1 or 0).
01916   */
01917 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_RGO6(DMAMUX_Channel_TypeDef *DMAMUXx)
01918 {
01919   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01920 
01921   return ((READ_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGSR, DMAMUX_RGSR_OF6) == (DMAMUX_RGSR_OF6)) ? 1UL : 0UL);
01922 }
01923 
01924 /**
01925   * @brief  Get Request Generator 7 Trigger Event Overrun Flag.
01926   * @rmtoll RGSR         OF7           LL_DMAMUX_IsActiveFlag_RGO7
01927   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01928   * @retval State of bit (1 or 0).
01929   */
01930 __STATIC_INLINE uint32_t LL_DMAMUX_IsActiveFlag_RGO7(DMAMUX_Channel_TypeDef *DMAMUXx)
01931 {
01932   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01933 
01934   return ((READ_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGSR, DMAMUX_RGSR_OF7) == (DMAMUX_RGSR_OF7)) ? 1UL : 0UL);
01935 }
01936 
01937 /**
01938   * @brief  Clear Synchronization Event Overrun Flag Channel 0.
01939   * @rmtoll CFR          CSOF0         LL_DMAMUX_ClearFlag_SO0
01940   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01941   * @retval None
01942   */
01943 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO0(DMAMUX_Channel_TypeDef *DMAMUXx)
01944 {
01945   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01946 
01947   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF0);
01948 }
01949 
01950 /**
01951   * @brief  Clear Synchronization Event Overrun Flag Channel 1.
01952   * @rmtoll CFR          CSOF1         LL_DMAMUX_ClearFlag_SO1
01953   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01954   * @retval None
01955   */
01956 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO1(DMAMUX_Channel_TypeDef *DMAMUXx)
01957 {
01958   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01959 
01960   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF1);
01961 }
01962 
01963 /**
01964   * @brief  Clear Synchronization Event Overrun Flag Channel 2.
01965   * @rmtoll CFR          CSOF2         LL_DMAMUX_ClearFlag_SO2
01966   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01967   * @retval None
01968   */
01969 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO2(DMAMUX_Channel_TypeDef *DMAMUXx)
01970 {
01971   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01972 
01973   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF2);
01974 }
01975 
01976 /**
01977   * @brief  Clear Synchronization Event Overrun Flag Channel 3.
01978   * @rmtoll CFR          CSOF3         LL_DMAMUX_ClearFlag_SO3
01979   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01980   * @retval None
01981   */
01982 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO3(DMAMUX_Channel_TypeDef *DMAMUXx)
01983 {
01984   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01985 
01986   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF3);
01987 }
01988 
01989 /**
01990   * @brief  Clear Synchronization Event Overrun Flag Channel 4.
01991   * @rmtoll CFR          CSOF4         LL_DMAMUX_ClearFlag_SO4
01992   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
01993   * @retval None
01994   */
01995 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO4(DMAMUX_Channel_TypeDef *DMAMUXx)
01996 {
01997   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
01998 
01999   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF4);
02000 }
02001 
02002 /**
02003   * @brief  Clear Synchronization Event Overrun Flag Channel 5.
02004   * @rmtoll CFR          CSOF5         LL_DMAMUX_ClearFlag_SO5
02005   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02006   * @retval None
02007   */
02008 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO5(DMAMUX_Channel_TypeDef *DMAMUXx)
02009 {
02010   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02011 
02012   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF5);
02013 }
02014 
02015 /**
02016   * @brief  Clear Synchronization Event Overrun Flag Channel 6.
02017   * @rmtoll CFR          CSOF6         LL_DMAMUX_ClearFlag_SO6
02018   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02019   * @retval None
02020   */
02021 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO6(DMAMUX_Channel_TypeDef *DMAMUXx)
02022 {
02023   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02024 
02025   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF6);
02026 }
02027 
02028 /**
02029   * @brief  Clear Synchronization Event Overrun Flag Channel 7.
02030   * @rmtoll CFR          CSOF7         LL_DMAMUX_ClearFlag_SO7
02031   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02032   * @retval None
02033   */
02034 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO7(DMAMUX_Channel_TypeDef *DMAMUXx)
02035 {
02036   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02037 
02038   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF7);
02039 }
02040 
02041 /**
02042   * @brief  Clear Synchronization Event Overrun Flag Channel 8.
02043   * @rmtoll CFR          CSOF8         LL_DMAMUX_ClearFlag_SO8
02044   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02045   * @retval None
02046   */
02047 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO8(DMAMUX_Channel_TypeDef *DMAMUXx)
02048 {
02049   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02050 
02051   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF8);
02052 }
02053 
02054 /**
02055   * @brief  Clear Synchronization Event Overrun Flag Channel 9.
02056   * @rmtoll CFR          CSOF9         LL_DMAMUX_ClearFlag_SO9
02057   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02058   * @retval None
02059   */
02060 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO9(DMAMUX_Channel_TypeDef *DMAMUXx)
02061 {
02062   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02063 
02064   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF9);
02065 }
02066 
02067 /**
02068   * @brief  Clear Synchronization Event Overrun Flag Channel 10.
02069   * @rmtoll CFR          CSOF10        LL_DMAMUX_ClearFlag_SO10
02070   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02071   * @retval None
02072   */
02073 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO10(DMAMUX_Channel_TypeDef *DMAMUXx)
02074 {
02075   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02076 
02077   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF10);
02078 }
02079 
02080 /**
02081   * @brief  Clear Synchronization Event Overrun Flag Channel 11.
02082   * @rmtoll CFR          CSOF11        LL_DMAMUX_ClearFlag_SO11
02083   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02084   * @retval None
02085   */
02086 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO11(DMAMUX_Channel_TypeDef *DMAMUXx)
02087 {
02088   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02089 
02090   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF11);
02091 }
02092 
02093 /**
02094   * @brief  Clear Synchronization Event Overrun Flag Channel 12.
02095   * @rmtoll CFR          CSOF12        LL_DMAMUX_ClearFlag_SO12
02096   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02097   * @retval None
02098   */
02099 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO12(DMAMUX_Channel_TypeDef *DMAMUXx)
02100 {
02101   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02102 
02103   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF12);
02104 }
02105 
02106 /**
02107   * @brief  Clear Synchronization Event Overrun Flag Channel 13.
02108   * @rmtoll CFR          CSOF13        LL_DMAMUX_ClearFlag_SO13
02109   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02110   * @retval None
02111   */
02112 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO13(DMAMUX_Channel_TypeDef *DMAMUXx)
02113 {
02114   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02115 
02116   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF13);
02117 }
02118 
02119 /**
02120   * @brief  Clear Synchronization Event Overrun Flag Channel 14.
02121   * @rmtoll CFR          CSOF14        LL_DMAMUX_ClearFlag_SO14
02122   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02123   * @retval None
02124   */
02125 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO14(DMAMUX_Channel_TypeDef *DMAMUXx)
02126 {
02127   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02128 
02129   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF14);
02130 }
02131 
02132 /**
02133   * @brief  Clear Synchronization Event Overrun Flag Channel 15.
02134   * @rmtoll CFR          CSOF15        LL_DMAMUX_ClearFlag_SO15
02135   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02136   * @retval None
02137   */
02138 __STATIC_INLINE void LL_DMAMUX_ClearFlag_SO15(DMAMUX_Channel_TypeDef *DMAMUXx)
02139 {
02140   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02141 
02142   SET_BIT(((DMAMUX_ChannelStatus_TypeDef *)(dmamux_base_addr + DMAMUX_CH_STATUS_OFFSET))->CFR, DMAMUX_CFR_CSOF15);
02143 }
02144 
02145 /**
02146   * @brief  Clear Request Generator 0 Trigger Event Overrun Flag.
02147   * @rmtoll RGCFR        COF0          LL_DMAMUX_ClearFlag_RGO0
02148   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02149   * @retval None
02150   */
02151 __STATIC_INLINE void LL_DMAMUX_ClearFlag_RGO0(DMAMUX_Channel_TypeDef *DMAMUXx)
02152 {
02153   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02154 
02155   SET_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGCFR, DMAMUX_RGCFR_COF0);
02156 }
02157 
02158 /**
02159   * @brief  Clear Request Generator 1 Trigger Event Overrun Flag.
02160   * @rmtoll RGCFR        COF1          LL_DMAMUX_ClearFlag_RGO1
02161   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02162   * @retval None
02163   */
02164 __STATIC_INLINE void LL_DMAMUX_ClearFlag_RGO1(DMAMUX_Channel_TypeDef *DMAMUXx)
02165 {
02166   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02167 
02168   SET_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGCFR, DMAMUX_RGCFR_COF1);
02169 }
02170 
02171 /**
02172   * @brief  Clear Request Generator 2 Trigger Event Overrun Flag.
02173   * @rmtoll RGCFR        COF2          LL_DMAMUX_ClearFlag_RGO2
02174   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02175   * @retval None
02176   */
02177 __STATIC_INLINE void LL_DMAMUX_ClearFlag_RGO2(DMAMUX_Channel_TypeDef *DMAMUXx)
02178 {
02179   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02180 
02181   SET_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGCFR, DMAMUX_RGCFR_COF2);
02182 }
02183 
02184 /**
02185   * @brief  Clear Request Generator 3 Trigger Event Overrun Flag.
02186   * @rmtoll RGCFR        COF3          LL_DMAMUX_ClearFlag_RGO3
02187   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02188   * @retval None
02189   */
02190 __STATIC_INLINE void LL_DMAMUX_ClearFlag_RGO3(DMAMUX_Channel_TypeDef *DMAMUXx)
02191 {
02192   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02193 
02194   SET_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGCFR, DMAMUX_RGCFR_COF3);
02195 }
02196 
02197 /**
02198   * @brief  Clear Request Generator 4 Trigger Event Overrun Flag.
02199   * @rmtoll RGCFR        COF4          LL_DMAMUX_ClearFlag_RGO4
02200   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02201   * @retval None
02202   */
02203 __STATIC_INLINE void LL_DMAMUX_ClearFlag_RGO4(DMAMUX_Channel_TypeDef *DMAMUXx)
02204 {
02205   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02206 
02207   SET_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGCFR, DMAMUX_RGCFR_COF4);
02208 }
02209 
02210 /**
02211   * @brief  Clear Request Generator 5 Trigger Event Overrun Flag.
02212   * @rmtoll RGCFR        COF5          LL_DMAMUX_ClearFlag_RGO5
02213   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02214   * @retval None
02215   */
02216 __STATIC_INLINE void LL_DMAMUX_ClearFlag_RGO5(DMAMUX_Channel_TypeDef *DMAMUXx)
02217 {
02218   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02219 
02220   SET_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGCFR, DMAMUX_RGCFR_COF5);
02221 }
02222 
02223 /**
02224   * @brief  Clear Request Generator 6 Trigger Event Overrun Flag.
02225   * @rmtoll RGCFR        COF6          LL_DMAMUX_ClearFlag_RGO6
02226   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02227   * @retval None
02228   */
02229 __STATIC_INLINE void LL_DMAMUX_ClearFlag_RGO6(DMAMUX_Channel_TypeDef *DMAMUXx)
02230 {
02231   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02232 
02233   SET_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGCFR, DMAMUX_RGCFR_COF6);
02234 }
02235 
02236 /**
02237   * @brief  Clear Request Generator 7 Trigger Event Overrun Flag.
02238   * @rmtoll RGCFR        COF7          LL_DMAMUX_ClearFlag_RGO7
02239   * @param  DMAMUXx DMAMUXx DMAMUXx Instance
02240   * @retval None
02241   */
02242 __STATIC_INLINE void LL_DMAMUX_ClearFlag_RGO7(DMAMUX_Channel_TypeDef *DMAMUXx)
02243 {
02244   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02245 
02246   SET_BIT(((DMAMUX_RequestGenStatus_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_STATUS_OFFSET))->RGCFR, DMAMUX_RGCFR_COF7);
02247 }
02248 
02249 /**
02250   * @}
02251   */
02252 
02253 /** @defgroup DMAMUX_LL_EF_IT_Management IT_Management
02254   * @{
02255   */
02256 
02257 /**
02258   * @brief  Enable the Synchronization Event Overrun Interrupt on DMAMUX channel x.
02259   * @rmtoll CxCR         SOIE          LL_DMAMUX_EnableIT_SO
02260   * @param  DMAMUXx DMAMUXx Instance
02261   * @param  Channel This parameter can be one of the following values:
02262   *         @arg @ref LL_DMAMUX_CHANNEL_0
02263   *         @arg @ref LL_DMAMUX_CHANNEL_1
02264   *         @arg @ref LL_DMAMUX_CHANNEL_2
02265   *         @arg @ref LL_DMAMUX_CHANNEL_3
02266   *         @arg @ref LL_DMAMUX_CHANNEL_4
02267   *         @arg @ref LL_DMAMUX_CHANNEL_5
02268   *         @arg @ref LL_DMAMUX_CHANNEL_6
02269   *         @arg @ref LL_DMAMUX_CHANNEL_7
02270   *         @arg @ref LL_DMAMUX_CHANNEL_8
02271   *         @arg @ref LL_DMAMUX_CHANNEL_9
02272   *         @arg @ref LL_DMAMUX_CHANNEL_10
02273   *         @arg @ref LL_DMAMUX_CHANNEL_11
02274   *         @arg @ref LL_DMAMUX_CHANNEL_12
02275   *         @arg @ref LL_DMAMUX_CHANNEL_13
02276   *         @arg @ref LL_DMAMUX_CHANNEL_14
02277   *         @arg @ref LL_DMAMUX_CHANNEL_15
02278   * @retval None
02279   */
02280 __STATIC_INLINE void LL_DMAMUX_EnableIT_SO(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
02281 {
02282   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02283 
02284   SET_BIT(((DMAMUX_Channel_TypeDef *)((uint32_t)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel)))))->CCR, DMAMUX_CxCR_SOIE);
02285 }
02286 
02287 /**
02288   * @brief  Disable the Synchronization Event Overrun Interrupt on DMAMUX channel x.
02289   * @rmtoll CxCR         SOIE          LL_DMAMUX_DisableIT_SO
02290   * @param  DMAMUXx DMAMUXx Instance
02291   * @param  Channel This parameter can be one of the following values:
02292   *         @arg @ref LL_DMAMUX_CHANNEL_0
02293   *         @arg @ref LL_DMAMUX_CHANNEL_1
02294   *         @arg @ref LL_DMAMUX_CHANNEL_2
02295   *         @arg @ref LL_DMAMUX_CHANNEL_3
02296   *         @arg @ref LL_DMAMUX_CHANNEL_4
02297   *         @arg @ref LL_DMAMUX_CHANNEL_5
02298   *         @arg @ref LL_DMAMUX_CHANNEL_6
02299   *         @arg @ref LL_DMAMUX_CHANNEL_7
02300   *         @arg @ref LL_DMAMUX_CHANNEL_8
02301   *         @arg @ref LL_DMAMUX_CHANNEL_9
02302   *         @arg @ref LL_DMAMUX_CHANNEL_10
02303   *         @arg @ref LL_DMAMUX_CHANNEL_11
02304   *         @arg @ref LL_DMAMUX_CHANNEL_12
02305   *         @arg @ref LL_DMAMUX_CHANNEL_13
02306   *         @arg @ref LL_DMAMUX_CHANNEL_14
02307   *         @arg @ref LL_DMAMUX_CHANNEL_15
02308   * @retval None
02309   */
02310 __STATIC_INLINE void LL_DMAMUX_DisableIT_SO(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
02311 {
02312   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02313 
02314   CLEAR_BIT(((DMAMUX_Channel_TypeDef *)((uint32_t)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel)))))->CCR, DMAMUX_CxCR_SOIE);
02315 }
02316 
02317 /**
02318   * @brief  Check if the Synchronization Event Overrun Interrupt on DMAMUX channel x is enabled or disabled.
02319   * @rmtoll CxCR         SOIE          LL_DMAMUX_IsEnabledIT_SO
02320   * @param  DMAMUXx DMAMUXx Instance
02321   * @param  Channel This parameter can be one of the following values:
02322   *         @arg @ref LL_DMAMUX_CHANNEL_0
02323   *         @arg @ref LL_DMAMUX_CHANNEL_1
02324   *         @arg @ref LL_DMAMUX_CHANNEL_2
02325   *         @arg @ref LL_DMAMUX_CHANNEL_3
02326   *         @arg @ref LL_DMAMUX_CHANNEL_4
02327   *         @arg @ref LL_DMAMUX_CHANNEL_5
02328   *         @arg @ref LL_DMAMUX_CHANNEL_6
02329   *         @arg @ref LL_DMAMUX_CHANNEL_7
02330   *         @arg @ref LL_DMAMUX_CHANNEL_8
02331   *         @arg @ref LL_DMAMUX_CHANNEL_9
02332   *         @arg @ref LL_DMAMUX_CHANNEL_10
02333   *         @arg @ref LL_DMAMUX_CHANNEL_11
02334   *         @arg @ref LL_DMAMUX_CHANNEL_12
02335   *         @arg @ref LL_DMAMUX_CHANNEL_13
02336   *         @arg @ref LL_DMAMUX_CHANNEL_14
02337   *         @arg @ref LL_DMAMUX_CHANNEL_15
02338   * @retval State of bit (1 or 0).
02339   */
02340 __STATIC_INLINE uint32_t LL_DMAMUX_IsEnabledIT_SO(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t Channel)
02341 {
02342   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02343 
02344   return (READ_BIT(((DMAMUX_Channel_TypeDef *)(dmamux_base_addr + (DMAMUX_CCR_SIZE * (Channel))))->CCR, DMAMUX_CxCR_SOIE));
02345 }
02346 
02347 /**
02348   * @brief  Enable the Request Generation Trigger Event Overrun Interrupt on DMAMUX channel x.
02349   * @rmtoll RGxCR        OIE           LL_DMAMUX_EnableIT_RGO
02350   * @param  DMAMUXx DMAMUXx Instance
02351   * @param  RequestGenChannel This parameter can be one of the following values:
02352   *         @arg @ref LL_DMAMUX_REQ_GEN_0
02353   *         @arg @ref LL_DMAMUX_REQ_GEN_1
02354   *         @arg @ref LL_DMAMUX_REQ_GEN_2
02355   *         @arg @ref LL_DMAMUX_REQ_GEN_3
02356   *         @arg @ref LL_DMAMUX_REQ_GEN_4
02357   *         @arg @ref LL_DMAMUX_REQ_GEN_5
02358   *         @arg @ref LL_DMAMUX_REQ_GEN_6
02359   *         @arg @ref LL_DMAMUX_REQ_GEN_7
02360   * @retval None
02361   */
02362 __STATIC_INLINE void LL_DMAMUX_EnableIT_RGO(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel)
02363 {
02364   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02365 
02366   SET_BIT(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * RequestGenChannel)))->RGCR, DMAMUX_RGxCR_OIE);
02367 }
02368 
02369 /**
02370   * @brief  Disable the Request Generation Trigger Event Overrun Interrupt on DMAMUX channel x.
02371   * @rmtoll RGxCR        OIE           LL_DMAMUX_DisableIT_RGO
02372   * @param  DMAMUXx DMAMUXx Instance
02373   * @param  RequestGenChannel This parameter can be one of the following values:
02374   *         @arg @ref LL_DMAMUX_REQ_GEN_0
02375   *         @arg @ref LL_DMAMUX_REQ_GEN_1
02376   *         @arg @ref LL_DMAMUX_REQ_GEN_2
02377   *         @arg @ref LL_DMAMUX_REQ_GEN_3
02378   *         @arg @ref LL_DMAMUX_REQ_GEN_4
02379   *         @arg @ref LL_DMAMUX_REQ_GEN_5
02380   *         @arg @ref LL_DMAMUX_REQ_GEN_6
02381   *         @arg @ref LL_DMAMUX_REQ_GEN_7
02382   * @retval None
02383   */
02384 __STATIC_INLINE void LL_DMAMUX_DisableIT_RGO(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel)
02385 {
02386   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02387 
02388   CLEAR_BIT(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * RequestGenChannel)))->RGCR, DMAMUX_RGxCR_OIE);
02389 }
02390 
02391 /**
02392   * @brief  Check if the Request Generation Trigger Event Overrun Interrupt on DMAMUX channel x is enabled or disabled.
02393   * @rmtoll RGxCR        OIE           LL_DMAMUX_IsEnabledIT_RGO
02394   * @param  DMAMUXx DMAMUXx Instance
02395   * @param  RequestGenChannel This parameter can be one of the following values:
02396   *         @arg @ref LL_DMAMUX_REQ_GEN_0
02397   *         @arg @ref LL_DMAMUX_REQ_GEN_1
02398   *         @arg @ref LL_DMAMUX_REQ_GEN_2
02399   *         @arg @ref LL_DMAMUX_REQ_GEN_3
02400   *         @arg @ref LL_DMAMUX_REQ_GEN_4
02401   *         @arg @ref LL_DMAMUX_REQ_GEN_5
02402   *         @arg @ref LL_DMAMUX_REQ_GEN_6
02403   *         @arg @ref LL_DMAMUX_REQ_GEN_7
02404   * @retval State of bit (1 or 0).
02405   */
02406 __STATIC_INLINE uint32_t LL_DMAMUX_IsEnabledIT_RGO(DMAMUX_Channel_TypeDef *DMAMUXx, uint32_t RequestGenChannel)
02407 {
02408   uint32_t dmamux_base_addr = (uint32_t)DMAMUXx;
02409 
02410   return ((READ_BIT(((DMAMUX_RequestGen_TypeDef *)(dmamux_base_addr + DMAMUX_REQ_GEN_OFFSET + (DMAMUX_RGCR_SIZE * RequestGenChannel)))->RGCR, DMAMUX_RGxCR_OIE) == (DMAMUX_RGxCR_OIE)) ? 1UL : 0UL);
02411 }
02412 
02413 /**
02414   * @}
02415   */
02416 
02417 /**
02418   * @}
02419   */
02420 
02421 /**
02422   * @}
02423   */
02424 
02425 #endif /* DMAMUX1 || DMAMUX2 */
02426 
02427 /**
02428   * @}
02429   */
02430 
02431 #ifdef __cplusplus
02432 }
02433 #endif
02434 
02435 #endif /* __STM32H7xx_LL_DMAMUX_H */
02436