Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * Copyright (C) ST-Ericsson SA 2012
0004  *
0005  * Author: Ola Lilja <ola.o.lilja@stericsson.com>,
0006  *         Kristoffer Karlsson <kristoffer.karlsson@stericsson.com>,
0007  *         Roger Nilsson <roger.xr.nilsson@stericsson.com>,
0008  *         for ST-Ericsson.
0009  *
0010  *         Based on the early work done by:
0011  *         Mikko J. Lehto <mikko.lehto@symbio.com>,
0012  *         Mikko Sarmanne <mikko.sarmanne@symbio.com>,
0013  *         for ST-Ericsson.
0014  */
0015 
0016 #ifndef AB8500_CODEC_REGISTERS_H
0017 #define AB8500_CODEC_REGISTERS_H
0018 
0019 #define AB8500_SUPPORTED_RATE           (SNDRV_PCM_RATE_48000)
0020 #define AB8500_SUPPORTED_FMT            (SNDRV_PCM_FMTBIT_S16_LE)
0021 
0022 /* AB8500 interface slot offset definitions */
0023 
0024 #define AB8500_AD_DATA0_OFFSET  0
0025 #define AB8500_DA_DATA0_OFFSET  8
0026 #define AB8500_AD_DATA1_OFFSET  16
0027 #define AB8500_DA_DATA1_OFFSET  24
0028 
0029 /* AB8500 audio bank (0x0d) register definitions */
0030 
0031 #define AB8500_POWERUP              0x00
0032 #define AB8500_AUDSWRESET           0x01
0033 #define AB8500_ADPATHENA            0x02
0034 #define AB8500_DAPATHENA            0x03
0035 #define AB8500_ANACONF1             0x04
0036 #define AB8500_ANACONF2             0x05
0037 #define AB8500_DIGMICCONF           0x06
0038 #define AB8500_ANACONF3             0x07
0039 #define AB8500_ANACONF4             0x08
0040 #define AB8500_DAPATHCONF           0x09
0041 #define AB8500_MUTECONF             0x0A
0042 #define AB8500_SHORTCIRCONF         0x0B
0043 #define AB8500_ANACONF5             0x0C
0044 #define AB8500_ENVCPCONF            0x0D
0045 #define AB8500_SIGENVCONF           0x0E
0046 #define AB8500_PWMGENCONF1          0x0F
0047 #define AB8500_PWMGENCONF2          0x10
0048 #define AB8500_PWMGENCONF3          0x11
0049 #define AB8500_PWMGENCONF4          0x12
0050 #define AB8500_PWMGENCONF5          0x13
0051 #define AB8500_ANAGAIN1             0x14
0052 #define AB8500_ANAGAIN2             0x15
0053 #define AB8500_ANAGAIN3             0x16
0054 #define AB8500_ANAGAIN4             0x17
0055 #define AB8500_DIGLINHSLGAIN            0x18
0056 #define AB8500_DIGLINHSRGAIN            0x19
0057 #define AB8500_ADFILTCONF           0x1A
0058 #define AB8500_DIGIFCONF1           0x1B
0059 #define AB8500_DIGIFCONF2           0x1C
0060 #define AB8500_DIGIFCONF3           0x1D
0061 #define AB8500_DIGIFCONF4           0x1E
0062 #define AB8500_ADSLOTSEL1           0x1F
0063 #define AB8500_ADSLOTSEL2           0x20
0064 #define AB8500_ADSLOTSEL3           0x21
0065 #define AB8500_ADSLOTSEL4           0x22
0066 #define AB8500_ADSLOTSEL5           0x23
0067 #define AB8500_ADSLOTSEL6           0x24
0068 #define AB8500_ADSLOTSEL7           0x25
0069 #define AB8500_ADSLOTSEL8           0x26
0070 #define AB8500_ADSLOTSEL9           0x27
0071 #define AB8500_ADSLOTSEL10          0x28
0072 #define AB8500_ADSLOTSEL11          0x29
0073 #define AB8500_ADSLOTSEL12          0x2A
0074 #define AB8500_ADSLOTSEL13          0x2B
0075 #define AB8500_ADSLOTSEL14          0x2C
0076 #define AB8500_ADSLOTSEL15          0x2D
0077 #define AB8500_ADSLOTSEL16          0x2E
0078 #define AB8500_ADSLOTSEL(slot)          (AB8500_ADSLOTSEL1 + (slot >> 1))
0079 #define AB8500_ADSLOTHIZCTRL1           0x2F
0080 #define AB8500_ADSLOTHIZCTRL2           0x30
0081 #define AB8500_ADSLOTHIZCTRL3           0x31
0082 #define AB8500_ADSLOTHIZCTRL4           0x32
0083 #define AB8500_DASLOTCONF1          0x33
0084 #define AB8500_DASLOTCONF2          0x34
0085 #define AB8500_DASLOTCONF3          0x35
0086 #define AB8500_DASLOTCONF4          0x36
0087 #define AB8500_DASLOTCONF5          0x37
0088 #define AB8500_DASLOTCONF6          0x38
0089 #define AB8500_DASLOTCONF7          0x39
0090 #define AB8500_DASLOTCONF8          0x3A
0091 #define AB8500_CLASSDCONF1          0x3B
0092 #define AB8500_CLASSDCONF2          0x3C
0093 #define AB8500_CLASSDCONF3          0x3D
0094 #define AB8500_DMICFILTCONF         0x3E
0095 #define AB8500_DIGMULTCONF1         0x3F
0096 #define AB8500_DIGMULTCONF2         0x40
0097 #define AB8500_ADDIGGAIN1           0x41
0098 #define AB8500_ADDIGGAIN2           0x42
0099 #define AB8500_ADDIGGAIN3           0x43
0100 #define AB8500_ADDIGGAIN4           0x44
0101 #define AB8500_ADDIGGAIN5           0x45
0102 #define AB8500_ADDIGGAIN6           0x46
0103 #define AB8500_DADIGGAIN1           0x47
0104 #define AB8500_DADIGGAIN2           0x48
0105 #define AB8500_DADIGGAIN3           0x49
0106 #define AB8500_DADIGGAIN4           0x4A
0107 #define AB8500_DADIGGAIN5           0x4B
0108 #define AB8500_DADIGGAIN6           0x4C
0109 #define AB8500_ADDIGLOOPGAIN1           0x4D
0110 #define AB8500_ADDIGLOOPGAIN2           0x4E
0111 #define AB8500_HSLEARDIGGAIN            0x4F
0112 #define AB8500_HSRDIGGAIN           0x50
0113 #define AB8500_SIDFIRGAIN1          0x51
0114 #define AB8500_SIDFIRGAIN2          0x52
0115 #define AB8500_ANCCONF1             0x53
0116 #define AB8500_ANCCONF2             0x54
0117 #define AB8500_ANCCONF3             0x55
0118 #define AB8500_ANCCONF4             0x56
0119 #define AB8500_ANCCONF5             0x57
0120 #define AB8500_ANCCONF6             0x58
0121 #define AB8500_ANCCONF7             0x59
0122 #define AB8500_ANCCONF8             0x5A
0123 #define AB8500_ANCCONF9             0x5B
0124 #define AB8500_ANCCONF10            0x5C
0125 #define AB8500_ANCCONF11            0x5D
0126 #define AB8500_ANCCONF12            0x5E
0127 #define AB8500_ANCCONF13            0x5F
0128 #define AB8500_ANCCONF14            0x60
0129 #define AB8500_SIDFIRADR            0x61
0130 #define AB8500_SIDFIRCOEF1          0x62
0131 #define AB8500_SIDFIRCOEF2          0x63
0132 #define AB8500_SIDFIRCONF           0x64
0133 #define AB8500_AUDINTMASK1          0x65
0134 #define AB8500_AUDINTSOURCE1            0x66
0135 #define AB8500_AUDINTMASK2          0x67
0136 #define AB8500_AUDINTSOURCE2            0x68
0137 #define AB8500_FIFOCONF1            0x69
0138 #define AB8500_FIFOCONF2            0x6A
0139 #define AB8500_FIFOCONF3            0x6B
0140 #define AB8500_FIFOCONF4            0x6C
0141 #define AB8500_FIFOCONF5            0x6D
0142 #define AB8500_FIFOCONF6            0x6E
0143 #define AB8500_AUDREV               0x6F
0144 
0145 #define AB8500_FIRST_REG            AB8500_POWERUP
0146 #define AB8500_LAST_REG             AB8500_AUDREV
0147 #define AB8500_CACHEREGNUM          (AB8500_LAST_REG + 1)
0148 
0149 #define AB8500_MASK_ALL             0xFF
0150 #define AB8500_MASK_SLOT(slot)          ((slot & 1) ? 0xF0 : 0x0F)
0151 #define AB8500_MASK_NONE            0x00
0152 
0153 /* AB8500_POWERUP */
0154 #define AB8500_POWERUP_POWERUP          7
0155 #define AB8500_POWERUP_ENANA            3
0156 
0157 /* AB8500_AUDSWRESET */
0158 #define AB8500_AUDSWRESET_SWRESET       7
0159 
0160 /* AB8500_ADPATHENA */
0161 #define AB8500_ADPATHENA_ENAD12         7
0162 #define AB8500_ADPATHENA_ENAD34         5
0163 #define AB8500_ADPATHENA_ENAD5768       3
0164 
0165 /* AB8500_DAPATHENA */
0166 #define AB8500_DAPATHENA_ENDA1          7
0167 #define AB8500_DAPATHENA_ENDA2          6
0168 #define AB8500_DAPATHENA_ENDA3          5
0169 #define AB8500_DAPATHENA_ENDA4          4
0170 #define AB8500_DAPATHENA_ENDA5          3
0171 #define AB8500_DAPATHENA_ENDA6          2
0172 
0173 /* AB8500_ANACONF1 */
0174 #define AB8500_ANACONF1_HSLOWPOW        7
0175 #define AB8500_ANACONF1_DACLOWPOW1      6
0176 #define AB8500_ANACONF1_DACLOWPOW0      5
0177 #define AB8500_ANACONF1_EARDACLOWPOW        4
0178 #define AB8500_ANACONF1_EARSELCM        2
0179 #define AB8500_ANACONF1_HSHPEN          1
0180 #define AB8500_ANACONF1_EARDRVLOWPOW        0
0181 
0182 /* AB8500_ANACONF2 */
0183 #define AB8500_ANACONF2_ENMIC1          7
0184 #define AB8500_ANACONF2_ENMIC2          6
0185 #define AB8500_ANACONF2_ENLINL          5
0186 #define AB8500_ANACONF2_ENLINR          4
0187 #define AB8500_ANACONF2_MUTMIC1         3
0188 #define AB8500_ANACONF2_MUTMIC2         2
0189 #define AB8500_ANACONF2_MUTLINL         1
0190 #define AB8500_ANACONF2_MUTLINR         0
0191 
0192 /* AB8500_DIGMICCONF */
0193 #define AB8500_DIGMICCONF_ENDMIC1       7
0194 #define AB8500_DIGMICCONF_ENDMIC2       6
0195 #define AB8500_DIGMICCONF_ENDMIC3       5
0196 #define AB8500_DIGMICCONF_ENDMIC4       4
0197 #define AB8500_DIGMICCONF_ENDMIC5       3
0198 #define AB8500_DIGMICCONF_ENDMIC6       2
0199 #define AB8500_DIGMICCONF_HSFADSPEED        0
0200 
0201 /* AB8500_ANACONF3 */
0202 #define AB8500_ANACONF3_MIC1SEL         7
0203 #define AB8500_ANACONF3_LINRSEL         6
0204 #define AB8500_ANACONF3_ENDRVHSL        5
0205 #define AB8500_ANACONF3_ENDRVHSR        4
0206 #define AB8500_ANACONF3_ENADCMIC        2
0207 #define AB8500_ANACONF3_ENADCLINL       1
0208 #define AB8500_ANACONF3_ENADCLINR       0
0209 
0210 /* AB8500_ANACONF4 */
0211 #define AB8500_ANACONF4_DISPDVSS        7
0212 #define AB8500_ANACONF4_ENEAR           6
0213 #define AB8500_ANACONF4_ENHSL           5
0214 #define AB8500_ANACONF4_ENHSR           4
0215 #define AB8500_ANACONF4_ENHFL           3
0216 #define AB8500_ANACONF4_ENHFR           2
0217 #define AB8500_ANACONF4_ENVIB1          1
0218 #define AB8500_ANACONF4_ENVIB2          0
0219 
0220 /* AB8500_DAPATHCONF */
0221 #define AB8500_DAPATHCONF_ENDACEAR      6
0222 #define AB8500_DAPATHCONF_ENDACHSL      5
0223 #define AB8500_DAPATHCONF_ENDACHSR      4
0224 #define AB8500_DAPATHCONF_ENDACHFL      3
0225 #define AB8500_DAPATHCONF_ENDACHFR      2
0226 #define AB8500_DAPATHCONF_ENDACVIB1     1
0227 #define AB8500_DAPATHCONF_ENDACVIB2     0
0228 
0229 /* AB8500_MUTECONF */
0230 #define AB8500_MUTECONF_MUTEAR          6
0231 #define AB8500_MUTECONF_MUTHSL          5
0232 #define AB8500_MUTECONF_MUTHSR          4
0233 #define AB8500_MUTECONF_MUTDACEAR       2
0234 #define AB8500_MUTECONF_MUTDACHSL       1
0235 #define AB8500_MUTECONF_MUTDACHSR       0
0236 
0237 /* AB8500_SHORTCIRCONF */
0238 #define AB8500_SHORTCIRCONF_ENSHORTPWD      7
0239 #define AB8500_SHORTCIRCONF_EARSHORTDIS     6
0240 #define AB8500_SHORTCIRCONF_HSSHORTDIS      5
0241 #define AB8500_SHORTCIRCONF_HSPULLDEN       4
0242 #define AB8500_SHORTCIRCONF_HSOSCEN     2
0243 #define AB8500_SHORTCIRCONF_HSFADDIS        1
0244 #define AB8500_SHORTCIRCONF_HSZCDDIS        0
0245 /* Zero cross should be disabled */
0246 
0247 /* AB8500_ANACONF5 */
0248 #define AB8500_ANACONF5_ENCPHS          7
0249 #define AB8500_ANACONF5_HSLDACTOLOL     5
0250 #define AB8500_ANACONF5_HSRDACTOLOR     4
0251 #define AB8500_ANACONF5_ENLOL           3
0252 #define AB8500_ANACONF5_ENLOR           2
0253 #define AB8500_ANACONF5_HSAUTOEN        0
0254 
0255 /* AB8500_ENVCPCONF */
0256 #define AB8500_ENVCPCONF_ENVDETHTHRE        4
0257 #define AB8500_ENVCPCONF_ENVDETLTHRE        0
0258 #define AB8500_ENVCPCONF_ENVDETHTHRE_MAX    0x0F
0259 #define AB8500_ENVCPCONF_ENVDETLTHRE_MAX    0x0F
0260 
0261 /* AB8500_SIGENVCONF */
0262 #define AB8500_SIGENVCONF_CPLVEN        5
0263 #define AB8500_SIGENVCONF_ENVDETCPEN        4
0264 #define AB8500_SIGENVCONF_ENVDETTIME        0
0265 #define AB8500_SIGENVCONF_ENVDETTIME_MAX    0x0F
0266 
0267 /* AB8500_PWMGENCONF1 */
0268 #define AB8500_PWMGENCONF1_PWMTOVIB1        7
0269 #define AB8500_PWMGENCONF1_PWMTOVIB2        6
0270 #define AB8500_PWMGENCONF1_PWM1CTRL     5
0271 #define AB8500_PWMGENCONF1_PWM2CTRL     4
0272 #define AB8500_PWMGENCONF1_PWM1NCTRL        3
0273 #define AB8500_PWMGENCONF1_PWM1PCTRL        2
0274 #define AB8500_PWMGENCONF1_PWM2NCTRL        1
0275 #define AB8500_PWMGENCONF1_PWM2PCTRL        0
0276 
0277 /* AB8500_PWMGENCONF2 */
0278 /* AB8500_PWMGENCONF3 */
0279 /* AB8500_PWMGENCONF4 */
0280 /* AB8500_PWMGENCONF5 */
0281 #define AB8500_PWMGENCONFX_PWMVIBXPOL       7
0282 #define AB8500_PWMGENCONFX_PWMVIBXDUTCYC    0
0283 #define AB8500_PWMGENCONFX_PWMVIBXDUTCYC_MAX    0x64
0284 
0285 /* AB8500_ANAGAIN1 */
0286 /* AB8500_ANAGAIN2 */
0287 #define AB8500_ANAGAINX_ENSEMICX        7
0288 #define AB8500_ANAGAINX_LOWPOWMICX      6
0289 #define AB8500_ANAGAINX_MICXGAIN        0
0290 #define AB8500_ANAGAINX_MICXGAIN_MAX        0x1F
0291 
0292 /* AB8500_ANAGAIN3 */
0293 #define AB8500_ANAGAIN3_HSLGAIN         4
0294 #define AB8500_ANAGAIN3_HSRGAIN         0
0295 #define AB8500_ANAGAIN3_HSXGAIN_MAX     0x0F
0296 
0297 /* AB8500_ANAGAIN4 */
0298 #define AB8500_ANAGAIN4_LINLGAIN        4
0299 #define AB8500_ANAGAIN4_LINRGAIN        0
0300 #define AB8500_ANAGAIN4_LINXGAIN_MAX        0x0F
0301 
0302 /* AB8500_DIGLINHSLGAIN */
0303 /* AB8500_DIGLINHSRGAIN */
0304 #define AB8500_DIGLINHSXGAIN_LINTOHSXGAIN   0
0305 #define AB8500_DIGLINHSXGAIN_LINTOHSXGAIN_MAX   0x13
0306 
0307 /* AB8500_ADFILTCONF */
0308 #define AB8500_ADFILTCONF_AD1NH         7
0309 #define AB8500_ADFILTCONF_AD2NH         6
0310 #define AB8500_ADFILTCONF_AD3NH         5
0311 #define AB8500_ADFILTCONF_AD4NH         4
0312 #define AB8500_ADFILTCONF_AD1VOICE      3
0313 #define AB8500_ADFILTCONF_AD2VOICE      2
0314 #define AB8500_ADFILTCONF_AD3VOICE      1
0315 #define AB8500_ADFILTCONF_AD4VOICE      0
0316 
0317 /* AB8500_DIGIFCONF1 */
0318 #define AB8500_DIGIFCONF1_ENMASTGEN     7
0319 #define AB8500_DIGIFCONF1_IF1BITCLKOS1      6
0320 #define AB8500_DIGIFCONF1_IF1BITCLKOS0      5
0321 #define AB8500_DIGIFCONF1_ENFSBITCLK1       4
0322 #define AB8500_DIGIFCONF1_IF0BITCLKOS1      2
0323 #define AB8500_DIGIFCONF1_IF0BITCLKOS0      1
0324 #define AB8500_DIGIFCONF1_ENFSBITCLK0       0
0325 
0326 /* AB8500_DIGIFCONF2 */
0327 #define AB8500_DIGIFCONF2_FSYNC0P       6
0328 #define AB8500_DIGIFCONF2_BITCLK0P      5
0329 #define AB8500_DIGIFCONF2_IF0DEL        4
0330 #define AB8500_DIGIFCONF2_IF0FORMAT1        3
0331 #define AB8500_DIGIFCONF2_IF0FORMAT0        2
0332 #define AB8500_DIGIFCONF2_IF0WL1        1
0333 #define AB8500_DIGIFCONF2_IF0WL0        0
0334 
0335 /* AB8500_DIGIFCONF3 */
0336 #define AB8500_DIGIFCONF3_IF0DATOIF1AD      7
0337 #define AB8500_DIGIFCONF3_IF0CLKTOIF1CLK    6
0338 #define AB8500_DIGIFCONF3_IF1MASTER     5
0339 #define AB8500_DIGIFCONF3_IF1DATOIF0AD      3
0340 #define AB8500_DIGIFCONF3_IF1CLKTOIF0CLK    2
0341 #define AB8500_DIGIFCONF3_IF0MASTER     1
0342 #define AB8500_DIGIFCONF3_IF0BFIFOEN        0
0343 
0344 /* AB8500_DIGIFCONF4 */
0345 #define AB8500_DIGIFCONF4_FSYNC1P       6
0346 #define AB8500_DIGIFCONF4_BITCLK1P      5
0347 #define AB8500_DIGIFCONF4_IF1DEL        4
0348 #define AB8500_DIGIFCONF4_IF1FORMAT1        3
0349 #define AB8500_DIGIFCONF4_IF1FORMAT0        2
0350 #define AB8500_DIGIFCONF4_IF1WL1        1
0351 #define AB8500_DIGIFCONF4_IF1WL0        0
0352 
0353 /* AB8500_ADSLOTSELX */
0354 #define AB8500_AD_OUT1  0x0
0355 #define AB8500_AD_OUT2  0x1
0356 #define AB8500_AD_OUT3  0x2
0357 #define AB8500_AD_OUT4  0x3
0358 #define AB8500_AD_OUT5  0x4
0359 #define AB8500_AD_OUT6  0x5
0360 #define AB8500_AD_OUT7  0x6
0361 #define AB8500_AD_OUT8  0x7
0362 #define AB8500_ZEROES   0x8
0363 #define AB8500_TRISTATE 0xF
0364 #define AB8500_ADSLOTSELX_EVEN_SHIFT        0
0365 #define AB8500_ADSLOTSELX_ODD_SHIFT     4
0366 #define AB8500_ADSLOTSELX_AD_OUT_TO_SLOT(out, slot) \
0367     ((out) << (((slot) & 1) ? \
0368      AB8500_ADSLOTSELX_ODD_SHIFT : AB8500_ADSLOTSELX_EVEN_SHIFT))
0369 
0370 /* AB8500_ADSLOTHIZCTRL1 */
0371 /* AB8500_ADSLOTHIZCTRL2 */
0372 /* AB8500_ADSLOTHIZCTRL3 */
0373 /* AB8500_ADSLOTHIZCTRL4 */
0374 /* AB8500_DASLOTCONF1 */
0375 #define AB8500_DASLOTCONF1_DA12VOICE        7
0376 #define AB8500_DASLOTCONF1_SWAPDA12_34      6
0377 #define AB8500_DASLOTCONF1_DAI7TOADO1       5
0378 
0379 /* AB8500_DASLOTCONF2 */
0380 #define AB8500_DASLOTCONF2_DAI8TOADO2       5
0381 
0382 /* AB8500_DASLOTCONF3 */
0383 #define AB8500_DASLOTCONF3_DA34VOICE        7
0384 #define AB8500_DASLOTCONF3_DAI7TOADO3       5
0385 
0386 /* AB8500_DASLOTCONF4 */
0387 #define AB8500_DASLOTCONF4_DAI8TOADO4       5
0388 
0389 /* AB8500_DASLOTCONF5 */
0390 #define AB8500_DASLOTCONF5_DA56VOICE        7
0391 #define AB8500_DASLOTCONF5_DAI7TOADO5       5
0392 
0393 /* AB8500_DASLOTCONF6 */
0394 #define AB8500_DASLOTCONF6_DAI8TOADO6       5
0395 
0396 /* AB8500_DASLOTCONF7 */
0397 #define AB8500_DASLOTCONF7_DAI8TOADO7       5
0398 
0399 /* AB8500_DASLOTCONF8 */
0400 #define AB8500_DASLOTCONF8_DAI7TOADO8       5
0401 
0402 #define AB8500_DASLOTCONFX_SLTODAX_SHIFT    0
0403 #define AB8500_DASLOTCONFX_SLTODAX_MASK     0x1F
0404 
0405 /* AB8500_CLASSDCONF1 */
0406 #define AB8500_CLASSDCONF1_PARLHF       7
0407 #define AB8500_CLASSDCONF1_PARLVIB      6
0408 #define AB8500_CLASSDCONF1_VIB1SWAPEN       3
0409 #define AB8500_CLASSDCONF1_VIB2SWAPEN       2
0410 #define AB8500_CLASSDCONF1_HFLSWAPEN        1
0411 #define AB8500_CLASSDCONF1_HFRSWAPEN        0
0412 
0413 /* AB8500_CLASSDCONF2 */
0414 #define AB8500_CLASSDCONF2_FIRBYP3      7
0415 #define AB8500_CLASSDCONF2_FIRBYP2      6
0416 #define AB8500_CLASSDCONF2_FIRBYP1      5
0417 #define AB8500_CLASSDCONF2_FIRBYP0      4
0418 #define AB8500_CLASSDCONF2_HIGHVOLEN3       3
0419 #define AB8500_CLASSDCONF2_HIGHVOLEN2       2
0420 #define AB8500_CLASSDCONF2_HIGHVOLEN1       1
0421 #define AB8500_CLASSDCONF2_HIGHVOLEN0       0
0422 
0423 /* AB8500_CLASSDCONF3 */
0424 #define AB8500_CLASSDCONF3_DITHHPGAIN       4
0425 #define AB8500_CLASSDCONF3_DITHHPGAIN_MAX   0x0A
0426 #define AB8500_CLASSDCONF3_DITHWGAIN        0
0427 #define AB8500_CLASSDCONF3_DITHWGAIN_MAX    0x0A
0428 
0429 /* AB8500_DMICFILTCONF */
0430 #define AB8500_DMICFILTCONF_ANCINSEL        7
0431 #define AB8500_DMICFILTCONF_DA3TOEAR        6
0432 #define AB8500_DMICFILTCONF_DMIC1SINC3      5
0433 #define AB8500_DMICFILTCONF_DMIC2SINC3      4
0434 #define AB8500_DMICFILTCONF_DMIC3SINC3      3
0435 #define AB8500_DMICFILTCONF_DMIC4SINC3      2
0436 #define AB8500_DMICFILTCONF_DMIC5SINC3      1
0437 #define AB8500_DMICFILTCONF_DMIC6SINC3      0
0438 
0439 /* AB8500_DIGMULTCONF1 */
0440 #define AB8500_DIGMULTCONF1_DATOHSLEN       7
0441 #define AB8500_DIGMULTCONF1_DATOHSREN       6
0442 #define AB8500_DIGMULTCONF1_AD1SEL      5
0443 #define AB8500_DIGMULTCONF1_AD2SEL      4
0444 #define AB8500_DIGMULTCONF1_AD3SEL      3
0445 #define AB8500_DIGMULTCONF1_AD5SEL      2
0446 #define AB8500_DIGMULTCONF1_AD6SEL      1
0447 #define AB8500_DIGMULTCONF1_ANCSEL      0
0448 
0449 /* AB8500_DIGMULTCONF2 */
0450 #define AB8500_DIGMULTCONF2_DATOHFREN       7
0451 #define AB8500_DIGMULTCONF2_DATOHFLEN       6
0452 #define AB8500_DIGMULTCONF2_HFRSEL      5
0453 #define AB8500_DIGMULTCONF2_HFLSEL      4
0454 #define AB8500_DIGMULTCONF2_FIRSID1SEL      2
0455 #define AB8500_DIGMULTCONF2_FIRSID2SEL      0
0456 
0457 /* AB8500_ADDIGGAIN1 */
0458 /* AB8500_ADDIGGAIN2 */
0459 /* AB8500_ADDIGGAIN3 */
0460 /* AB8500_ADDIGGAIN4 */
0461 /* AB8500_ADDIGGAIN5 */
0462 /* AB8500_ADDIGGAIN6 */
0463 #define AB8500_ADDIGGAINX_FADEDISADX        6
0464 #define AB8500_ADDIGGAINX_ADXGAIN_MAX       0x3F
0465 
0466 /* AB8500_DADIGGAIN1 */
0467 /* AB8500_DADIGGAIN2 */
0468 /* AB8500_DADIGGAIN3 */
0469 /* AB8500_DADIGGAIN4 */
0470 /* AB8500_DADIGGAIN5 */
0471 /* AB8500_DADIGGAIN6 */
0472 #define AB8500_DADIGGAINX_FADEDISDAX        6
0473 #define AB8500_DADIGGAINX_DAXGAIN_MAX       0x3F
0474 
0475 /* AB8500_ADDIGLOOPGAIN1 */
0476 /* AB8500_ADDIGLOOPGAIN2 */
0477 #define AB8500_ADDIGLOOPGAINX_FADEDISADXL   6
0478 #define AB8500_ADDIGLOOPGAINX_ADXLBGAIN_MAX 0x3F
0479 
0480 /* AB8500_HSLEARDIGGAIN */
0481 #define AB8500_HSLEARDIGGAIN_HSSINC1        7
0482 #define AB8500_HSLEARDIGGAIN_FADEDISHSL     4
0483 #define AB8500_HSLEARDIGGAIN_HSLDGAIN_MAX   0x09
0484 
0485 /* AB8500_HSRDIGGAIN */
0486 #define AB8500_HSRDIGGAIN_FADESPEED     6
0487 #define AB8500_HSRDIGGAIN_FADEDISHSR        4
0488 #define AB8500_HSRDIGGAIN_HSRDGAIN_MAX      0x09
0489 
0490 /* AB8500_SIDFIRGAIN1 */
0491 /* AB8500_SIDFIRGAIN2 */
0492 #define AB8500_SIDFIRGAINX_FIRSIDXGAIN_MAX  0x1F
0493 
0494 /* AB8500_ANCCONF1 */
0495 #define AB8500_ANCCONF1_ANCIIRUPDATE        3
0496 #define AB8500_ANCCONF1_ENANC           2
0497 #define AB8500_ANCCONF1_ANCIIRINIT      1
0498 #define AB8500_ANCCONF1_ANCFIRUPDATE        0
0499 
0500 /* AB8500_ANCCONF2 */
0501 #define AB8500_ANCCONF2_SHIFT           5
0502 #define AB8500_ANCCONF2_MIN         -0x10
0503 #define AB8500_ANCCONF2_MAX         0xF
0504 
0505 /* AB8500_ANCCONF3 */
0506 #define AB8500_ANCCONF3_SHIFT           5
0507 #define AB8500_ANCCONF3_MIN         -0x10
0508 #define AB8500_ANCCONF3_MAX         0xF
0509 
0510 /* AB8500_ANCCONF4 */
0511 #define AB8500_ANCCONF4_SHIFT           5
0512 #define AB8500_ANCCONF4_MIN         -0x10
0513 #define AB8500_ANCCONF4_MAX         0xF
0514 
0515 /* AB8500_ANC_FIR_COEFFS */
0516 #define AB8500_ANC_FIR_COEFF_MIN        -0x8000
0517 #define AB8500_ANC_FIR_COEFF_MAX        0x7FFF
0518 #define AB8500_ANC_FIR_COEFFS           15
0519 
0520 /* AB8500_ANC_IIR_COEFFS */
0521 #define AB8500_ANC_IIR_COEFF_MIN        -0x800000
0522 #define AB8500_ANC_IIR_COEFF_MAX        0x7FFFFF
0523 #define AB8500_ANC_IIR_COEFFS           24
0524 /* AB8500_ANC_WARP_DELAY */
0525 #define AB8500_ANC_WARP_DELAY_SHIFT     16
0526 #define AB8500_ANC_WARP_DELAY_MIN       0x0000
0527 #define AB8500_ANC_WARP_DELAY_MAX       0xFFFF
0528 
0529 /* AB8500_ANCCONF11 */
0530 /* AB8500_ANCCONF12 */
0531 /* AB8500_ANCCONF13 */
0532 /* AB8500_ANCCONF14 */
0533 
0534 /* AB8500_SIDFIRADR */
0535 #define AB8500_SIDFIRADR_FIRSIDSET      7
0536 #define AB8500_SIDFIRADR_ADDRESS_SHIFT      0
0537 #define AB8500_SIDFIRADR_ADDRESS_MAX        0x7F
0538 
0539 /* AB8500_SIDFIRCOEF1 */
0540 /* AB8500_SIDFIRCOEF2 */
0541 #define AB8500_SID_FIR_COEFF_MIN        0
0542 #define AB8500_SID_FIR_COEFF_MAX        0xFFFF
0543 #define AB8500_SID_FIR_COEFFS           128
0544 
0545 /* AB8500_SIDFIRCONF */
0546 #define AB8500_SIDFIRCONF_ENFIRSIDS     2
0547 #define AB8500_SIDFIRCONF_FIRSIDSTOIF1      1
0548 #define AB8500_SIDFIRCONF_FIRSIDBUSY        0
0549 
0550 /* AB8500_AUDINTMASK1 */
0551 /* AB8500_AUDINTSOURCE1 */
0552 /* AB8500_AUDINTMASK2 */
0553 /* AB8500_AUDINTSOURCE2 */
0554 
0555 /* AB8500_FIFOCONF1 */
0556 #define AB8500_FIFOCONF1_BFIFOMASK      0x80
0557 #define AB8500_FIFOCONF1_BFIFO19M2      0x40
0558 #define AB8500_FIFOCONF1_BFIFOINT_SHIFT     0
0559 #define AB8500_FIFOCONF1_BFIFOINT_MAX       0x3F
0560 
0561 /* AB8500_FIFOCONF2 */
0562 #define AB8500_FIFOCONF2_BFIFOTX_SHIFT      0
0563 #define AB8500_FIFOCONF2_BFIFOTX_MAX        0xFF
0564 
0565 /* AB8500_FIFOCONF3 */
0566 #define AB8500_FIFOCONF3_BFIFOEXSL_SHIFT    5
0567 #define AB8500_FIFOCONF3_BFIFOEXSL_MAX      0x5
0568 #define AB8500_FIFOCONF3_PREBITCLK0_SHIFT   2
0569 #define AB8500_FIFOCONF3_PREBITCLK0_MAX     0x7
0570 #define AB8500_FIFOCONF3_BFIFOMAST_SHIFT    1
0571 #define AB8500_FIFOCONF3_BFIFORUN_SHIFT     0
0572 
0573 /* AB8500_FIFOCONF4 */
0574 #define AB8500_FIFOCONF4_BFIFOFRAMSW_SHIFT  0
0575 #define AB8500_FIFOCONF4_BFIFOFRAMSW_MAX    0xFF
0576 
0577 /* AB8500_FIFOCONF5 */
0578 #define AB8500_FIFOCONF5_BFIFOWAKEUP_SHIFT  0
0579 #define AB8500_FIFOCONF5_BFIFOWAKEUP_MAX    0xFF
0580 
0581 /* AB8500_FIFOCONF6 */
0582 #define AB8500_FIFOCONF6_BFIFOSAMPLE_SHIFT  0
0583 #define AB8500_FIFOCONF6_BFIFOSAMPLE_MAX    0xFF
0584 
0585 /* AB8500_AUDREV */
0586 
0587 #endif