/* SPDX-License-Identifier: GPL-2.0 * aw882xx_pid_1852_reg.h * * Copyright (c) 2020 AWINIC Technology CO., LTD * * Author: Nick Li * * 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 __AW882XX_PID_1852_REG_H__ #define __AW882XX_PID_1852_REG_H__ #define AW_PID_1852_MONITOR_FILE "aw882xx_pid_1852_monitor.bin" /* registers list */ #define AW_PID_1852_ID_REG (0x00) #define AW_PID_1852_SYSST_REG (0x01) #define AW_PID_1852_SYSINT_REG (0x02) #define AW_PID_1852_SYSINTM_REG (0x03) #define AW_PID_1852_SYSCTRL_REG (0x04) #define AW_PID_1852_SYSCTRL2_REG (0x05) #define AW_PID_1852_I2SCTRL_REG (0x06) #define AW_PID_1852_I2SCFG1_REG (0x07) #define AW_PID_1852_I2SCFG2_REG (0x08) #define AW_PID_1852_HAGCCFG1_REG (0x09) #define AW_PID_1852_HAGCCFG2_REG (0x0A) #define AW_PID_1852_HAGCCFG3_REG (0x0B) #define AW_PID_1852_HAGCCFG4_REG (0x0C) #define AW_PID_1852_HAGCCFG5_REG (0x0D) #define AW_PID_1852_HAGCCFG6_REG (0x0E) #define AW_PID_1852_HAGCCFG7_REG (0x0F) #define AW_PID_1852_HAGCST_REG (0x10) #define AW_PID_1852_PRODID_REG (0x11) #define AW_PID_1852_VBAT_REG (0x12) #define AW_PID_1852_TEMP_REG (0x13) #define AW_PID_1852_PVDD_REG (0x14) #define AW_PID_1852_DBGCTRL_REG (0x20) #define AW_PID_1852_I2SINT_REG (0x21) #define AW_PID_1852_I2SCAPCNT_REG (0x22) #define AW_PID_1852_CRCIN_REG (0x38) #define AW_PID_1852_CRCOUT_REG (0x39) #define AW_PID_1852_VSNCTRL1_REG (0x50) #define AW_PID_1852_ISNCTRL1_REG (0x52) #define AW_PID_1852_ISNCTRL2_REG (0x53) #define AW_PID_1852_VTMCTRL1_REG (0x54) #define AW_PID_1852_VTMCTRL2_REG (0x55) #define AW_PID_1852_VTMCTRL3_REG (0x56) #define AW_PID_1852_ISNDAT_REG (0x57) #define AW_PID_1852_VSNDAT_REG (0x58) #define AW_PID_1852_PWMCTRL_REG (0x59) #define AW_PID_1852_PWMCTRL2_REG (0x5A) #define AW_PID_1852_BSTCTRL1_REG (0x60) #define AW_PID_1852_BSTCTRL2_REG (0x61) #define AW_PID_1852_BSTCTRL3_REG (0x62) #define AW_PID_1852_BSTDBG1_REG (0x63) #define AW_PID_1852_BSTDBG2_REG (0x64) #define AW_PID_1852_BSTDBG3_REG (0x65) #define AW_PID_1852_PLLCTRL1_REG (0x66) #define AW_PID_1852_PLLCTRL2_REG (0x67) #define AW_PID_1852_PLLCTRL3_REG (0x68) #define AW_PID_1852_CDACTRL1_REG (0x69) #define AW_PID_1852_CDACTRL2_REG (0x6A) #define AW_PID_1852_SADCCTRL_REG (0x6B) #define AW_PID_1852_TESTCTRL1_REG (0x70) #define AW_PID_1852_TESTCTRL2_REG (0x71) #define AW_PID_1852_EFCTRL1_REG (0x72) #define AW_PID_1852_EFCTRL2_REG (0x73) #define AW_PID_1852_EFWH_REG (0x74) #define AW_PID_1852_EFWM2_REG (0x75) #define AW_PID_1852_EFWM1_REG (0x76) #define AW_PID_1852_EFWL_REG (0x77) #define AW_PID_1852_EFRH_REG (0x78) #define AW_PID_1852_EFRM2_REG (0x79) #define AW_PID_1852_EFRM1_REG (0x7A) #define AW_PID_1852_EFRL_REG (0x7B) #define AW_PID_1852_TESTDET_REG (0x7C) /******************************************** * Register Access *******************************************/ #define AW_PID_1852_REG_MAX (0x7D) #define AW_PID_1852_REG_NONE_ACCESS (0) #define AW_PID_1852_REG_RD_ACCESS (1 << 0) #define AW_PID_1852_REG_WR_ACCESS (1 << 1) static const unsigned char aw_pid_1852_reg_access[AW_PID_1852_REG_MAX] = { [AW_PID_1852_ID_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_SYSST_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_SYSINT_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_SYSINTM_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_SYSCTRL_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_SYSCTRL2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_I2SCTRL_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_I2SCFG1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_I2SCFG2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_HAGCCFG1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_HAGCCFG2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_HAGCCFG3_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_HAGCCFG4_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_HAGCCFG5_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_HAGCCFG6_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_HAGCCFG7_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_HAGCST_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_PRODID_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_VBAT_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_TEMP_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_PVDD_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_DBGCTRL_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_I2SINT_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_I2SCAPCNT_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_CRCIN_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_CRCOUT_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_VSNCTRL1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_ISNCTRL1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_ISNCTRL2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_VTMCTRL1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_VTMCTRL2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_VTMCTRL3_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_ISNDAT_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_VSNDAT_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_PWMCTRL_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_PWMCTRL2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_BSTCTRL1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_BSTCTRL2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_BSTCTRL3_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_BSTDBG1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_BSTDBG2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_BSTDBG3_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_PLLCTRL1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_PLLCTRL2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_PLLCTRL3_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_CDACTRL1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_CDACTRL2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_SADCCTRL_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_TESTCTRL1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_TESTCTRL2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_EFCTRL1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_EFCTRL2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_EFWH_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_EFWM2_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_EFWM1_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_EFWL_REG] = (AW_PID_1852_REG_RD_ACCESS | AW_PID_1852_REG_WR_ACCESS), [AW_PID_1852_EFRH_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_EFRM2_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_EFRM1_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_EFRL_REG] = (AW_PID_1852_REG_RD_ACCESS), [AW_PID_1852_TESTDET_REG] = (AW_PID_1852_REG_RD_ACCESS), }; /* detail information of registers begin */ /* ID (0x00) detail */ /* IDCODE bit 15:0 (ID 0x00) */ #define AW_PID_1852_IDCODE_START_BIT (0) #define AW_PID_1852_IDCODE_BITS_LEN (16) #define AW_PID_1852_IDCODE_MASK \ (~(((1<