/*************************************************************************** * * Copyright 2015-2019 BES. * All rights reserved. All unpublished rights reserved. * * No part of this work may be used or reproduced in any form or by any * means, or stored in a database or retrieval system, without prior written * permission of BES. * * Use of this work is governed by a license granted by BES. * This work contains confidential and proprietary information of * BES. which is protected by copyright, trade secret, * trademark and other intellectual property rights. * ****************************************************************************/ #ifndef __PMU_BEST2300P_H__ #define __PMU_BEST2300P_H__ #ifdef __cplusplus extern "C" { #endif #include "hal_cmu.h" enum PMU_EFUSE_PAGE_T { PMU_EFUSE_PAGE_SECURITY = 0, PMU_EFUSE_PAGE_BOOT = 1, PMU_EFUSE_PAGE_FEATURE = 2, PMU_EFUSE_PAGE_BATTER_LV = 3, PMU_EFUSE_PAGE_BATTER_HV = 4, PMU_EFUSE_PAGE_SW_CFG = 5, PMU_EFUSE_PAGE_PROD_TEST = 6, PMU_EFUSE_PAGE_RESERVED_7 = 7, PMU_EFUSE_PAGE_BT_POWER = 8, PMU_EFUSE_PAGE_DCCALIB2_L = 9, PMU_EFUSE_PAGE_DCCALIB2_R = 10, PMU_EFUSE_PAGE_DCCALIB_L = 11, PMU_EFUSE_PAGE_DCCALIB_R = 12, PMU_EFUSE_PAGE_RESERVED_13 = 13, PMU_EFUSE_PAGE_MODEL = 14, PMU_EFUSE_PAGE_RESERVED_15 = 15, PMU_EFUSE_PAGE_BOOT_SIG1 = 16, PMU_EFUSE_PAGE_BOOT_SIG2 = 17, PMU_EFUSE_PAGE_BOOT_SIG3 = 18, PMU_EFUSE_PAGE_RESERVED_19 = 19, PMU_EFUSE_PAGE_RESERVED_20 = 20, PMU_EFUSE_PAGE_RESERVED_21 = 21, PMU_EFUSE_PAGE_RESERVED_22 = 22, PMU_EFUSE_PAGE_RESERVED_23 = 23, }; enum PMU_IRQ_TYPE_T { PMU_IRQ_TYPE_PWRKEY, PMU_IRQ_TYPE_GPADC, PMU_IRQ_TYPE_RTC, PMU_IRQ_TYPE_CHARGER, PMU_IRQ_TYPE_QTY }; enum PMU_PLL_DIV_TYPE_T { PMU_PLL_DIV_DIG, PMU_PLL_DIV_CODEC, }; void pmu_codec_hppa_enable(int enable); void pmu_codec_mic_bias_enable(uint32_t map); void pmu_codec_mic_bias_lowpower_mode(uint32_t map); int pmu_codec_volt_ramp_up(void); int pmu_codec_volt_ramp_down(void); void pmu_codec_vad_save_power(void); void pmu_codec_vad_restore_power(void); void pmu_lbrt_config(int enable); void pmu_pll_div_reset_set(enum HAL_CMU_PLL_T pll); void pmu_pll_div_reset_clear(enum HAL_CMU_PLL_T pll); void pmu_pll_div_set(enum HAL_CMU_PLL_T pll, enum PMU_PLL_DIV_TYPE_T type, uint32_t div); void pmu_led_set_hiz(enum HAL_GPIO_PIN_T pin); #ifdef __cplusplus } #endif #endif