/* SPDX-License-Identifier: GPL-2.0 * aw87xxx_pid_60_reg.h * * Copyright (c) 2021 AWINIC Technology CO., LTD * * Author: Barry * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. */ #ifndef __AW87XXX_PID_60_REG_H__ #define __AW87XXX_PID_60_REG_H__ /* registers list */ #define AW87XXX_PID_60_ID_REG (0x00) #define AW87XXX_PID_60_SYSCTRL_REG (0x01) #define AW87XXX_PID_60_BSTOVR_REG (0x02) #define AW87XXX_PID_60_PEAKLIMIT_REG (0x03) #define AW87XXX_PID_60_ADPSET_REG (0x04) #define AW87XXX_PID_60_PAG_REG (0x05) #define AW87XXX_PID_60_AGC1PA_REG (0x06) #define AW87XXX_PID_60_AGC2PA_REG (0x07) #define AW87XXX_PID_60_AGC3PA_REG (0x08) #define AW87XXX_PID_60_AGC3P_REG (0x09) #define AW87XXX_PID_60_LOW_BAT_REG (0x0A) #define AW87XXX_PID_60_BSTOUT_REG (0x0B) #define AW87XXX_PID_60_SYSST_REG (0x59) #define AW87XXX_PID_60_SYSINT_REG (0x60) #define AW87XXX_PID_60_BURST_CON_REG (0x61) #define AW87XXX_PID_60_BST_BIAS_REG (0x62) #define AW87XXX_PID_60_BST_EA_REG (0x63) #define AW87XXX_PID_60_BST_DE_SOFT_REG (0x64) #define AW87XXX_PID_60_BST_BURST_KICK_REG (0x65) #define AW87XXX_PID_60_BST_CON1_REG (0x66) #define AW87XXX_PID_60_BST_OVP_REG (0x67) #define AW87XXX_PID_60_LINE_MODE_REG (0x68) #define AW87XXX_PID_60_BST_ISEN_REG (0x69) #define AW87XXX_PID_60_BST_PEAK_REG (0x6A) #define AW87XXX_PID_60_BST_PEAK2_REG (0x6B) #define AW87XXX_PID_60_OFFTIME_REG (0x6C) #define AW87XXX_PID_60_ADPBST_REG (0x6D) #define AW87XXX_PID_60_OTA_REG (0x6E) #define AW87XXX_PID_60_RAMPGEN_REG (0x6F) #define AW87XXX_PID_60_CLASSD_SYSCTRL_REG (0x70) #define AW87XXX_PID_60_GTDR_REG (0x71) #define AW87XXX_PID_60_OC_REG (0x72) #define AW87XXX_PID_60_AGC_CON_REG (0x73) #define AW87XXX_PID_60_NG_REG (0x74) #define AW87XXX_PID_60_NG2_REG (0x75) #define AW87XXX_PID_60_NG3_REG (0x76) #define AW87XXX_PID_60_CP_REG (0x77) #define AW87XXX_PID_60_TEST_GTDR_REG (0x78) #define AW87XXX_PID_60_TEST_BST_REG (0x79) #define AW87XXX_PID_60_TEST_MODE_REG (0x7A) #define AW87XXX_PID_60_TEST_CON_REG (0x7B) #define AW87XXX_PID_60_ENCR_REG (0x7C) /******************************************** * soft control info * If you need to update this file, add this information manually *******************************************/ unsigned char aw87xxx_pid_60_softrst_access[2] = {0x00, 0xaa}; /******************************************** * Register Access *******************************************/ #define AW87XXX_PID_60_REG_MAX (0x7D) #define REG_NONE_ACCESS (0) #define REG_RD_ACCESS (1 << 0) #define REG_WR_ACCESS (1 << 1) #define AW87XXX_PID_60_ESD_REG_VAL (0x91) const unsigned char aw87xxx_pid_60_reg_access[AW87XXX_PID_60_REG_MAX] = { [AW87XXX_PID_60_ID_REG] = (REG_RD_ACCESS), [AW87XXX_PID_60_SYSCTRL_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BSTOVR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_PEAKLIMIT_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_ADPSET_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_PAG_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_AGC1PA_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_AGC2PA_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_AGC3PA_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_AGC3P_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_LOW_BAT_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BSTOUT_REG] = (REG_RD_ACCESS), [AW87XXX_PID_60_SYSST_REG] = (REG_RD_ACCESS), [AW87XXX_PID_60_SYSINT_REG] = (REG_RD_ACCESS), [AW87XXX_PID_60_BURST_CON_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BST_BIAS_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BST_EA_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BST_DE_SOFT_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BST_BURST_KICK_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BST_CON1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BST_OVP_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_LINE_MODE_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BST_ISEN_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BST_PEAK_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_BST_PEAK2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_OFFTIME_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_ADPBST_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_OTA_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_RAMPGEN_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_CLASSD_SYSCTRL_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_GTDR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_OC_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_AGC_CON_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_NG_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_NG2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_NG3_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_CP_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_TEST_GTDR_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_TEST_BST_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_TEST_MODE_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_TEST_CON_REG] = (REG_RD_ACCESS | REG_WR_ACCESS), [AW87XXX_PID_60_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_60_IDCODE_START_BIT (0) #define AW87XXX_PID_60_IDCODE_BITS_LEN (8) #define AW87XXX_PID_60_IDCODE_MASK \ (~(((1<