kernel_samsung_a34x-permissive/sound/soc/codecs/tfa98xx/inc/tfa9896_tfafieldnames.h
2024-04-28 15:51:13 +02:00

805 lines
38 KiB
C

/*
* Copyright (C) 2014 NXP Semiconductors, All Rights Reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
#ifndef _TFA9896_TFAFIELDNAMES_H
#define _TFA9896_TFAFIELDNAMES_H
#define TFA9896_I2CVERSION 16
enum nxpTFA9896BfEnumList {
TFA9896_BF_VDDS = 0x0000,
TFA9896_BF_PLLS = 0x0010,
TFA9896_BF_OTDS = 0x0020,
TFA9896_BF_OVDS = 0x0030,
TFA9896_BF_UVDS = 0x0040,
TFA9896_BF_OCDS = 0x0050,
TFA9896_BF_CLKS = 0x0060,
TFA9896_BF_CLIPS = 0x0070,
TFA9896_BF_MTPB = 0x0080,
TFA9896_BF_NOCLK = 0x0090,
TFA9896_BF_SPKS = 0x00a0,
TFA9896_BF_ACS = 0x00b0,
TFA9896_BF_SWS = 0x00c0,
TFA9896_BF_WDS = 0x00d0,
TFA9896_BF_AMPS = 0x00e0,
TFA9896_BF_AREFS = 0x00f0,
TFA9896_BF_BATS = 0x0109,
TFA9896_BF_TEMPS = 0x0208,
TFA9896_BF_REV = 0x030f,
TFA9896_BF_RCV = 0x0420,
TFA9896_BF_CHS12 = 0x0431,
TFA9896_BF_INPLVL = 0x0450,
TFA9896_BF_CHSA = 0x0461,
TFA9896_BF_AUDFS = 0x04c3,
TFA9896_BF_BSSCR = 0x0501,
TFA9896_BF_BSST = 0x0523,
TFA9896_BF_BSSRL = 0x0561,
TFA9896_BF_BSSRR = 0x0582,
TFA9896_BF_BSSHY = 0x05b1,
TFA9896_BF_BSSR = 0x05e0,
TFA9896_BF_BSSBY = 0x05f0,
TFA9896_BF_DPSA = 0x0600,
TFA9896_BF_ATTEN = 0x0613,
TFA9896_BF_CFSM = 0x0650,
TFA9896_BF_BSSS = 0x0670,
TFA9896_BF_VOL = 0x0687,
TFA9896_BF_DCVO2 = 0x0702,
TFA9896_BF_DCMCC = 0x0733,
TFA9896_BF_DCVO1 = 0x0772,
TFA9896_BF_DCIE = 0x07a0,
TFA9896_BF_DCSR = 0x07b0,
TFA9896_BF_DCPAVG = 0x07c0,
TFA9896_BF_DCPWM = 0x07d0,
TFA9896_BF_TROS = 0x0800,
TFA9896_BF_EXTTS = 0x0818,
TFA9896_BF_PWDN = 0x0900,
TFA9896_BF_I2CR = 0x0910,
TFA9896_BF_CFE = 0x0920,
TFA9896_BF_AMPE = 0x0930,
TFA9896_BF_DCA = 0x0940,
TFA9896_BF_SBSL = 0x0950,
TFA9896_BF_AMPC = 0x0960,
TFA9896_BF_DCDIS = 0x0970,
TFA9896_BF_PSDR = 0x0980,
TFA9896_BF_INTPAD = 0x09c1,
TFA9896_BF_IPLL = 0x09e0,
TFA9896_BF_DCTRIP = 0x0a04,
TFA9896_BF_DCHOLD = 0x0a54,
TFA9896_BF_MTPK = 0x0b07,
TFA9896_BF_CVFDLY = 0x0c25,
TFA9896_BF_OPENMTP = 0x0ec0,
TFA9896_BF_TDMPRF = 0x1011,
TFA9896_BF_TDMEN = 0x1030,
TFA9896_BF_TDMCKINV = 0x1040,
TFA9896_BF_TDMFSLN = 0x1053,
TFA9896_BF_TDMFSPOL = 0x1090,
TFA9896_BF_TDMSAMSZ = 0x10a4,
TFA9896_BF_TDMSLOTS = 0x1103,
TFA9896_BF_TDMSLLN = 0x1144,
TFA9896_BF_TDMBRMG = 0x1194,
TFA9896_BF_TDMDDEL = 0x11e0,
TFA9896_BF_TDMDADJ = 0x11f0,
TFA9896_BF_TDMTXFRM = 0x1201,
TFA9896_BF_TDMUUS0 = 0x1221,
TFA9896_BF_TDMUUS1 = 0x1241,
TFA9896_BF_TDMSI0EN = 0x1270,
TFA9896_BF_TDMSI1EN = 0x1280,
TFA9896_BF_TDMSI2EN = 0x1290,
TFA9896_BF_TDMSO0EN = 0x12a0,
TFA9896_BF_TDMSO1EN = 0x12b0,
TFA9896_BF_TDMSO2EN = 0x12c0,
TFA9896_BF_TDMSI0IO = 0x12d0,
TFA9896_BF_TDMSI1IO = 0x12e0,
TFA9896_BF_TDMSI2IO = 0x12f0,
TFA9896_BF_TDMSO0IO = 0x1300,
TFA9896_BF_TDMSO1IO = 0x1310,
TFA9896_BF_TDMSO2IO = 0x1320,
TFA9896_BF_TDMSI0SL = 0x1333,
TFA9896_BF_TDMSI1SL = 0x1373,
TFA9896_BF_TDMSI2SL = 0x13b3,
TFA9896_BF_TDMSO0SL = 0x1403,
TFA9896_BF_TDMSO1SL = 0x1443,
TFA9896_BF_TDMSO2SL = 0x1483,
TFA9896_BF_NBCK = 0x14c3,
TFA9896_BF_INTOVDDS = 0x2000,
TFA9896_BF_INTOPLLS = 0x2010,
TFA9896_BF_INTOOTDS = 0x2020,
TFA9896_BF_INTOOVDS = 0x2030,
TFA9896_BF_INTOUVDS = 0x2040,
TFA9896_BF_INTOOCDS = 0x2050,
TFA9896_BF_INTOCLKS = 0x2060,
TFA9896_BF_INTOCLIPS = 0x2070,
TFA9896_BF_INTOMTPB = 0x2080,
TFA9896_BF_INTONOCLK = 0x2090,
TFA9896_BF_INTOSPKS = 0x20a0,
TFA9896_BF_INTOACS = 0x20b0,
TFA9896_BF_INTOSWS = 0x20c0,
TFA9896_BF_INTOWDS = 0x20d0,
TFA9896_BF_INTOAMPS = 0x20e0,
TFA9896_BF_INTOAREFS = 0x20f0,
TFA9896_BF_INTOERR = 0x2200,
TFA9896_BF_INTOACK = 0x2210,
TFA9896_BF_INTIVDDS = 0x2300,
TFA9896_BF_INTIPLLS = 0x2310,
TFA9896_BF_INTIOTDS = 0x2320,
TFA9896_BF_INTIOVDS = 0x2330,
TFA9896_BF_INTIUVDS = 0x2340,
TFA9896_BF_INTIOCDS = 0x2350,
TFA9896_BF_INTICLKS = 0x2360,
TFA9896_BF_INTICLIPS = 0x2370,
TFA9896_BF_INTIMTPB = 0x2380,
TFA9896_BF_INTINOCLK = 0x2390,
TFA9896_BF_INTISPKS = 0x23a0,
TFA9896_BF_INTIACS = 0x23b0,
TFA9896_BF_INTISWS = 0x23c0,
TFA9896_BF_INTIWDS = 0x23d0,
TFA9896_BF_INTIAMPS = 0x23e0,
TFA9896_BF_INTIAREFS = 0x23f0,
TFA9896_BF_INTIERR = 0x2500,
TFA9896_BF_INTIACK = 0x2510,
TFA9896_BF_INTENVDDS = 0x2600,
TFA9896_BF_INTENPLLS = 0x2610,
TFA9896_BF_INTENOTDS = 0x2620,
TFA9896_BF_INTENOVDS = 0x2630,
TFA9896_BF_INTENUVDS = 0x2640,
TFA9896_BF_INTENOCDS = 0x2650,
TFA9896_BF_INTENCLKS = 0x2660,
TFA9896_BF_INTENCLIPS = 0x2670,
TFA9896_BF_INTENMTPB = 0x2680,
TFA9896_BF_INTENNOCLK = 0x2690,
TFA9896_BF_INTENSPKS = 0x26a0,
TFA9896_BF_INTENACS = 0x26b0,
TFA9896_BF_INTENSWS = 0x26c0,
TFA9896_BF_INTENWDS = 0x26d0,
TFA9896_BF_INTENAMPS = 0x26e0,
TFA9896_BF_INTENAREFS = 0x26f0,
TFA9896_BF_INTENERR = 0x2800,
TFA9896_BF_INTENACK = 0x2810,
TFA9896_BF_INTPOLVDDS = 0x2900,
TFA9896_BF_INTPOLPLLS = 0x2910,
TFA9896_BF_INTPOLOTDS = 0x2920,
TFA9896_BF_INTPOLOVDS = 0x2930,
TFA9896_BF_INTPOLUVDS = 0x2940,
TFA9896_BF_INTPOLOCDS = 0x2950,
TFA9896_BF_INTPOLCLKS = 0x2960,
TFA9896_BF_INTPOLCLIPS = 0x2970,
TFA9896_BF_INTPOLMTPB = 0x2980,
TFA9896_BF_INTPOLNOCLK = 0x2990,
TFA9896_BF_INTPOLSPKS = 0x29a0,
TFA9896_BF_INTPOLACS = 0x29b0,
TFA9896_BF_INTPOLSWS = 0x29c0,
TFA9896_BF_INTPOLWDS = 0x29d0,
TFA9896_BF_INTPOLAMPS = 0x29e0,
TFA9896_BF_INTPOLAREFS = 0x29f0,
TFA9896_BF_INTPOLERR = 0x2b00,
TFA9896_BF_INTPOLACK = 0x2b10,
TFA9896_BF_CLIP = 0x4900,
TFA9896_BF_CIMTP = 0x62b0,
TFA9896_BF_RST = 0x7000,
TFA9896_BF_DMEM = 0x7011,
TFA9896_BF_AIF = 0x7030,
TFA9896_BF_CFINT = 0x7040,
TFA9896_BF_REQ = 0x7087,
TFA9896_BF_MADD = 0x710f,
TFA9896_BF_MEMA = 0x720f,
TFA9896_BF_ERR = 0x7307,
TFA9896_BF_ACK = 0x7387,
TFA9896_BF_MTPOTC = 0x8000,
TFA9896_BF_MTPEX = 0x8010,
};
#define TFA9896_NAMETABLE \
static struct TfaBfName Tfa9896DatasheetNames[] = { \
{ 0x0, "VDDS" }, { 0x10, "PLLS" }, \
{ 0x20, "OTDS" }, { 0x30, "OVDS" }, \
{ 0x40, "UVDS" }, { 0x50, "OCDS" }, \
{ 0x60, "CLKS" }, { 0x70, "CLIPS" }, \
{ 0x80, "MTPB" }, { 0x90, "NOCLK" }, \
{ 0xa0, "SPKS" }, { 0xb0, "ACS" }, \
{ 0xc0, "SWS" }, { 0xd0, "WDS" }, \
{ 0xe0, "AMPS" }, { 0xf0, "AREFS" }, \
{ 0x109, "BATS" }, { 0x208, "TEMPS" }, \
{ 0x30f, "REV" }, { 0x420, "RCV" }, \
{ 0x431, "CHS12" }, { 0x450, "INPLVL" }, \
{ 0x461, "CHSA" }, { 0x4c3, "AUDFS" }, \
{ 0x501, "BSSCR" }, { 0x523, "BSST" }, \
{ 0x561, "BSSRL" }, { 0x582, "BSSRR" }, \
{ 0x5b1, "BSSHY" }, { 0x5e0, "BSSR" }, \
{ 0x5f0, "BSSBY" }, { 0x600, "DPSA" }, \
{ 0x613, "ATTEN" }, { 0x650, "CFSM" }, \
{ 0x670, "BSSS" }, { 0x687, "VOL" }, \
{ 0x702, "DCVO2" }, { 0x733, "DCMCC" }, \
{ 0x772, "DCVO1" }, { 0x7a0, "DCIE" }, \
{ 0x7b0, "DCSR" }, { 0x7c0, "DCPAVG" }, \
{ 0x7d0, "DCPWM" }, { 0x800, "TROS" }, \
{ 0x818, "EXTTS" }, { 0x900, "PWDN" }, \
{ 0x910, "I2CR" }, { 0x920, "CFE" }, \
{ 0x930, "AMPE" }, { 0x940, "DCA" }, \
{ 0x950, "SBSL" }, { 0x960, "AMPC" }, \
{ 0x970, "DCDIS" }, { 0x980, "PSDR" }, \
{ 0x9c1, "INTPAD" }, { 0x9e0, "IPLL" }, \
{ 0xa04, "DCTRIP" }, { 0xa54, "DCHOLD" }, \
{ 0xb07, "MTPK" }, { 0xc25, "CVFDLY" }, \
{ 0xec0, "OPENMTP" }, { 0x1011, "TDMPRF" }, \
{ 0x1030, "TDMEN" }, { 0x1040, "TDMCKINV" }, \
{ 0x1053, "TDMFSLN" }, { 0x1090, "TDMFSPOL" }, \
{ 0x10a4, "TDMSAMSZ" }, { 0x1103, "TDMSLOTS" }, \
{ 0x1144, "TDMSLLN" }, { 0x1194, "TDMBRMG" }, \
{ 0x11e0, "TDMDDEL" }, { 0x11f0, "TDMDADJ" }, \
{ 0x1201, "TDMTXFRM" }, { 0x1221, "TDMUUS0" }, \
{ 0x1241, "TDMUUS1" }, { 0x1270, "TDMSI0EN" }, \
{ 0x1280, "TDMSI1EN" }, { 0x1290, "TDMSI2EN" }, \
{ 0x12a0, "TDMSO0EN" }, { 0x12b0, "TDMSO1EN" }, \
{ 0x12c0, "TDMSO2EN" }, { 0x12d0, "TDMSI0IO" }, \
{ 0x12e0, "TDMSI1IO" }, { 0x12f0, "TDMSI2IO" }, \
{ 0x1300, "TDMSO0IO" }, { 0x1310, "TDMSO1IO" }, \
{ 0x1320, "TDMSO2IO" }, { 0x1333, "TDMSI0SL" }, \
{ 0x1373, "TDMSI1SL" }, { 0x13b3, "TDMSI2SL" }, \
{ 0x1403, "TDMSO0SL" }, { 0x1443, "TDMSO1SL" }, \
{ 0x1483, "TDMSO2SL" }, { 0x14c3, "NBCK" }, \
{ 0x2000, "INTOVDDS" }, { 0x2010, "INTOPLLS" }, \
{ 0x2020, "INTOOTDS" }, { 0x2030, "INTOOVDS" }, \
{ 0x2040, "INTOUVDS" }, { 0x2050, "INTOOCDS" }, \
{ 0x2060, "INTOCLKS" }, { 0x2070, "INTOCLIPS" }, \
{ 0x2080, "INTOMTPB" }, { 0x2090, "INTONOCLK" }, \
{ 0x20a0, "INTOSPKS" }, { 0x20b0, "INTOACS" }, \
{ 0x20c0, "INTOSWS" }, { 0x20d0, "INTOWDS" }, \
{ 0x20e0, "INTOAMPS" }, { 0x20f0, "INTOAREFS" }, \
{ 0x2200, "INTOERR" }, { 0x2210, "INTOACK" }, \
{ 0x2300, "INTIVDDS" }, { 0x2310, "INTIPLLS" }, \
{ 0x2320, "INTIOTDS" }, { 0x2330, "INTIOVDS" }, \
{ 0x2340, "INTIUVDS" }, { 0x2350, "INTIOCDS" }, \
{ 0x2360, "INTICLKS" }, { 0x2370, "INTICLIPS" }, \
{ 0x2380, "INTIMTPB" }, { 0x2390, "INTINOCLK" }, \
{ 0x23a0, "INTISPKS" }, { 0x23b0, "INTIACS" }, \
{ 0x23c0, "INTISWS" }, { 0x23d0, "INTIWDS" }, \
{ 0x23e0, "INTIAMPS" }, { 0x23f0, "INTIAREFS" }, \
{ 0x2500, "INTIERR" }, { 0x2510, "INTIACK" }, \
{ 0x2600, "INTENVDDS" }, { 0x2610, "INTENPLLS" }, \
{ 0x2620, "INTENOTDS" }, { 0x2630, "INTENOVDS" }, \
{ 0x2640, "INTENUVDS" }, { 0x2650, "INTENOCDS" }, \
{ 0x2660, "INTENCLKS" }, { 0x2670, "INTENCLIPS" }, \
{ 0x2680, "INTENMTPB" }, { 0x2690, "INTENNOCLK" }, \
{ 0x26a0, "INTENSPKS" }, { 0x26b0, "INTENACS" }, \
{ 0x26c0, "INTENSWS" }, { 0x26d0, "INTENWDS" }, \
{ 0x26e0, "INTENAMPS" }, { 0x26f0, "INTENAREFS" }, \
{ 0x2800, "INTENERR" }, { 0x2810, "INTENACK" }, \
{ 0x2900, "INTPOLVDDS" }, { 0x2910, "INTPOLPLLS" }, \
{ 0x2920, "INTPOLOTDS" }, { 0x2930, "INTPOLOVDS" }, \
{ 0x2940, "INTPOLUVDS" }, { 0x2950, "INTPOLOCDS" }, \
{ 0x2960, "INTPOLCLKS" }, { 0x2970, "INTPOLCLIPS" }, \
{ 0x2980, "INTPOLMTPB" }, { 0x2990, "INTPOLNOCLK" }, \
{ 0x29a0, "INTPOLSPKS" }, { 0x29b0, "INTPOLACS" }, \
{ 0x29c0, "INTPOLSWS" }, { 0x29d0, "INTPOLWDS" }, \
{ 0x29e0, "INTPOLAMPS" }, { 0x29f0, "INTPOLAREFS" }, \
{ 0x2b00, "INTPOLERR" }, { 0x2b10, "INTPOLACK" }, \
{ 0x4900, "CLIP" }, { 0x62b0, "CIMTP" }, \
{ 0x7000, "RST" }, { 0x7011, "DMEM" }, \
{ 0x7030, "AIF" }, { 0x7040, "CFINT" }, \
{ 0x7087, "REQ" }, { 0x710f, "MADD" }, \
{ 0x720f, "MEMA" }, { 0x7307, "ERR" }, \
{ 0x7387, "ACK" }, { 0x8000, "MTPOTC" }, \
{ 0x8010, "MTPEX" }, { 0x8045, "SWPROFIL" }, \
{ 0x80a5, "SWVSTEP" }, { 0xffff, "Unknown bitfield enum" } \
}
#define TFA9896_BITNAMETABLE \
static struct TfaBfName Tfa9896BitNames[] = { \
{ 0x0, "flag_por" }, \
{ 0x10, "flag_pll_lock" }, \
{ 0x20, "flag_otpok" }, \
{ 0x30, "flag_ovpok" }, \
{ 0x40, "flag_uvpok" }, \
{ 0x50, "flag_ocp_alarm" }, \
{ 0x60, "flag_clocks_stable" }, \
{ 0x70, "flag_clip" }, \
{ 0x80, "mtp_busy" }, \
{ 0x90, "flag_lost_clk" }, \
{ 0xa0, "flag_cf_speakererror" }, \
{ 0xb0, "flag_cold_started" }, \
{ 0xc0, "flag_engage" }, \
{ 0xd0, "flag_watchdog_reset" }, \
{ 0xe0, "flag_enbl_amp" }, \
{ 0xf0, "flag_enbl_ref" }, \
{ 0x109, "bat_adc" }, \
{ 0x208, "temp_adc" }, \
{ 0x30f, "device_rev" }, \
{ 0x420, "ctrl_rcv" }, \
{ 0x431, "chan_sel" }, \
{ 0x450, "input_level" }, \
{ 0x461, "vamp_sel" }, \
{ 0x4c3, "audio_fs" }, \
{ 0x501, "vbat_prot_attacktime" }, \
{ 0x523, "vbat_prot_thlevel" }, \
{ 0x561, "vbat_prot_max_reduct" }, \
{ 0x582, "vbat_prot_release_t" }, \
{ 0x5b1, "vbat_prot_hysterese" }, \
{ 0x5d0, "reset_min_vbat" }, \
{ 0x5e0, "sel_vbat" }, \
{ 0x5f0, "bypass_clipper" }, \
{ 0x600, "dpsa" }, \
{ 0x613, "ctrl_att" }, \
{ 0x650, "cf_mute" }, \
{ 0x670, "batsense_steepness" }, \
{ 0x687, "vol" }, \
{ 0x702, "scnd_boost_voltage" }, \
{ 0x733, "boost_cur" }, \
{ 0x772, "frst_boost_voltage" }, \
{ 0x7a0, "boost_intel" }, \
{ 0x7b0, "boost_speed" }, \
{ 0x7c0, "boost_peak2avg" }, \
{ 0x7d0, "dcdc_pwmonly" }, \
{ 0x7e0, "ignore_flag_voutcomp86" }, \
{ 0x800, "ext_temp_sel" }, \
{ 0x818, "ext_temp" }, \
{ 0x900, "powerdown" }, \
{ 0x910, "reset" }, \
{ 0x920, "enbl_coolflux" }, \
{ 0x930, "enbl_amplifier" }, \
{ 0x940, "enbl_boost" }, \
{ 0x950, "coolflux_configured" }, \
{ 0x960, "sel_enbl_amplifier" }, \
{ 0x970, "dcdcoff_mode" }, \
{ 0x980, "iddqtest" }, \
{ 0x9c1, "int_pad_io" }, \
{ 0x9e0, "sel_fs_bck" }, \
{ 0x9f0, "sel_scl_cf_clock" }, \
{ 0xa04, "boost_trip_lvl" }, \
{ 0xa54, "boost_hold_time" }, \
{ 0xaa1, "bst_slpcmplvl" }, \
{ 0xb07, "mtpkey2" }, \
{ 0xc00, "enbl_volt_sense" }, \
{ 0xc10, "vsense_pwm_sel" }, \
{ 0xc25, "vi_frac_delay" }, \
{ 0xc80, "sel_voltsense_out" }, \
{ 0xc90, "vsense_bypass_avg" }, \
{ 0xd05, "cf_frac_delay" }, \
{ 0xe00, "bypass_dcdc_curr_prot" }, \
{ 0xe10, "bypass_ocp" }, \
{ 0xe20, "ocptest" }, \
{ 0xe80, "disable_clock_sh_prot" }, \
{ 0xe92, "reserve_reg_15_09" }, \
{ 0xec0, "unprotect_mtp" }, \
{ 0xed2, "reserve_reg_15_13" }, \
{ 0xf00, "dcdc_pfm20khz_limit" }, \
{ 0xf11, "dcdc_ctrl_maxzercnt" }, \
{ 0xf36, "dcdc_vbat_delta_detect" }, \
{ 0xfa0, "dcdc_ignore_vbat" }, \
{ 0x1011, "tdm_usecase" }, \
{ 0x1030, "tdm_enable" }, \
{ 0x1040, "tdm_clk_inversion" }, \
{ 0x1053, "tdm_fs_ws_length" }, \
{ 0x1090, "tdm_fs_ws_polarity" }, \
{ 0x10a4, "tdm_sample_size" }, \
{ 0x1103, "tdm_nb_of_slots" }, \
{ 0x1144, "tdm_slot_length" }, \
{ 0x1194, "tdm_bits_remaining" }, \
{ 0x11e0, "tdm_data_delay" }, \
{ 0x11f0, "tdm_data_adjustment" }, \
{ 0x1201, "tdm_txdata_format" }, \
{ 0x1221, "tdm_txdata_format_unused_slot_sd0" }, \
{ 0x1241, "tdm_txdata_format_unused_slot_sd1" }, \
{ 0x1270, "tdm_sink0_enable" }, \
{ 0x1280, "tdm_sink1_enable" }, \
{ 0x1290, "tdm_sink2_enable" }, \
{ 0x12a0, "tdm_source0_enable" }, \
{ 0x12b0, "tdm_source1_enable" }, \
{ 0x12c0, "tdm_source2_enable" }, \
{ 0x12d0, "tdm_sink0_io" }, \
{ 0x12e0, "tdm_sink1_io" }, \
{ 0x12f0, "tdm_sink2_io" }, \
{ 0x1300, "tdm_source0_io" }, \
{ 0x1310, "tdm_source1_io" }, \
{ 0x1320, "tdm_source2_io" }, \
{ 0x1333, "tdm_sink0_slot" }, \
{ 0x1373, "tdm_sink1_slot" }, \
{ 0x13b3, "tdm_sink2_slot" }, \
{ 0x1403, "tdm_source0_slot" }, \
{ 0x1443, "tdm_source1_slot" }, \
{ 0x1483, "tdm_source2_slot" }, \
{ 0x14c3, "tdm_nbck" }, \
{ 0x1500, "flag_tdm_lut_error" }, \
{ 0x1512, "flag_tdm_status" }, \
{ 0x1540, "flag_tdm_error" }, \
{ 0x1551, "status_bst_mode" }, \
{ 0x2000, "flag_por_int_out" }, \
{ 0x2010, "flag_pll_lock_int_out" }, \
{ 0x2020, "flag_otpok_int_out" }, \
{ 0x2030, "flag_ovpok_int_out" }, \
{ 0x2040, "flag_uvpok_int_out" }, \
{ 0x2050, "flag_ocp_alarm_int_out" }, \
{ 0x2060, "flag_clocks_stable_int_out" }, \
{ 0x2070, "flag_clip_int_out" }, \
{ 0x2080, "mtp_busy_int_out" }, \
{ 0x2090, "flag_lost_clk_int_out" }, \
{ 0x20a0, "flag_cf_speakererror_int_out" }, \
{ 0x20b0, "flag_cold_started_int_out" }, \
{ 0x20c0, "flag_engage_int_out" }, \
{ 0x20d0, "flag_watchdog_reset_int_out" }, \
{ 0x20e0, "flag_enbl_amp_int_out" }, \
{ 0x20f0, "flag_enbl_ref_int_out" }, \
{ 0x2100, "flag_voutcomp_int_out" }, \
{ 0x2110, "flag_voutcomp93_int_out" }, \
{ 0x2120, "flag_voutcomp86_int_out" }, \
{ 0x2130, "flag_hiz_int_out" }, \
{ 0x2140, "flag_ocpokbst_int_out" }, \
{ 0x2150, "flag_peakcur_int_out" }, \
{ 0x2160, "flag_ocpokap_int_out" }, \
{ 0x2170, "flag_ocpokan_int_out" }, \
{ 0x2180, "flag_ocpokbp_int_out" }, \
{ 0x2190, "flag_ocpokbn_int_out" }, \
{ 0x21a0, "flag_adc10_ready_int_out" }, \
{ 0x21b0, "flag_clipa_high_int_out" }, \
{ 0x21c0, "flag_clipa_low_int_out" }, \
{ 0x21d0, "flag_clipb_high_int_out" }, \
{ 0x21e0, "flag_clipb_low_int_out" }, \
{ 0x21f0, "flag_tdm_error_int_out" }, \
{ 0x2200, "flag_cfma_err_int_out" }, \
{ 0x2210, "flag_cfma_ack_int_out" }, \
{ 0x2300, "flag_por_int_in" }, \
{ 0x2310, "flag_pll_lock_int_in" }, \
{ 0x2320, "flag_otpok_int_in" }, \
{ 0x2330, "flag_ovpok_int_in" }, \
{ 0x2340, "flag_uvpok_int_in" }, \
{ 0x2350, "flag_ocp_alarm_int_in" }, \
{ 0x2360, "flag_clocks_stable_int_in" }, \
{ 0x2370, "flag_clip_int_in" }, \
{ 0x2380, "mtp_busy_int_in" }, \
{ 0x2390, "flag_lost_clk_int_in" }, \
{ 0x23a0, "flag_cf_speakererror_int_in" }, \
{ 0x23b0, "flag_cold_started_int_in" }, \
{ 0x23c0, "flag_engage_int_in" }, \
{ 0x23d0, "flag_watchdog_reset_int_in" }, \
{ 0x23e0, "flag_enbl_amp_int_in" }, \
{ 0x23f0, "flag_enbl_ref_int_in" }, \
{ 0x2400, "flag_voutcomp_int_in" }, \
{ 0x2410, "flag_voutcomp93_int_in" }, \
{ 0x2420, "flag_voutcomp86_int_in" }, \
{ 0x2430, "flag_hiz_int_in" }, \
{ 0x2440, "flag_ocpokbst_int_in" }, \
{ 0x2450, "flag_peakcur_int_in" }, \
{ 0x2460, "flag_ocpokap_int_in" }, \
{ 0x2470, "flag_ocpokan_int_in" }, \
{ 0x2480, "flag_ocpokbp_int_in" }, \
{ 0x2490, "flag_ocpokbn_int_in" }, \
{ 0x24a0, "flag_adc10_ready_int_in" }, \
{ 0x24b0, "flag_clipa_high_int_in" }, \
{ 0x24c0, "flag_clipa_low_int_in" }, \
{ 0x24d0, "flag_clipb_high_int_in" }, \
{ 0x24e0, "flag_clipb_low_int_in" }, \
{ 0x24f0, "flag_tdm_error_int_in" }, \
{ 0x2500, "flag_cfma_err_int_in" }, \
{ 0x2510, "flag_cfma_ack_int_in" }, \
{ 0x2600, "flag_por_int_enable" }, \
{ 0x2610, "flag_pll_lock_int_enable" }, \
{ 0x2620, "flag_otpok_int_enable" }, \
{ 0x2630, "flag_ovpok_int_enable" }, \
{ 0x2640, "flag_uvpok_int_enable" }, \
{ 0x2650, "flag_ocp_alarm_int_enable" }, \
{ 0x2660, "flag_clocks_stable_int_enable" }, \
{ 0x2670, "flag_clip_int_enable" }, \
{ 0x2680, "mtp_busy_int_enable" }, \
{ 0x2690, "flag_lost_clk_int_enable" }, \
{ 0x26a0, "flag_cf_speakererror_int_enable" }, \
{ 0x26b0, "flag_cold_started_int_enable" }, \
{ 0x26c0, "flag_engage_int_enable" }, \
{ 0x26d0, "flag_watchdog_reset_int_enable" }, \
{ 0x26e0, "flag_enbl_amp_int_enable" }, \
{ 0x26f0, "flag_enbl_ref_int_enable" }, \
{ 0x2700, "flag_voutcomp_int_enable" }, \
{ 0x2710, "flag_voutcomp93_int_enable" }, \
{ 0x2720, "flag_voutcomp86_int_enable" }, \
{ 0x2730, "flag_hiz_int_enable" }, \
{ 0x2740, "flag_ocpokbst_int_enable" }, \
{ 0x2750, "flag_peakcur_int_enable" }, \
{ 0x2760, "flag_ocpokap_int_enable" }, \
{ 0x2770, "flag_ocpokan_int_enable" }, \
{ 0x2780, "flag_ocpokbp_int_enable" }, \
{ 0x2790, "flag_ocpokbn_int_enable" }, \
{ 0x27a0, "flag_adc10_ready_int_enable" }, \
{ 0x27b0, "flag_clipa_high_int_enable" }, \
{ 0x27c0, "flag_clipa_low_int_enable" }, \
{ 0x27d0, "flag_clipb_high_int_enable" }, \
{ 0x27e0, "flag_clipb_low_int_enable" }, \
{ 0x27f0, "flag_tdm_error_int_enable" }, \
{ 0x2800, "flag_cfma_err_int_enable" }, \
{ 0x2810, "flag_cfma_ack_int_enable" }, \
{ 0x2900, "flag_por_int_pol" }, \
{ 0x2910, "flag_pll_lock_int_pol" }, \
{ 0x2920, "flag_otpok_int_pol" }, \
{ 0x2930, "flag_ovpok_int_pol" }, \
{ 0x2940, "flag_uvpok_int_pol" }, \
{ 0x2950, "flag_ocp_alarm_int_pol" }, \
{ 0x2960, "flag_clocks_stable_int_pol" }, \
{ 0x2970, "flag_clip_int_pol" }, \
{ 0x2980, "mtp_busy_int_pol" }, \
{ 0x2990, "flag_lost_clk_int_pol" }, \
{ 0x29a0, "flag_cf_speakererror_int_pol" }, \
{ 0x29b0, "flag_cold_started_int_pol" }, \
{ 0x29c0, "flag_engage_int_pol" }, \
{ 0x29d0, "flag_watchdog_reset_int_pol" }, \
{ 0x29e0, "flag_enbl_amp_int_pol" }, \
{ 0x29f0, "flag_enbl_ref_int_pol" }, \
{ 0x2a00, "flag_voutcomp_int_pol" }, \
{ 0x2a10, "flag_voutcomp93_int_pol" }, \
{ 0x2a20, "flag_voutcomp86_int_pol" }, \
{ 0x2a30, "flag_hiz_int_pol" }, \
{ 0x2a40, "flag_ocpokbst_int_pol" }, \
{ 0x2a50, "flag_peakcur_int_pol" }, \
{ 0x2a60, "flag_ocpokap_int_pol" }, \
{ 0x2a70, "flag_ocpokan_int_pol" }, \
{ 0x2a80, "flag_ocpokbp_int_pol" }, \
{ 0x2a90, "flag_ocpokbn_int_pol" }, \
{ 0x2aa0, "flag_adc10_ready_int_pol" }, \
{ 0x2ab0, "flag_clipa_high_int_pol" }, \
{ 0x2ac0, "flag_clipa_low_int_pol" }, \
{ 0x2ad0, "flag_clipb_high_int_pol" }, \
{ 0x2ae0, "flag_clipb_low_int_pol" }, \
{ 0x2af0, "flag_tdm_error_int_pol" }, \
{ 0x2b00, "flag_cfma_err_int_pol" }, \
{ 0x2b10, "flag_cfma_ack_int_pol" }, \
{ 0x3000, "flag_voutcomp" }, \
{ 0x3010, "flag_voutcomp93" }, \
{ 0x3020, "flag_voutcomp86" }, \
{ 0x3030, "flag_hiz" }, \
{ 0x3040, "flag_ocpokbst" }, \
{ 0x3050, "flag_peakcur" }, \
{ 0x3060, "flag_ocpokap" }, \
{ 0x3070, "flag_ocpokan" }, \
{ 0x3080, "flag_ocpokbp" }, \
{ 0x3090, "flag_ocpokbn" }, \
{ 0x30a0, "flag_adc10_ready" }, \
{ 0x30b0, "flag_clipa_high" }, \
{ 0x30c0, "flag_clipa_low" }, \
{ 0x30d0, "flag_clipb_high" }, \
{ 0x30e0, "flag_clipb_low" }, \
{ 0x310f, "mtp_man_data_out" }, \
{ 0x3200, "key01_locked" }, \
{ 0x3210, "key02_locked" }, \
{ 0x3225, "mtp_ecc_tcout" }, \
{ 0x3280, "mtpctrl_valid_test_rd" }, \
{ 0x3290, "mtpctrl_valid_test_wr" }, \
{ 0x32a0, "flag_in_alarm_state" }, \
{ 0x32b0, "mtp_ecc_err2" }, \
{ 0x32c0, "mtp_ecc_err1" }, \
{ 0x32d0, "mtp_mtp_hvf" }, \
{ 0x32f0, "mtp_zero_check_fail" }, \
{ 0x3309, "data_adc10_tempbat" }, \
{ 0x400f, "hid_code" }, \
{ 0x4100, "bypass_hp" }, \
{ 0x4110, "hard_mute" }, \
{ 0x4120, "soft_mute" }, \
{ 0x4134, "pwm_delay" }, \
{ 0x4180, "pwm_shape" }, \
{ 0x4190, "pwm_bitlength" }, \
{ 0x4203, "drive" }, \
{ 0x4240, "reclock_pwm" }, \
{ 0x4250, "reclock_voltsense" }, \
{ 0x4281, "dpsalevel" }, \
{ 0x42a1, "dpsa_release" }, \
{ 0x42c0, "coincidence" }, \
{ 0x42d0, "kickback" }, \
{ 0x4306, "drivebst" }, \
{ 0x4370, "boost_alg" }, \
{ 0x4381, "boost_loopgain" }, \
{ 0x43a0, "ocptestbst" }, \
{ 0x43d0, "test_abistfft_enbl" }, \
{ 0x43e0, "bst_dcmbst" }, \
{ 0x43f0, "test_bcontrol" }, \
{ 0x4400, "reversebst" }, \
{ 0x4410, "sensetest" }, \
{ 0x4420, "enbl_engagebst" }, \
{ 0x4470, "enbl_slopecur" }, \
{ 0x4480, "enbl_voutcomp" }, \
{ 0x4490, "enbl_voutcomp93" }, \
{ 0x44a0, "enbl_voutcomp86" }, \
{ 0x44b0, "enbl_hizcom" }, \
{ 0x44c0, "enbl_peakcur" }, \
{ 0x44d0, "bypass_ovpglitch" }, \
{ 0x44e0, "enbl_windac" }, \
{ 0x44f0, "enbl_powerbst" }, \
{ 0x4507, "ocp_thr" }, \
{ 0x4580, "bypass_glitchfilter" }, \
{ 0x4590, "bypass_ovp" }, \
{ 0x45a0, "bypass_uvp" }, \
{ 0x45b0, "bypass_otp" }, \
{ 0x45d0, "bypass_ocpcounter" }, \
{ 0x45e0, "bypass_lost_clk" }, \
{ 0x45f0, "vpalarm" }, \
{ 0x4600, "bypass_gc" }, \
{ 0x4610, "cs_gain_control" }, \
{ 0x4627, "cs_gain" }, \
{ 0x46a0, "bypass_lp" }, \
{ 0x46b0, "bypass_pwmcounter" }, \
{ 0x46c0, "cs_negfixed" }, \
{ 0x46d2, "cs_neghyst" }, \
{ 0x4700, "switch_fb" }, \
{ 0x4713, "se_hyst" }, \
{ 0x4754, "se_level" }, \
{ 0x47a5, "ktemp" }, \
{ 0x4800, "cs_negin" }, \
{ 0x4810, "cs_sein" }, \
{ 0x4820, "cs_coincidence" }, \
{ 0x4830, "iddqtestbst" }, \
{ 0x4840, "coincidencebst" }, \
{ 0x4876, "delay_se_neg" }, \
{ 0x48e1, "cs_ttrack" }, \
{ 0x4900, "bypass_clip" }, \
{ 0x4920, "cf_cgate_off" }, \
{ 0x4940, "clipfast" }, \
{ 0x4950, "cs_8ohm" }, \
{ 0x4974, "delay_clock_sh" }, \
{ 0x49c0, "inv_clksh" }, \
{ 0x49d0, "inv_neg" }, \
{ 0x49e0, "inv_se" }, \
{ 0x49f0, "setse" }, \
{ 0x4a12, "adc10_sel" }, \
{ 0x4a60, "adc10_reset" }, \
{ 0x4a81, "adc10_test" }, \
{ 0x4aa0, "bypass_lp_vbat" }, \
{ 0x4ae0, "dc_offset" }, \
{ 0x4af0, "tsense_hibias" }, \
{ 0x4b00, "adc13_iset" }, \
{ 0x4b14, "adc13_gain" }, \
{ 0x4b61, "adc13_slowdel" }, \
{ 0x4b83, "adc13_offset" }, \
{ 0x4bc0, "adc13_bsoinv" }, \
{ 0x4bd0, "adc13_resonator_enable" }, \
{ 0x4be0, "testmicadc" }, \
{ 0x4c0f, "abist_offset" }, \
{ 0x4d05, "windac" }, \
{ 0x4dc3, "pwm_dcc_cnt" }, \
{ 0x4e04, "slopecur" }, \
{ 0x4e50, "ctrl_dem" }, \
{ 0x4ed0, "enbl_pwm_dcc" }, \
{ 0x4f00, "bst_bypass_bstcur" }, \
{ 0x4f10, "bst_bypass_bstfoldback" }, \
{ 0x4f20, "bst_ctrl_azbst" }, \
{ 0x5007, "gain" }, \
{ 0x5081, "sourceb" }, \
{ 0x50a1, "sourcea" }, \
{ 0x50c1, "sourcebst" }, \
{ 0x50e0, "tdm_enable_loopback" }, \
{ 0x5104, "pulselengthbst" }, \
{ 0x5150, "bypasslatchbst" }, \
{ 0x5160, "invertbst" }, \
{ 0x5174, "pulselength" }, \
{ 0x51c0, "bypasslatch" }, \
{ 0x51d0, "invertb" }, \
{ 0x51e0, "inverta" }, \
{ 0x51f0, "bypass_ctrlloop" }, \
{ 0x5210, "test_rdsona" }, \
{ 0x5220, "test_rdsonb" }, \
{ 0x5230, "test_rdsonbst" }, \
{ 0x5240, "test_cvia" }, \
{ 0x5250, "test_cvib" }, \
{ 0x5260, "test_cvibst" }, \
{ 0x5306, "digimuxa_sel" }, \
{ 0x5376, "digimuxb_sel" }, \
{ 0x5400, "hs_mode" }, \
{ 0x5412, "test_parametric_io" }, \
{ 0x5440, "enbl_ringo" }, \
{ 0x5456, "digimuxc_sel" }, \
{ 0x54c0, "dio_ehs" }, \
{ 0x54d0, "gainio_ehs" }, \
{ 0x550d, "enbl_amp" }, \
{ 0x5600, "use_direct_ctrls" }, \
{ 0x5610, "rst_datapath" }, \
{ 0x5620, "rst_cgu" }, \
{ 0x5637, "enbl_ref" }, \
{ 0x56b0, "enbl_engage" }, \
{ 0x56c0, "use_direct_clk_ctrl" }, \
{ 0x56d0, "use_direct_pll_ctrl" }, \
{ 0x5707, "anamux" }, \
{ 0x57e0, "otptest" }, \
{ 0x57f0, "reverse" }, \
{ 0x5813, "pll_selr" }, \
{ 0x5854, "pll_selp" }, \
{ 0x58a5, "pll_seli" }, \
{ 0x5950, "pll_mdec_msb" }, \
{ 0x5960, "pll_ndec_msb" }, \
{ 0x5970, "pll_frm" }, \
{ 0x5980, "pll_directi" }, \
{ 0x5990, "pll_directo" }, \
{ 0x59a0, "enbl_pll" }, \
{ 0x59f0, "pll_bypass" }, \
{ 0x5a0f, "tsig_freq" }, \
{ 0x5b02, "tsig_freq_msb" }, \
{ 0x5b30, "inject_tsig" }, \
{ 0x5b44, "adc10_prog_sample" }, \
{ 0x5c0f, "pll_mdec" }, \
{ 0x5d06, "pll_pdec" }, \
{ 0x5d78, "pll_ndec" }, \
{ 0x6007, "mtpkey1" }, \
{ 0x6185, "mtp_ecc_tcin" }, \
{ 0x6203, "mtp_man_address_in" }, \
{ 0x6260, "mtp_ecc_eeb" }, \
{ 0x6270, "mtp_ecc_ecb" }, \
{ 0x6280, "man_copy_mtp_to_iic" }, \
{ 0x6290, "man_copy_iic_to_mtp" }, \
{ 0x62a0, "auto_copy_mtp_to_iic" }, \
{ 0x62b0, "auto_copy_iic_to_mtp" }, \
{ 0x62d2, "mtp_speed_mode" }, \
{ 0x6340, "mtp_direct_enable" }, \
{ 0x6350, "mtp_direct_wr" }, \
{ 0x6360, "mtp_direct_rd" }, \
{ 0x6370, "mtp_direct_rst" }, \
{ 0x6380, "mtp_direct_ers" }, \
{ 0x6390, "mtp_direct_prg" }, \
{ 0x63a0, "mtp_direct_epp" }, \
{ 0x63b4, "mtp_direct_test" }, \
{ 0x640f, "mtp_man_data_in" }, \
{ 0x7000, "cf_rst_dsp" }, \
{ 0x7011, "cf_dmem" }, \
{ 0x7030, "cf_aif" }, \
{ 0x7040, "cf_int" }, \
{ 0x7087, "cf_req" }, \
{ 0x710f, "cf_madd" }, \
{ 0x720f, "cf_mema" }, \
{ 0x7307, "cf_err" }, \
{ 0x7387, "cf_ack" }, \
{ 0x8000, "calibration_onetime" }, \
{ 0x8010, "calibr_ron_done" }, \
{ 0x8105, "calibr_vout_offset" }, \
{ 0x8163, "calibr_delta_gain" }, \
{ 0x81a5, "calibr_offs_amp" }, \
{ 0x8207, "calibr_gain_cs" }, \
{ 0x8284, "calibr_temp_offset" }, \
{ 0x82d2, "calibr_temp_gain" }, \
{ 0x830f, "calibr_ron" }, \
{ 0x8505, "type_bits_hw" }, \
{ 0x8601, "type_bits_1_0_sw" }, \
{ 0x8681, "type_bits_9_8_sw" }, \
{ 0x870f, "type_bits2_sw" }, \
{ 0x8806, "htol_iic_addr" }, \
{ 0x8870, "htol_iic_addr_en" }, \
{ 0x8881, "ctrl_ovp_response" }, \
{ 0x88a0, "disable_ovp_alarm_state" }, \
{ 0x88b0, "enbl_stretch_ovp" }, \
{ 0x88c0, "cf_debug_mode" }, \
{ 0x8a0f, "production_data1" }, \
{ 0x8b0f, "production_data2" }, \
{ 0x8c0f, "production_data3" }, \
{ 0x8d0f, "production_data4" }, \
{ 0x8e0f, "production_data5" }, \
{ 0x8f0f, "production_data6" }, \
{ 0xffff, "Unknown bitfield enum" } \
}
enum TFA9896_irq {
TFA9896_irq_vdds = 0,
TFA9896_irq_plls = 1,
TFA9896_irq_ds = 2,
TFA9896_irq_vds = 3,
TFA9896_irq_uvds = 4,
TFA9896_irq_cds = 5,
TFA9896_irq_clks = 6,
TFA9896_irq_clips = 7,
TFA9896_irq_mtpb = 8,
TFA9896_irq_clk = 9,
TFA9896_irq_spks = 10,
TFA9896_irq_acs = 11,
TFA9896_irq_sws = 12,
TFA9896_irq_wds = 13,
TFA9896_irq_amps = 14,
TFA9896_irq_arefs = 15,
TFA9896_irq_err = 32,
TFA9896_irq_ack = 33,
TFA9896_irq_max = 34,
TFA9896_irq_all = -1
};
#define TFA9896_IRQ_NAMETABLE \
static struct TfaIrqName TFA9896IrqNames[] = { \
{ 0, "VDDS" }, { 1, "PLLS" }, { 2, "DS" }, { 3, "VDS" }, \
{ 4, "UVDS" }, { 5, "CDS" }, { 6, "CLKS" }, { 7, "CLIPS" }, \
{ 8, "MTPB" }, { 9, "CLK" }, { 10, "SPKS" }, { 11, "ACS" }, \
{ 12, "SWS" }, { 13, "WDS" }, { 14, "AMPS" }, { 15, "AREFS" }, \
{ 16, "16" }, { 17, "17" }, { 18, "18" }, { 19, "19" }, \
{ 20, "20" }, { 21, "21" }, { 22, "22" }, { 23, "23" }, \
{ 24, "24" }, { 25, "25" }, { 26, "26" }, { 27, "27" }, \
{ 28, "28" }, { 29, "29" }, { 30, "30" }, { 31, "31" }, \
{ 32, "ERR" }, { 33, "ACK" }, { 34, "34" }, \
}
#endif