/** * @file wm_cpu.h * * @brief cpu driver module * * @author dave * * @copyright (c) 2014 Winner Microelectronics Co., Ltd. */ #ifndef WM_CPU_H #define WM_CPU_H #ifdef __cplusplus extern "C" { #endif /** cpu clock: 80Mhz */ #define CPU_CLK_80M 0 /** cpu clock: 40Mhz */ #define CPU_CLK_40M 1 #define CPU_CLK_16M 2 #define W600_PLL_CLK_MHZ 160 #define UNIT_MHZ (1000000) typedef struct{ u32 apbclk; u32 cpuclk; u32 wlanclk; }tls_sys_clk; /** * @defgroup Driver_APIs Driver APIs * @brief Driver APIs */ /** * @addtogroup Driver_APIs * @{ */ /** * @defgroup CPU_CLOCK_Driver_APIs CPU_CLOCK Driver APIs * @brief CPU_CLOCK driver APIs */ /** * @addtogroup CPU_CLOCK_Driver_APIs * @{ */ /** * @brief This function is used to set cpu clock * * @param[in] clk select cpu clock clk == CPU_CLK_80M 80M clk == CPU_CLK_40M 40M * * @return None * * @note None */ void tls_sys_clk_set(u32 clk); /** * @brief This function is used to get cpu clock * * @param[out] *sysclk point to the addr for system clk output * * @return None * * @note None */ void tls_sys_clk_get(tls_sys_clk *sysclk); /** * @} */ /** * @} */ #ifdef __cplusplus } #endif #endif /* end of WM_CPU_H */ /*** (C) COPYRIGHT 2014 Winner Microelectronics Co., Ltd. ***/