0001
0002
0003
0004
0005
0006
0007
0008 #ifndef __LINUX_MFD_WM8400_AUDIO_H
0009 #define __LINUX_MFD_WM8400_AUDIO_H
0010
0011 #include <linux/mfd/wm8400-audio.h>
0012
0013
0014
0015
0016 #define WM8400_CODEC_ENA 0x8000
0017 #define WM8400_CODEC_ENA_MASK 0x8000
0018 #define WM8400_CODEC_ENA_SHIFT 15
0019 #define WM8400_CODEC_ENA_WIDTH 1
0020 #define WM8400_SYSCLK_ENA 0x4000
0021 #define WM8400_SYSCLK_ENA_MASK 0x4000
0022 #define WM8400_SYSCLK_ENA_SHIFT 14
0023 #define WM8400_SYSCLK_ENA_WIDTH 1
0024 #define WM8400_SPK_MIX_ENA 0x2000
0025 #define WM8400_SPK_MIX_ENA_MASK 0x2000
0026 #define WM8400_SPK_MIX_ENA_SHIFT 13
0027 #define WM8400_SPK_MIX_ENA_WIDTH 1
0028 #define WM8400_SPK_ENA 0x1000
0029 #define WM8400_SPK_ENA_MASK 0x1000
0030 #define WM8400_SPK_ENA_SHIFT 12
0031 #define WM8400_SPK_ENA_WIDTH 1
0032 #define WM8400_OUT3_ENA 0x0800
0033 #define WM8400_OUT3_ENA_MASK 0x0800
0034 #define WM8400_OUT3_ENA_SHIFT 11
0035 #define WM8400_OUT3_ENA_WIDTH 1
0036 #define WM8400_OUT4_ENA 0x0400
0037 #define WM8400_OUT4_ENA_MASK 0x0400
0038 #define WM8400_OUT4_ENA_SHIFT 10
0039 #define WM8400_OUT4_ENA_WIDTH 1
0040 #define WM8400_LOUT_ENA 0x0200
0041 #define WM8400_LOUT_ENA_MASK 0x0200
0042 #define WM8400_LOUT_ENA_SHIFT 9
0043 #define WM8400_LOUT_ENA_WIDTH 1
0044 #define WM8400_ROUT_ENA 0x0100
0045 #define WM8400_ROUT_ENA_MASK 0x0100
0046 #define WM8400_ROUT_ENA_SHIFT 8
0047 #define WM8400_ROUT_ENA_WIDTH 1
0048 #define WM8400_MIC1BIAS_ENA 0x0010
0049 #define WM8400_MIC1BIAS_ENA_MASK 0x0010
0050 #define WM8400_MIC1BIAS_ENA_SHIFT 4
0051 #define WM8400_MIC1BIAS_ENA_WIDTH 1
0052 #define WM8400_VMID_MODE_MASK 0x0006
0053 #define WM8400_VMID_MODE_SHIFT 1
0054 #define WM8400_VMID_MODE_WIDTH 2
0055 #define WM8400_VREF_ENA 0x0001
0056 #define WM8400_VREF_ENA_MASK 0x0001
0057 #define WM8400_VREF_ENA_SHIFT 0
0058 #define WM8400_VREF_ENA_WIDTH 1
0059
0060
0061
0062
0063 #define WM8400_FLL_ENA 0x8000
0064 #define WM8400_FLL_ENA_MASK 0x8000
0065 #define WM8400_FLL_ENA_SHIFT 15
0066 #define WM8400_FLL_ENA_WIDTH 1
0067 #define WM8400_TSHUT_ENA 0x4000
0068 #define WM8400_TSHUT_ENA_MASK 0x4000
0069 #define WM8400_TSHUT_ENA_SHIFT 14
0070 #define WM8400_TSHUT_ENA_WIDTH 1
0071 #define WM8400_TSHUT_OPDIS 0x2000
0072 #define WM8400_TSHUT_OPDIS_MASK 0x2000
0073 #define WM8400_TSHUT_OPDIS_SHIFT 13
0074 #define WM8400_TSHUT_OPDIS_WIDTH 1
0075 #define WM8400_OPCLK_ENA 0x0800
0076 #define WM8400_OPCLK_ENA_MASK 0x0800
0077 #define WM8400_OPCLK_ENA_SHIFT 11
0078 #define WM8400_OPCLK_ENA_WIDTH 1
0079 #define WM8400_AINL_ENA 0x0200
0080 #define WM8400_AINL_ENA_MASK 0x0200
0081 #define WM8400_AINL_ENA_SHIFT 9
0082 #define WM8400_AINL_ENA_WIDTH 1
0083 #define WM8400_AINR_ENA 0x0100
0084 #define WM8400_AINR_ENA_MASK 0x0100
0085 #define WM8400_AINR_ENA_SHIFT 8
0086 #define WM8400_AINR_ENA_WIDTH 1
0087 #define WM8400_LIN34_ENA 0x0080
0088 #define WM8400_LIN34_ENA_MASK 0x0080
0089 #define WM8400_LIN34_ENA_SHIFT 7
0090 #define WM8400_LIN34_ENA_WIDTH 1
0091 #define WM8400_LIN12_ENA 0x0040
0092 #define WM8400_LIN12_ENA_MASK 0x0040
0093 #define WM8400_LIN12_ENA_SHIFT 6
0094 #define WM8400_LIN12_ENA_WIDTH 1
0095 #define WM8400_RIN34_ENA 0x0020
0096 #define WM8400_RIN34_ENA_MASK 0x0020
0097 #define WM8400_RIN34_ENA_SHIFT 5
0098 #define WM8400_RIN34_ENA_WIDTH 1
0099 #define WM8400_RIN12_ENA 0x0010
0100 #define WM8400_RIN12_ENA_MASK 0x0010
0101 #define WM8400_RIN12_ENA_SHIFT 4
0102 #define WM8400_RIN12_ENA_WIDTH 1
0103 #define WM8400_ADCL_ENA 0x0002
0104 #define WM8400_ADCL_ENA_MASK 0x0002
0105 #define WM8400_ADCL_ENA_SHIFT 1
0106 #define WM8400_ADCL_ENA_WIDTH 1
0107 #define WM8400_ADCR_ENA 0x0001
0108 #define WM8400_ADCR_ENA_MASK 0x0001
0109 #define WM8400_ADCR_ENA_SHIFT 0
0110 #define WM8400_ADCR_ENA_WIDTH 1
0111
0112
0113
0114
0115 #define WM8400_LON_ENA 0x2000
0116 #define WM8400_LON_ENA_MASK 0x2000
0117 #define WM8400_LON_ENA_SHIFT 13
0118 #define WM8400_LON_ENA_WIDTH 1
0119 #define WM8400_LOP_ENA 0x1000
0120 #define WM8400_LOP_ENA_MASK 0x1000
0121 #define WM8400_LOP_ENA_SHIFT 12
0122 #define WM8400_LOP_ENA_WIDTH 1
0123 #define WM8400_RON_ENA 0x0800
0124 #define WM8400_RON_ENA_MASK 0x0800
0125 #define WM8400_RON_ENA_SHIFT 11
0126 #define WM8400_RON_ENA_WIDTH 1
0127 #define WM8400_ROP_ENA 0x0400
0128 #define WM8400_ROP_ENA_MASK 0x0400
0129 #define WM8400_ROP_ENA_SHIFT 10
0130 #define WM8400_ROP_ENA_WIDTH 1
0131 #define WM8400_LOPGA_ENA 0x0080
0132 #define WM8400_LOPGA_ENA_MASK 0x0080
0133 #define WM8400_LOPGA_ENA_SHIFT 7
0134 #define WM8400_LOPGA_ENA_WIDTH 1
0135 #define WM8400_ROPGA_ENA 0x0040
0136 #define WM8400_ROPGA_ENA_MASK 0x0040
0137 #define WM8400_ROPGA_ENA_SHIFT 6
0138 #define WM8400_ROPGA_ENA_WIDTH 1
0139 #define WM8400_LOMIX_ENA 0x0020
0140 #define WM8400_LOMIX_ENA_MASK 0x0020
0141 #define WM8400_LOMIX_ENA_SHIFT 5
0142 #define WM8400_LOMIX_ENA_WIDTH 1
0143 #define WM8400_ROMIX_ENA 0x0010
0144 #define WM8400_ROMIX_ENA_MASK 0x0010
0145 #define WM8400_ROMIX_ENA_SHIFT 4
0146 #define WM8400_ROMIX_ENA_WIDTH 1
0147 #define WM8400_DACL_ENA 0x0002
0148 #define WM8400_DACL_ENA_MASK 0x0002
0149 #define WM8400_DACL_ENA_SHIFT 1
0150 #define WM8400_DACL_ENA_WIDTH 1
0151 #define WM8400_DACR_ENA 0x0001
0152 #define WM8400_DACR_ENA_MASK 0x0001
0153 #define WM8400_DACR_ENA_SHIFT 0
0154 #define WM8400_DACR_ENA_WIDTH 1
0155
0156
0157
0158
0159 #define WM8400_AIFADCL_SRC 0x8000
0160 #define WM8400_AIFADCL_SRC_MASK 0x8000
0161 #define WM8400_AIFADCL_SRC_SHIFT 15
0162 #define WM8400_AIFADCL_SRC_WIDTH 1
0163 #define WM8400_AIFADCR_SRC 0x4000
0164 #define WM8400_AIFADCR_SRC_MASK 0x4000
0165 #define WM8400_AIFADCR_SRC_SHIFT 14
0166 #define WM8400_AIFADCR_SRC_WIDTH 1
0167 #define WM8400_AIFADC_TDM 0x2000
0168 #define WM8400_AIFADC_TDM_MASK 0x2000
0169 #define WM8400_AIFADC_TDM_SHIFT 13
0170 #define WM8400_AIFADC_TDM_WIDTH 1
0171 #define WM8400_AIFADC_TDM_CHAN 0x1000
0172 #define WM8400_AIFADC_TDM_CHAN_MASK 0x1000
0173 #define WM8400_AIFADC_TDM_CHAN_SHIFT 12
0174 #define WM8400_AIFADC_TDM_CHAN_WIDTH 1
0175 #define WM8400_AIF_BCLK_INV 0x0100
0176 #define WM8400_AIF_BCLK_INV_MASK 0x0100
0177 #define WM8400_AIF_BCLK_INV_SHIFT 8
0178 #define WM8400_AIF_BCLK_INV_WIDTH 1
0179 #define WM8400_AIF_LRCLK_INV 0x0080
0180 #define WM8400_AIF_LRCLK_INV_MASK 0x0080
0181 #define WM8400_AIF_LRCLK_INV_SHIFT 7
0182 #define WM8400_AIF_LRCLK_INV_WIDTH 1
0183 #define WM8400_AIF_WL_MASK 0x0060
0184 #define WM8400_AIF_WL_SHIFT 5
0185 #define WM8400_AIF_WL_WIDTH 2
0186 #define WM8400_AIF_WL_16BITS (0 << 5)
0187 #define WM8400_AIF_WL_20BITS (1 << 5)
0188 #define WM8400_AIF_WL_24BITS (2 << 5)
0189 #define WM8400_AIF_WL_32BITS (3 << 5)
0190 #define WM8400_AIF_FMT_MASK 0x0018
0191 #define WM8400_AIF_FMT_SHIFT 3
0192 #define WM8400_AIF_FMT_WIDTH 2
0193 #define WM8400_AIF_FMT_RIGHTJ (0 << 3)
0194 #define WM8400_AIF_FMT_LEFTJ (1 << 3)
0195 #define WM8400_AIF_FMT_I2S (2 << 3)
0196 #define WM8400_AIF_FMT_DSP (3 << 3)
0197
0198
0199
0200
0201 #define WM8400_DACL_SRC 0x8000
0202 #define WM8400_DACL_SRC_MASK 0x8000
0203 #define WM8400_DACL_SRC_SHIFT 15
0204 #define WM8400_DACL_SRC_WIDTH 1
0205 #define WM8400_DACR_SRC 0x4000
0206 #define WM8400_DACR_SRC_MASK 0x4000
0207 #define WM8400_DACR_SRC_SHIFT 14
0208 #define WM8400_DACR_SRC_WIDTH 1
0209 #define WM8400_AIFDAC_TDM 0x2000
0210 #define WM8400_AIFDAC_TDM_MASK 0x2000
0211 #define WM8400_AIFDAC_TDM_SHIFT 13
0212 #define WM8400_AIFDAC_TDM_WIDTH 1
0213 #define WM8400_AIFDAC_TDM_CHAN 0x1000
0214 #define WM8400_AIFDAC_TDM_CHAN_MASK 0x1000
0215 #define WM8400_AIFDAC_TDM_CHAN_SHIFT 12
0216 #define WM8400_AIFDAC_TDM_CHAN_WIDTH 1
0217 #define WM8400_DAC_BOOST_MASK 0x0C00
0218 #define WM8400_DAC_BOOST_SHIFT 10
0219 #define WM8400_DAC_BOOST_WIDTH 2
0220 #define WM8400_DAC_COMP 0x0010
0221 #define WM8400_DAC_COMP_MASK 0x0010
0222 #define WM8400_DAC_COMP_SHIFT 4
0223 #define WM8400_DAC_COMP_WIDTH 1
0224 #define WM8400_DAC_COMPMODE 0x0008
0225 #define WM8400_DAC_COMPMODE_MASK 0x0008
0226 #define WM8400_DAC_COMPMODE_SHIFT 3
0227 #define WM8400_DAC_COMPMODE_WIDTH 1
0228 #define WM8400_ADC_COMP 0x0004
0229 #define WM8400_ADC_COMP_MASK 0x0004
0230 #define WM8400_ADC_COMP_SHIFT 2
0231 #define WM8400_ADC_COMP_WIDTH 1
0232 #define WM8400_ADC_COMPMODE 0x0002
0233 #define WM8400_ADC_COMPMODE_MASK 0x0002
0234 #define WM8400_ADC_COMPMODE_SHIFT 1
0235 #define WM8400_ADC_COMPMODE_WIDTH 1
0236 #define WM8400_LOOPBACK 0x0001
0237 #define WM8400_LOOPBACK_MASK 0x0001
0238 #define WM8400_LOOPBACK_SHIFT 0
0239 #define WM8400_LOOPBACK_WIDTH 1
0240
0241
0242
0243
0244 #define WM8400_TOCLK_RATE 0x8000
0245 #define WM8400_TOCLK_RATE_MASK 0x8000
0246 #define WM8400_TOCLK_RATE_SHIFT 15
0247 #define WM8400_TOCLK_RATE_WIDTH 1
0248 #define WM8400_TOCLK_ENA 0x4000
0249 #define WM8400_TOCLK_ENA_MASK 0x4000
0250 #define WM8400_TOCLK_ENA_SHIFT 14
0251 #define WM8400_TOCLK_ENA_WIDTH 1
0252 #define WM8400_OPCLKDIV_MASK 0x1E00
0253 #define WM8400_OPCLKDIV_SHIFT 9
0254 #define WM8400_OPCLKDIV_WIDTH 4
0255 #define WM8400_DCLKDIV_MASK 0x01C0
0256 #define WM8400_DCLKDIV_SHIFT 6
0257 #define WM8400_DCLKDIV_WIDTH 3
0258 #define WM8400_BCLK_DIV_MASK 0x001E
0259 #define WM8400_BCLK_DIV_SHIFT 1
0260 #define WM8400_BCLK_DIV_WIDTH 4
0261
0262
0263
0264
0265 #define WM8400_MCLK_SRC 0x8000
0266 #define WM8400_MCLK_SRC_MASK 0x8000
0267 #define WM8400_MCLK_SRC_SHIFT 15
0268 #define WM8400_MCLK_SRC_WIDTH 1
0269 #define WM8400_SYSCLK_SRC 0x4000
0270 #define WM8400_SYSCLK_SRC_MASK 0x4000
0271 #define WM8400_SYSCLK_SRC_SHIFT 14
0272 #define WM8400_SYSCLK_SRC_WIDTH 1
0273 #define WM8400_CLK_FORCE 0x2000
0274 #define WM8400_CLK_FORCE_MASK 0x2000
0275 #define WM8400_CLK_FORCE_SHIFT 13
0276 #define WM8400_CLK_FORCE_WIDTH 1
0277 #define WM8400_MCLK_DIV_MASK 0x1800
0278 #define WM8400_MCLK_DIV_SHIFT 11
0279 #define WM8400_MCLK_DIV_WIDTH 2
0280 #define WM8400_MCLK_INV 0x0400
0281 #define WM8400_MCLK_INV_MASK 0x0400
0282 #define WM8400_MCLK_INV_SHIFT 10
0283 #define WM8400_MCLK_INV_WIDTH 1
0284 #define WM8400_ADC_CLKDIV_MASK 0x00E0
0285 #define WM8400_ADC_CLKDIV_SHIFT 5
0286 #define WM8400_ADC_CLKDIV_WIDTH 3
0287 #define WM8400_DAC_CLKDIV_MASK 0x001C
0288 #define WM8400_DAC_CLKDIV_SHIFT 2
0289 #define WM8400_DAC_CLKDIV_WIDTH 3
0290
0291
0292
0293
0294 #define WM8400_AIF_MSTR1 0x8000
0295 #define WM8400_AIF_MSTR1_MASK 0x8000
0296 #define WM8400_AIF_MSTR1_SHIFT 15
0297 #define WM8400_AIF_MSTR1_WIDTH 1
0298 #define WM8400_AIF_MSTR2 0x4000
0299 #define WM8400_AIF_MSTR2_MASK 0x4000
0300 #define WM8400_AIF_MSTR2_SHIFT 14
0301 #define WM8400_AIF_MSTR2_WIDTH 1
0302 #define WM8400_AIF_SEL 0x2000
0303 #define WM8400_AIF_SEL_MASK 0x2000
0304 #define WM8400_AIF_SEL_SHIFT 13
0305 #define WM8400_AIF_SEL_WIDTH 1
0306 #define WM8400_ADCLRC_DIR 0x0800
0307 #define WM8400_ADCLRC_DIR_MASK 0x0800
0308 #define WM8400_ADCLRC_DIR_SHIFT 11
0309 #define WM8400_ADCLRC_DIR_WIDTH 1
0310 #define WM8400_ADCLRC_RATE_MASK 0x07FF
0311 #define WM8400_ADCLRC_RATE_SHIFT 0
0312 #define WM8400_ADCLRC_RATE_WIDTH 11
0313
0314
0315
0316
0317 #define WM8400_ALRCGPIO1 0x8000
0318 #define WM8400_ALRCGPIO1_MASK 0x8000
0319 #define WM8400_ALRCGPIO1_SHIFT 15
0320 #define WM8400_ALRCGPIO1_WIDTH 1
0321 #define WM8400_ALRCBGPIO6 0x4000
0322 #define WM8400_ALRCBGPIO6_MASK 0x4000
0323 #define WM8400_ALRCBGPIO6_SHIFT 14
0324 #define WM8400_ALRCBGPIO6_WIDTH 1
0325 #define WM8400_AIF_TRIS 0x2000
0326 #define WM8400_AIF_TRIS_MASK 0x2000
0327 #define WM8400_AIF_TRIS_SHIFT 13
0328 #define WM8400_AIF_TRIS_WIDTH 1
0329 #define WM8400_DACLRC_DIR 0x0800
0330 #define WM8400_DACLRC_DIR_MASK 0x0800
0331 #define WM8400_DACLRC_DIR_SHIFT 11
0332 #define WM8400_DACLRC_DIR_WIDTH 1
0333 #define WM8400_DACLRC_RATE_MASK 0x07FF
0334 #define WM8400_DACLRC_RATE_SHIFT 0
0335 #define WM8400_DACLRC_RATE_WIDTH 11
0336
0337
0338
0339
0340 #define WM8400_DAC_SDMCLK_RATE 0x2000
0341 #define WM8400_DAC_SDMCLK_RATE_MASK 0x2000
0342 #define WM8400_DAC_SDMCLK_RATE_SHIFT 13
0343 #define WM8400_DAC_SDMCLK_RATE_WIDTH 1
0344 #define WM8400_AIF_LRCLKRATE 0x0400
0345 #define WM8400_AIF_LRCLKRATE_MASK 0x0400
0346 #define WM8400_AIF_LRCLKRATE_SHIFT 10
0347 #define WM8400_AIF_LRCLKRATE_WIDTH 1
0348 #define WM8400_DAC_MONO 0x0200
0349 #define WM8400_DAC_MONO_MASK 0x0200
0350 #define WM8400_DAC_MONO_SHIFT 9
0351 #define WM8400_DAC_MONO_WIDTH 1
0352 #define WM8400_DAC_SB_FILT 0x0100
0353 #define WM8400_DAC_SB_FILT_MASK 0x0100
0354 #define WM8400_DAC_SB_FILT_SHIFT 8
0355 #define WM8400_DAC_SB_FILT_WIDTH 1
0356 #define WM8400_DAC_MUTERATE 0x0080
0357 #define WM8400_DAC_MUTERATE_MASK 0x0080
0358 #define WM8400_DAC_MUTERATE_SHIFT 7
0359 #define WM8400_DAC_MUTERATE_WIDTH 1
0360 #define WM8400_DAC_MUTEMODE 0x0040
0361 #define WM8400_DAC_MUTEMODE_MASK 0x0040
0362 #define WM8400_DAC_MUTEMODE_SHIFT 6
0363 #define WM8400_DAC_MUTEMODE_WIDTH 1
0364 #define WM8400_DEEMP_MASK 0x0030
0365 #define WM8400_DEEMP_SHIFT 4
0366 #define WM8400_DEEMP_WIDTH 2
0367 #define WM8400_DAC_MUTE 0x0004
0368 #define WM8400_DAC_MUTE_MASK 0x0004
0369 #define WM8400_DAC_MUTE_SHIFT 2
0370 #define WM8400_DAC_MUTE_WIDTH 1
0371 #define WM8400_DACL_DATINV 0x0002
0372 #define WM8400_DACL_DATINV_MASK 0x0002
0373 #define WM8400_DACL_DATINV_SHIFT 1
0374 #define WM8400_DACL_DATINV_WIDTH 1
0375 #define WM8400_DACR_DATINV 0x0001
0376 #define WM8400_DACR_DATINV_MASK 0x0001
0377 #define WM8400_DACR_DATINV_SHIFT 0
0378 #define WM8400_DACR_DATINV_WIDTH 1
0379
0380
0381
0382
0383 #define WM8400_DAC_VU 0x0100
0384 #define WM8400_DAC_VU_MASK 0x0100
0385 #define WM8400_DAC_VU_SHIFT 8
0386 #define WM8400_DAC_VU_WIDTH 1
0387 #define WM8400_DACL_VOL_MASK 0x00FF
0388 #define WM8400_DACL_VOL_SHIFT 0
0389 #define WM8400_DACL_VOL_WIDTH 8
0390
0391
0392
0393
0394 #define WM8400_DAC_VU 0x0100
0395 #define WM8400_DAC_VU_MASK 0x0100
0396 #define WM8400_DAC_VU_SHIFT 8
0397 #define WM8400_DAC_VU_WIDTH 1
0398 #define WM8400_DACR_VOL_MASK 0x00FF
0399 #define WM8400_DACR_VOL_SHIFT 0
0400 #define WM8400_DACR_VOL_WIDTH 8
0401
0402
0403
0404
0405 #define WM8400_ADCL_DAC_SVOL_MASK 0x1E00
0406 #define WM8400_ADCL_DAC_SVOL_SHIFT 9
0407 #define WM8400_ADCL_DAC_SVOL_WIDTH 4
0408 #define WM8400_ADCR_DAC_SVOL_MASK 0x01E0
0409 #define WM8400_ADCR_DAC_SVOL_SHIFT 5
0410 #define WM8400_ADCR_DAC_SVOL_WIDTH 4
0411 #define WM8400_ADC_TO_DACL_MASK 0x000C
0412 #define WM8400_ADC_TO_DACL_SHIFT 2
0413 #define WM8400_ADC_TO_DACL_WIDTH 2
0414 #define WM8400_ADC_TO_DACR_MASK 0x0003
0415 #define WM8400_ADC_TO_DACR_SHIFT 0
0416 #define WM8400_ADC_TO_DACR_WIDTH 2
0417
0418
0419
0420
0421 #define WM8400_ADC_HPF_ENA 0x0100
0422 #define WM8400_ADC_HPF_ENA_MASK 0x0100
0423 #define WM8400_ADC_HPF_ENA_SHIFT 8
0424 #define WM8400_ADC_HPF_ENA_WIDTH 1
0425 #define WM8400_ADC_HPF_CUT_MASK 0x0060
0426 #define WM8400_ADC_HPF_CUT_SHIFT 5
0427 #define WM8400_ADC_HPF_CUT_WIDTH 2
0428 #define WM8400_ADCL_DATINV 0x0002
0429 #define WM8400_ADCL_DATINV_MASK 0x0002
0430 #define WM8400_ADCL_DATINV_SHIFT 1
0431 #define WM8400_ADCL_DATINV_WIDTH 1
0432 #define WM8400_ADCR_DATINV 0x0001
0433 #define WM8400_ADCR_DATINV_MASK 0x0001
0434 #define WM8400_ADCR_DATINV_SHIFT 0
0435 #define WM8400_ADCR_DATINV_WIDTH 1
0436
0437
0438
0439
0440 #define WM8400_ADC_VU 0x0100
0441 #define WM8400_ADC_VU_MASK 0x0100
0442 #define WM8400_ADC_VU_SHIFT 8
0443 #define WM8400_ADC_VU_WIDTH 1
0444 #define WM8400_ADCL_VOL_MASK 0x00FF
0445 #define WM8400_ADCL_VOL_SHIFT 0
0446 #define WM8400_ADCL_VOL_WIDTH 8
0447
0448
0449
0450
0451 #define WM8400_ADC_VU 0x0100
0452 #define WM8400_ADC_VU_MASK 0x0100
0453 #define WM8400_ADC_VU_SHIFT 8
0454 #define WM8400_ADC_VU_WIDTH 1
0455 #define WM8400_ADCR_VOL_MASK 0x00FF
0456 #define WM8400_ADCR_VOL_SHIFT 0
0457 #define WM8400_ADCR_VOL_WIDTH 8
0458
0459
0460
0461
0462 #define WM8400_IPVU 0x0100
0463 #define WM8400_IPVU_MASK 0x0100
0464 #define WM8400_IPVU_SHIFT 8
0465 #define WM8400_IPVU_WIDTH 1
0466 #define WM8400_LI12MUTE 0x0080
0467 #define WM8400_LI12MUTE_MASK 0x0080
0468 #define WM8400_LI12MUTE_SHIFT 7
0469 #define WM8400_LI12MUTE_WIDTH 1
0470 #define WM8400_LI12ZC 0x0040
0471 #define WM8400_LI12ZC_MASK 0x0040
0472 #define WM8400_LI12ZC_SHIFT 6
0473 #define WM8400_LI12ZC_WIDTH 1
0474 #define WM8400_LIN12VOL_MASK 0x001F
0475 #define WM8400_LIN12VOL_SHIFT 0
0476 #define WM8400_LIN12VOL_WIDTH 5
0477
0478
0479
0480
0481 #define WM8400_IPVU 0x0100
0482 #define WM8400_IPVU_MASK 0x0100
0483 #define WM8400_IPVU_SHIFT 8
0484 #define WM8400_IPVU_WIDTH 1
0485 #define WM8400_LI34MUTE 0x0080
0486 #define WM8400_LI34MUTE_MASK 0x0080
0487 #define WM8400_LI34MUTE_SHIFT 7
0488 #define WM8400_LI34MUTE_WIDTH 1
0489 #define WM8400_LI34ZC 0x0040
0490 #define WM8400_LI34ZC_MASK 0x0040
0491 #define WM8400_LI34ZC_SHIFT 6
0492 #define WM8400_LI34ZC_WIDTH 1
0493 #define WM8400_LIN34VOL_MASK 0x001F
0494 #define WM8400_LIN34VOL_SHIFT 0
0495 #define WM8400_LIN34VOL_WIDTH 5
0496
0497
0498
0499
0500 #define WM8400_IPVU 0x0100
0501 #define WM8400_IPVU_MASK 0x0100
0502 #define WM8400_IPVU_SHIFT 8
0503 #define WM8400_IPVU_WIDTH 1
0504 #define WM8400_RI12MUTE 0x0080
0505 #define WM8400_RI12MUTE_MASK 0x0080
0506 #define WM8400_RI12MUTE_SHIFT 7
0507 #define WM8400_RI12MUTE_WIDTH 1
0508 #define WM8400_RI12ZC 0x0040
0509 #define WM8400_RI12ZC_MASK 0x0040
0510 #define WM8400_RI12ZC_SHIFT 6
0511 #define WM8400_RI12ZC_WIDTH 1
0512 #define WM8400_RIN12VOL_MASK 0x001F
0513 #define WM8400_RIN12VOL_SHIFT 0
0514 #define WM8400_RIN12VOL_WIDTH 5
0515
0516
0517
0518
0519 #define WM8400_IPVU 0x0100
0520 #define WM8400_IPVU_MASK 0x0100
0521 #define WM8400_IPVU_SHIFT 8
0522 #define WM8400_IPVU_WIDTH 1
0523 #define WM8400_RI34MUTE 0x0080
0524 #define WM8400_RI34MUTE_MASK 0x0080
0525 #define WM8400_RI34MUTE_SHIFT 7
0526 #define WM8400_RI34MUTE_WIDTH 1
0527 #define WM8400_RI34ZC 0x0040
0528 #define WM8400_RI34ZC_MASK 0x0040
0529 #define WM8400_RI34ZC_SHIFT 6
0530 #define WM8400_RI34ZC_WIDTH 1
0531 #define WM8400_RIN34VOL_MASK 0x001F
0532 #define WM8400_RIN34VOL_SHIFT 0
0533 #define WM8400_RIN34VOL_WIDTH 5
0534
0535
0536
0537
0538 #define WM8400_OPVU 0x0100
0539 #define WM8400_OPVU_MASK 0x0100
0540 #define WM8400_OPVU_SHIFT 8
0541 #define WM8400_OPVU_WIDTH 1
0542 #define WM8400_LOZC 0x0080
0543 #define WM8400_LOZC_MASK 0x0080
0544 #define WM8400_LOZC_SHIFT 7
0545 #define WM8400_LOZC_WIDTH 1
0546 #define WM8400_LOUTVOL_MASK 0x007F
0547 #define WM8400_LOUTVOL_SHIFT 0
0548 #define WM8400_LOUTVOL_WIDTH 7
0549
0550
0551
0552
0553 #define WM8400_OPVU 0x0100
0554 #define WM8400_OPVU_MASK 0x0100
0555 #define WM8400_OPVU_SHIFT 8
0556 #define WM8400_OPVU_WIDTH 1
0557 #define WM8400_ROZC 0x0080
0558 #define WM8400_ROZC_MASK 0x0080
0559 #define WM8400_ROZC_SHIFT 7
0560 #define WM8400_ROZC_WIDTH 1
0561 #define WM8400_ROUTVOL_MASK 0x007F
0562 #define WM8400_ROUTVOL_SHIFT 0
0563 #define WM8400_ROUTVOL_WIDTH 7
0564
0565
0566
0567
0568 #define WM8400_LONMUTE 0x0040
0569 #define WM8400_LONMUTE_MASK 0x0040
0570 #define WM8400_LONMUTE_SHIFT 6
0571 #define WM8400_LONMUTE_WIDTH 1
0572 #define WM8400_LOPMUTE 0x0020
0573 #define WM8400_LOPMUTE_MASK 0x0020
0574 #define WM8400_LOPMUTE_SHIFT 5
0575 #define WM8400_LOPMUTE_WIDTH 1
0576 #define WM8400_LOATTN 0x0010
0577 #define WM8400_LOATTN_MASK 0x0010
0578 #define WM8400_LOATTN_SHIFT 4
0579 #define WM8400_LOATTN_WIDTH 1
0580 #define WM8400_RONMUTE 0x0004
0581 #define WM8400_RONMUTE_MASK 0x0004
0582 #define WM8400_RONMUTE_SHIFT 2
0583 #define WM8400_RONMUTE_WIDTH 1
0584 #define WM8400_ROPMUTE 0x0002
0585 #define WM8400_ROPMUTE_MASK 0x0002
0586 #define WM8400_ROPMUTE_SHIFT 1
0587 #define WM8400_ROPMUTE_WIDTH 1
0588 #define WM8400_ROATTN 0x0001
0589 #define WM8400_ROATTN_MASK 0x0001
0590 #define WM8400_ROATTN_SHIFT 0
0591 #define WM8400_ROATTN_WIDTH 1
0592
0593
0594
0595
0596 #define WM8400_OUT3MUTE 0x0020
0597 #define WM8400_OUT3MUTE_MASK 0x0020
0598 #define WM8400_OUT3MUTE_SHIFT 5
0599 #define WM8400_OUT3MUTE_WIDTH 1
0600 #define WM8400_OUT3ATTN 0x0010
0601 #define WM8400_OUT3ATTN_MASK 0x0010
0602 #define WM8400_OUT3ATTN_SHIFT 4
0603 #define WM8400_OUT3ATTN_WIDTH 1
0604 #define WM8400_OUT4MUTE 0x0002
0605 #define WM8400_OUT4MUTE_MASK 0x0002
0606 #define WM8400_OUT4MUTE_SHIFT 1
0607 #define WM8400_OUT4MUTE_WIDTH 1
0608 #define WM8400_OUT4ATTN 0x0001
0609 #define WM8400_OUT4ATTN_MASK 0x0001
0610 #define WM8400_OUT4ATTN_SHIFT 0
0611 #define WM8400_OUT4ATTN_WIDTH 1
0612
0613
0614
0615
0616 #define WM8400_OPVU 0x0100
0617 #define WM8400_OPVU_MASK 0x0100
0618 #define WM8400_OPVU_SHIFT 8
0619 #define WM8400_OPVU_WIDTH 1
0620 #define WM8400_LOPGAZC 0x0080
0621 #define WM8400_LOPGAZC_MASK 0x0080
0622 #define WM8400_LOPGAZC_SHIFT 7
0623 #define WM8400_LOPGAZC_WIDTH 1
0624 #define WM8400_LOPGAVOL_MASK 0x007F
0625 #define WM8400_LOPGAVOL_SHIFT 0
0626 #define WM8400_LOPGAVOL_WIDTH 7
0627
0628
0629
0630
0631 #define WM8400_OPVU 0x0100
0632 #define WM8400_OPVU_MASK 0x0100
0633 #define WM8400_OPVU_SHIFT 8
0634 #define WM8400_OPVU_WIDTH 1
0635 #define WM8400_ROPGAZC 0x0080
0636 #define WM8400_ROPGAZC_MASK 0x0080
0637 #define WM8400_ROPGAZC_SHIFT 7
0638 #define WM8400_ROPGAZC_WIDTH 1
0639 #define WM8400_ROPGAVOL_MASK 0x007F
0640 #define WM8400_ROPGAVOL_SHIFT 0
0641 #define WM8400_ROPGAVOL_WIDTH 7
0642
0643
0644
0645
0646 #define WM8400_SPKATTN_MASK 0x0003
0647 #define WM8400_SPKATTN_SHIFT 0
0648 #define WM8400_SPKATTN_WIDTH 2
0649
0650
0651
0652
0653 #define WM8400_CDMODE 0x0100
0654 #define WM8400_CDMODE_MASK 0x0100
0655 #define WM8400_CDMODE_SHIFT 8
0656 #define WM8400_CDMODE_WIDTH 1
0657 #define WM8400_CLASSD_CLK_SEL 0x0080
0658 #define WM8400_CLASSD_CLK_SEL_MASK 0x0080
0659 #define WM8400_CLASSD_CLK_SEL_SHIFT 7
0660 #define WM8400_CLASSD_CLK_SEL_WIDTH 1
0661 #define WM8400_CD_SRCTRL 0x0040
0662 #define WM8400_CD_SRCTRL_MASK 0x0040
0663 #define WM8400_CD_SRCTRL_SHIFT 6
0664 #define WM8400_CD_SRCTRL_WIDTH 1
0665 #define WM8400_SPKNOPOP 0x0020
0666 #define WM8400_SPKNOPOP_MASK 0x0020
0667 #define WM8400_SPKNOPOP_SHIFT 5
0668 #define WM8400_SPKNOPOP_WIDTH 1
0669 #define WM8400_DBLERATE 0x0010
0670 #define WM8400_DBLERATE_MASK 0x0010
0671 #define WM8400_DBLERATE_SHIFT 4
0672 #define WM8400_DBLERATE_WIDTH 1
0673 #define WM8400_LOOPTEST 0x0008
0674 #define WM8400_LOOPTEST_MASK 0x0008
0675 #define WM8400_LOOPTEST_SHIFT 3
0676 #define WM8400_LOOPTEST_WIDTH 1
0677 #define WM8400_HALFABBIAS 0x0004
0678 #define WM8400_HALFABBIAS_MASK 0x0004
0679 #define WM8400_HALFABBIAS_SHIFT 2
0680 #define WM8400_HALFABBIAS_WIDTH 1
0681 #define WM8400_TRIDEL_MASK 0x0003
0682 #define WM8400_TRIDEL_SHIFT 0
0683 #define WM8400_TRIDEL_WIDTH 2
0684
0685
0686
0687
0688 #define WM8400_DCGAIN_MASK 0x0038
0689 #define WM8400_DCGAIN_SHIFT 3
0690 #define WM8400_DCGAIN_WIDTH 3
0691 #define WM8400_ACGAIN_MASK 0x0007
0692 #define WM8400_ACGAIN_SHIFT 0
0693 #define WM8400_ACGAIN_WIDTH 3
0694
0695
0696
0697
0698 #define WM8400_AINLMODE_MASK 0x000C
0699 #define WM8400_AINLMODE_SHIFT 2
0700 #define WM8400_AINLMODE_WIDTH 2
0701 #define WM8400_AINRMODE_MASK 0x0003
0702 #define WM8400_AINRMODE_SHIFT 0
0703 #define WM8400_AINRMODE_WIDTH 2
0704
0705
0706
0707
0708 #define WM8400_LMP4 0x0080
0709 #define WM8400_LMP4_MASK 0x0080
0710 #define WM8400_LMP4_SHIFT 7
0711 #define WM8400_LMP4_WIDTH 1
0712 #define WM8400_LMN3 0x0040
0713 #define WM8400_LMN3_MASK 0x0040
0714 #define WM8400_LMN3_SHIFT 6
0715 #define WM8400_LMN3_WIDTH 1
0716 #define WM8400_LMP2 0x0020
0717 #define WM8400_LMP2_MASK 0x0020
0718 #define WM8400_LMP2_SHIFT 5
0719 #define WM8400_LMP2_WIDTH 1
0720 #define WM8400_LMN1 0x0010
0721 #define WM8400_LMN1_MASK 0x0010
0722 #define WM8400_LMN1_SHIFT 4
0723 #define WM8400_LMN1_WIDTH 1
0724 #define WM8400_RMP4 0x0008
0725 #define WM8400_RMP4_MASK 0x0008
0726 #define WM8400_RMP4_SHIFT 3
0727 #define WM8400_RMP4_WIDTH 1
0728 #define WM8400_RMN3 0x0004
0729 #define WM8400_RMN3_MASK 0x0004
0730 #define WM8400_RMN3_SHIFT 2
0731 #define WM8400_RMN3_WIDTH 1
0732 #define WM8400_RMP2 0x0002
0733 #define WM8400_RMP2_MASK 0x0002
0734 #define WM8400_RMP2_SHIFT 1
0735 #define WM8400_RMP2_WIDTH 1
0736 #define WM8400_RMN1 0x0001
0737 #define WM8400_RMN1_MASK 0x0001
0738 #define WM8400_RMN1_SHIFT 0
0739 #define WM8400_RMN1_WIDTH 1
0740
0741
0742
0743
0744 #define WM8400_L34MNB 0x0100
0745 #define WM8400_L34MNB_MASK 0x0100
0746 #define WM8400_L34MNB_SHIFT 8
0747 #define WM8400_L34MNB_WIDTH 1
0748 #define WM8400_L34MNBST 0x0080
0749 #define WM8400_L34MNBST_MASK 0x0080
0750 #define WM8400_L34MNBST_SHIFT 7
0751 #define WM8400_L34MNBST_WIDTH 1
0752 #define WM8400_L12MNB 0x0020
0753 #define WM8400_L12MNB_MASK 0x0020
0754 #define WM8400_L12MNB_SHIFT 5
0755 #define WM8400_L12MNB_WIDTH 1
0756 #define WM8400_L12MNBST 0x0010
0757 #define WM8400_L12MNBST_MASK 0x0010
0758 #define WM8400_L12MNBST_SHIFT 4
0759 #define WM8400_L12MNBST_WIDTH 1
0760 #define WM8400_LDBVOL_MASK 0x0007
0761 #define WM8400_LDBVOL_SHIFT 0
0762 #define WM8400_LDBVOL_WIDTH 3
0763
0764
0765
0766
0767 #define WM8400_R34MNB 0x0100
0768 #define WM8400_R34MNB_MASK 0x0100
0769 #define WM8400_R34MNB_SHIFT 8
0770 #define WM8400_R34MNB_WIDTH 1
0771 #define WM8400_R34MNBST 0x0080
0772 #define WM8400_R34MNBST_MASK 0x0080
0773 #define WM8400_R34MNBST_SHIFT 7
0774 #define WM8400_R34MNBST_WIDTH 1
0775 #define WM8400_R12MNB 0x0020
0776 #define WM8400_R12MNB_MASK 0x0020
0777 #define WM8400_R12MNB_SHIFT 5
0778 #define WM8400_R12MNB_WIDTH 1
0779 #define WM8400_R12MNBST 0x0010
0780 #define WM8400_R12MNBST_MASK 0x0010
0781 #define WM8400_R12MNBST_SHIFT 4
0782 #define WM8400_R12MNBST_WIDTH 1
0783 #define WM8400_RDBVOL_MASK 0x0007
0784 #define WM8400_RDBVOL_SHIFT 0
0785 #define WM8400_RDBVOL_WIDTH 3
0786
0787
0788
0789
0790 #define WM8400_LI2BVOL_MASK 0x01C0
0791 #define WM8400_LI2BVOL_SHIFT 6
0792 #define WM8400_LI2BVOL_WIDTH 3
0793 #define WM8400_LR4BVOL_MASK 0x0038
0794 #define WM8400_LR4BVOL_SHIFT 3
0795 #define WM8400_LR4BVOL_WIDTH 3
0796 #define WM8400_LL4BVOL_MASK 0x0007
0797 #define WM8400_LL4BVOL_SHIFT 0
0798 #define WM8400_LL4BVOL_WIDTH 3
0799
0800
0801
0802
0803 #define WM8400_RI2BVOL_MASK 0x01C0
0804 #define WM8400_RI2BVOL_SHIFT 6
0805 #define WM8400_RI2BVOL_WIDTH 3
0806 #define WM8400_RL4BVOL_MASK 0x0038
0807 #define WM8400_RL4BVOL_SHIFT 3
0808 #define WM8400_RL4BVOL_WIDTH 3
0809 #define WM8400_RR4BVOL_MASK 0x0007
0810 #define WM8400_RR4BVOL_SHIFT 0
0811 #define WM8400_RR4BVOL_WIDTH 3
0812
0813
0814
0815
0816 #define WM8400_LRBLO 0x0080
0817 #define WM8400_LRBLO_MASK 0x0080
0818 #define WM8400_LRBLO_SHIFT 7
0819 #define WM8400_LRBLO_WIDTH 1
0820 #define WM8400_LLBLO 0x0040
0821 #define WM8400_LLBLO_MASK 0x0040
0822 #define WM8400_LLBLO_SHIFT 6
0823 #define WM8400_LLBLO_WIDTH 1
0824 #define WM8400_LRI3LO 0x0020
0825 #define WM8400_LRI3LO_MASK 0x0020
0826 #define WM8400_LRI3LO_SHIFT 5
0827 #define WM8400_LRI3LO_WIDTH 1
0828 #define WM8400_LLI3LO 0x0010
0829 #define WM8400_LLI3LO_MASK 0x0010
0830 #define WM8400_LLI3LO_SHIFT 4
0831 #define WM8400_LLI3LO_WIDTH 1
0832 #define WM8400_LR12LO 0x0008
0833 #define WM8400_LR12LO_MASK 0x0008
0834 #define WM8400_LR12LO_SHIFT 3
0835 #define WM8400_LR12LO_WIDTH 1
0836 #define WM8400_LL12LO 0x0004
0837 #define WM8400_LL12LO_MASK 0x0004
0838 #define WM8400_LL12LO_SHIFT 2
0839 #define WM8400_LL12LO_WIDTH 1
0840 #define WM8400_LDLO 0x0001
0841 #define WM8400_LDLO_MASK 0x0001
0842 #define WM8400_LDLO_SHIFT 0
0843 #define WM8400_LDLO_WIDTH 1
0844
0845
0846
0847
0848 #define WM8400_RLBRO 0x0080
0849 #define WM8400_RLBRO_MASK 0x0080
0850 #define WM8400_RLBRO_SHIFT 7
0851 #define WM8400_RLBRO_WIDTH 1
0852 #define WM8400_RRBRO 0x0040
0853 #define WM8400_RRBRO_MASK 0x0040
0854 #define WM8400_RRBRO_SHIFT 6
0855 #define WM8400_RRBRO_WIDTH 1
0856 #define WM8400_RLI3RO 0x0020
0857 #define WM8400_RLI3RO_MASK 0x0020
0858 #define WM8400_RLI3RO_SHIFT 5
0859 #define WM8400_RLI3RO_WIDTH 1
0860 #define WM8400_RRI3RO 0x0010
0861 #define WM8400_RRI3RO_MASK 0x0010
0862 #define WM8400_RRI3RO_SHIFT 4
0863 #define WM8400_RRI3RO_WIDTH 1
0864 #define WM8400_RL12RO 0x0008
0865 #define WM8400_RL12RO_MASK 0x0008
0866 #define WM8400_RL12RO_SHIFT 3
0867 #define WM8400_RL12RO_WIDTH 1
0868 #define WM8400_RR12RO 0x0004
0869 #define WM8400_RR12RO_MASK 0x0004
0870 #define WM8400_RR12RO_SHIFT 2
0871 #define WM8400_RR12RO_WIDTH 1
0872 #define WM8400_RDRO 0x0001
0873 #define WM8400_RDRO_MASK 0x0001
0874 #define WM8400_RDRO_SHIFT 0
0875 #define WM8400_RDRO_WIDTH 1
0876
0877
0878
0879
0880 #define WM8400_LLI3LOVOL_MASK 0x01C0
0881 #define WM8400_LLI3LOVOL_SHIFT 6
0882 #define WM8400_LLI3LOVOL_WIDTH 3
0883 #define WM8400_LR12LOVOL_MASK 0x0038
0884 #define WM8400_LR12LOVOL_SHIFT 3
0885 #define WM8400_LR12LOVOL_WIDTH 3
0886 #define WM8400_LL12LOVOL_MASK 0x0007
0887 #define WM8400_LL12LOVOL_SHIFT 0
0888 #define WM8400_LL12LOVOL_WIDTH 3
0889
0890
0891
0892
0893 #define WM8400_RRI3ROVOL_MASK 0x01C0
0894 #define WM8400_RRI3ROVOL_SHIFT 6
0895 #define WM8400_RRI3ROVOL_WIDTH 3
0896 #define WM8400_RL12ROVOL_MASK 0x0038
0897 #define WM8400_RL12ROVOL_SHIFT 3
0898 #define WM8400_RL12ROVOL_WIDTH 3
0899 #define WM8400_RR12ROVOL_MASK 0x0007
0900 #define WM8400_RR12ROVOL_SHIFT 0
0901 #define WM8400_RR12ROVOL_WIDTH 3
0902
0903
0904
0905
0906 #define WM8400_LRI3LOVOL_MASK 0x01C0
0907 #define WM8400_LRI3LOVOL_SHIFT 6
0908 #define WM8400_LRI3LOVOL_WIDTH 3
0909 #define WM8400_LRBLOVOL_MASK 0x0038
0910 #define WM8400_LRBLOVOL_SHIFT 3
0911 #define WM8400_LRBLOVOL_WIDTH 3
0912 #define WM8400_LLBLOVOL_MASK 0x0007
0913 #define WM8400_LLBLOVOL_SHIFT 0
0914 #define WM8400_LLBLOVOL_WIDTH 3
0915
0916
0917
0918
0919 #define WM8400_RLI3ROVOL_MASK 0x01C0
0920 #define WM8400_RLI3ROVOL_SHIFT 6
0921 #define WM8400_RLI3ROVOL_WIDTH 3
0922 #define WM8400_RLBROVOL_MASK 0x0038
0923 #define WM8400_RLBROVOL_SHIFT 3
0924 #define WM8400_RLBROVOL_WIDTH 3
0925 #define WM8400_RRBROVOL_MASK 0x0007
0926 #define WM8400_RRBROVOL_SHIFT 0
0927 #define WM8400_RRBROVOL_WIDTH 3
0928
0929
0930
0931
0932 #define WM8400_VSEL_MASK 0x0180
0933 #define WM8400_VSEL_SHIFT 7
0934 #define WM8400_VSEL_WIDTH 2
0935 #define WM8400_LI4O3 0x0020
0936 #define WM8400_LI4O3_MASK 0x0020
0937 #define WM8400_LI4O3_SHIFT 5
0938 #define WM8400_LI4O3_WIDTH 1
0939 #define WM8400_LPGAO3 0x0010
0940 #define WM8400_LPGAO3_MASK 0x0010
0941 #define WM8400_LPGAO3_SHIFT 4
0942 #define WM8400_LPGAO3_WIDTH 1
0943 #define WM8400_RI4O4 0x0002
0944 #define WM8400_RI4O4_MASK 0x0002
0945 #define WM8400_RI4O4_SHIFT 1
0946 #define WM8400_RI4O4_WIDTH 1
0947 #define WM8400_RPGAO4 0x0001
0948 #define WM8400_RPGAO4_MASK 0x0001
0949 #define WM8400_RPGAO4_SHIFT 0
0950 #define WM8400_RPGAO4_WIDTH 1
0951
0952
0953
0954
0955 #define WM8400_LLOPGALON 0x0040
0956 #define WM8400_LLOPGALON_MASK 0x0040
0957 #define WM8400_LLOPGALON_SHIFT 6
0958 #define WM8400_LLOPGALON_WIDTH 1
0959 #define WM8400_LROPGALON 0x0020
0960 #define WM8400_LROPGALON_MASK 0x0020
0961 #define WM8400_LROPGALON_SHIFT 5
0962 #define WM8400_LROPGALON_WIDTH 1
0963 #define WM8400_LOPLON 0x0010
0964 #define WM8400_LOPLON_MASK 0x0010
0965 #define WM8400_LOPLON_SHIFT 4
0966 #define WM8400_LOPLON_WIDTH 1
0967 #define WM8400_LR12LOP 0x0004
0968 #define WM8400_LR12LOP_MASK 0x0004
0969 #define WM8400_LR12LOP_SHIFT 2
0970 #define WM8400_LR12LOP_WIDTH 1
0971 #define WM8400_LL12LOP 0x0002
0972 #define WM8400_LL12LOP_MASK 0x0002
0973 #define WM8400_LL12LOP_SHIFT 1
0974 #define WM8400_LL12LOP_WIDTH 1
0975 #define WM8400_LLOPGALOP 0x0001
0976 #define WM8400_LLOPGALOP_MASK 0x0001
0977 #define WM8400_LLOPGALOP_SHIFT 0
0978 #define WM8400_LLOPGALOP_WIDTH 1
0979
0980
0981
0982
0983 #define WM8400_RROPGARON 0x0040
0984 #define WM8400_RROPGARON_MASK 0x0040
0985 #define WM8400_RROPGARON_SHIFT 6
0986 #define WM8400_RROPGARON_WIDTH 1
0987 #define WM8400_RLOPGARON 0x0020
0988 #define WM8400_RLOPGARON_MASK 0x0020
0989 #define WM8400_RLOPGARON_SHIFT 5
0990 #define WM8400_RLOPGARON_WIDTH 1
0991 #define WM8400_ROPRON 0x0010
0992 #define WM8400_ROPRON_MASK 0x0010
0993 #define WM8400_ROPRON_SHIFT 4
0994 #define WM8400_ROPRON_WIDTH 1
0995 #define WM8400_RL12ROP 0x0004
0996 #define WM8400_RL12ROP_MASK 0x0004
0997 #define WM8400_RL12ROP_SHIFT 2
0998 #define WM8400_RL12ROP_WIDTH 1
0999 #define WM8400_RR12ROP 0x0002
1000 #define WM8400_RR12ROP_MASK 0x0002
1001 #define WM8400_RR12ROP_SHIFT 1
1002 #define WM8400_RR12ROP_WIDTH 1
1003 #define WM8400_RROPGAROP 0x0001
1004 #define WM8400_RROPGAROP_MASK 0x0001
1005 #define WM8400_RROPGAROP_SHIFT 0
1006 #define WM8400_RROPGAROP_WIDTH 1
1007
1008
1009
1010
1011 #define WM8400_LB2SPK 0x0080
1012 #define WM8400_LB2SPK_MASK 0x0080
1013 #define WM8400_LB2SPK_SHIFT 7
1014 #define WM8400_LB2SPK_WIDTH 1
1015 #define WM8400_RB2SPK 0x0040
1016 #define WM8400_RB2SPK_MASK 0x0040
1017 #define WM8400_RB2SPK_SHIFT 6
1018 #define WM8400_RB2SPK_WIDTH 1
1019 #define WM8400_LI2SPK 0x0020
1020 #define WM8400_LI2SPK_MASK 0x0020
1021 #define WM8400_LI2SPK_SHIFT 5
1022 #define WM8400_LI2SPK_WIDTH 1
1023 #define WM8400_RI2SPK 0x0010
1024 #define WM8400_RI2SPK_MASK 0x0010
1025 #define WM8400_RI2SPK_SHIFT 4
1026 #define WM8400_RI2SPK_WIDTH 1
1027 #define WM8400_LOPGASPK 0x0008
1028 #define WM8400_LOPGASPK_MASK 0x0008
1029 #define WM8400_LOPGASPK_SHIFT 3
1030 #define WM8400_LOPGASPK_WIDTH 1
1031 #define WM8400_ROPGASPK 0x0004
1032 #define WM8400_ROPGASPK_MASK 0x0004
1033 #define WM8400_ROPGASPK_SHIFT 2
1034 #define WM8400_ROPGASPK_WIDTH 1
1035 #define WM8400_LDSPK 0x0002
1036 #define WM8400_LDSPK_MASK 0x0002
1037 #define WM8400_LDSPK_SHIFT 1
1038 #define WM8400_LDSPK_WIDTH 1
1039 #define WM8400_RDSPK 0x0001
1040 #define WM8400_RDSPK_MASK 0x0001
1041 #define WM8400_RDSPK_SHIFT 0
1042 #define WM8400_RDSPK_WIDTH 1
1043
1044
1045
1046
1047 #define WM8400_VROI 0x0001
1048 #define WM8400_VROI_MASK 0x0001
1049 #define WM8400_VROI_SHIFT 0
1050 #define WM8400_VROI_WIDTH 1
1051
1052
1053
1054
1055 #define WM8400_DIS_LLINE 0x0020
1056 #define WM8400_DIS_LLINE_MASK 0x0020
1057 #define WM8400_DIS_LLINE_SHIFT 5
1058 #define WM8400_DIS_LLINE_WIDTH 1
1059 #define WM8400_DIS_RLINE 0x0010
1060 #define WM8400_DIS_RLINE_MASK 0x0010
1061 #define WM8400_DIS_RLINE_SHIFT 4
1062 #define WM8400_DIS_RLINE_WIDTH 1
1063 #define WM8400_DIS_OUT3 0x0008
1064 #define WM8400_DIS_OUT3_MASK 0x0008
1065 #define WM8400_DIS_OUT3_SHIFT 3
1066 #define WM8400_DIS_OUT3_WIDTH 1
1067 #define WM8400_DIS_OUT4 0x0004
1068 #define WM8400_DIS_OUT4_MASK 0x0004
1069 #define WM8400_DIS_OUT4_SHIFT 2
1070 #define WM8400_DIS_OUT4_WIDTH 1
1071 #define WM8400_DIS_LOUT 0x0002
1072 #define WM8400_DIS_LOUT_MASK 0x0002
1073 #define WM8400_DIS_LOUT_SHIFT 1
1074 #define WM8400_DIS_LOUT_WIDTH 1
1075 #define WM8400_DIS_ROUT 0x0001
1076 #define WM8400_DIS_ROUT_MASK 0x0001
1077 #define WM8400_DIS_ROUT_SHIFT 0
1078 #define WM8400_DIS_ROUT_WIDTH 1
1079
1080
1081
1082
1083 #define WM8400_SOFTST 0x0040
1084 #define WM8400_SOFTST_MASK 0x0040
1085 #define WM8400_SOFTST_SHIFT 6
1086 #define WM8400_SOFTST_WIDTH 1
1087 #define WM8400_BUFIOEN 0x0008
1088 #define WM8400_BUFIOEN_MASK 0x0008
1089 #define WM8400_BUFIOEN_SHIFT 3
1090 #define WM8400_BUFIOEN_WIDTH 1
1091 #define WM8400_BUFDCOPEN 0x0004
1092 #define WM8400_BUFDCOPEN_MASK 0x0004
1093 #define WM8400_BUFDCOPEN_SHIFT 2
1094 #define WM8400_BUFDCOPEN_WIDTH 1
1095 #define WM8400_POBCTRL 0x0002
1096 #define WM8400_POBCTRL_MASK 0x0002
1097 #define WM8400_POBCTRL_SHIFT 1
1098 #define WM8400_POBCTRL_WIDTH 1
1099 #define WM8400_VMIDTOG 0x0001
1100 #define WM8400_VMIDTOG_MASK 0x0001
1101 #define WM8400_VMIDTOG_SHIFT 0
1102 #define WM8400_VMIDTOG_WIDTH 1
1103
1104
1105
1106
1107 #define WM8400_MCDSCTH_MASK 0x00C0
1108 #define WM8400_MCDSCTH_SHIFT 6
1109 #define WM8400_MCDSCTH_WIDTH 2
1110 #define WM8400_MCDTHR_MASK 0x0038
1111 #define WM8400_MCDTHR_SHIFT 3
1112 #define WM8400_MCDTHR_WIDTH 3
1113 #define WM8400_MCD 0x0004
1114 #define WM8400_MCD_MASK 0x0004
1115 #define WM8400_MCD_SHIFT 2
1116 #define WM8400_MCD_WIDTH 1
1117 #define WM8400_MBSEL 0x0001
1118 #define WM8400_MBSEL_MASK 0x0001
1119 #define WM8400_MBSEL_SHIFT 0
1120 #define WM8400_MBSEL_WIDTH 1
1121
1122
1123
1124
1125 #define WM8400_FLL_REF_FREQ 0x1000
1126 #define WM8400_FLL_REF_FREQ_MASK 0x1000
1127 #define WM8400_FLL_REF_FREQ_SHIFT 12
1128 #define WM8400_FLL_REF_FREQ_WIDTH 1
1129 #define WM8400_FLL_CLK_SRC_MASK 0x0C00
1130 #define WM8400_FLL_CLK_SRC_SHIFT 10
1131 #define WM8400_FLL_CLK_SRC_WIDTH 2
1132 #define WM8400_FLL_FRAC 0x0200
1133 #define WM8400_FLL_FRAC_MASK 0x0200
1134 #define WM8400_FLL_FRAC_SHIFT 9
1135 #define WM8400_FLL_FRAC_WIDTH 1
1136 #define WM8400_FLL_OSC_ENA 0x0100
1137 #define WM8400_FLL_OSC_ENA_MASK 0x0100
1138 #define WM8400_FLL_OSC_ENA_SHIFT 8
1139 #define WM8400_FLL_OSC_ENA_WIDTH 1
1140 #define WM8400_FLL_CTRL_RATE_MASK 0x00E0
1141 #define WM8400_FLL_CTRL_RATE_SHIFT 5
1142 #define WM8400_FLL_CTRL_RATE_WIDTH 3
1143 #define WM8400_FLL_FRATIO_MASK 0x001F
1144 #define WM8400_FLL_FRATIO_SHIFT 0
1145 #define WM8400_FLL_FRATIO_WIDTH 5
1146
1147
1148
1149
1150 #define WM8400_FLL_K_MASK 0xFFFF
1151 #define WM8400_FLL_K_SHIFT 0
1152 #define WM8400_FLL_K_WIDTH 16
1153
1154
1155
1156
1157 #define WM8400_FLL_N_MASK 0x03FF
1158 #define WM8400_FLL_N_SHIFT 0
1159 #define WM8400_FLL_N_WIDTH 10
1160
1161
1162
1163
1164 #define WM8400_FLL_TRK_GAIN_MASK 0x0078
1165 #define WM8400_FLL_TRK_GAIN_SHIFT 3
1166 #define WM8400_FLL_TRK_GAIN_WIDTH 4
1167 #define WM8400_FLL_OUTDIV_MASK 0x0007
1168 #define WM8400_FLL_OUTDIV_SHIFT 0
1169 #define WM8400_FLL_OUTDIV_WIDTH 3
1170
1171 struct wm8400;
1172 void wm8400_reset_codec_reg_cache(struct wm8400 *wm8400);
1173
1174 #endif