HwA_Flagchip_FC7240_V2/Inc/HwA_csc.h

1295 lines
25 KiB
C

/**
* @file HwA_csc.h
* @author flagchip
* @brief Hardware access layer for CSC
* @version 2.0.0
* @date 2024-08-20
*
* SDK Version: 2.6.0
*
* @copyright Copyright (c) 2020-2024 Flagchip Semiconductors Co., Ltd.
*
*/
/* ********************************************************************************
* Revision History:
*
* Version Date Initials CR# Descriptions
* --------- ---------- ------------ ---------- ---------------
* 0.1.0 2023-12-15 Flagchip055 N/A First version for FC7300
* 2.0.0 2024-10-12 Flagchip055 N/A Change version and release
******************************************************************************** */
#ifndef _HWA_CSC_H_
#define _HWA_CSC_H_
#include "device_header.h"
#if CSC0_INSTANCE_COUNT > 0U
/**
* @defgroup HwA_csc HwA_csc
* @ingroup module_driver_csc
* @{
*/
/********* Local typedef ************/
/**
* @brief CSC0 clock out divide ratio type
*
*/
typedef enum
{
CSC0_CLKOUT_DIV_BY1 = 0U, /*!< Divided by 1 */
CSC0_CLKOUT_DIV_BY2 = 1U, /*!< Divided by 2 */
CSC0_CLKOUT_DIV_BY3 = 2U, /*!< Divided by 3 */
CSC0_CLKOUT_DIV_BY4 = 3U, /*!< Divided by 4 */
CSC0_CLKOUT_DIV_BY5 = 4U, /*!< Divided by 5 */
CSC0_CLKOUT_DIV_BY6 = 5U, /*!< Divided by 6 */
CSC0_CLKOUT_DIV_BY7 = 6U, /*!< Divided by 7 */
CSC0_CLKOUT_DIV_BY8 = 7U /*!< Divided by 8 */
} CSC0_ClockOutDivType;
/**
* @brief CSC0 clock out source type
*
*/
typedef enum
{
CSC0_CLKOUT_SCG_CLKOUT = 0U, /*!< SCG CLKOUT */
CSC0_CLKOUT_FOSC_DIVM_CLK = 2U, /*!< FOSC DIVM CLK */
CSC0_CLKOUT_SLOW_CLK = 3U, /*!< SLOW CLK */
CSC0_CLKOUT_SIRC_DIVM_CLK = 4U, /*!< SIRC DIVM CLK */
CSC0_CLKOUT_PLL1_DIVM_CLK = 5U, /*!< PLL1 DIVM CLK */
CSC0_CLKOUT_FIRC_DIVM_CLK = 6U, /*!< FIRC DIVM CLK */
CSC0_CLKOUT_CORE_CLK = 7U, /*!< CORE CLK */
CSC0_CLKOUT_PLL0_DIVM_CLK = 8U, /*!< PLL0 DIVM CLK */
CSC0_CLKOUT_BUS_CLK = 9U, /*!< BUS CLK */
CSC0_CLKOUT_SIRC_128K_CLK = 10U, /*!< SIRC 128K CLK */
CSC0_CLKOUT_AON_CLK = 12U, /*!< AON CLK */
CSC0_CLKOUT_RTC_CLK = 14U /*!< AON32K CLK */
} CSC0_ClockOutSrcType;
/**
* @brief Data type for CSC0_AONCLKSR[32KAONCLKSEL], set AON32KCLK source clock
*
*/
typedef enum
{
CSC0_AON32K_SIRCDIV_32K_CLK = 1U, /*!< CSC0_AONCLKSR[32KAONCLKSEL], SIRCDIV_32K */
CSC0_AON32K_SOSC32K_CLK = 2U, /*!< CSC0_AONCLKSR[32KAONCLKSEL], SOSC32K */
CSC0_AON32K_SIRC32K_CLK = 3U /*!< CSC0_AONCLKSR[32KAONCLKSEL], SIRC32K */
} CSC0_AON32KClkSrcType;
/**
* @brief Data type for CSC0_RTCCLKSEL[RTCCLKSEL], set RTCCLK source clock
*
*/
typedef enum
{
CSC0_RTC_FOSCDIVL_CLK = 0U, /*!< CSC0_RTCCLKSEL[RTCCLKSEL], FOSC_DIVL */
CSC0_RTC_SIRCDIV_32K_CLK = 1U, /*!< CSC0_RTCCLKSEL[RTCCLKSEL], SIRC_DIV */
CSC0_RTC_SOSC_CLK = 2U, /*!< CSC0_RTCCLKSEL[RTCCLKSEL], SOSC */
CSC0_RTC_SIRC32K_CLK = 3U /*!< CSC0_RTCCLKSEL[RTCCLKSEL], SIRC_32K */
} CSC0_RTCClkSrcType;
/**
* @brief Data type for CSC0_AONCLKSEL[AONCLKSEL], set AONCLK source clock
*
*/
typedef enum
{
CSC0_AON_SIRCDIV_128K_CLK = 0U, /*!< CSC0_AONCLKSEL[AONCLKSEL], SIRCDIV_128K */
CSC0_AON_SIRC32K_CLK = 1U, /*!< CSC0_AONCLKSEL[AONCLKSEL], SIRC32K */
CSC0_AON_SIRCDIV_32K_CLK = 2U, /*!< CSC0_AONCLKSEL[AONCLKSEL], SIRCDIV_32K */
CSC0_AON_SIRC32_1K_CLK = 3U /*!< CSC0_AONCLKSEL[AONCLKSEL], SIRC32_1K */
} CSC0_AONClkSrcType;
#endif /* #if CSC0_INSTANCE_COUNT > 0U */
/********* Local inline function ************/
/****** Operation on CSC0_xxxRegister0 ******/
#if CSC0_INSTANCE_COUNT > 0U
/**
* @brief Set stop mode register 0
*
*/
LOCAL_INLINE void CSC0_HWA_Set_STOP_MODER0(uint32_t u32val)
{
CSC0->STOP_MODER0 = u32val;
}
/**
* @brief Get stop mode register 0
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_STOP_MODER0(void)
{
return CSC0->STOP_MODER0;
}
/**
* @brief Set stop request register 0
*
*/
LOCAL_INLINE void CSC0_HWA_Set_STOP_REQR0(uint32_t u32val)
{
CSC0->STOP_REQR0 = u32val;
}
/**
* @brief Get stop request register 0
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_STOP_REQR0(void)
{
return CSC0->STOP_REQR0;
}
/**
* @brief Get stop ack status in register 0
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_STOP_ACKR0(void)
{
return CSC0->STOP_ACKR0;
}
/****** Operation on CSC0_xxxRegister1 ******/
/**
* @brief Set stop mode register 1
*
*/
LOCAL_INLINE void CSC0_HWA_Set_STOP_MODER1(uint32_t u32val)
{
CSC0->STOP_MODER1 = u32val;
}
/**
* @brief Get stop mode register 1
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_STOP_MODER1(void)
{
return CSC0->STOP_MODER1;
}
/**
* @brief Set stop request register 1
*
*/
LOCAL_INLINE void CSC0_HWA_Set_STOP_REQR1(uint32_t u32val)
{
CSC0->STOP_REQR1 = u32val;
}
/**
* @brief Get stop request register 1
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_STOP_REQR1(void)
{
return CSC0->STOP_REQR1;
}
/**
* @brief Get stop ack status in register 1
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_STOP_ACKR1(void)
{
return CSC0->STOP_ACKR1;
}
/****** Operation on CSC0_xxxRegister2 ******/
/**
* @brief Set stop mode register 2
*
*/
LOCAL_INLINE void CSC0_HWA_Set_STOP_MODER2(uint32_t u32val)
{
CSC0->STOP_MODER2 = u32val;
}
/**
* @brief Get stop mode register 2
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_STOP_MODER2(void)
{
return CSC0->STOP_MODER2;
}
/**
* @brief Set stop request register 2
*
*/
LOCAL_INLINE void CSC0_HWA_Set_STOP_REQR2(uint32_t u32val)
{
CSC0->STOP_REQR2 = u32val;
}
/**
* @brief Get stop request register 2
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_STOP_REQR2(void)
{
return CSC0->STOP_REQR2;
}
/**
* @brief Get stop ack status in register 2
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_STOP_ACKR2(void)
{
return CSC0->STOP_ACKR2;
}
/**
* @brief Set CCM0 configure register
*
*/
LOCAL_INLINE void CSC0_HWA_Set_CCM0_CFG(uint32_t u32val)
{
CSC0->CCM0_CFG = u32val;
}
/**
* @brief Get CCM0 configure
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_CCM0_CFG(void)
{
return CSC0->CCM0_CFG;
}
/**
* @brief Set SCG MAM stall request register
*
*/
LOCAL_INLINE void CSC0_HWA_Set_SCG_MAM_STALL(uint32_t u32val)
{
CSC0->SCG_MAM_STALL = u32val;
}
/**
* @brief Get SCG MAM stall request register
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_SCG_MAM_STALL(void)
{
return CSC0->SCG_MAM_STALL;
}
/**
* @brief Set cpu0 software interrupt register
*
*/
LOCAL_INLINE void CSC0_HWA_Set_CPU0_INT(uint32_t u32val)
{
CSC0->CPU0_INT = u32val;
}
/**
* @brief Get cpu0 software interrupt register
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_CPU0_INT(void)
{
return CSC0->CPU0_INT;
}
/**
* @brief Enable cpu0 software interrupt
*
*/
LOCAL_INLINE void CSC0_HWA_EnableCpu0SWInterrupt(void)
{
CSC0->CPU0_INT |= (uint32_t)CSC0_CPU0_INT_SW_INT_MASK;
}
/**
* @brief Disable cpu0 software interrupt
*
*/
LOCAL_INLINE void CSC0_HWA_DisableCpu0SWInterrupt(void)
{
CSC0->CPU0_INT &= ~(uint32_t)CSC0_CPU0_INT_SW_INT_MASK;
}
#if CSC0_CLOCKCONFIG_SUPPORT
/**
* @brief Set clock out control register
*
*/
LOCAL_INLINE void CSC0_HWA_Set_CLKOUT_CTRL(uint32_t u32val)
{
CSC0->CLKOUT_CTRL = u32val;
}
/**
* @brief Get clock out control register
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_CLKOUT_CTRL(void)
{
return CSC0->CLKOUT_CTRL;
}
/**
* @brief Enable CSC0 clock out
*
*/
LOCAL_INLINE void CSC0_HWA_EnableClockOut(void)
{
CSC0->CLKOUT_CTRL |= (uint32_t)CSC0_CLKOUT_CTRL_CLKOUT_EN_MASK;
}
/**
* @brief Disable CSC0 clock out
*
*/
LOCAL_INLINE void CSC0_HWA_DisableClockOut(void)
{
CSC0->CLKOUT_CTRL &= ~(uint32_t)CSC0_CLKOUT_CTRL_CLKOUT_EN_MASK;
}
/**
* @brief Get CLKOUT source Select
*
* @return CSC0_ClockOutSrcType CSC0 clock out source
*/
LOCAL_INLINE CSC0_ClockOutSrcType CSC0_HWA_GetClkOutSel(void)
{
uint32_t u32RegVal = (CSC0->CLKOUT_CTRL & CSC0_CLKOUT_CTRL_CLKOUT_SEL_MASK) >> CSC0_CLKOUT_CTRL_CLKOUT_SEL_SHIFT;
return (CSC0_ClockOutSrcType)u32RegVal;
}
/**
* @brief Get CLKOUT CSC0 clock out divider
*
* @return CSC0_ClockOutDivType CSC0 clock out divider
*/
LOCAL_INLINE CSC0_ClockOutDivType CSC0_HWA_GetClkOutDiv(void)
{
uint32_t u32RegVal = (CSC0->CLKOUT_CTRL & CSC0_CLKOUT_CTRL_CLKOUT_DIV_MASK) >> CSC0_CLKOUT_CTRL_CLKOUT_DIV_SHIFT;
return (CSC0_ClockOutDivType)u32RegVal;
}
/**
* @brief Set CLKOUTDIV
*
* @param eDivType CSC0 clock out devide ratio type
*/
LOCAL_INLINE void CSC0_HWA_SetClkOutDiv(CSC0_ClockOutDivType eDivType)
{
uint32_t u32RegVal = CSC0->CLKOUT_CTRL;
CSC0->CLKOUT_CTRL = ((u32RegVal & (~(uint32_t)CSC0_CLKOUT_CTRL_CLKOUT_DIV_MASK)) | CSC0_CLKOUT_CTRL_CLKOUT_DIV(eDivType));
}
/**
* @brief Set CLKOUT Select
*
* @param eClkSrcType CSC0 clock out devide ratio type
*/
LOCAL_INLINE void CSC0_HWA_SetClkOutSel(CSC0_ClockOutSrcType eClkSrcType)
{
uint32_t u32RegVal = CSC0->CLKOUT_CTRL;
CSC0->CLKOUT_CTRL = ((u32RegVal & (~(uint32_t)CSC0_CLKOUT_CTRL_CLKOUT_SEL_MASK)) | CSC0_CLKOUT_CTRL_CLKOUT_SEL(eClkSrcType));
}
/**
* @brief Lock CSC0_CLKOUT_CTRL register
*
*/
LOCAL_INLINE void CSC0_HWA_LockCLKOUT_CTRL(void)
{
CSC0->CLKOUT_CTRL |= (uint32_t)CSC0_CLKOUT_CTRL_LOCK_MASK;
}
/**
* @brief Unlock CSC0_CLKOUT_CTRL register
*
*/
LOCAL_INLINE void CSC0_HWA_UnlockCLKOUT_CTRL(void)
{
CSC0->CLKOUT_CTRL &= ~(uint32_t)CSC0_CLKOUT_CTRL_LOCK_MASK;
}
/**
* @brief Get CSC0_CLKOUT_CTRL register lock status
*
* @return Lock status
*/
LOCAL_INLINE uint32_t CSC0_HWA_CLKOUT_CTRL_GetLockStatus(void)
{
return (CSC0->CLKOUT_CTRL & (uint32_t)CSC0_CLKOUT_CTRL_LOCK_MASK);
}
/**
* @brief Set AONCLKSR register
*
*/
LOCAL_INLINE void CSC0_HWA_Set_AONCLKSR(uint32_t u32val)
{
CSC0->AONCLKSR = u32val;
}
/**
* @brief Get AONCLKSR register status
*
* @return AONCLKSR register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_AONCLKSR(void)
{
return CSC0->AONCLKSR;
}
/**
* @brief Set CSC0_AON32KCLK source clock
*
* @param CSC0_AON32KClkSrcType CSC0_AON32KCLK source type
*/
LOCAL_INLINE void CSC0_HWA_SetAON32kClkSrc(CSC0_AON32KClkSrcType eClkSrcType)
{
uint32_t u32RegVal = CSC0->AONCLKSR;
CSC0->AONCLKSR = ((u32RegVal & (~(uint32_t)CSC0_AONCLKSR_AON32KCLKSEL_MASK)) | CSC0_AONCLKSR_AON32KCLKSEL(eClkSrcType));
}
/**
* @brief Set CSC0_RTCCLK source clock
*
* @param CSC0_RTCClkSrcType CSC0_RTCCLK source type
*/
LOCAL_INLINE void CSC0_HWA_SetRTCClkSrc(CSC0_RTCClkSrcType eClkSrcType)
{
uint32_t u32RegVal = CSC0->AONCLKSR;
CSC0->AONCLKSR = ((u32RegVal & (~(uint32_t)CSC0_AONCLKSR_RTCCLKSEL_MASK)) | CSC0_AONCLKSR_RTCCLKSEL(eClkSrcType));
}
/**
* @brief Set CSC0_AONCLK source clock
*
* @param CSC0_AONClkSrcType CSC0_AONCLK source type
*/
LOCAL_INLINE void CSC0_HWA_SetAONClkSrc(CSC0_AONClkSrcType eClkSrcType)
{
uint32_t u32RegVal = CSC0->AONCLKSR;
CSC0->AONCLKSR = ((u32RegVal & (~(uint32_t)CSC0_AONCLKSR_AONCLKSEL_MASK)) | CSC0_AONCLKSR_AONCLKSEL(eClkSrcType));
}
/**
* @brief Enable CSC0_SIRCDIV32K clock out
*
*/
LOCAL_INLINE void CSC0_HWA_EnableSIRCDIV_32KClkOut(void)
{
CSC0->AONCLKSR |= (uint32_t)CSC0_AONCLKSR_SIRCDIV32KEN_MASK;
}
/**
* @brief Disable CSC0_SIRCDIV32K clock out
*
*/
LOCAL_INLINE void CSC0_HWA_DisableSIRCDIV_32KClkOut(void)
{
CSC0->AONCLKSR &= ~(uint32_t)CSC0_AONCLKSR_SIRCDIV32KEN_MASK;
}
/**
* @brief Enable CSC0_SIRC32_1K clock out
*
*/
LOCAL_INLINE void CSC0_HWA_EnableSIRC32_1KClkOut(void)
{
CSC0->AONCLKSR |= (uint32_t)CSC0_AONCLKSR_AON1KCLKEN_MASK;
}
/**
* @brief Disable CSC0_SIRC32_1K clock out
*
*/
LOCAL_INLINE void CSC0_HWA_DisableSIRC32_1KClkOut(void)
{
CSC0->AONCLKSR &= ~(uint32_t)CSC0_AONCLKSR_AON1KCLKEN_MASK;
}
/**
* @brief Lock CSC0_AONCLKSR register
*
*/
LOCAL_INLINE void CSC0_HWA_LockAONCLKSR(void)
{
CSC0->AONCLKSR |= (uint32_t)CSC0_AONCLKSR_LOCK_MASK;
}
/**
* @brief Unlock CSC0_AONCLKSR register
*
*/
LOCAL_INLINE void CSC0_HWA_UnlockAONCLKSR(void)
{
CSC0->AONCLKSR &= ~(uint32_t)CSC0_AONCLKSR_LOCK_MASK;
}
/**
* @brief Get CSC0_AONCLKSR register status
*
* @return Lock status
*/
LOCAL_INLINE uint32_t CSC0_HWA_AONCLKSR_GetLockStaus(void)
{
return (CSC0->AONCLKSR & (uint32_t)CSC0_AONCLKSR_LOCK_MASK);
}
/**
* @brief Set PCU control register
*
*/
LOCAL_INLINE void CSC0_HWA_Set_PCU_CTRL(uint32_t u32val)
{
CSC0->PCU_CTRL = u32val;
}
/**
* @brief Get PCU control register
* @return Register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_PCU_CTRL(void)
{
return CSC0->PCU_CTRL;
}
/**
* @brief Get count of reduce power mode exit
*
* @return count be got
*/
LOCAL_INLINE uint8_t CSC0_HWA_GetRpmExitCount(void)
{
return (uint8_t)((CSC0->PCU_CTRL & (uint32_t)CSC0_PCU_CTRL_RPM_EXIT_CNT_MASK)>>CSC0_PCU_CTRL_RPM_EXIT_CNT_SHIFT);
}
/**
* @brief Set CSC_CMU control group register
*
* @param u32Value Value to be set
*/
LOCAL_INLINE void CSC0_HWA_Set_CMU_CTRL(uint32_t u32Value)
{
CSC0->CMU_CTRL = u32Value;
}
/**
* @brief Get CSC_CMU control group register status
*
* @return register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_CMU_CTRL(void)
{
return CSC0->CMU_CTRL;
}
#endif
/**
* @brief Set multi CSC_SMU control group 0
*
* @param u32Value Value to be set
*/
LOCAL_INLINE void CSC0_HWA_Set_SMU_CTRL0(uint32_t u32Value)
{
CSC0->SMU_CTRL0 = u32Value;
}
/**
* @brief Get CSC0_SMU_CTRL0 register status
*
* @return register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_SMU_CTRL0(void)
{
return CSC0->SMU_CTRL0;
}
/**
* @brief Set multi CSC_SMU control group 1
*
* @param u32Value Value to be set
*/
LOCAL_INLINE void CSC0_HWA_Set_SMU_CTRL1(uint32_t u32Value)
{
CSC0->SMU_CTRL1 = u32Value;
}
/**
* @brief Get CSC0_SMU_CTRL1 register status
*
* @return register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_SMU_CTRL1(void)
{
return CSC0->SMU_CTRL1;
}
/**
* @brief Set multi CSC_SMU control group 4
*
* @param u32Value Value to be set
*/
LOCAL_INLINE void CSC0_HWA_Set_SMU_CTRL4(uint32_t u32Value)
{
CSC0->SMU_CTRL4 = u32Value;
}
/**
* @brief Get CSC0_SMU_CTRL4 register status
*
* @return register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_SMU_CTRL4(void)
{
return CSC0->SMU_CTRL4;
}
#if CSC0_SMU_CTRL5_SUPPORT
/**
* @brief Set multi CSC_SMU control group 5
*
* @param u32Value Value to be set
*/
LOCAL_INLINE void CSC0_HWA_Set_SMU_CTRL5(uint32_t u32Value)
{
CSC0->SMU_CTRL5 = u32Value;
}
/**
* @brief Get CSC0_SMU_CTRL5 register status
*
* @return register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_SMU_CTRL5(void)
{
return CSC0->SMU_CTRL5;
}
#endif /* CSC0_SMU_CTRL5_SUPPORT */
#if CSC0_LP_WAKEUP_SUPPORT
/**
* @brief Set LP_WAKEUP register
*
* @param u32Value Value to be set
*/
LOCAL_INLINE void CSC0_HWA_Set_LP_WAKEUP(uint32_t u32Value)
{
CSC0->LP_WAKEUP = u32Value;
}
/**
* @brief Get LP_WAKEUP register status
*
* @return register status
*/
LOCAL_INLINE uint32_t CSC0_HWA_Get_LP_WAKEUP(void)
{
return CSC0->LP_WAKEUP;
}
#endif /* CSC0_LP_WAKEUP_SUPPORT */
#endif /* CSC0_INSTANCE_COUNT > 0U */
#if CSC1_INSTANCE_COUNT > 0U
/****** Operation on CSC1_xxxRegister0 ******/
/** @brief Set stop mode register 0
*
*/
LOCAL_INLINE void CSC1_HWA_Set_STOP_MODER0(uint32_t u32val)
{
CSC1->STOP_MODER0 = u32val;
}
/**
* @brief Get stop mode register 0
* @return Register status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_STOP_MODER0(void)
{
return CSC1->STOP_MODER0;
}
/**
* @brief Set stop request register 0
*
*/
LOCAL_INLINE void CSC1_HWA_Set_STOP_REQR0(uint32_t u32val)
{
CSC1->STOP_REQR0 = u32val;
}
/**
* @brief Get stop request register 0
* @return Register status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_STOP_REQR0(void)
{
return CSC1->STOP_REQR0;
}
/**
* @brief Get stop ack status in register 0
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_STOP_ACKR0(void)
{
return CSC1->STOP_ACKR0;
}
/****** Operation on CSC1_xxxRegister1 ******/
/**
* @brief Set stop mode register 1
*
*/
LOCAL_INLINE void CSC1_HWA_Set_STOP_MODER1(uint32_t u32val)
{
CSC1->STOP_MODER1 = u32val;
}
/**
* @brief Get stop mode register 1
* @return Register status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_STOP_MODER1(void)
{
return CSC1->STOP_MODER1;
}
/**
* @brief Set stop request register 1
*
*/
LOCAL_INLINE void CSC1_HWA_Set_STOP_REQR1(uint32_t u32val)
{
CSC1->STOP_REQR1 = u32val;
}
/**
* @brief Get stop request register 1
* @return Register status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_STOP_REQR1(void)
{
return CSC1->STOP_REQR1;
}
/**
* @brief Get stop ack status in register 1
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_STOP_ACKR1(void)
{
return CSC1->STOP_ACKR1;
}
/****** Operation on CSC1_xxxRegister2 ******/
/**
* @brief Set stop mode register 2
*
*/
LOCAL_INLINE void CSC1_HWA_Set_STOP_MODER2(uint32_t u32val)
{
CSC1->STOP_MODER2 = u32val;
}
/**
* @brief Get stop mode register 2
* @return Register status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_STOP_MODER2(void)
{
return CSC1->STOP_MODER2;
}
/**
* @brief Set stop request register 2
*
*/
LOCAL_INLINE void CSC1_HWA_Set_STOP_REQR2(uint32_t u32val)
{
CSC1->STOP_REQR2 = u32val;
}
/**
* @brief Get stop request register 2
* @return Register status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_STOP_REQR2(void)
{
return CSC1->STOP_REQR2;
}
/**
* @brief Get stop ack status in register 2
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_STOP_ACKR2(void)
{
return CSC1->STOP_ACKR2;
}
/**
* @brief Set CCM0 configure register
*
*/
LOCAL_INLINE void CSC1_HWA_Set_CCM1_CFG(uint32_t u32val)
{
CSC1->CCM1_CFG = u32val;
}
/**
* @brief Get CCM0 configure
* @return Register status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_CCM1_CFG(void)
{
return CSC1->CCM1_CFG;
}
/**
* @brief Set cpu0 software interrupt register
*
*/
LOCAL_INLINE void CSC1_HWA_Set_CPU1_INT(uint32_t u32val)
{
CSC1->CPU1_INT = u32val;
}
/**
* @brief Get cpu1 software interrupt register
* @return Register status
*/
LOCAL_INLINE uint32_t CSC1_HWA_Get_CPU1_INT(void)
{
return CSC1->CPU1_INT;
}
/**
* @brief Enable cpu1 software interrupt
*
*/
LOCAL_INLINE void CSC1_HWA_EnableCpu1SWInterrupt(void)
{
CSC1->CPU1_INT |= (uint32_t)CSC1_CPU1_INT_SW_INT_MASK;
}
/**
* @brief Disable cpu1 software interrupt
*
*/
LOCAL_INLINE void CSC1_HWA_DisableCpu1SWInterrupt(void)
{
CSC1->CPU1_INT &= ~(uint32_t)CSC1_CPU1_INT_SW_INT_MASK;
}
#endif /* CSC1_INSTANCE_COUNT > 0U */
#if CSC2_INSTANCE_COUNT > 0U
/****** Operation on CSC2_xxxRegister0 ******/
/** @brief Set stop mode register 0
*
*/
LOCAL_INLINE void CSC2_HWA_Set_STOP_MODER0(uint32_t u32val)
{
CSC2->STOP_MODER0 = u32val;
}
/**
* @brief Get stop mode register 0
* @return Register status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_STOP_MODER0(void)
{
return CSC2->STOP_MODER0;
}
/**
* @brief Set stop request register 0
*
*/
LOCAL_INLINE void CSC2_HWA_Set_STOP_REQR0(uint32_t u32val)
{
CSC2->STOP_REQR0 = u32val;
}
/**
* @brief Get stop request register 0
* @return Register status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_STOP_REQR0(void)
{
return CSC2->STOP_REQR0;
}
/**
* @brief Get stop ack status in register 0
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_STOP_ACKR0(void)
{
return CSC2->STOP_ACKR0;
}
/****** Operation on CSC2_xxxRegister1 ******/
/**
* @brief Set stop mode register 1
*
*/
LOCAL_INLINE void CSC2_HWA_Set_STOP_MODER1(uint32_t u32val)
{
CSC2->STOP_MODER1 = u32val;
}
/**
* @brief Get stop mode register 1
* @return Register status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_STOP_MODER1(void)
{
return CSC2->STOP_MODER1;
}
/**
* @brief Set stop request register 1
*
*/
LOCAL_INLINE void CSC2_HWA_Set_STOP_REQR1(uint32_t u32val)
{
CSC2->STOP_REQR1 = u32val;
}
/**
* @brief Get stop request register 1
* @return Register status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_STOP_REQR1(void)
{
return CSC2->STOP_REQR1;
}
/**
* @brief Get stop ack status in register 1
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_STOP_ACKR1(void)
{
return CSC2->STOP_ACKR1;
}
/****** Operation on CSC2_xxxRegister2 ******/
/**
* @brief Set stop mode register 2
*
*/
LOCAL_INLINE void CSC2_HWA_Set_STOP_MODER2(uint32_t u32val)
{
CSC2->STOP_MODER2 = u32val;
}
/**
* @brief Get stop mode register 2
* @return Register status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_STOP_MODER2(void)
{
return CSC2->STOP_MODER2;
}
/**
* @brief Set stop request register 2
*
*/
LOCAL_INLINE void CSC2_HWA_Set_STOP_REQR2(uint32_t u32val)
{
CSC2->STOP_REQR2 = u32val;
}
/**
* @brief Get stop request register 2
* @return Register status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_STOP_REQR2(void)
{
return CSC2->STOP_REQR2;
}
/**
* @brief Get stop ack status in register 2
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_STOP_ACKR2(void)
{
return CSC2->STOP_ACKR2;
}
/**
* @brief Set CCM0 configure register
*
*/
LOCAL_INLINE void CSC2_HWA_Set_CCM2_CFG(uint32_t u32val)
{
CSC2->CCM2_CFG = u32val;
}
/**
* @brief Get CCM0 configure
* @return Register status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_CCM2_CFG(void)
{
return CSC2->CCM2_CFG;
}
/**
* @brief Set cpu0 software interrupt register
*
*/
LOCAL_INLINE void CSC2_HWA_Set_CPU2_INT(uint32_t u32val)
{
CSC2->CPU2_INT = u32val;
}
/**
* @brief Get cpu0 software interrupt register
* @return Register status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_CPU2_INT(void)
{
return CSC2->CPU2_INT;
}
/**
* @brief Enable cpu0 software interrupt
*
*/
LOCAL_INLINE void CSC2_HWA_EnableCpu2SWInterrupt(void)
{
CSC2->CPU2_INT |= (uint32_t)CSC2_CPU2_INT_SW_INT_MASK;
}
/**
* @brief Disable cpu0 software interrupt
*
*/
LOCAL_INLINE void CSC2_HWA_DisableCpu2SWInterrupt(void)
{
CSC2->CPU2_INT &= ~(uint32_t)CSC2_CPU2_INT_SW_INT_MASK;
}
#endif /* CSC2_INSTANCE_COUNT > 0U */
/** @}*/
#if CSC3_INSTANCE_COUNT > 0U
/****** Operation on CSC3_xxxRegister0 ******/
/**
* @brief Set stop mode register 0
*
*/
LOCAL_INLINE void CSC3_HWA_Set_STOP_MODER0(uint32_t u32val)
{
CSC3->STOP_MODER0 = u32val;
}
/**
* @brief Get stop mode register 0
* @return Register status
*/
LOCAL_INLINE uint32_t CSC3_HWA_Get_STOP_MODER0(void)
{
return CSC2->STOP_MODER0;
}
/**
* @brief Set stop request register 0
*
*/
LOCAL_INLINE void CSC3_HWA_Set_STOP_REQR0(uint32_t u32val)
{
CSC3->STOP_REQR0 = u32val;
}
/**
* @brief Get stop request register 0
* @return Register status
*/
LOCAL_INLINE uint32_t CSC3_HWA_Get_STOP_REQR0(void)
{
return CSC3->STOP_REQR0;
}
/**
* @brief Get stop ack status in register 0
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC3_HWA_Get_STOP_ACKR0(void)
{
return CSC3->STOP_ACKR0;
}
/**
* @brief Set stop mode register 1
*
*/
LOCAL_INLINE void CSC3_HWA_Set_STOP_MODER1(uint32_t u32val)
{
CSC3->STOP_MODER1 = u32val;
}
/**
* @brief Get stop mode register 1
* @return Register status
*/
LOCAL_INLINE uint32_t CSC3_HWA_Get_STOP_MODER1(void)
{
return CSC3->STOP_MODER1;
}
/**
* @brief Set stop request register 1
*
*/
LOCAL_INLINE void CSC3_HWA_Set_STOP_REQR1(uint32_t u32val)
{
CSC3->STOP_REQR1 = u32val;
}
/**
* @brief Get stop request register 1
* @return Register status
*/
LOCAL_INLINE uint32_t CSC3_HWA_Get_STOP_REQR1(void)
{
return CSC3->STOP_REQR1;
}
/**
* @brief Get stop ack status in register 1
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC3_HWA_Get_STOP_ACKR1(void)
{
return CSC3->STOP_ACKR1;
}
/**
* @brief Set stop mode register 2
*
*/
LOCAL_INLINE void CSC3_HWA_Set_STOP_MODER2(uint32_t u32val)
{
CSC3->STOP_MODER2 = u32val;
}
/**
* @brief Get stop mode register 2
* @return Register status
*/
LOCAL_INLINE uint32_t CSC3_HWA_Get_STOP_MODER2(void)
{
return CSC2->STOP_MODER2;
}
/**
* @brief Set stop request register 2
*
*/
LOCAL_INLINE void CSC3_HWA_Set_STOP_REQR2(uint32_t u32val)
{
CSC3->STOP_REQR2 = u32val;
}
/**
* @brief Get stop request register 2
* @return Register status
*/
LOCAL_INLINE uint32_t CSC3_HWA_Get_STOP_REQR2(void)
{
return CSC3->STOP_REQR2;
}
/**
* @brief Get stop ack status in register 2
*
* @return Register ack status
*/
LOCAL_INLINE uint32_t CSC3_HWA_Get_STOP_ACKR2(void)
{
return CSC3->STOP_ACKR2;
}
/**
* @brief Set CCM3 configure register
*
*/
LOCAL_INLINE void CSC3_HWA_Set_CCM3_CFG(uint32_t u32val)
{
CSC3->CCM3_CFG = u32val;
}
/**
* @brief Get CCM3 configure
* @return Register status
*/
LOCAL_INLINE uint32_t CSC3_HWA_Get_CCM3_CFG(void)
{
return CSC3->CCM3_CFG;
}
/**
* @brief Set cpu0 software interrupt register
*
*/
LOCAL_INLINE void CSC2_HWA_Set_CPU3_INT(uint32_t u32val)
{
CSC3->CPU3_INT = u32val;
}
/**
* @brief Get cpu0 software interrupt register
* @return Register status
*/
LOCAL_INLINE uint32_t CSC2_HWA_Get_CPU3_INT(void)
{
return CSC3->CPU3_INT;
}
/**
* @brief Enable cpu0 software interrupt
*
*/
LOCAL_INLINE void CSC2_HWA_EnableCpu3SWInterrupt(void)
{
CSC3->CPU3_INT |= (uint32_t)CSC3_CPU3_INT_SW_INT_MASK;
}
/**
* @brief Disable cpu0 software interrupt
*
*/
LOCAL_INLINE void CSC2_HWA_DisableCpu3SWInterrupt(void)
{
CSC3->CPU3_INT &= ~(uint32_t)CSC3_CPU3_INT_SW_INT_MASK;
}
#endif
#endif /*#ifndef _HWA_CSC_H_*/