/* SPDX-License-Identifier: GPL-2.0+ */ /* * @Descripttion: Header file of AW87XXX_PID_5A_REG * @version: V1.4 * @Author: zhaozhongbo * @Date: 2021-03-10 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-10 */ #ifndef __AW87XXX_PID_5A_REG_H__ #define __AW87XXX_PID_5A_REG_H__ /* registers list */ #define AW87XXX_PID_5A_REG_ID_REG (0x00) #define AW87XXX_PID_5A_REG_SYSCTRL_REG (0x01) #define AW87XXX_PID_5A_REG_BATSAFE_REG (0x02) #define AW87XXX_PID_5A_REG_BSTOVR_REG (0x03) #define AW87XXX_PID_5A_REG_BSTCPR1_REG (0x04) #define AW87XXX_PID_5A_REG_BSTCPR2_REG (0x05) #define AW87XXX_PID_5A_REG_PAGR_REG (0x06) #define AW87XXX_PID_5A_REG_PAGC3OPR_REG (0x07) #define AW87XXX_PID_5A_REG_PAGC3PR_REG (0x08) #define AW87XXX_PID_5A_REG_PAGC2OPR_REG (0x09) #define AW87XXX_PID_5A_REG_PAGC2PR_REG (0x0A) #define AW87XXX_PID_5A_REG_PAGC1PR_REG (0x0B) #define AW87XXX_PID_5A_REG_ADP_MODE_REG (0x0C) #define AW87XXX_PID_5A_REG_ADPBST_TIME1_REG (0x0D) #define AW87XXX_PID_5A_REG_ADPBST_TIME2_REG (0x0E) #define AW87XXX_PID_5A_REG_ADPBST_VTH_REG (0x0F) #define AW87XXX_PID_5A_REG_BOOST_PAR_REG (0x10) #define AW87XXX_PID_5A_REG_BOOST_VOUT_DET_REG (0x57) #define AW87XXX_PID_5A_REG_SYSST_REG (0x58) #define AW87XXX_PID_5A_REG_SYSINT_REG (0x59) #define AW87XXX_PID_5A_REG_DFT1R_REG (0x60) #define AW87XXX_PID_5A_REG_DFT2R_REG (0x61) #define AW87XXX_PID_5A_REG_DFT3R_REG (0x62) #define AW87XXX_PID_5A_REG_DFT4R_REG (0x63) #define AW87XXX_PID_5A_REG_DFT5R_REG (0x64) #define AW87XXX_PID_5A_REG_DFT6R_REG (0x65) #define AW87XXX_PID_5A_REG_DFT7R_REG (0x66) #define AW87XXX_PID_5A_REG_DFT8R_REG (0x67) #define AW87XXX_PID_5A_REG_DFT9R_REG (0x68) #define AW87XXX_PID_5A_REG_DFTAR_REG (0x69) #define AW87XXX_PID_5A_REG_DFTBR_REG (0x70) #define AW87XXX_PID_5A_REG_DFTCR_REG (0x71) #define AW87XXX_PID_5A_REG_DFTDR_REG (0x72) #define AW87XXX_PID_5A_REG_DFTER_REG (0x73) #define AW87XXX_PID_5A_REG_DFTFR_REG (0x74) #define AW87XXX_PID_5A_REG_test1_REG (0x75) #define AW87XXX_PID_5A_REG_test2_REG (0x76) #define AW87XXX_PID_5A_REG_ENCR_REG (0x77) #define AW87XXX_PID_5A_DFT3R_DEFAULT (0x02) /******************************************** * soft control info * If you need to update this file, add this information manually *******************************************/ unsigned char aw87xxx_pid_5a_softrst_access[2] = {0x00, 0xaa}; /******************************************** * Register Access *******************************************/ #define AW87XXX_PID_5A_REG_MAX (0x78) #define REG_NONE_ACCESS (0) #define REG_RD_ACCESS (1 << 0) #define REG_WR_ACCESS (1 << 1) const unsigned char aw87xxx_pid_5a_reg_access[AW87XXX_PID_5A_REG_MAX] = { [AW87XXX_PID_5A_REG_ID_REG] = (REG_RD_ACCESS), [AW87XXX_PID_5A_REG_SYSCTRL_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_BATSAFE_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_BSTOVR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_BSTCPR1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_BSTCPR2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_PAGR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_PAGC3OPR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_PAGC3PR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_PAGC2OPR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_PAGC2PR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_PAGC1PR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_ADP_MODE_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_ADPBST_TIME1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_ADPBST_TIME2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_ADPBST_VTH_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_BOOST_PAR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_BOOST_VOUT_DET_REG] = (REG_RD_ACCESS), [AW87XXX_PID_5A_REG_SYSST_REG] = (REG_RD_ACCESS), [AW87XXX_PID_5A_REG_SYSINT_REG] = (REG_RD_ACCESS), [AW87XXX_PID_5A_REG_DFT1R_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFT2R_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFT3R_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFT4R_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFT5R_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFT6R_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFT7R_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFT8R_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFT9R_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFTAR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFTBR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFTCR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFTDR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFTER_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_DFTFR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_test1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_test2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_5A_REG_ENCR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), }; /* detail information of registers begin */ /* ID (0x00) detail */ /* IDCODE bit 7:0 (ID 0x00) */ #define AW87XXX_PID_5A_REG_IDCODE_START_BIT (0) #define AW87XXX_PID_5A_REG_IDCODE_BITS_LEN (8) #define AW87XXX_PID_5A_REG_IDCODE_MASK \ (~(((1<