diff options
Diffstat (limited to 'asoc/codecs/tas256x/physical_layer/inc/tas2564.h')
-rw-r--r-- | asoc/codecs/tas256x/physical_layer/inc/tas2564.h | 735 |
1 files changed, 735 insertions, 0 deletions
diff --git a/asoc/codecs/tas256x/physical_layer/inc/tas2564.h b/asoc/codecs/tas256x/physical_layer/inc/tas2564.h new file mode 100644 index 00000000..63f1338f --- /dev/null +++ b/asoc/codecs/tas256x/physical_layer/inc/tas2564.h @@ -0,0 +1,735 @@ +#ifndef __TAS2564_ +#define __TAS2564_ +/* Software Reset */ +#define TAS2564_SOFTWARERESET (TAS256X_SOFTWARERESET) +#define TAS2564_SOFTWARERESET_SOFTWARERESET_MASK \ + (TAS256X_SOFTWARERESET_SOFTWARERESET_MASK) +#define TAS2564_SOFTWARERESET_SOFTWARERESET_DONTRESET \ + (TAS256X_SOFTWARERESET_SOFTWARERESET_DONTRESET) +#define TAS2564_SOFTWARERESET_SOFTWARERESET_RESET \ + (TAS256X_SOFTWARERESET_SOFTWARERESET_RESET) + +/* Power Control */ +#define TAS2564_POWERCONTROL (TAS256X_POWERCONTROL) +/* NEW Beging */ +#define TAS2564_POWERCONTROL_VSNS2_PD_MASK (0x1 << 7) +#define TAS2564_POWERCONTROL_VSNS2_PD_ACTIVE (0x0 << 7) +#define TAS2564_POWERCONTROL_VSNS2_PD_POWEREDDOWN (0x1 << 7) +/* NEW End */ +#define TAS2564_POWERCONTROL_ISNSPOWER_MASK \ + (TAS256X_POWERCONTROL_ISNSPOWER_MASK) +#define TAS2564_POWERCONTROL_ISNSPOWER_ACTIVE \ + (TAS256X_POWERCONTROL_ISNSPOWER_ACTIVE) +#define TAS2564_POWERCONTROL_ISNSPOWER_POWEREDDOWN \ + (TAS256X_POWERCONTROL_ISNSPOWER_POWEREDDOWN) +#define TAS2564_POWERCONTROL_VSNSPOWER_MASK \ + (TAS256X_POWERCONTROL_VSNSPOWER_MASK) +#define TAS2564_POWERCONTROL_VSNSPOWER_ACTIVE \ + (TAS256X_POWERCONTROL_VSNSPOWER_ACTIVE) +#define TAS2564_POWERCONTROL_VSNSPOWER_POWEREDDOWN \ + (TAS256X_POWERCONTROL_VSNSPOWER_POWEREDDOWN) +#define TAS2564_POWERCONTROL_OPERATIONALMODE10_MASK \ + (TAS256X_POWERCONTROL_OPERATIONALMODE10_MASK) +#define TAS2564_POWERCONTROL_OPERATIONALMODE10_ACTIVE \ + (TAS256X_POWERCONTROL_OPERATIONALMODE10_ACTIVE) +#define TAS2564_POWERCONTROL_OPERATIONALMODE10_MUTE \ + (TAS256X_POWERCONTROL_OPERATIONALMODE10_MUTE) +#define TAS2564_POWERCONTROL_OPERATIONALMODE10_SHUTDOWN \ + (TAS256X_POWERCONTROL_OPERATIONALMODE10_SHUTDOWN) + + +/* Playback Configuration Reg0 */ +#define TAS2564_PLAYBACKCONFIGURATIONREG0 \ + (TAS256X_PLAYBACKCONFIGURATIONREG0) +#define TAS2564_PLAYBACKCONFIGURATION_AMP_LEVEL_MASK (0x1F << 1) +#define TAS2564_AMP_LEVEL_16dBV (0x0D << 1) + +/* NEW Begin */ +#define TAS2564_PLAYBACKCONFIGURATIONREG_RX_SPKR_MODE_MASK \ + (0x1 << 7) +#define TAS2564_PLAYBACKCONFIGURATIONREG_SPKR_MODE \ + (0x0 << 7) +#define TAS2564_PLAYBACKCONFIGURATIONREG_RX_MODE \ + (0x1 << 7) +/* NEW End */ +#define TAS2564_BOOSTCONFIGURATION2 TAS256X_REG(0x0, 0x0, 0x48) +#define TAS2564_BOOSTCONFIGURATION2_BOOSTMAXVOLTAGE_MASK (0x1f << 3) +#define TAS2564_BOOSTCONFIGURATION2_BOOSTMAXVOLTAGE_MASK_SHIFT 3 +#define TAS2564_BOOSTCONFIGURATION4 (TAS256X_BOOSTCONFIGURATION4) +#define TAS2564_BOOSTCONFIGURATION4_BOOSTCURRENTLIMIT_MASK \ + (TAS256X_BOOSTCONFIGURATION4_BOOSTCURRENTLIMIT_MASK) +#define TAS2564_BOOSTCONFIGURATION4_BOOSTCURRENTLIMIT_SHIFT \ + (TAS256X_BOOSTCONFIGURATION4_BOOSTCURRENTLIMIT_SHIFT) + +#define TAS2564_PLAYBACKCONFIGURATIONREG0_DCBLOCKER_MASK \ + (TAS256X_PLAYBACKCONFIGURATIONREG0_DCBLOCKER_MASK) +#define TAS2564_PLAYBACKCONFIGURATIONREG0_DCBLOCKER_ENABLED \ + (TAS256X_PLAYBACKCONFIGURATIONREG0_DCBLOCKER_ENABLED) +#define TAS2564_PLAYBACKCONFIGURATIONREG0_DCBLOCKER_DISABLED \ + (TAS256X_PLAYBACKCONFIGURATIONREG0_DCBLOCKER_DISABLED) +#define TAS2564_PLAYBACKCONFIGURATIONREG0_AMPLIFIERLEVEL51_MASK (0x1f << 1) +#define TAS2564_PLAYBACKCONFIGURATIONREG0_AMPLIFIERLEVEL51_SHIFT (1) + +/* Misc Configuration Reg0 */ +#define TAS2564_MISCCONFIGURATIONREG0 (TAS256X_MISCCONFIGURATIONREG0) +#define TAS2564_MISCCONFIGURATIONREG0_CPPGRETRY_MASK \ + (TAS256X_MISCCONFIGURATIONREG0_CPPGRETRY_MASK) +#define TAS2564_MISCCONFIGURATIONREG0_CPPGRETRY_DONOTRETRY \ + (TAS256X_MISCCONFIGURATIONREG0_CPPGRETRY_DONOTRETRY) +#define TAS2564_MISCCONFIGURATIONREG0_CPPGRETRY_RETRY \ + (TAS256X_MISCCONFIGURATIONREG0_CPPGRETRY_RETRY) +#define TAS2564_MISCCONFIGURATIONREG0_VBATPRORETRY_MASK \ + (TAS256X_MISCCONFIGURATIONREG0_VBATPRORETRY_MASK) +#define TAS2564_MISCCONFIGURATIONREG0_VBATPRORETRY_DONOTRETRY \ + (TAS256X_MISCCONFIGURATIONREG0_VBATPRORETRY_DONOTRETRY) +#define TAS2564_MISCCONFIGURATIONREG0_VBATPRORETRY_RETRY \ + (TAS256X_MISCCONFIGURATIONREG0_VBATPRORETRY_RETRY) +#define TAS2564_MISCCONFIGURATIONREG0_OCERETRY_MASK \ + (TAS256X_MISCCONFIGURATIONREG0_OCERETRY_MASK) +#define TAS2564_MISCCONFIGURATIONREG0_OCERETRY_DONOTRETRY \ + (TAS256X_MISCCONFIGURATIONREG0_OCERETRY_DONOTRETRY) +#define TAS2564_MISCCONFIGURATIONREG0_OCERETRY_RETRY \ + (TAS256X_MISCCONFIGURATIONREG0_OCERETRY_RETRY) +#define TAS2564_MISCCONFIGURATIONREG0_OTERETRY_MASK \ + (TAS256X_MISCCONFIGURATIONREG0_OTERETRY_MASK) +#define TAS2564_MISCCONFIGURATIONREG0_OTERETRY_DONOTRETRY \ + (TAS256X_MISCCONFIGURATIONREG0_OTERETRY_DONOTRETRY) +#define TAS2564_MISCCONFIGURATIONREG0_OTERETRY_RETRY \ + (TAS256X_MISCCONFIGURATIONREG0_OTERETRY_RETRY) +#define TAS2564_MISCCONFIGURATIONREG0_IRQZPULL_MASK \ + (TAS256X_MISCCONFIGURATIONREG0_IRQZPULL_MASK) +#define TAS2564_MISCCONFIGURATIONREG0_IRQZPULL_DISABLED \ + (TAS256X_MISCCONFIGURATIONREG0_IRQZPULL_DISABLED) +#define TAS2564_MISCCONFIGURATIONREG0_IRQZPULL_ENABLED \ + (TAS256X_MISCCONFIGURATIONREG0_IRQZPULL_ENABLED) +#define TAS2564_MISCCONFIGURATIONREG0_AMPSS_MASK \ + (TAS256X_MISCCONFIGURATIONREG0_AMPSS_MASK) +#define TAS2564_MISCCONFIGURATIONREG0_AMPSS_DISABLED \ + (TAS256X_MISCCONFIGURATIONREG0_AMPSS_DISABLED) +#define TAS2564_MISCCONFIGURATIONREG0_AMPSS_ENABLED \ + (TAS256X_MISCCONFIGURATIONREG0_AMPSS_ENABLED) + +/* TDM Configuration Reg0 */ +#define TAS2564_TDMCONFIGURATIONREG0 (TAS256X_TDMCONFIGURATIONREG0) +#define TAS2564_TDMCONFIGURATIONREG0_SAMPRATERAMP_MASK \ + (TAS256X_TDMCONFIGURATIONREG0_SAMPRATERAMP_MASK) +#define TAS2564_TDMCONFIGURATIONREG0_SAMPRATERAMP_48KHZ \ + (TAS256X_TDMCONFIGURATIONREG0_SAMPRATERAMP_48KHZ) +#define TAS2564_TDMCONFIGURATIONREG0_SAMPRATERAMP_44_1KHZ \ + (TAS256X_TDMCONFIGURATIONREG0_SAMPRATERAMP_44_1KHZ) +#define TAS2564_TDMCONFIGURATIONREG0_DETECTSAMPRATE_MASK \ + (TAS256X_TDMCONFIGURATIONREG0_DETECTSAMPRATE_MASK) +#define TAS2564_TDMCONFIGURATIONREG0_DETECTSAMPRATE_DISABLED \ + (TAS256X_TDMCONFIGURATIONREG0_DETECTSAMPRATE_DISABLED) +#define TAS2564_TDMCONFIGURATIONREG0_DETECTSAMPRATE_ENABLED \ + (TAS256X_TDMCONFIGURATIONREG0_DETECTSAMPRATE_ENABLED) +#define TAS2564_TDMCONFIGURATIONREG0_SAMPRATE31_MASK \ + (TAS256X_TDMCONFIGURATIONREG0_SAMPRATE31_MASK) +#define TAS2564_TDMCONFIGURATIONREG0_SAMPRATE31_14_7_16KHZ \ + (TAS256X_TDMCONFIGURATIONREG0_SAMPRATE31_14_7_16KHZ) +#define TAS2564_TDMCONFIGURATIONREG0_SAMPRATE31_44_1_48KHZ \ + (TAS256X_TDMCONFIGURATIONREG0_SAMPRATE31_44_1_48KHZ) +#define TAS2564_TDMCONFIGURATIONREG0_SAMPRATE31_88_2_96KHZ \ + (TAS256X_TDMCONFIGURATIONREG0_SAMPRATE31_88_2_96KHZ) +#define TAS2564_TDMCONFIGURATIONREG0_SAMPRATE31_176_4_192KHZ \ + (TAS256X_TDMCONFIGURATIONREG0_SAMPRATE31_176_4_192KHZ) +#define TAS2564_TDMCONFIGURATIONREG0_FRAMESTART_MASK \ + (TAS256X_TDMCONFIGURATIONREG0_FRAMESTART_MASK) +#define TAS2564_TDMCONFIGURATIONREG0_FRAMESTART_LOWTOHIGH \ + (TAS256X_TDMCONFIGURATIONREG0_FRAMESTART_LOWTOHIGH) +#define TAS2564_TDMCONFIGURATIONREG0_FRAMESTART_HIGHTOLOW \ + (TAS256X_TDMCONFIGURATIONREG0_FRAMESTART_HIGHTOLOW) + +/* TDM Configuration Reg1 */ +#define TAS2564_TDMCONFIGURATIONREG1 (TAS256X_TDMCONFIGURATIONREG1) +#define TAS2564_TDMCONFIGURATIONREG1_RXJUSTIFY_MASK \ + (TAS256X_TDMCONFIGURATIONREG1_RXJUSTIFY_MASK) +#define TAS2564_TDMCONFIGURATIONREG1_RXJUSTIFY_LEFT \ + (TAS256X_TDMCONFIGURATIONREG1_RXJUSTIFY_LEFT) +#define TAS2564_TDMCONFIGURATIONREG1_RXJUSTIFY_RIGHT \ + (TAS256X_TDMCONFIGURATIONREG1_RXJUSTIFY_RIGHT) +#define TAS2564_TDMCONFIGURATIONREG1_RXOFFSET51_MASK \ + (TAS256X_TDMCONFIGURATIONREG1_RXOFFSET51_MASK) +#define TAS2564_TDMCONFIGURATIONREG1_RXOFFSET51_SHIFT \ + (TAS256X_TDMCONFIGURATIONREG1_RXOFFSET51_SHIFT) +#define TAS2564_TDMCONFIGURATIONREG1_RXEDGE_MASK \ + (TAS256X_TDMCONFIGURATIONREG1_RXEDGE_MASK) +#define TAS2564_TDMCONFIGURATIONREG1_RXEDGE_RISING \ + (TAS256X_TDMCONFIGURATIONREG1_RXEDGE_RISING) +#define TAS2564_TDMCONFIGURATIONREG1_RXEDGE_FALLING \ + (TAS256X_TDMCONFIGURATIONREG1_RXEDGE_FALLING) + +/* TDM Configuration Reg2 */ +#define TAS2564_TDMCONFIGURATIONREG2 (TAS256X_TDMCONFIGURATIONREG2) +#define TAS2564_TDMCONFIGURATIONREG2_IVLEN76_MASK \ + (TAS256X_TDMCONFIGURATIONREG2_IVLEN76_MASK) +#define TAS2564_TDMCONFIGURATIONREG2_IVLENCFG76_16BITS \ + (TAS256X_TDMCONFIGURATIONREG2_IVLENCFG76_16BITS) +#define TAS2564_TDMCONFIGURATIONREG2_IVLENCFG76_12BITS \ + (TAS256X_TDMCONFIGURATIONREG2_IVLENCFG76_12BITS) +#define TAS2564_TDMCONFIGURATIONREG2_IVLENCFG76_8BITS \ + (TAS256X_TDMCONFIGURATIONREG2_IVLENCFG76_8BITS) +#define TAS2564_TDMCONFIGURATIONREG2_IVMONLEN76_MASK \ + (TAS256X_TDMCONFIGURATIONREG2_IVMONLEN76_MASK) +#define TAS2564_TDMCONFIGURATIONREG2_IVMONLEN76_8BITS \ + (TAS256X_TDMCONFIGURATIONREG2_IVMONLEN76_8BITS) +#define TAS2564_TDMCONFIGURATIONREG2_IVMONLEN76_12BITS \ + (TAS256X_TDMCONFIGURATIONREG2_IVMONLEN76_12BITS) +#define TAS2564_TDMCONFIGURATIONREG2_IVMONLEN76_16BITS \ + (TAS256X_TDMCONFIGURATIONREG2_IVMONLEN76_16BITS) +#define TAS2564_TDMCONFIGURATIONREG2_RXSCFG54_MASK \ + (TAS256X_TDMCONFIGURATIONREG2_RXSCFG54_MASK) +#define TAS2564_TDMCONFIGURATIONREG2_RXSCFG54_MONO_I2C \ + (TAS256X_TDMCONFIGURATIONREG2_RXSCFG54_MONO_I2C) +#define TAS2564_TDMCONFIGURATIONREG2_RXSCFG54_MONO_LEFT \ + (TAS256X_TDMCONFIGURATIONREG2_RXSCFG54_MONO_LEFT) +#define TAS2564_TDMCONFIGURATIONREG2_RXSCFG54_MONO_RIGHT \ + (TAS256X_TDMCONFIGURATIONREG2_RXSCFG54_MONO_RIGHT) +#define TAS2564_TDMCONFIGURATIONREG2_RXSCFG54_STEREO_DOWNMIX \ + (TAS256X_TDMCONFIGURATIONREG2_RXSCFG54_STEREO_DOWNMIX) +#define TAS2564_TDMCONFIGURATIONREG2_RXWLEN32_MASK \ + (TAS256X_TDMCONFIGURATIONREG2_RXWLEN32_MASK) +#define TAS2564_TDMCONFIGURATIONREG2_RXWLEN32_16BITS \ + (TAS256X_TDMCONFIGURATIONREG2_RXWLEN32_16BITS) +#define TAS2564_TDMCONFIGURATIONREG2_RXWLEN32_20BITS \ + (TAS256X_TDMCONFIGURATIONREG2_RXWLEN32_20BITS) +#define TAS2564_TDMCONFIGURATIONREG2_RXWLEN32_24BITS \ + (TAS256X_TDMCONFIGURATIONREG2_RXWLEN32_24BITS) +#define TAS2564_TDMCONFIGURATIONREG2_RXWLEN32_32BITS \ + (TAS256X_TDMCONFIGURATIONREG2_RXWLEN32_32BITS) +#define TAS2564_TDMCONFIGURATIONREG2_RXSLEN10_MASK \ + (TAS256X_TDMCONFIGURATIONREG2_RXSLEN10_MASK) +#define TAS2564_TDMCONFIGURATIONREG2_RXSLEN10_16BITS \ + (TAS256X_TDMCONFIGURATIONREG2_RXSLEN10_16BITS) +#define TAS2564_TDMCONFIGURATIONREG2_RXSLEN10_24BITS \ + (TAS256X_TDMCONFIGURATIONREG2_RXSLEN10_24BITS) +#define TAS2564_TDMCONFIGURATIONREG2_RXSLEN10_32BITS \ + (TAS256X_TDMCONFIGURATIONREG2_RXSLEN10_32BITS) + +/* TDM Configuration Reg3 */ +#define TAS2564_TDMCONFIGURATIONREG3 (TAS256X_TDMCONFIGURATIONREG3) +#define TAS2564_TDMCONFIGURATIONREG3_RXSLOTRIGHT74_MASK \ + (TAS256X_TDMCONFIGURATIONREG3_RXSLOTRIGHT74_MASK) +#define TAS2564_TDMCONFIGURATIONREG3_RXSLOTLeft30_Mask \ + (TAS256X_TDMCONFIGURATIONREG3_RXSLOTLeft30_Mask) + +/* TDM Configuration Reg4 */ +#define TAS2564_TDMConfigurationReg4 (TAS256X_TDMConfigurationReg4) +#define TAS2564_TDMCONFIGURATIONREG4_TXKEEPER_MASK \ + (TAS256X_TDMCONFIGURATIONREG4_TXKEEPER_MASK) +#define TAS2564_TDMCONFIGURATIONREG4_TXKEEPER_DISABLE \ + (TAS256X_TDMCONFIGURATIONREG4_TXKEEPER_DISABLE) +#define TAS2564_TDMCONFIGURATIONREG4_TXKEEPER_ENABLE \ + (TAS256X_TDMCONFIGURATIONREG4_TXKEEPER_ENABLE) +#define TAS2564_TDMCONFIGURATIONREG4_TXFILL_MASK \ + (TAS256X_TDMCONFIGURATIONREG4_TXFILL_MASK) +#define TAS2564_TDMCONFIGURATIONREG4_TXFILL_TRANSMIT0 \ + (TAS256X_TDMCONFIGURATIONREG4_TXFILL_TRANSMIT0) +#define TAS2564_TDMCONFIGURATIONREG4_TXFILL_TRANSMITHIZ \ + (TAS256X_TDMCONFIGURATIONREG4_TXFILL_TRANSMITHIZ) +#define TAS2564_TDMCONFIGURATIONREG4_TXOFFSET31_MASK \ + (TAS256X_TDMCONFIGURATIONREG4_TXOFFSET31_MASK) +#define TAS2564_TDMCONFIGURATIONREG4_TXEDGE_MASK \ + (TAS256X_TDMCONFIGURATIONREG4_TXEDGE_MASK) +#define TAS2564_TDMCONFIGURATIONREG4_TXEDGE_RISING \ + (TAS256X_TDMCONFIGURATIONREG4_TXEDGE_RISING) +#define TAS2564_TDMCONFIGURATIONREG4_TXEDGE_FALLING \ + (TAS256X_TDMCONFIGURATIONREG4_TXEDGE_FALLING) + +/* TDM Configuration Reg5 */ +#define TAS2564_TDMCONFIGURATIONREG5 (TAS256X_TDMCONFIGURATIONREG5) +#define TAS2564_TDMCONFIGURATIONREG5_VSNSTX_MASK \ + (TAS256X_TDMCONFIGURATIONREG5_VSNSTX_MASK) +#define TAS2564_TDMCONFIGURATIONREG5_VSNSTX_DISABLE \ + (TAS256X_TDMCONFIGURATIONREG5_VSNSTX_DISABLE) +#define TAS2564_TDMCONFIGURATIONREG5_VSNSTX_ENABLE \ + (TAS256X_TDMCONFIGURATIONREG5_VSNSTX_ENABLE) +#define TAS2564_TDMCONFIGURATIONREG5_VSNSSLOT50_MASK \ + (TAS256X_TDMCONFIGURATIONREG5_VSNSSLOT50_MASK) + +/* TDM Configuration Reg6 */ +#define TAS2564_TDMCONFIGURATIONREG6 (TAS256X_TDMCONFIGURATIONREG6) +#define TAS2564_TDMCONFIGURATIONREG6_ISNSTX_MASK \ + (TAS256X_TDMCONFIGURATIONREG6_ISNSTX_MASK) +#define TAS2564_TDMCONFIGURATIONREG6_ISNSTX_DISABLE \ + (TAS256X_TDMCONFIGURATIONREG6_ISNSTX_DISABLE) +#define TAS2564_TDMCONFIGURATIONREG6_ISNSTX_ENABLE \ + (TAS256X_TDMCONFIGURATIONREG6_ISNSTX_ENABLE) +#define TAS2564_TDMCONFIGURATIONREG6_ISNSSLOT50_MASK \ + (TAS256X_TDMCONFIGURATIONREG6_ISNSSLOT50_MASK) + +/* TDM Configuration Reg7 */ +#define TAS2564_TDMCONFIGURATIONREG7 (TAS256X_TDMCONFIGURATIONREG7) +#define TAS2564_TDMCONFIGURATIONREG7_VBATSLEN_MASK \ + (TAS256X_TDMCONFIGURATIONREG7_VBATSLEN_MASK) +#define TAS2564_TDMCONFIGURATIONREG7_VBATSLEN_8BITS \ + (TAS256X_TDMCONFIGURATIONREG7_VBATSLEN_8BITS) +#define TAS2564_TDMCONFIGURATIONREG7_VBATSLEN_16BITS \ + (TAS256X_TDMCONFIGURATIONREG7_VBATSLEN_16BITS) +#define TAS2564_TDMCONFIGURATIONREG7_VBATTX_MASK \ + (TAS256X_TDMCONFIGURATIONREG7_VBATTX_MASK) +#define TAS2564_TDMCONFIGURATIONREG7_VBATTX_DISABLE \ + (TAS256X_TDMCONFIGURATIONREG7_VBATTX_DISABLE) +#define TAS2564_TDMCONFIGURATIONREG7_VBATTX_ENABLE \ + (TAS256X_TDMCONFIGURATIONREG7_VBATTX_ENABLE) +#define TAS2564_TDMCONFIGURATIONREG7_VBATSLOT50_MASK \ + (TAS256X_TDMCONFIGURATIONREG7_VBATSLOT50_MASK) + +/* TDM Configuration Reg8 */ +#define TAS2564_TDMCONFIGURATIONREG8 TAS256X_REG(0x0, 0x0, 0x0E) +#define TAS2564_TDMCONFIGURATIONREG8_TEMPTX_MASK (0x1 << 6) +#define TAS2564_TDMCONFIGURATIONREG8_TEMPTX_DISABLE (0x0 << 6) +#define TAS2564_TDMCONFIGURATIONREG8_TEMPTX_ENABLE (0x1 << 6) +#define TAS2564_TDMCONFIGURATIONREG8_TEMPSLOT50_MASK (0x3f << 0) + +/* TDM Configuration Reg9 */ +#define TAS2564_TDMCONFIGURATIONREG9 TAS256X_REG(0x0, 0x0, 0x0F) +#define TAS2564_TDMCONFIGURATIONREG9_GAINTX_MASK (0x1 << 6) +#define TAS2564_TDMCONFIGURATIONREG9_GAINTX_DISABLE (0x0 << 6) +#define TAS2564_TDMCONFIGURATIONREG9_GAINTX_ENABLE (0x1 << 6) +#define TAS2564_TDMCONFIGURATIONREG9_GAINSLOT50_MASK (0x3f << 0) + +/* Limiter Configuration Reg0 */ +#define TAS2564_LIMITERCONFIGURATIONREG0 TAS256X_REG(0x0, 0x0, 0x12) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKST54_MASK (0x3 << 4) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKST54_1 (0x2 << 4) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKST54_2 (0x3 << 4) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKST54_0_25 (0x0 << 4) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKST54_0_5 (0x1 << 4) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKRT31_MASK (0x7 << 1) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKRT31_5 (0x0 << 1) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKRT31_10 (0x1 << 1) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKRT31_20 (0x2 << 1) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKRT31_40 (0x3 << 1) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKRT31_80 (0x4 << 1) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKRT31_160 (0x5 << 1) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKRT31_320 (0x6 << 1) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMATKRT31_640 (0x7 << 1) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMEN_MASK (0x1 << 0) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMEN_DISABLED (0x0 << 0) +#define TAS2564_LIMITERCONFIGURATIONREG0_LIMEN_ENABLED (0x1 << 0) + +/* Limiter Configuration Reg1 */ +#define TAS2564_LIMITERCONFIGURATIONREG1 TAS256X_REG(0x0, 0x0, 0x13) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSST76_MASK (0x3 << 6) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSST76_1 (0x2 << 6) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSST76_2 (0x3 << 6) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSST76_0_25 (0x0 << 6) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSST76_0_5 (0x1 << 6) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSRT53_MASK (0x7 << 3) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSRT53_10 (0x0 << 3) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSRT53_50 (0x1 << 3) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSRT53_100 (0x2 << 3) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSRT53_250 (0x3 << 3) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSRT53_500 (0x4 << 3) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSRT53_750 (0x5 << 3) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSRT53_1000 (0x6 << 3) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMRLSRT53_1500 (0x7 << 3) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMHLDTM20_MASK (0x7 << 0) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMHLDTM20_0 (0x0 << 0) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMHLDTM20_10 (0x1 << 0) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMHLDTM20_25 (0x2 << 0) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMHLDTM20_50 (0x3 << 0) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMHLDTM20_100 (0x4 << 0) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMHLDTM20_250 (0x5 << 0) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMHLDTM20_500 (0x6 << 0) +#define TAS2564_LIMITERCONFIGURATIONREG1_LIMHLDTM20_1000 (0x7 << 0) + +/* Brown Out Prevention Reg0 */ +#define TAS2564_BROWNOUTPREVENTIONREG0 TAS256X_REG(0x0, 0x0, 0x14) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPSDEN_MASK (0x1 << 4) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPSDEN_DISABLED (0x0 << 4) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPSDEN_ENABLED (0x1 << 4) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPHLDCLR_MASK (0x1 << 3) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPHLDCLR_DONTCLEAR (0x0 << 3) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPHLDCLR_CLEAR (0x1 << 3) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPINFHLD_MASK (0x1 << 2) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPINFHLD_USEHOLDTIME (0x0 << 2) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPINFHLD_HOLDUNTILCLEARED (0x1 << 2) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPMUTE_MASK (0x1 << 1) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPMUTE_DONOTMUTE (0x0 << 1) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPMUTE_MUTE (0x1 << 1) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPEN_MASK (0x1 << 0) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPEN_DISABLED (0x0 << 0) +#define TAS2564_BROWNOUTPREVENTIONREG0_BOPEN_ENABLED (0x1 << 0) + +/* Brown Out Prevention Reg1 */ +#define TAS2564_BROWNOUTPREVENTIONREG1 TAS256X_REG(0x0, 0x0, 0x15) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKRT75_MASK (0x7 << 5) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKRT75_1 (0x0 << 5) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKRT75_2 (0x1 << 5) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKRT75_4 (0x2 << 5) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKRT75_8 (0x3 << 5) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKRT75_16 (0x4 << 5) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKRT75_32 (0x5 << 5) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKRT75_64 (0x6 << 5) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKRT75_128 (0x7 << 5) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKST43_MASK (0x3 << 3) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKST43_1 (0x1 << 3) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKST43_2 (0x3 << 3) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKST43_0_5 (0x0 << 3) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPATKST43_1_5 (0x2 << 3) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPHLDTM20_MASK (0x7 << 0) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPHLDTM20_0 (0x0 << 0) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPHLDTM20_10 (0x1 << 0) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPHLDTM20_25 (0x2 << 0) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPHLDTM20_50 (0x3 << 0) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPHLDTM20_100 (0x4 << 0) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPHLDTM20_250 (0x5 << 0) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPHLDTM20_500 (0x6 << 0) +#define TAS2564_BROWNOUTPREVENTIONREG1_BOPHLDTM20_1000 (0x7 << 0) + +/* Interrupt Mask Reg0 */ +#define TAS2564_INTERRUPTMASKREG0 (TAS256X_INTERRUPTMASKREG0) +#define TAS2564_INTERRUPTMASKREG0_LIMMUTEINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG0_LIMMUTEINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG0_LIMMUTEINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG0_LIMMUTEINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG0_LIMMUTEINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG0_LIMMUTEINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG0_LIMINFHLDINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG0_LIMINFHLDINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG0_LIMINFHLDINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG0_LIMINFHLDINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG0_LIMINFHLDINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG0_LIMINFHLDINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG0_LIMMAXATNINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG0_LIMMAXATNINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG0_LIMMAXATNINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG0_LIMMAXATNINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG0_LIMMAXATNINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG0_LIMMAXATNINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG0_VBATLESSTHANINFINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG0_VBATLESSTHANINFINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG0_VBATLESSTHANINFINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG0_VBATLESSTHANINFINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG0_VBATLESSTHANINFINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG0_VBATLESSTHANINFINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG0_LIMACTIVEFLAGINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG0_LIMACTIVEFLAGINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG0_LIMACTIVEFLAGINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG0_LIMACTIVEFLAGINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG0_LIMACTIVEFLAGINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG0_LIMACTIVEFLAGINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG0_TDMCLOCKERRORINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG0_TDMCLOCKERRORINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG0_TDMCLOCKERRORINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG0_TDMCLOCKERRORINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG0_TDMCLOCKERRORINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG0_TDMCLOCKERRORINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG0_OCEINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG0_OCEINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG0_OCEINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG0_OCEINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG0_OCEINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG0_OCEINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG0_OTEINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG0_OTEINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG0_OTEINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG0_OTEINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG0_OTEINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG0_OTEINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG0_DISABLE \ + (TAS256X_INTERRUPTMASKREG0_DISABLE) + +/* Interrupt Mask Reg1 */ +#define TAS2564_INTERRUPTMASKREG1 \ + (TAS256X_INTERRUPTMASKREG1) +#define TAS2564_INTERRUPTMASKREG1_DSPOUTPUTINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG1_DSPOUTPUTINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG1_DSPOUTPUTINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG1_DSPOUTPUTINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG1_DSPOUTPUTINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG1_DSPOUTPUTINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG1_CRCINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG1_CRCINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG1_CRCINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG1_CRCINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG1_CRCINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG1_CRCINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG1_VBATOVLOINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG1_VBATOVLOINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG1_VBATOVLOINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG1_VBATOVLOINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG1_VBATOVLOINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG1_VBATOVLOINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG1_VBATUVLOINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG1_VBATUVLOINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG1_VBATUVLOINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG1_VBATUVLOINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG1_VBATUVLOINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG1_VBATUVLOINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG1_BROWNOUTFLAGINTMASK_MASK \ + (TAS256X_INTERRUPTMASKREG1_BROWNOUTFLAGINTMASK_MASK) +#define TAS2564_INTERRUPTMASKREG1_BROWNOUTFLAGINTMASK_UNMASK \ + (TAS256X_INTERRUPTMASKREG1_BROWNOUTFLAGINTMASK_UNMASK) +#define TAS2564_INTERRUPTMASKREG1_BROWNOUTFLAGINTMASK_DISABLE \ + (TAS256X_INTERRUPTMASKREG1_BROWNOUTFLAGINTMASK_DISABLE) +#define TAS2564_INTERRUPTMASKREG1_DISABLE \ + (TAS256X_INTERRUPTMASKREG1_DISABLE) + +/* Interrupt Mask Reg2 */ +#define TAS2564_INTERRUPTMASKREG2 TAS256X_REG(0x0, 0x0, 0x1C) +#define TAS2564_INTERRUPTMASKREG2_DACLKINTMASK_MASK (0x1 << 7) +#define TAS2564_INTERRUPTMASKREG2_DACLKINTMASK_UNMASK (0x0 << 7) +#define TAS2564_INTERRUPTMASKREG2_DACLKINTMASK_DISABLE (0x1 << 7) +#define TAS2564_INTERRUPTMASKREG2_BSTCLKINTMASK_MASK (0x1 << 6) +#define TAS2564_INTERRUPTMASKREG2_BSTCLKINTMASK_UNMASK (0x0 << 6) +#define TAS2564_INTERRUPTMASKREG2_BSTCLKINTMASK_DISABLE (0x1 << 6) +#define TAS2564_INTERRUPTMASKREG2_VBATPORCLKINTMASK_MASK (0x1 << 5) +#define TAS2564_INTERRUPTMASKREG2_VBATPORCLKINTMASK_UNMASK (0x0 << 5) +#define TAS2564_INTERRUPTMASKREG2_VBATPORCLKINTMASK_DISABLE (0x1 << 5) +#define TAS2564_INTERRUPTMASKREG2_PLLOCKINTMASK_MASK (0x1 << 4) +#define TAS2564_INTERRUPTMASKREG2_PLLOCKINTMASK_UNMASK (0x0 << 4) +#define TAS2564_INTERRUPTMASKREG2_PLLOCKINTMASK_DISABLE (0x1 << 4) +#define TAS2564_INTERRUPTMASKREG2_DCDETECTINTMASK_MASK (0x1 << 3) +#define TAS2564_INTERRUPTMASKREG2_DCDETECTINTMASK_UNMASK (0x0 << 3) +#define TAS2564_INTERRUPTMASKREG2_DCDETECTINTMASK_DISABLE (0x1 << 3) + +/* NEW Begin */ +/* Interrupt Mask Reg4 */ +#define TAS2564_INTERRUPTMASKREG4 TAS256X_REG(0x0, 0x0, 0x1E) +#define TAS2564_INTERRUPTMASKREG4_DSP_DC_DETECT_FLAG_MASK (0x1 << 7) +#define TAS2564_INTERRUPTMASKREG4_DSP_DC_DETECT_FLAG_UNMASK (0x0 << 7) +#define TAS2564_INTERRUPTMASKREG4_DSP_DC_DETECT_FLAG_DISABLE (0x1 << 7) +/* NEW End */ + +/* Latched-Interrupt Reg0 */ +#define TAS2564_LATCHEDINTERRUPTREG0 (TAS256X_LATCHEDINTERRUPTREG0) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMMUTESTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMMUTESTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMMUTESTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMMUTESTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMMUTESTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMMUTESTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMINFHLDSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMINFHLDSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMINFHLDSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMINFHLDSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMINFHLDSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMINFHLDSTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMMAXATNSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMMAXATNSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMMAXATNSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMMAXATNSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMMAXATNSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMMAXATNSTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_VBATLESSTHANINFSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG0_VBATLESSTHANINFSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG0_VBATLESSTHANINFSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_VBATLESSTHANINFSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_VBATLESSTHANINFSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_VBATLESSTHANINFSTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMACTIVEFLAGSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMACTIVEFLAGSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMACTIVEFLAGSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMACTIVEFLAGSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_LIMACTIVEFLAGSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_LIMACTIVEFLAGSTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_TDMCLOCKERRORSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG0_TDMCLOCKERRORSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG0_TDMCLOCKERRORSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_TDMCLOCKERRORSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_TDMCLOCKERRORSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_TDMCLOCKERRORSTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_OCEFLAGSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG0_OCEFLAGSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG0_OCEFLAGSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_OCEFLAGSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_OCEFLAGSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_OCEFLAGSTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_OTEFLAGSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG0_OTEFLAGSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG0_OTEFLAGSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_OTEFLAGSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG0_OTEFLAGSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG0_OTEFLAGSTICKY_INTERRUPT) + +/* Latched-Interrupt Reg1 */ +#define TAS2564_LATCHEDINTERRUPTREG1 (TAS256X_LATCHEDINTERRUPTREG1) +#define TAS2564_LATCHEDINTERRUPTREG1_PDMAUDDATAINVALIDSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG1_PDMAUDDATAINVALIDSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG1_PDMAUDDATAINVALIDSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG1_PDMAUDDATAINVALIDSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG1_PDMAUDDATAINVALIDSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG1_PDMAUDDATAINVALIDSTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG1_VBATOVLOSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG1_VBATOVLOSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG1_VBATOVLOSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG1_VBATOVLOSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG1_VBATOVLOSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG1_VBATOVLOSTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG1_VBATUVLOSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG1_VBATUVLOSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG1_VBATUVLOSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG1_VBATUVLOSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG1_VBATUVLOSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG1_VBATUVLOSTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG1_BROWNOUTFLAGSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG1_BROWNOUTFLAGSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG1_BROWNOUTFLAGSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG1_BROWNOUTFLAGSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG1_BROWNOUTFLAGSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG1_BROWNOUTFLAGSTICKY_INTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG1_PDMCLOCKERRORSTICKY_MASK \ + (TAS256X_LATCHEDINTERRUPTREG1_PDMCLOCKERRORSTICKY_MASK) +#define TAS2564_LATCHEDINTERRUPTREG1_PDMCLOCKERRORSTICKY_NOINTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG1_PDMCLOCKERRORSTICKY_NOINTERRUPT) +#define TAS2564_LATCHEDINTERRUPTREG1_PDMCLOCKERRORSTICKY_INTERRUPT \ + (TAS256X_LATCHEDINTERRUPTREG1_PDMCLOCKERRORSTICKY_INTERRUPT) + +/* NEW Begin */ +/* Latched-Interrupt Reg4 */ +#define TAS2564_LATCHEDINTERRUPTREG4 TAS256X_REG(0x0, 0x0, 0x28) +#define TAS2564_LATCHEDINTERRUPTREG4_DSP_DC_DETECT_FLAG_MASK (0x1 << 7) +#define TAS2564_LATCHEDINTERRUPTREG4_DSP_DC_DETECT_FLAG_UNMASK (0x0 << 7) +#define TAS2564_LATCHEDINTERRUPTREG4_DSP_DC_DETECT_FLAG_DISABLE (0x1 << 7) +/* NEW End */ + +/* VBAT MSB */ +#define TAS2564_VBATMSB TAS256X_REG(0x0, 0x0, 0x2A) +#define TAS2564_VBATMSB_VBATMSB70_MASK (0xff << 0) + +/* VBAT LSB */ +#define TAS2564_VBATLSB TAS256X_REG(0x0, 0x0, 0x2B) +#define TAS2564_VBATLSB_VBATLSB74_MASK (0xf << 4) + +/* TEMP */ +#define TAS2564_TEMP TAS256X_REG(0x0, 0x0, 0x2C) +#define TAS2564_TEMP_TEMPMSB70_MASK (0xff << 0) + + +/* Interrupt Configuration */ +#define TAS2564_INTERRUPTCONFIGURATION (TAS256X_INTERRUPTCONFIGURATION) +#define TAS2564_INTERRUPTCONFIGURATION_LTCHINTCLEAR_MASK \ + (TAS256X_INTERRUPTCONFIGURATION_LTCHINTCLEAR_MASK) +#define TAS2564_INTERRUPTCONFIGURATION_LTCHINTCLEAR \ + (TAS256X_INTERRUPTCONFIGURATION_LTCHINTCLEAR) +#define TAS2564_INTERRUPTCONFIGURATION_PININTCONFIG10_MASK \ + (TAS256X_INTERRUPTCONFIGURATION_PININTCONFIG10_MASK) +#define TAS2564_INTERRUPTCONFIGURATION_PININTCONFIG10_ASSERTONLIVEINTERRUPTS \ + (TAS256X_INTERRUPTCONFIGURATION_PININTCONFIG10_ASSERTONLIVEINTERRUPTS) +#define \ + TAS2564_INTERRUPTCONFIGURATION_PININTCONFIG10_ASSERTONLATCHEDINTERRUPTS \ + (TAS256X_INTERRUPTCONFIGURATION_PININTCONFIG10_ASSERTONLATCHEDINTERRUPTS) +#define \ + TAS2564_INTERRUPTCONFIGURATION_PININTCONFIG10_ASSERT2MSONLIVEINTERRUPTS \ + (TAS256X_INTERRUPTCONFIGURATION_PININTCONFIG10_ASSERT2MSONLIVEINTERRUPTS) +#define \ + TAS2564_INTERRUPTCONFIGURATION_PININTCONFIG10_ASSERT2MSONLATCHEDINTERRUPTS \ + (TAS256X_INTERRUPTCONFIGURATION_PININTCONFIG10_ASSERT2MSONLATCHEDINTERRUPTS) + +/* Digital Input Pin Pull Down */ +/* NEW Begin */ +#define TAS2564_DIGITALINPUTPINPULLDOWN TAS256X_REG(0x0, 0x0, 0x31) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_AD1_MASK (0x1 << 5) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_AD1_DISABLED (0x0 << 5) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_AD1_ENABLED (0x1 << 5) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_AD0_MASK (0x1 << 4) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_AD0_DISABLED (0x0 << 4) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_AD0_ENABLED (0x1 << 4) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_SDOUT_MASK (0x1 << 3) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_SDOUT_DISABLED (0x0 << 3) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_SDOUT_ENABLED (0x1 << 3) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_SDIN_MASK (0x1 << 2) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_SDIN_DISABLED (0x0 << 2) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_SDIN_ENABLED (0x1 << 2) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_FSYNC_MASK (0x1 << 1) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_FSYNC_DISABLED (0x0 << 1) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_FSYNC_ENABLED (0x1 << 1) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_SBCLK_MASK (0x1 << 0) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_SBCLK_DISABLED (0x0 << 0) +#define TAS2564_DIGITALINPUTPINPULLDOWN_WKPULLDOWN_SBCLK_ENABLED (0x1 << 0) +/* NEW End */ + +/* Misc IRQ */ +#define TAS2564_MISCIRQ TAS256X_REG(0x0, 0x0, 0x32) +#define TAS2564_MISCIRQ_IRQZREQD_MASK (0x1 << 7) +#define TAS2564_MISCIRQ_IRQZREQD_ACTIVEHIGH (0x0 << 7) +#define TAS2564_MISCIRQ_IRQZREQD_ACTIVELOW (0x1 << 7) +#define TAS2564_MISCIRQ_IRQZBITBANG_MASK (0x1 << 0) +#define TAS2564_MISCIRQ_IRQZBITBANG_IRQZINPUTBUF0 (0x0 << 0) +#define TAS2564_MISCIRQ_IRQZBITBANG_IRQZINPUTBUF1 (0x1 << 0) + +#define TAS2564_BOOSTSLOPE (TAS256X_BOOSTSLOPE) +#define TAS2564_BOOSTSLOPE_MASK (TAS256X_BOOSTSLOPE_MASK) +#define TAS2564_BOOSTSLOPE_3DOT67AV (0x1 << 2) +#define TAS2564_BOOSTSLOPE_2DOT93AV (0x2 << 2) + +/* Clock Configuration */ +#define TAS2564_CLOCKCONFIGURATION (TAS256X_CLOCKCONFIGURATION) +#define TAS2564_CLOCKCONFIGURATION_SBCLKTOFS52_MASK \ + (TAS256X_CLOCKCONFIGURATION_SBCLKTOFS52_MASK) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_16 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_16) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_24 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_24) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_32 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_32) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_48 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_48) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_64 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_64) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_96 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_96) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_128 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_128) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_192 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_192) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_256 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_256) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_384 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_384) +#define TAS2564_CLOCKCONFIGURATION_SBCLKtoFS52_512 \ + (TAS256X_CLOCKCONFIGURATION_SBCLKtoFS52_512) +#define TAS2564_CLOCKCONFIGURATION_DISCLKRATEDETECT10_MASK \ + (TAS256X_CLOCKCONFIGURATION_DISCLKRATEDETECT10_MASK) +#define TAS2564_CLOCKCONFIGURATION_DISCLKRATEDETECT10_DISABLED \ + (TAS256X_CLOCKCONFIGURATION_DISCLKRATEDETECT10_DISABLED) +#define TAS2564_CLOCKCONFIGURATION_DISCLKRATEDETECT10_ENABLED \ + (TAS256X_CLOCKCONFIGURATION_DISCLKRATEDETECT10_ENABLED) + +#define TAS2564_VBATFILTER (TAS256X_VBATFILTER) +#define TAS2564_CLASSHRELEASETIMER (TAS256X_CLASSHRELEASETIMER) + +#define TAS2564_BOOST_CFG4 (TAS256X_BOOST_CFG4) +#define TAS2564_BOOST_CFG4_PEAK_CURRENT_LIMIT_MASK (0x3f << 0) + +#define TAS2564_BOOST_CFG5 TAS256X_REG(0x0, 0x0, 0x48) +#define TAS2564_BOOST_CFG5_BOOSTMAXVOLTAGE_MASK (0x1f << 3) +#define TAS2564_BOOST_CFG5_BOOSTMAXVOLTAGE_6V (0x7 << 3) + +#define TAS2564_ICN_THRESHOLD_REG (TAS256X_ICN_THRESHOLD_REG) +#define TAS2564_ICN_HYSTERESIS_REG (TAS256X_ICN_HYSTERESIS_REG) + +#define TAS2564_ICN_SW_REG (TAS256X_ICN_SW_REG) +#define TAS2564_ICN_SW_MASK (TAS256X_ICN_SW_MASK) +#define TAS2564_ICN_SW_ENABLE (TAS256X_ICN_SW_ENABLE) +#define TAS2564_ICN_SW_DISABLE (TAS256X_ICN_SW_DISABLE) +#define TAS2564_TESTPAGECONFIGURATION (TAS256X_TESTPAGECONFIGURATION) +#define TAS2564_CLASSDCONFIGURATION1 (TAS256X_CLASSDCONFIGURATION1) +#define TAS2564_CLASSDCONFIGURATION2 (TAS256X_CLASSDCONFIGURATION2) +#define TAS2564_CLASSDCONFIGURATION3 (TAS256X_CLASSDCONFIGURATION3) +#define TAS2564_CLASSDCONFIGURATION4 (TAS256X_CLASSDCONFIGURATION4) +#define TAS2564_EFFICIENCYCONFIGURATION (TAS256X_EFFICIENCYCONFIGURATION) + +#define TAS2564_HPF (TAS256X_HPF) +#define TAS2564_CLASSHHEADROOM (TAS256X_CLASSHHEADROOM) +#define TAS2564_CLASSHHYSTERESIS (TAS256X_CLASSHHYSTERESIS) +#define TAS2564_CLASSHMTCT (TAS256X_CLASSHMTCT) + +#define TAS2564_CLASSH_SLOPE TAS256X_REG(0x0, 0x0, 0x4a) + +/* Revision and PG ID */ +#define TAS2564_REVISIONANDPGID TAS256X_REG(0x0, 0x0, 0x7D) +#define TAS2564_REVISIONANDPGID_REVISIONID74_MASK (0xf << 4) +#define TAS2564_REVISIONANDPGID_PGID30_MASK (0xf << 0) + +/* I2C Checksum */ +#define TAS2564_I2CCHECKSUM TAS256X_REG(0x0, 0x0, 0x7E) +#define TAS2564_I2CCHECKSUM_I2CCHECKSUM70_MASK (0xff << 0) + +/* Book */ +#define TAS2564_BOOK (TAS256X_BOOK) +#define TAS2564_BOOK_BOOK70_MASK (TAS256X_BOOK_BOOK70_MASK) +#endif /* __TAS2564_ */ |