linux/sound/soc/codecs/tscs42xx.h
<<
>>
Prefs
   1// SPDX-License-Identifier: GPL-2.0
   2// tscs42xx.h -- TSCS42xx ALSA SoC Audio driver
   3// Copyright 2017 Tempo Semiconductor, Inc.
   4// Author: Steven Eckhoff <steven.eckhoff.opensource@gmail.com>
   5
   6#ifndef __WOOKIE_H__
   7#define __WOOKIE_H__
   8
   9enum {
  10        TSCS42XX_PLL_SRC_XTAL,
  11        TSCS42XX_PLL_SRC_MCLK1,
  12        TSCS42XX_PLL_SRC_MCLK2,
  13        TSCS42XX_PLL_SRC_CNT,
  14};
  15
  16#define R_HPVOLL        0x0
  17#define R_HPVOLR        0x1
  18#define R_SPKVOLL       0x2
  19#define R_SPKVOLR       0x3
  20#define R_DACVOLL       0x4
  21#define R_DACVOLR       0x5
  22#define R_ADCVOLL       0x6
  23#define R_ADCVOLR       0x7
  24#define R_INVOLL        0x8
  25#define R_INVOLR        0x9
  26#define R_INMODE        0x0B
  27#define R_INSELL        0x0C
  28#define R_INSELR        0x0D
  29#define R_AIC1          0x13
  30#define R_AIC2          0x14
  31#define R_CNVRTR0       0x16
  32#define R_ADCSR         0x17
  33#define R_CNVRTR1       0x18
  34#define R_DACSR         0x19
  35#define R_PWRM1         0x1A
  36#define R_PWRM2         0x1B
  37#define R_CTL           0x1C
  38#define R_CONFIG0       0x1F
  39#define R_CONFIG1       0x20
  40#define R_DMICCTL       0x24
  41#define R_CLECTL        0x25
  42#define R_MUGAIN        0x26
  43#define R_COMPTH        0x27
  44#define R_CMPRAT        0x28
  45#define R_CATKTCL       0x29
  46#define R_CATKTCH       0x2A
  47#define R_CRELTCL       0x2B
  48#define R_CRELTCH       0x2C
  49#define R_LIMTH         0x2D
  50#define R_LIMTGT        0x2E
  51#define R_LATKTCL       0x2F
  52#define R_LATKTCH       0x30
  53#define R_LRELTCL       0x31
  54#define R_LRELTCH       0x32
  55#define R_EXPTH         0x33
  56#define R_EXPRAT        0x34
  57#define R_XATKTCL       0x35
  58#define R_XATKTCH       0x36
  59#define R_XRELTCL       0x37
  60#define R_XRELTCH       0x38
  61#define R_FXCTL         0x39
  62#define R_DACCRWRL      0x3A
  63#define R_DACCRWRM      0x3B
  64#define R_DACCRWRH      0x3C
  65#define R_DACCRRDL      0x3D
  66#define R_DACCRRDM      0x3E
  67#define R_DACCRRDH      0x3F
  68#define R_DACCRADDR     0x40
  69#define R_DCOFSEL       0x41
  70#define R_PLLCTL9       0x4E
  71#define R_PLLCTLA       0x4F
  72#define R_PLLCTLB       0x50
  73#define R_PLLCTLC       0x51
  74#define R_PLLCTLD       0x52
  75#define R_PLLCTLE       0x53
  76#define R_PLLCTLF       0x54
  77#define R_PLLCTL10      0x55
  78#define R_PLLCTL11      0x56
  79#define R_PLLCTL12      0x57
  80#define R_PLLCTL1B      0x60
  81#define R_PLLCTL1C      0x61
  82#define R_TIMEBASE      0x77
  83#define R_DEVIDL        0x7D
  84#define R_DEVIDH        0x7E
  85#define R_RESET         0x80
  86#define R_DACCRSTAT     0x8A
  87#define R_PLLCTL0       0x8E
  88#define R_PLLREFSEL     0x8F
  89#define R_DACMBCEN      0xC7
  90#define R_DACMBCCTL     0xC8
  91#define R_DACMBCMUG1    0xC9
  92#define R_DACMBCTHR1    0xCA
  93#define R_DACMBCRAT1    0xCB
  94#define R_DACMBCATK1L   0xCC
  95#define R_DACMBCATK1H   0xCD
  96#define R_DACMBCREL1L   0xCE
  97#define R_DACMBCREL1H   0xCF
  98#define R_DACMBCMUG2    0xD0
  99#define R_DACMBCTHR2    0xD1
 100#define R_DACMBCRAT2    0xD2
 101#define R_DACMBCATK2L   0xD3
 102#define R_DACMBCATK2H   0xD4
 103#define R_DACMBCREL2L   0xD5
 104#define R_DACMBCREL2H   0xD6
 105#define R_DACMBCMUG3    0xD7
 106#define R_DACMBCTHR3    0xD8
 107#define R_DACMBCRAT3    0xD9
 108#define R_DACMBCATK3L   0xDA
 109#define R_DACMBCATK3H   0xDB
 110#define R_DACMBCREL3L   0xDC
 111#define R_DACMBCREL3H   0xDD
 112
 113/* Helpers */
 114#define RM(m, b) ((m)<<(b))
 115#define RV(v, b) ((v)<<(b))
 116
 117/****************************
 118 *      R_HPVOLL (0x0)      *
 119 ****************************/
 120
 121/* Field Offsets */
 122#define FB_HPVOLL                            0
 123
 124/* Field Masks */
 125#define FM_HPVOLL                            0X7F
 126
 127/* Field Values */
 128#define FV_HPVOLL_P6DB                       0x7F
 129#define FV_HPVOLL_N88PT5DB                   0x1
 130#define FV_HPVOLL_MUTE                       0x0
 131
 132/* Register Masks */
 133#define RM_HPVOLL                            RM(FM_HPVOLL, FB_HPVOLL)
 134
 135/* Register Values */
 136#define RV_HPVOLL_P6DB                       RV(FV_HPVOLL_P6DB, FB_HPVOLL)
 137#define RV_HPVOLL_N88PT5DB                   RV(FV_HPVOLL_N88PT5DB, FB_HPVOLL)
 138#define RV_HPVOLL_MUTE                       RV(FV_HPVOLL_MUTE, FB_HPVOLL)
 139
 140/****************************
 141 *      R_HPVOLR (0x1)      *
 142 ****************************/
 143
 144/* Field Offsets */
 145#define FB_HPVOLR                            0
 146
 147/* Field Masks */
 148#define FM_HPVOLR                            0X7F
 149
 150/* Field Values */
 151#define FV_HPVOLR_P6DB                       0x7F
 152#define FV_HPVOLR_N88PT5DB                   0x1
 153#define FV_HPVOLR_MUTE                       0x0
 154
 155/* Register Masks */
 156#define RM_HPVOLR                            RM(FM_HPVOLR, FB_HPVOLR)
 157
 158/* Register Values */
 159#define RV_HPVOLR_P6DB                       RV(FV_HPVOLR_P6DB, FB_HPVOLR)
 160#define RV_HPVOLR_N88PT5DB                   RV(FV_HPVOLR_N88PT5DB, FB_HPVOLR)
 161#define RV_HPVOLR_MUTE                       RV(FV_HPVOLR_MUTE, FB_HPVOLR)
 162
 163/*****************************
 164 *      R_SPKVOLL (0x2)      *
 165 *****************************/
 166
 167/* Field Offsets */
 168#define FB_SPKVOLL                           0
 169
 170/* Field Masks */
 171#define FM_SPKVOLL                           0X7F
 172
 173/* Field Values */
 174#define FV_SPKVOLL_P12DB                     0x7F
 175#define FV_SPKVOLL_N77PT25DB                 0x8
 176#define FV_SPKVOLL_MUTE                      0x0
 177
 178/* Register Masks */
 179#define RM_SPKVOLL                           RM(FM_SPKVOLL, FB_SPKVOLL)
 180
 181/* Register Values */
 182#define RV_SPKVOLL_P12DB                     RV(FV_SPKVOLL_P12DB, FB_SPKVOLL)
 183#define RV_SPKVOLL_N77PT25DB \
 184         RV(FV_SPKVOLL_N77PT25DB, FB_SPKVOLL)
 185
 186#define RV_SPKVOLL_MUTE                      RV(FV_SPKVOLL_MUTE, FB_SPKVOLL)
 187
 188/*****************************
 189 *      R_SPKVOLR (0x3)      *
 190 *****************************/
 191
 192/* Field Offsets */
 193#define FB_SPKVOLR                           0
 194
 195/* Field Masks */
 196#define FM_SPKVOLR                           0X7F
 197
 198/* Field Values */
 199#define FV_SPKVOLR_P12DB                     0x7F
 200#define FV_SPKVOLR_N77PT25DB                 0x8
 201#define FV_SPKVOLR_MUTE                      0x0
 202
 203/* Register Masks */
 204#define RM_SPKVOLR                           RM(FM_SPKVOLR, FB_SPKVOLR)
 205
 206/* Register Values */
 207#define RV_SPKVOLR_P12DB                     RV(FV_SPKVOLR_P12DB, FB_SPKVOLR)
 208#define RV_SPKVOLR_N77PT25DB \
 209         RV(FV_SPKVOLR_N77PT25DB, FB_SPKVOLR)
 210
 211#define RV_SPKVOLR_MUTE                      RV(FV_SPKVOLR_MUTE, FB_SPKVOLR)
 212
 213/*****************************
 214 *      R_DACVOLL (0x4)      *
 215 *****************************/
 216
 217/* Field Offsets */
 218#define FB_DACVOLL                           0
 219
 220/* Field Masks */
 221#define FM_DACVOLL                           0XFF
 222
 223/* Field Values */
 224#define FV_DACVOLL_0DB                       0xFF
 225#define FV_DACVOLL_N95PT625DB                0x1
 226#define FV_DACVOLL_MUTE                      0x0
 227
 228/* Register Masks */
 229#define RM_DACVOLL                           RM(FM_DACVOLL, FB_DACVOLL)
 230
 231/* Register Values */
 232#define RV_DACVOLL_0DB                       RV(FV_DACVOLL_0DB, FB_DACVOLL)
 233#define RV_DACVOLL_N95PT625DB \
 234         RV(FV_DACVOLL_N95PT625DB, FB_DACVOLL)
 235
 236#define RV_DACVOLL_MUTE                      RV(FV_DACVOLL_MUTE, FB_DACVOLL)
 237
 238/*****************************
 239 *      R_DACVOLR (0x5)      *
 240 *****************************/
 241
 242/* Field Offsets */
 243#define FB_DACVOLR                           0
 244
 245/* Field Masks */
 246#define FM_DACVOLR                           0XFF
 247
 248/* Field Values */
 249#define FV_DACVOLR_0DB                       0xFF
 250#define FV_DACVOLR_N95PT625DB                0x1
 251#define FV_DACVOLR_MUTE                      0x0
 252
 253/* Register Masks */
 254#define RM_DACVOLR                           RM(FM_DACVOLR, FB_DACVOLR)
 255
 256/* Register Values */
 257#define RV_DACVOLR_0DB                       RV(FV_DACVOLR_0DB, FB_DACVOLR)
 258#define RV_DACVOLR_N95PT625DB \
 259         RV(FV_DACVOLR_N95PT625DB, FB_DACVOLR)
 260
 261#define RV_DACVOLR_MUTE                      RV(FV_DACVOLR_MUTE, FB_DACVOLR)
 262
 263/*****************************
 264 *      R_ADCVOLL (0x6)      *
 265 *****************************/
 266
 267/* Field Offsets */
 268#define FB_ADCVOLL                           0
 269
 270/* Field Masks */
 271#define FM_ADCVOLL                           0XFF
 272
 273/* Field Values */
 274#define FV_ADCVOLL_P24DB                     0xFF
 275#define FV_ADCVOLL_N71PT25DB                 0x1
 276#define FV_ADCVOLL_MUTE                      0x0
 277
 278/* Register Masks */
 279#define RM_ADCVOLL                           RM(FM_ADCVOLL, FB_ADCVOLL)
 280
 281/* Register Values */
 282#define RV_ADCVOLL_P24DB                     RV(FV_ADCVOLL_P24DB, FB_ADCVOLL)
 283#define RV_ADCVOLL_N71PT25DB \
 284         RV(FV_ADCVOLL_N71PT25DB, FB_ADCVOLL)
 285
 286#define RV_ADCVOLL_MUTE                      RV(FV_ADCVOLL_MUTE, FB_ADCVOLL)
 287
 288/*****************************
 289 *      R_ADCVOLR (0x7)      *
 290 *****************************/
 291
 292/* Field Offsets */
 293#define FB_ADCVOLR                           0
 294
 295/* Field Masks */
 296#define FM_ADCVOLR                           0XFF
 297
 298/* Field Values */
 299#define FV_ADCVOLR_P24DB                     0xFF
 300#define FV_ADCVOLR_N71PT25DB                 0x1
 301#define FV_ADCVOLR_MUTE                      0x0
 302
 303/* Register Masks */
 304#define RM_ADCVOLR                           RM(FM_ADCVOLR, FB_ADCVOLR)
 305
 306/* Register Values */
 307#define RV_ADCVOLR_P24DB                     RV(FV_ADCVOLR_P24DB, FB_ADCVOLR)
 308#define RV_ADCVOLR_N71PT25DB \
 309         RV(FV_ADCVOLR_N71PT25DB, FB_ADCVOLR)
 310
 311#define RV_ADCVOLR_MUTE                      RV(FV_ADCVOLR_MUTE, FB_ADCVOLR)
 312
 313/****************************
 314 *      R_INVOLL (0x8)      *
 315 ****************************/
 316
 317/* Field Offsets */
 318#define FB_INVOLL_INMUTEL                    7
 319#define FB_INVOLL_IZCL                       6
 320#define FB_INVOLL                            0
 321
 322/* Field Masks */
 323#define FM_INVOLL_INMUTEL                    0X1
 324#define FM_INVOLL_IZCL                       0X1
 325#define FM_INVOLL                            0X3F
 326
 327/* Field Values */
 328#define FV_INVOLL_INMUTEL_ENABLE             0x1
 329#define FV_INVOLL_INMUTEL_DISABLE            0x0
 330#define FV_INVOLL_IZCL_ENABLE                0x1
 331#define FV_INVOLL_IZCL_DISABLE               0x0
 332#define FV_INVOLL_P30DB                      0x3F
 333#define FV_INVOLL_N17PT25DB                  0x0
 334
 335/* Register Masks */
 336#define RM_INVOLL_INMUTEL \
 337         RM(FM_INVOLL_INMUTEL, FB_INVOLL_INMUTEL)
 338
 339#define RM_INVOLL_IZCL                       RM(FM_INVOLL_IZCL, FB_INVOLL_IZCL)
 340#define RM_INVOLL                            RM(FM_INVOLL, FB_INVOLL)
 341
 342/* Register Values */
 343#define RV_INVOLL_INMUTEL_ENABLE \
 344         RV(FV_INVOLL_INMUTEL_ENABLE, FB_INVOLL_INMUTEL)
 345
 346#define RV_INVOLL_INMUTEL_DISABLE \
 347         RV(FV_INVOLL_INMUTEL_DISABLE, FB_INVOLL_INMUTEL)
 348
 349#define RV_INVOLL_IZCL_ENABLE \
 350         RV(FV_INVOLL_IZCL_ENABLE, FB_INVOLL_IZCL)
 351
 352#define RV_INVOLL_IZCL_DISABLE \
 353         RV(FV_INVOLL_IZCL_DISABLE, FB_INVOLL_IZCL)
 354
 355#define RV_INVOLL_P30DB                      RV(FV_INVOLL_P30DB, FB_INVOLL)
 356#define RV_INVOLL_N17PT25DB                  RV(FV_INVOLL_N17PT25DB, FB_INVOLL)
 357
 358/****************************
 359 *      R_INVOLR (0x9)      *
 360 ****************************/
 361
 362/* Field Offsets */
 363#define FB_INVOLR_INMUTER                    7
 364#define FB_INVOLR_IZCR                       6
 365#define FB_INVOLR                            0
 366
 367/* Field Masks */
 368#define FM_INVOLR_INMUTER                    0X1
 369#define FM_INVOLR_IZCR                       0X1
 370#define FM_INVOLR                            0X3F
 371
 372/* Field Values */
 373#define FV_INVOLR_INMUTER_ENABLE             0x1
 374#define FV_INVOLR_INMUTER_DISABLE            0x0
 375#define FV_INVOLR_IZCR_ENABLE                0x1
 376#define FV_INVOLR_IZCR_DISABLE               0x0
 377#define FV_INVOLR_P30DB                      0x3F
 378#define FV_INVOLR_N17PT25DB                  0x0
 379
 380/* Register Masks */
 381#define RM_INVOLR_INMUTER \
 382         RM(FM_INVOLR_INMUTER, FB_INVOLR_INMUTER)
 383
 384#define RM_INVOLR_IZCR                       RM(FM_INVOLR_IZCR, FB_INVOLR_IZCR)
 385#define RM_INVOLR                            RM(FM_INVOLR, FB_INVOLR)
 386
 387/* Register Values */
 388#define RV_INVOLR_INMUTER_ENABLE \
 389         RV(FV_INVOLR_INMUTER_ENABLE, FB_INVOLR_INMUTER)
 390
 391#define RV_INVOLR_INMUTER_DISABLE \
 392         RV(FV_INVOLR_INMUTER_DISABLE, FB_INVOLR_INMUTER)
 393
 394#define RV_INVOLR_IZCR_ENABLE \
 395         RV(FV_INVOLR_IZCR_ENABLE, FB_INVOLR_IZCR)
 396
 397#define RV_INVOLR_IZCR_DISABLE \
 398         RV(FV_INVOLR_IZCR_DISABLE, FB_INVOLR_IZCR)
 399
 400#define RV_INVOLR_P30DB                      RV(FV_INVOLR_P30DB, FB_INVOLR)
 401#define RV_INVOLR_N17PT25DB                  RV(FV_INVOLR_N17PT25DB, FB_INVOLR)
 402
 403/*****************************
 404 *      R_INMODE (0x0B)      *
 405 *****************************/
 406
 407/* Field Offsets */
 408#define FB_INMODE_DS                         0
 409
 410/* Field Masks */
 411#define FM_INMODE_DS                         0X1
 412
 413/* Field Values */
 414#define FV_INMODE_DS_LRIN1                   0x0
 415#define FV_INMODE_DS_LRIN2                   0x1
 416
 417/* Register Masks */
 418#define RM_INMODE_DS                         RM(FM_INMODE_DS, FB_INMODE_DS)
 419
 420/* Register Values */
 421#define RV_INMODE_DS_LRIN1 \
 422         RV(FV_INMODE_DS_LRIN1, FB_INMODE_DS)
 423
 424#define RV_INMODE_DS_LRIN2 \
 425         RV(FV_INMODE_DS_LRIN2, FB_INMODE_DS)
 426
 427
 428/*****************************
 429 *      R_INSELL (0x0C)      *
 430 *****************************/
 431
 432/* Field Offsets */
 433#define FB_INSELL                            6
 434#define FB_INSELL_MICBSTL                    4
 435
 436/* Field Masks */
 437#define FM_INSELL                            0X3
 438#define FM_INSELL_MICBSTL                    0X3
 439
 440/* Field Values */
 441#define FV_INSELL_IN1                        0x0
 442#define FV_INSELL_IN2                        0x1
 443#define FV_INSELL_IN3                        0x2
 444#define FV_INSELL_D2S                        0x3
 445#define FV_INSELL_MICBSTL_OFF                0x0
 446#define FV_INSELL_MICBSTL_10DB               0x1
 447#define FV_INSELL_MICBSTL_20DB               0x2
 448#define FV_INSELL_MICBSTL_30DB               0x3
 449
 450/* Register Masks */
 451#define RM_INSELL                            RM(FM_INSELL, FB_INSELL)
 452#define RM_INSELL_MICBSTL \
 453         RM(FM_INSELL_MICBSTL, FB_INSELL_MICBSTL)
 454
 455
 456/* Register Values */
 457#define RV_INSELL_IN1                        RV(FV_INSELL_IN1, FB_INSELL)
 458#define RV_INSELL_IN2                        RV(FV_INSELL_IN2, FB_INSELL)
 459#define RV_INSELL_IN3                        RV(FV_INSELL_IN3, FB_INSELL)
 460#define RV_INSELL_D2S                        RV(FV_INSELL_D2S, FB_INSELL)
 461#define RV_INSELL_MICBSTL_OFF \
 462         RV(FV_INSELL_MICBSTL_OFF, FB_INSELL_MICBSTL)
 463
 464#define RV_INSELL_MICBSTL_10DB \
 465         RV(FV_INSELL_MICBSTL_10DB, FB_INSELL_MICBSTL)
 466
 467#define RV_INSELL_MICBSTL_20DB \
 468         RV(FV_INSELL_MICBSTL_20DB, FB_INSELL_MICBSTL)
 469
 470#define RV_INSELL_MICBSTL_30DB \
 471         RV(FV_INSELL_MICBSTL_30DB, FB_INSELL_MICBSTL)
 472
 473
 474/*****************************
 475 *      R_INSELR (0x0D)      *
 476 *****************************/
 477
 478/* Field Offsets */
 479#define FB_INSELR                            6
 480#define FB_INSELR_MICBSTR                    4
 481
 482/* Field Masks */
 483#define FM_INSELR                            0X3
 484#define FM_INSELR_MICBSTR                    0X3
 485
 486/* Field Values */
 487#define FV_INSELR_IN1                        0x0
 488#define FV_INSELR_IN2                        0x1
 489#define FV_INSELR_IN3                        0x2
 490#define FV_INSELR_D2S                        0x3
 491#define FV_INSELR_MICBSTR_OFF                0x0
 492#define FV_INSELR_MICBSTR_10DB               0x1
 493#define FV_INSELR_MICBSTR_20DB               0x2
 494#define FV_INSELR_MICBSTR_30DB               0x3
 495
 496/* Register Masks */
 497#define RM_INSELR                            RM(FM_INSELR, FB_INSELR)
 498#define RM_INSELR_MICBSTR \
 499         RM(FM_INSELR_MICBSTR, FB_INSELR_MICBSTR)
 500
 501
 502/* Register Values */
 503#define RV_INSELR_IN1                        RV(FV_INSELR_IN1, FB_INSELR)
 504#define RV_INSELR_IN2                        RV(FV_INSELR_IN2, FB_INSELR)
 505#define RV_INSELR_IN3                        RV(FV_INSELR_IN3, FB_INSELR)
 506#define RV_INSELR_D2S                        RV(FV_INSELR_D2S, FB_INSELR)
 507#define RV_INSELR_MICBSTR_OFF \
 508         RV(FV_INSELR_MICBSTR_OFF, FB_INSELR_MICBSTR)
 509
 510#define RV_INSELR_MICBSTR_10DB \
 511         RV(FV_INSELR_MICBSTR_10DB, FB_INSELR_MICBSTR)
 512
 513#define RV_INSELR_MICBSTR_20DB \
 514         RV(FV_INSELR_MICBSTR_20DB, FB_INSELR_MICBSTR)
 515
 516#define RV_INSELR_MICBSTR_30DB \
 517         RV(FV_INSELR_MICBSTR_30DB, FB_INSELR_MICBSTR)
 518
 519
 520/***************************
 521 *      R_AIC1 (0x13)      *
 522 ***************************/
 523
 524/* Field Offsets */
 525#define FB_AIC1_BCLKINV                      6
 526#define FB_AIC1_MS                           5
 527#define FB_AIC1_LRP                          4
 528#define FB_AIC1_WL                           2
 529#define FB_AIC1_FORMAT                       0
 530
 531/* Field Masks */
 532#define FM_AIC1_BCLKINV                      0X1
 533#define FM_AIC1_MS                           0X1
 534#define FM_AIC1_LRP                          0X1
 535#define FM_AIC1_WL                           0X3
 536#define FM_AIC1_FORMAT                       0X3
 537
 538/* Field Values */
 539#define FV_AIC1_BCLKINV_ENABLE               0x1
 540#define FV_AIC1_BCLKINV_DISABLE              0x0
 541#define FV_AIC1_MS_MASTER                    0x1
 542#define FV_AIC1_MS_SLAVE                     0x0
 543#define FV_AIC1_LRP_INVERT                   0x1
 544#define FV_AIC1_LRP_NORMAL                   0x0
 545#define FV_AIC1_WL_16                        0x0
 546#define FV_AIC1_WL_20                        0x1
 547#define FV_AIC1_WL_24                        0x2
 548#define FV_AIC1_WL_32                        0x3
 549#define FV_AIC1_FORMAT_RIGHT                 0x0
 550#define FV_AIC1_FORMAT_LEFT                  0x1
 551#define FV_AIC1_FORMAT_I2S                   0x2
 552
 553/* Register Masks */
 554#define RM_AIC1_BCLKINV \
 555         RM(FM_AIC1_BCLKINV, FB_AIC1_BCLKINV)
 556
 557#define RM_AIC1_MS                           RM(FM_AIC1_MS, FB_AIC1_MS)
 558#define RM_AIC1_LRP                          RM(FM_AIC1_LRP, FB_AIC1_LRP)
 559#define RM_AIC1_WL                           RM(FM_AIC1_WL, FB_AIC1_WL)
 560#define RM_AIC1_FORMAT                       RM(FM_AIC1_FORMAT, FB_AIC1_FORMAT)
 561
 562/* Register Values */
 563#define RV_AIC1_BCLKINV_ENABLE \
 564         RV(FV_AIC1_BCLKINV_ENABLE, FB_AIC1_BCLKINV)
 565
 566#define RV_AIC1_BCLKINV_DISABLE \
 567         RV(FV_AIC1_BCLKINV_DISABLE, FB_AIC1_BCLKINV)
 568
 569#define RV_AIC1_MS_MASTER                    RV(FV_AIC1_MS_MASTER, FB_AIC1_MS)
 570#define RV_AIC1_MS_SLAVE                     RV(FV_AIC1_MS_SLAVE, FB_AIC1_MS)
 571#define RV_AIC1_LRP_INVERT \
 572         RV(FV_AIC1_LRP_INVERT, FB_AIC1_LRP)
 573
 574#define RV_AIC1_LRP_NORMAL \
 575         RV(FV_AIC1_LRP_NORMAL, FB_AIC1_LRP)
 576
 577#define RV_AIC1_WL_16                        RV(FV_AIC1_WL_16, FB_AIC1_WL)
 578#define RV_AIC1_WL_20                        RV(FV_AIC1_WL_20, FB_AIC1_WL)
 579#define RV_AIC1_WL_24                        RV(FV_AIC1_WL_24, FB_AIC1_WL)
 580#define RV_AIC1_WL_32                        RV(FV_AIC1_WL_32, FB_AIC1_WL)
 581#define RV_AIC1_FORMAT_RIGHT \
 582         RV(FV_AIC1_FORMAT_RIGHT, FB_AIC1_FORMAT)
 583
 584#define RV_AIC1_FORMAT_LEFT \
 585         RV(FV_AIC1_FORMAT_LEFT, FB_AIC1_FORMAT)
 586
 587#define RV_AIC1_FORMAT_I2S \
 588         RV(FV_AIC1_FORMAT_I2S, FB_AIC1_FORMAT)
 589
 590
 591/***************************
 592 *      R_AIC2 (0x14)      *
 593 ***************************/
 594
 595/* Field Offsets */
 596#define FB_AIC2_DACDSEL                      6
 597#define FB_AIC2_ADCDSEL                      4
 598#define FB_AIC2_TRI                          3
 599#define FB_AIC2_BLRCM                        0
 600
 601/* Field Masks */
 602#define FM_AIC2_DACDSEL                      0X3
 603#define FM_AIC2_ADCDSEL                      0X3
 604#define FM_AIC2_TRI                          0X1
 605#define FM_AIC2_BLRCM                        0X7
 606
 607/* Field Values */
 608#define FV_AIC2_BLRCM_DAC_BCLK_LRCLK_SHARED  0x3
 609
 610/* Register Masks */
 611#define RM_AIC2_DACDSEL \
 612         RM(FM_AIC2_DACDSEL, FB_AIC2_DACDSEL)
 613
 614#define RM_AIC2_ADCDSEL \
 615         RM(FM_AIC2_ADCDSEL, FB_AIC2_ADCDSEL)
 616
 617#define RM_AIC2_TRI                          RM(FM_AIC2_TRI, FB_AIC2_TRI)
 618#define RM_AIC2_BLRCM                        RM(FM_AIC2_BLRCM, FB_AIC2_BLRCM)
 619
 620/* Register Values */
 621#define RV_AIC2_BLRCM_DAC_BCLK_LRCLK_SHARED \
 622         RV(FV_AIC2_BLRCM_DAC_BCLK_LRCLK_SHARED, FB_AIC2_BLRCM)
 623
 624
 625/******************************
 626 *      R_CNVRTR0 (0x16)      *
 627 ******************************/
 628
 629/* Field Offsets */
 630#define FB_CNVRTR0_ADCPOLR                   7
 631#define FB_CNVRTR0_ADCPOLL                   6
 632#define FB_CNVRTR0_AMONOMIX                  4
 633#define FB_CNVRTR0_ADCMU                     3
 634#define FB_CNVRTR0_HPOR                      2
 635#define FB_CNVRTR0_ADCHPDR                   1
 636#define FB_CNVRTR0_ADCHPDL                   0
 637
 638/* Field Masks */
 639#define FM_CNVRTR0_ADCPOLR                   0X1
 640#define FM_CNVRTR0_ADCPOLL                   0X1
 641#define FM_CNVRTR0_AMONOMIX                  0X3
 642#define FM_CNVRTR0_ADCMU                     0X1
 643#define FM_CNVRTR0_HPOR                      0X1
 644#define FM_CNVRTR0_ADCHPDR                   0X1
 645#define FM_CNVRTR0_ADCHPDL                   0X1
 646
 647/* Field Values */
 648#define FV_CNVRTR0_ADCPOLR_INVERT            0x1
 649#define FV_CNVRTR0_ADCPOLR_NORMAL            0x0
 650#define FV_CNVRTR0_ADCPOLL_INVERT            0x1
 651#define FV_CNVRTR0_ADCPOLL_NORMAL            0x0
 652#define FV_CNVRTR0_ADCMU_ENABLE              0x1
 653#define FV_CNVRTR0_ADCMU_DISABLE             0x0
 654#define FV_CNVRTR0_ADCHPDR_ENABLE            0x1
 655#define FV_CNVRTR0_ADCHPDR_DISABLE           0x0
 656#define FV_CNVRTR0_ADCHPDL_ENABLE            0x1
 657#define FV_CNVRTR0_ADCHPDL_DISABLE           0x0
 658
 659/* Register Masks */
 660#define RM_CNVRTR0_ADCPOLR \
 661         RM(FM_CNVRTR0_ADCPOLR, FB_CNVRTR0_ADCPOLR)
 662
 663#define RM_CNVRTR0_ADCPOLL \
 664         RM(FM_CNVRTR0_ADCPOLL, FB_CNVRTR0_ADCPOLL)
 665
 666#define RM_CNVRTR0_AMONOMIX \
 667         RM(FM_CNVRTR0_AMONOMIX, FB_CNVRTR0_AMONOMIX)
 668
 669#define RM_CNVRTR0_ADCMU \
 670         RM(FM_CNVRTR0_ADCMU, FB_CNVRTR0_ADCMU)
 671
 672#define RM_CNVRTR0_HPOR \
 673         RM(FM_CNVRTR0_HPOR, FB_CNVRTR0_HPOR)
 674
 675#define RM_CNVRTR0_ADCHPDR \
 676         RM(FM_CNVRTR0_ADCHPDR, FB_CNVRTR0_ADCHPDR)
 677
 678#define RM_CNVRTR0_ADCHPDL \
 679         RM(FM_CNVRTR0_ADCHPDL, FB_CNVRTR0_ADCHPDL)
 680
 681
 682/* Register Values */
 683#define RV_CNVRTR0_ADCPOLR_INVERT \
 684         RV(FV_CNVRTR0_ADCPOLR_INVERT, FB_CNVRTR0_ADCPOLR)
 685
 686#define RV_CNVRTR0_ADCPOLR_NORMAL \
 687         RV(FV_CNVRTR0_ADCPOLR_NORMAL, FB_CNVRTR0_ADCPOLR)
 688
 689#define RV_CNVRTR0_ADCPOLL_INVERT \
 690         RV(FV_CNVRTR0_ADCPOLL_INVERT, FB_CNVRTR0_ADCPOLL)
 691
 692#define RV_CNVRTR0_ADCPOLL_NORMAL \
 693         RV(FV_CNVRTR0_ADCPOLL_NORMAL, FB_CNVRTR0_ADCPOLL)
 694
 695#define RV_CNVRTR0_ADCMU_ENABLE \
 696         RV(FV_CNVRTR0_ADCMU_ENABLE, FB_CNVRTR0_ADCMU)
 697
 698#define RV_CNVRTR0_ADCMU_DISABLE \
 699         RV(FV_CNVRTR0_ADCMU_DISABLE, FB_CNVRTR0_ADCMU)
 700
 701#define RV_CNVRTR0_ADCHPDR_ENABLE \
 702         RV(FV_CNVRTR0_ADCHPDR_ENABLE, FB_CNVRTR0_ADCHPDR)
 703
 704#define RV_CNVRTR0_ADCHPDR_DISABLE \
 705         RV(FV_CNVRTR0_ADCHPDR_DISABLE, FB_CNVRTR0_ADCHPDR)
 706
 707#define RV_CNVRTR0_ADCHPDL_ENABLE \
 708         RV(FV_CNVRTR0_ADCHPDL_ENABLE, FB_CNVRTR0_ADCHPDL)
 709
 710#define RV_CNVRTR0_ADCHPDL_DISABLE \
 711         RV(FV_CNVRTR0_ADCHPDL_DISABLE, FB_CNVRTR0_ADCHPDL)
 712
 713
 714/****************************
 715 *      R_ADCSR (0x17)      *
 716 ****************************/
 717
 718/* Field Offsets */
 719#define FB_ADCSR_ABCM                        6
 720#define FB_ADCSR_ABR                         3
 721#define FB_ADCSR_ABM                         0
 722
 723/* Field Masks */
 724#define FM_ADCSR_ABCM                        0X3
 725#define FM_ADCSR_ABR                         0X3
 726#define FM_ADCSR_ABM                         0X7
 727
 728/* Field Values */
 729#define FV_ADCSR_ABCM_AUTO                   0x0
 730#define FV_ADCSR_ABCM_32                     0x1
 731#define FV_ADCSR_ABCM_40                     0x2
 732#define FV_ADCSR_ABCM_64                     0x3
 733#define FV_ADCSR_ABR_32                      0x0
 734#define FV_ADCSR_ABR_44_1                    0x1
 735#define FV_ADCSR_ABR_48                      0x2
 736#define FV_ADCSR_ABM_PT25                    0x0
 737#define FV_ADCSR_ABM_PT5                     0x1
 738#define FV_ADCSR_ABM_1                       0x2
 739#define FV_ADCSR_ABM_2                       0x3
 740
 741/* Register Masks */
 742#define RM_ADCSR_ABCM                        RM(FM_ADCSR_ABCM, FB_ADCSR_ABCM)
 743#define RM_ADCSR_ABR                         RM(FM_ADCSR_ABR, FB_ADCSR_ABR)
 744#define RM_ADCSR_ABM                         RM(FM_ADCSR_ABM, FB_ADCSR_ABM)
 745
 746/* Register Values */
 747#define RV_ADCSR_ABCM_AUTO \
 748         RV(FV_ADCSR_ABCM_AUTO, FB_ADCSR_ABCM)
 749
 750#define RV_ADCSR_ABCM_32 \
 751         RV(FV_ADCSR_ABCM_32, FB_ADCSR_ABCM)
 752
 753#define RV_ADCSR_ABCM_40 \
 754         RV(FV_ADCSR_ABCM_40, FB_ADCSR_ABCM)
 755
 756#define RV_ADCSR_ABCM_64 \
 757         RV(FV_ADCSR_ABCM_64, FB_ADCSR_ABCM)
 758
 759#define RV_ADCSR_ABR_32                      RV(FV_ADCSR_ABR_32, FB_ADCSR_ABR)
 760#define RV_ADCSR_ABR_44_1 \
 761         RV(FV_ADCSR_ABR_44_1, FB_ADCSR_ABR)
 762
 763#define RV_ADCSR_ABR_48                      RV(FV_ADCSR_ABR_48, FB_ADCSR_ABR)
 764#define RV_ADCSR_ABR_                        RV(FV_ADCSR_ABR_, FB_ADCSR_ABR)
 765#define RV_ADCSR_ABM_PT25 \
 766         RV(FV_ADCSR_ABM_PT25, FB_ADCSR_ABM)
 767
 768#define RV_ADCSR_ABM_PT5                     RV(FV_ADCSR_ABM_PT5, FB_ADCSR_ABM)
 769#define RV_ADCSR_ABM_1                       RV(FV_ADCSR_ABM_1, FB_ADCSR_ABM)
 770#define RV_ADCSR_ABM_2                       RV(FV_ADCSR_ABM_2, FB_ADCSR_ABM)
 771
 772/******************************
 773 *      R_CNVRTR1 (0x18)      *
 774 ******************************/
 775
 776/* Field Offsets */
 777#define FB_CNVRTR1_DACPOLR                   7
 778#define FB_CNVRTR1_DACPOLL                   6
 779#define FB_CNVRTR1_DMONOMIX                  4
 780#define FB_CNVRTR1_DACMU                     3
 781#define FB_CNVRTR1_DEEMPH                    2
 782#define FB_CNVRTR1_DACDITH                   0
 783
 784/* Field Masks */
 785#define FM_CNVRTR1_DACPOLR                   0X1
 786#define FM_CNVRTR1_DACPOLL                   0X1
 787#define FM_CNVRTR1_DMONOMIX                  0X3
 788#define FM_CNVRTR1_DACMU                     0X1
 789#define FM_CNVRTR1_DEEMPH                    0X1
 790#define FM_CNVRTR1_DACDITH                   0X3
 791
 792/* Field Values */
 793#define FV_CNVRTR1_DACPOLR_INVERT            0x1
 794#define FV_CNVRTR1_DACPOLR_NORMAL            0x0
 795#define FV_CNVRTR1_DACPOLL_INVERT            0x1
 796#define FV_CNVRTR1_DACPOLL_NORMAL            0x0
 797#define FV_CNVRTR1_DMONOMIX_ENABLE           0x1
 798#define FV_CNVRTR1_DMONOMIX_DISABLE          0x0
 799#define FV_CNVRTR1_DACMU_ENABLE              0x1
 800#define FV_CNVRTR1_DACMU_DISABLE             0x0
 801
 802/* Register Masks */
 803#define RM_CNVRTR1_DACPOLR \
 804         RM(FM_CNVRTR1_DACPOLR, FB_CNVRTR1_DACPOLR)
 805
 806#define RM_CNVRTR1_DACPOLL \
 807         RM(FM_CNVRTR1_DACPOLL, FB_CNVRTR1_DACPOLL)
 808
 809#define RM_CNVRTR1_DMONOMIX \
 810         RM(FM_CNVRTR1_DMONOMIX, FB_CNVRTR1_DMONOMIX)
 811
 812#define RM_CNVRTR1_DACMU \
 813         RM(FM_CNVRTR1_DACMU, FB_CNVRTR1_DACMU)
 814
 815#define RM_CNVRTR1_DEEMPH \
 816         RM(FM_CNVRTR1_DEEMPH, FB_CNVRTR1_DEEMPH)
 817
 818#define RM_CNVRTR1_DACDITH \
 819         RM(FM_CNVRTR1_DACDITH, FB_CNVRTR1_DACDITH)
 820
 821
 822/* Register Values */
 823#define RV_CNVRTR1_DACPOLR_INVERT \
 824         RV(FV_CNVRTR1_DACPOLR_INVERT, FB_CNVRTR1_DACPOLR)
 825
 826#define RV_CNVRTR1_DACPOLR_NORMAL \
 827         RV(FV_CNVRTR1_DACPOLR_NORMAL, FB_CNVRTR1_DACPOLR)
 828
 829#define RV_CNVRTR1_DACPOLL_INVERT \
 830         RV(FV_CNVRTR1_DACPOLL_INVERT, FB_CNVRTR1_DACPOLL)
 831
 832#define RV_CNVRTR1_DACPOLL_NORMAL \
 833         RV(FV_CNVRTR1_DACPOLL_NORMAL, FB_CNVRTR1_DACPOLL)
 834
 835#define RV_CNVRTR1_DMONOMIX_ENABLE \
 836         RV(FV_CNVRTR1_DMONOMIX_ENABLE, FB_CNVRTR1_DMONOMIX)
 837
 838#define RV_CNVRTR1_DMONOMIX_DISABLE \
 839         RV(FV_CNVRTR1_DMONOMIX_DISABLE, FB_CNVRTR1_DMONOMIX)
 840
 841#define RV_CNVRTR1_DACMU_ENABLE \
 842         RV(FV_CNVRTR1_DACMU_ENABLE, FB_CNVRTR1_DACMU)
 843
 844#define RV_CNVRTR1_DACMU_DISABLE \
 845         RV(FV_CNVRTR1_DACMU_DISABLE, FB_CNVRTR1_DACMU)
 846
 847
 848/****************************
 849 *      R_DACSR (0x19)      *
 850 ****************************/
 851
 852/* Field Offsets */
 853#define FB_DACSR_DBCM                        6
 854#define FB_DACSR_DBR                         3
 855#define FB_DACSR_DBM                         0
 856
 857/* Field Masks */
 858#define FM_DACSR_DBCM                        0X3
 859#define FM_DACSR_DBR                         0X3
 860#define FM_DACSR_DBM                         0X7
 861
 862/* Field Values */
 863#define FV_DACSR_DBCM_AUTO                   0x0
 864#define FV_DACSR_DBCM_32                     0x1
 865#define FV_DACSR_DBCM_40                     0x2
 866#define FV_DACSR_DBCM_64                     0x3
 867#define FV_DACSR_DBR_32                      0x0
 868#define FV_DACSR_DBR_44_1                    0x1
 869#define FV_DACSR_DBR_48                      0x2
 870#define FV_DACSR_DBM_PT25                    0x0
 871#define FV_DACSR_DBM_PT5                     0x1
 872#define FV_DACSR_DBM_1                       0x2
 873#define FV_DACSR_DBM_2                       0x3
 874
 875/* Register Masks */
 876#define RM_DACSR_DBCM                        RM(FM_DACSR_DBCM, FB_DACSR_DBCM)
 877#define RM_DACSR_DBR                         RM(FM_DACSR_DBR, FB_DACSR_DBR)
 878#define RM_DACSR_DBM                         RM(FM_DACSR_DBM, FB_DACSR_DBM)
 879
 880/* Register Values */
 881#define RV_DACSR_DBCM_AUTO \
 882         RV(FV_DACSR_DBCM_AUTO, FB_DACSR_DBCM)
 883
 884#define RV_DACSR_DBCM_32 \
 885         RV(FV_DACSR_DBCM_32, FB_DACSR_DBCM)
 886
 887#define RV_DACSR_DBCM_40 \
 888         RV(FV_DACSR_DBCM_40, FB_DACSR_DBCM)
 889
 890#define RV_DACSR_DBCM_64 \
 891         RV(FV_DACSR_DBCM_64, FB_DACSR_DBCM)
 892
 893#define RV_DACSR_DBR_32                      RV(FV_DACSR_DBR_32, FB_DACSR_DBR)
 894#define RV_DACSR_DBR_44_1 \
 895         RV(FV_DACSR_DBR_44_1, FB_DACSR_DBR)
 896
 897#define RV_DACSR_DBR_48                      RV(FV_DACSR_DBR_48, FB_DACSR_DBR)
 898#define RV_DACSR_DBM_PT25 \
 899         RV(FV_DACSR_DBM_PT25, FB_DACSR_DBM)
 900
 901#define RV_DACSR_DBM_PT5                     RV(FV_DACSR_DBM_PT5, FB_DACSR_DBM)
 902#define RV_DACSR_DBM_1                       RV(FV_DACSR_DBM_1, FB_DACSR_DBM)
 903#define RV_DACSR_DBM_2                       RV(FV_DACSR_DBM_2, FB_DACSR_DBM)
 904
 905/****************************
 906 *      R_PWRM1 (0x1A)      *
 907 ****************************/
 908
 909/* Field Offsets */
 910#define FB_PWRM1_BSTL                        7
 911#define FB_PWRM1_BSTR                        6
 912#define FB_PWRM1_PGAL                        5
 913#define FB_PWRM1_PGAR                        4
 914#define FB_PWRM1_ADCL                        3
 915#define FB_PWRM1_ADCR                        2
 916#define FB_PWRM1_MICB                        1
 917#define FB_PWRM1_DIGENB                      0
 918
 919/* Field Masks */
 920#define FM_PWRM1_BSTL                        0X1
 921#define FM_PWRM1_BSTR                        0X1
 922#define FM_PWRM1_PGAL                        0X1
 923#define FM_PWRM1_PGAR                        0X1
 924#define FM_PWRM1_ADCL                        0X1
 925#define FM_PWRM1_ADCR                        0X1
 926#define FM_PWRM1_MICB                        0X1
 927#define FM_PWRM1_DIGENB                      0X1
 928
 929/* Field Values */
 930#define FV_PWRM1_BSTL_ENABLE                 0x1
 931#define FV_PWRM1_BSTL_DISABLE                0x0
 932#define FV_PWRM1_BSTR_ENABLE                 0x1
 933#define FV_PWRM1_BSTR_DISABLE                0x0
 934#define FV_PWRM1_PGAL_ENABLE                 0x1
 935#define FV_PWRM1_PGAL_DISABLE                0x0
 936#define FV_PWRM1_PGAR_ENABLE                 0x1
 937#define FV_PWRM1_PGAR_DISABLE                0x0
 938#define FV_PWRM1_ADCL_ENABLE                 0x1
 939#define FV_PWRM1_ADCL_DISABLE                0x0
 940#define FV_PWRM1_ADCR_ENABLE                 0x1
 941#define FV_PWRM1_ADCR_DISABLE                0x0
 942#define FV_PWRM1_MICB_ENABLE                 0x1
 943#define FV_PWRM1_MICB_DISABLE                0x0
 944#define FV_PWRM1_DIGENB_DISABLE              0x1
 945#define FV_PWRM1_DIGENB_ENABLE               0x0
 946
 947/* Register Masks */
 948#define RM_PWRM1_BSTL                        RM(FM_PWRM1_BSTL, FB_PWRM1_BSTL)
 949#define RM_PWRM1_BSTR                        RM(FM_PWRM1_BSTR, FB_PWRM1_BSTR)
 950#define RM_PWRM1_PGAL                        RM(FM_PWRM1_PGAL, FB_PWRM1_PGAL)
 951#define RM_PWRM1_PGAR                        RM(FM_PWRM1_PGAR, FB_PWRM1_PGAR)
 952#define RM_PWRM1_ADCL                        RM(FM_PWRM1_ADCL, FB_PWRM1_ADCL)
 953#define RM_PWRM1_ADCR                        RM(FM_PWRM1_ADCR, FB_PWRM1_ADCR)
 954#define RM_PWRM1_MICB                        RM(FM_PWRM1_MICB, FB_PWRM1_MICB)
 955#define RM_PWRM1_DIGENB \
 956         RM(FM_PWRM1_DIGENB, FB_PWRM1_DIGENB)
 957
 958
 959/* Register Values */
 960#define RV_PWRM1_BSTL_ENABLE \
 961         RV(FV_PWRM1_BSTL_ENABLE, FB_PWRM1_BSTL)
 962
 963#define RV_PWRM1_BSTL_DISABLE \
 964         RV(FV_PWRM1_BSTL_DISABLE, FB_PWRM1_BSTL)
 965
 966#define RV_PWRM1_BSTR_ENABLE \
 967         RV(FV_PWRM1_BSTR_ENABLE, FB_PWRM1_BSTR)
 968
 969#define RV_PWRM1_BSTR_DISABLE \
 970         RV(FV_PWRM1_BSTR_DISABLE, FB_PWRM1_BSTR)
 971
 972#define RV_PWRM1_PGAL_ENABLE \
 973         RV(FV_PWRM1_PGAL_ENABLE, FB_PWRM1_PGAL)
 974
 975#define RV_PWRM1_PGAL_DISABLE \
 976         RV(FV_PWRM1_PGAL_DISABLE, FB_PWRM1_PGAL)
 977
 978#define RV_PWRM1_PGAR_ENABLE \
 979         RV(FV_PWRM1_PGAR_ENABLE, FB_PWRM1_PGAR)
 980
 981#define RV_PWRM1_PGAR_DISABLE \
 982         RV(FV_PWRM1_PGAR_DISABLE, FB_PWRM1_PGAR)
 983
 984#define RV_PWRM1_ADCL_ENABLE \
 985         RV(FV_PWRM1_ADCL_ENABLE, FB_PWRM1_ADCL)
 986
 987#define RV_PWRM1_ADCL_DISABLE \
 988         RV(FV_PWRM1_ADCL_DISABLE, FB_PWRM1_ADCL)
 989
 990#define RV_PWRM1_ADCR_ENABLE \
 991         RV(FV_PWRM1_ADCR_ENABLE, FB_PWRM1_ADCR)
 992
 993#define RV_PWRM1_ADCR_DISABLE \
 994         RV(FV_PWRM1_ADCR_DISABLE, FB_PWRM1_ADCR)
 995
 996#define RV_PWRM1_MICB_ENABLE \
 997         RV(FV_PWRM1_MICB_ENABLE, FB_PWRM1_MICB)
 998
 999#define RV_PWRM1_MICB_DISABLE \
1000         RV(FV_PWRM1_MICB_DISABLE, FB_PWRM1_MICB)
1001
1002#define RV_PWRM1_DIGENB_DISABLE \
1003         RV(FV_PWRM1_DIGENB_DISABLE, FB_PWRM1_DIGENB)
1004
1005#define RV_PWRM1_DIGENB_ENABLE \
1006         RV(FV_PWRM1_DIGENB_ENABLE, FB_PWRM1_DIGENB)
1007
1008
1009/****************************
1010 *      R_PWRM2 (0x1B)      *
1011 ****************************/
1012
1013/* Field Offsets */
1014#define FB_PWRM2_D2S                         7
1015#define FB_PWRM2_HPL                         6
1016#define FB_PWRM2_HPR                         5
1017#define FB_PWRM2_SPKL                        4
1018#define FB_PWRM2_SPKR                        3
1019#define FB_PWRM2_INSELL                      2
1020#define FB_PWRM2_INSELR                      1
1021#define FB_PWRM2_VREF                        0
1022
1023/* Field Masks */
1024#define FM_PWRM2_D2S                         0X1
1025#define FM_PWRM2_HPL                         0X1
1026#define FM_PWRM2_HPR                         0X1
1027#define FM_PWRM2_SPKL                        0X1
1028#define FM_PWRM2_SPKR                        0X1
1029#define FM_PWRM2_INSELL                      0X1
1030#define FM_PWRM2_INSELR                      0X1
1031#define FM_PWRM2_VREF                        0X1
1032
1033/* Field Values */
1034#define FV_PWRM2_D2S_ENABLE                  0x1
1035#define FV_PWRM2_D2S_DISABLE                 0x0
1036#define FV_PWRM2_HPL_ENABLE                  0x1
1037#define FV_PWRM2_HPL_DISABLE                 0x0
1038#define FV_PWRM2_HPR_ENABLE                  0x1
1039#define FV_PWRM2_HPR_DISABLE                 0x0
1040#define FV_PWRM2_SPKL_ENABLE                 0x1
1041#define FV_PWRM2_SPKL_DISABLE                0x0
1042#define FV_PWRM2_SPKR_ENABLE                 0x1
1043#define FV_PWRM2_SPKR_DISABLE                0x0
1044#define FV_PWRM2_INSELL_ENABLE               0x1
1045#define FV_PWRM2_INSELL_DISABLE              0x0
1046#define FV_PWRM2_INSELR_ENABLE               0x1
1047#define FV_PWRM2_INSELR_DISABLE              0x0
1048#define FV_PWRM2_VREF_ENABLE                 0x1
1049#define FV_PWRM2_VREF_DISABLE                0x0
1050
1051/* Register Masks */
1052#define RM_PWRM2_D2S                         RM(FM_PWRM2_D2S, FB_PWRM2_D2S)
1053#define RM_PWRM2_HPL                         RM(FM_PWRM2_HPL, FB_PWRM2_HPL)
1054#define RM_PWRM2_HPR                         RM(FM_PWRM2_HPR, FB_PWRM2_HPR)
1055#define RM_PWRM2_SPKL                        RM(FM_PWRM2_SPKL, FB_PWRM2_SPKL)
1056#define RM_PWRM2_SPKR                        RM(FM_PWRM2_SPKR, FB_PWRM2_SPKR)
1057#define RM_PWRM2_INSELL \
1058         RM(FM_PWRM2_INSELL, FB_PWRM2_INSELL)
1059
1060#define RM_PWRM2_INSELR \
1061         RM(FM_PWRM2_INSELR, FB_PWRM2_INSELR)
1062
1063#define RM_PWRM2_VREF                        RM(FM_PWRM2_VREF, FB_PWRM2_VREF)
1064
1065/* Register Values */
1066#define RV_PWRM2_D2S_ENABLE \
1067         RV(FV_PWRM2_D2S_ENABLE, FB_PWRM2_D2S)
1068
1069#define RV_PWRM2_D2S_DISABLE \
1070         RV(FV_PWRM2_D2S_DISABLE, FB_PWRM2_D2S)
1071
1072#define RV_PWRM2_HPL_ENABLE \
1073         RV(FV_PWRM2_HPL_ENABLE, FB_PWRM2_HPL)
1074
1075#define RV_PWRM2_HPL_DISABLE \
1076         RV(FV_PWRM2_HPL_DISABLE, FB_PWRM2_HPL)
1077
1078#define RV_PWRM2_HPR_ENABLE \
1079         RV(FV_PWRM2_HPR_ENABLE, FB_PWRM2_HPR)
1080
1081#define RV_PWRM2_HPR_DISABLE \
1082         RV(FV_PWRM2_HPR_DISABLE, FB_PWRM2_HPR)
1083
1084#define RV_PWRM2_SPKL_ENABLE \
1085         RV(FV_PWRM2_SPKL_ENABLE, FB_PWRM2_SPKL)
1086
1087#define RV_PWRM2_SPKL_DISABLE \
1088         RV(FV_PWRM2_SPKL_DISABLE, FB_PWRM2_SPKL)
1089
1090#define RV_PWRM2_SPKR_ENABLE \
1091         RV(FV_PWRM2_SPKR_ENABLE, FB_PWRM2_SPKR)
1092
1093#define RV_PWRM2_SPKR_DISABLE \
1094         RV(FV_PWRM2_SPKR_DISABLE, FB_PWRM2_SPKR)
1095
1096#define RV_PWRM2_INSELL_ENABLE \
1097         RV(FV_PWRM2_INSELL_ENABLE, FB_PWRM2_INSELL)
1098
1099#define RV_PWRM2_INSELL_DISABLE \
1100         RV(FV_PWRM2_INSELL_DISABLE, FB_PWRM2_INSELL)
1101
1102#define RV_PWRM2_INSELR_ENABLE \
1103         RV(FV_PWRM2_INSELR_ENABLE, FB_PWRM2_INSELR)
1104
1105#define RV_PWRM2_INSELR_DISABLE \
1106         RV(FV_PWRM2_INSELR_DISABLE, FB_PWRM2_INSELR)
1107
1108#define RV_PWRM2_VREF_ENABLE \
1109         RV(FV_PWRM2_VREF_ENABLE, FB_PWRM2_VREF)
1110
1111#define RV_PWRM2_VREF_DISABLE \
1112         RV(FV_PWRM2_VREF_DISABLE, FB_PWRM2_VREF)
1113
1114/******************************
1115 *      R_CTL (0x1C)          *
1116 ******************************/
1117
1118/* Fiel Offsets */
1119#define FB_CTL_HPSWEN                        7
1120#define FB_CTL_HPSWPOL                       6
1121
1122/******************************
1123 *      R_CONFIG0 (0x1F)      *
1124 ******************************/
1125
1126/* Field Offsets */
1127#define FB_CONFIG0_ASDM                      6
1128#define FB_CONFIG0_DSDM                      4
1129#define FB_CONFIG0_DC_BYPASS                 1
1130#define FB_CONFIG0_SD_FORCE_ON               0
1131
1132/* Field Masks */
1133#define FM_CONFIG0_ASDM                      0X3
1134#define FM_CONFIG0_DSDM                      0X3
1135#define FM_CONFIG0_DC_BYPASS                 0X1
1136#define FM_CONFIG0_SD_FORCE_ON               0X1
1137
1138/* Field Values */
1139#define FV_CONFIG0_ASDM_HALF                 0x1
1140#define FV_CONFIG0_ASDM_FULL                 0x2
1141#define FV_CONFIG0_ASDM_AUTO                 0x3
1142#define FV_CONFIG0_DSDM_HALF                 0x1
1143#define FV_CONFIG0_DSDM_FULL                 0x2
1144#define FV_CONFIG0_DSDM_AUTO                 0x3
1145#define FV_CONFIG0_DC_BYPASS_ENABLE          0x1
1146#define FV_CONFIG0_DC_BYPASS_DISABLE         0x0
1147#define FV_CONFIG0_SD_FORCE_ON_ENABLE        0x1
1148#define FV_CONFIG0_SD_FORCE_ON_DISABLE       0x0
1149
1150/* Register Masks */
1151#define RM_CONFIG0_ASDM \
1152         RM(FM_CONFIG0_ASDM, FB_CONFIG0_ASDM)
1153
1154#define RM_CONFIG0_DSDM \
1155         RM(FM_CONFIG0_DSDM, FB_CONFIG0_DSDM)
1156
1157#define RM_CONFIG0_DC_BYPASS \
1158         RM(FM_CONFIG0_DC_BYPASS, FB_CONFIG0_DC_BYPASS)
1159
1160#define RM_CONFIG0_SD_FORCE_ON \
1161         RM(FM_CONFIG0_SD_FORCE_ON, FB_CONFIG0_SD_FORCE_ON)
1162
1163
1164/* Register Values */
1165#define RV_CONFIG0_ASDM_HALF \
1166         RV(FV_CONFIG0_ASDM_HALF, FB_CONFIG0_ASDM)
1167
1168#define RV_CONFIG0_ASDM_FULL \
1169         RV(FV_CONFIG0_ASDM_FULL, FB_CONFIG0_ASDM)
1170
1171#define RV_CONFIG0_ASDM_AUTO \
1172         RV(FV_CONFIG0_ASDM_AUTO, FB_CONFIG0_ASDM)
1173
1174#define RV_CONFIG0_DSDM_HALF \
1175         RV(FV_CONFIG0_DSDM_HALF, FB_CONFIG0_DSDM)
1176
1177#define RV_CONFIG0_DSDM_FULL \
1178         RV(FV_CONFIG0_DSDM_FULL, FB_CONFIG0_DSDM)
1179
1180#define RV_CONFIG0_DSDM_AUTO \
1181         RV(FV_CONFIG0_DSDM_AUTO, FB_CONFIG0_DSDM)
1182
1183#define RV_CONFIG0_DC_BYPASS_ENABLE \
1184         RV(FV_CONFIG0_DC_BYPASS_ENABLE, FB_CONFIG0_DC_BYPASS)
1185
1186#define RV_CONFIG0_DC_BYPASS_DISABLE \
1187         RV(FV_CONFIG0_DC_BYPASS_DISABLE, FB_CONFIG0_DC_BYPASS)
1188
1189#define RV_CONFIG0_SD_FORCE_ON_ENABLE \
1190         RV(FV_CONFIG0_SD_FORCE_ON_ENABLE, FB_CONFIG0_SD_FORCE_ON)
1191
1192#define RV_CONFIG0_SD_FORCE_ON_DISABLE \
1193         RV(FV_CONFIG0_SD_FORCE_ON_DISABLE, FB_CONFIG0_SD_FORCE_ON)
1194
1195
1196/******************************
1197 *      R_CONFIG1 (0x20)      *
1198 ******************************/
1199
1200/* Field Offsets */
1201#define FB_CONFIG1_EQ2_EN                    7
1202#define FB_CONFIG1_EQ2_BE                    4
1203#define FB_CONFIG1_EQ1_EN                    3
1204#define FB_CONFIG1_EQ1_BE                    0
1205
1206/* Field Masks */
1207#define FM_CONFIG1_EQ2_EN                    0X1
1208#define FM_CONFIG1_EQ2_BE                    0X7
1209#define FM_CONFIG1_EQ1_EN                    0X1
1210#define FM_CONFIG1_EQ1_BE                    0X7
1211
1212/* Field Values */
1213#define FV_CONFIG1_EQ2_EN_ENABLE             0x1
1214#define FV_CONFIG1_EQ2_EN_DISABLE            0x0
1215#define FV_CONFIG1_EQ2_BE_PRE                0x0
1216#define FV_CONFIG1_EQ2_BE_PRE_EQ_0           0x1
1217#define FV_CONFIG1_EQ2_BE_PRE_EQ0_1          0x2
1218#define FV_CONFIG1_EQ2_BE_PRE_EQ0_2          0x3
1219#define FV_CONFIG1_EQ2_BE_PRE_EQ0_3          0x4
1220#define FV_CONFIG1_EQ2_BE_PRE_EQ0_4          0x5
1221#define FV_CONFIG1_EQ2_BE_PRE_EQ0_5          0x6
1222#define FV_CONFIG1_EQ1_EN_ENABLE             0x1
1223#define FV_CONFIG1_EQ1_EN_DISABLE            0x0
1224#define FV_CONFIG1_EQ1_BE_PRE                0x0
1225#define FV_CONFIG1_EQ1_BE_PRE_EQ_0           0x1
1226#define FV_CONFIG1_EQ1_BE_PRE_EQ0_1          0x2
1227#define FV_CONFIG1_EQ1_BE_PRE_EQ0_2          0x3
1228#define FV_CONFIG1_EQ1_BE_PRE_EQ0_3          0x4
1229#define FV_CONFIG1_EQ1_BE_PRE_EQ0_4          0x5
1230#define FV_CONFIG1_EQ1_BE_PRE_EQ0_5          0x6
1231
1232/* Register Masks */
1233#define RM_CONFIG1_EQ2_EN \
1234         RM(FM_CONFIG1_EQ2_EN, FB_CONFIG1_EQ2_EN)
1235
1236#define RM_CONFIG1_EQ2_BE \
1237         RM(FM_CONFIG1_EQ2_BE, FB_CONFIG1_EQ2_BE)
1238
1239#define RM_CONFIG1_EQ1_EN \
1240         RM(FM_CONFIG1_EQ1_EN, FB_CONFIG1_EQ1_EN)
1241
1242#define RM_CONFIG1_EQ1_BE \
1243         RM(FM_CONFIG1_EQ1_BE, FB_CONFIG1_EQ1_BE)
1244
1245
1246/* Register Values */
1247#define RV_CONFIG1_EQ2_EN_ENABLE \
1248         RV(FV_CONFIG1_EQ2_EN_ENABLE, FB_CONFIG1_EQ2_EN)
1249
1250#define RV_CONFIG1_EQ2_EN_DISABLE \
1251         RV(FV_CONFIG1_EQ2_EN_DISABLE, FB_CONFIG1_EQ2_EN)
1252
1253#define RV_CONFIG1_EQ2_BE_PRE \
1254         RV(FV_CONFIG1_EQ2_BE_PRE, FB_CONFIG1_EQ2_BE)
1255
1256#define RV_CONFIG1_EQ2_BE_PRE_EQ_0 \
1257         RV(FV_CONFIG1_EQ2_BE_PRE_EQ_0, FB_CONFIG1_EQ2_BE)
1258
1259#define RV_CONFIG1_EQ2_BE_PRE_EQ0_1 \
1260         RV(FV_CONFIG1_EQ2_BE_PRE_EQ0_1, FB_CONFIG1_EQ2_BE)
1261
1262#define RV_CONFIG1_EQ2_BE_PRE_EQ0_2 \
1263         RV(FV_CONFIG1_EQ2_BE_PRE_EQ0_2, FB_CONFIG1_EQ2_BE)
1264
1265#define RV_CONFIG1_EQ2_BE_PRE_EQ0_3 \
1266         RV(FV_CONFIG1_EQ2_BE_PRE_EQ0_3, FB_CONFIG1_EQ2_BE)
1267
1268#define RV_CONFIG1_EQ2_BE_PRE_EQ0_4 \
1269         RV(FV_CONFIG1_EQ2_BE_PRE_EQ0_4, FB_CONFIG1_EQ2_BE)
1270
1271#define RV_CONFIG1_EQ2_BE_PRE_EQ0_5 \
1272         RV(FV_CONFIG1_EQ2_BE_PRE_EQ0_5, FB_CONFIG1_EQ2_BE)
1273
1274#define RV_CONFIG1_EQ1_EN_ENABLE \
1275         RV(FV_CONFIG1_EQ1_EN_ENABLE, FB_CONFIG1_EQ1_EN)
1276
1277#define RV_CONFIG1_EQ1_EN_DISABLE \
1278         RV(FV_CONFIG1_EQ1_EN_DISABLE, FB_CONFIG1_EQ1_EN)
1279
1280#define RV_CONFIG1_EQ1_BE_PRE \
1281         RV(FV_CONFIG1_EQ1_BE_PRE, FB_CONFIG1_EQ1_BE)
1282
1283#define RV_CONFIG1_EQ1_BE_PRE_EQ_0 \
1284         RV(FV_CONFIG1_EQ1_BE_PRE_EQ_0, FB_CONFIG1_EQ1_BE)
1285
1286#define RV_CONFIG1_EQ1_BE_PRE_EQ0_1 \
1287         RV(FV_CONFIG1_EQ1_BE_PRE_EQ0_1, FB_CONFIG1_EQ1_BE)
1288
1289#define RV_CONFIG1_EQ1_BE_PRE_EQ0_2 \
1290         RV(FV_CONFIG1_EQ1_BE_PRE_EQ0_2, FB_CONFIG1_EQ1_BE)
1291
1292#define RV_CONFIG1_EQ1_BE_PRE_EQ0_3 \
1293         RV(FV_CONFIG1_EQ1_BE_PRE_EQ0_3, FB_CONFIG1_EQ1_BE)
1294
1295#define RV_CONFIG1_EQ1_BE_PRE_EQ0_4 \
1296         RV(FV_CONFIG1_EQ1_BE_PRE_EQ0_4, FB_CONFIG1_EQ1_BE)
1297
1298#define RV_CONFIG1_EQ1_BE_PRE_EQ0_5 \
1299         RV(FV_CONFIG1_EQ1_BE_PRE_EQ0_5, FB_CONFIG1_EQ1_BE)
1300
1301
1302/******************************
1303 *      R_DMICCTL (0x24)      *
1304 ******************************/
1305
1306/* Field Offsets */
1307#define FB_DMICCTL_DMICEN                    7
1308#define FB_DMICCTL_DMONO                     4
1309#define FB_DMICCTL_DMPHADJ                   2
1310#define FB_DMICCTL_DMRATE                    0
1311
1312/* Field Masks */
1313#define FM_DMICCTL_DMICEN                    0X1
1314#define FM_DMICCTL_DMONO                     0X1
1315#define FM_DMICCTL_DMPHADJ                   0X3
1316#define FM_DMICCTL_DMRATE                    0X3
1317
1318/* Field Values */
1319#define FV_DMICCTL_DMICEN_ENABLE             0x1
1320#define FV_DMICCTL_DMICEN_DISABLE            0x0
1321#define FV_DMICCTL_DMONO_STEREO              0x0
1322#define FV_DMICCTL_DMONO_MONO                0x1
1323
1324/* Register Masks */
1325#define RM_DMICCTL_DMICEN \
1326         RM(FM_DMICCTL_DMICEN, FB_DMICCTL_DMICEN)
1327
1328#define RM_DMICCTL_DMONO \
1329         RM(FM_DMICCTL_DMONO, FB_DMICCTL_DMONO)
1330
1331#define RM_DMICCTL_DMPHADJ \
1332         RM(FM_DMICCTL_DMPHADJ, FB_DMICCTL_DMPHADJ)
1333
1334#define RM_DMICCTL_DMRATE \
1335         RM(FM_DMICCTL_DMRATE, FB_DMICCTL_DMRATE)
1336
1337
1338/* Register Values */
1339#define RV_DMICCTL_DMICEN_ENABLE \
1340         RV(FV_DMICCTL_DMICEN_ENABLE, FB_DMICCTL_DMICEN)
1341
1342#define RV_DMICCTL_DMICEN_DISABLE \
1343         RV(FV_DMICCTL_DMICEN_DISABLE, FB_DMICCTL_DMICEN)
1344
1345#define RV_DMICCTL_DMONO_STEREO \
1346         RV(FV_DMICCTL_DMONO_STEREO, FB_DMICCTL_DMONO)
1347
1348#define RV_DMICCTL_DMONO_MONO \
1349         RV(FV_DMICCTL_DMONO_MONO, FB_DMICCTL_DMONO)
1350
1351
1352/*****************************
1353 *      R_CLECTL (0x25)      *
1354 *****************************/
1355
1356/* Field Offsets */
1357#define FB_CLECTL_LVL_MODE                   4
1358#define FB_CLECTL_WINDOWSEL                  3
1359#define FB_CLECTL_EXP_EN                     2
1360#define FB_CLECTL_LIMIT_EN                   1
1361#define FB_CLECTL_COMP_EN                    0
1362
1363/* Field Masks */
1364#define FM_CLECTL_LVL_MODE                   0X1
1365#define FM_CLECTL_WINDOWSEL                  0X1
1366#define FM_CLECTL_EXP_EN                     0X1
1367#define FM_CLECTL_LIMIT_EN                   0X1
1368#define FM_CLECTL_COMP_EN                    0X1
1369
1370/* Field Values */
1371#define FV_CLECTL_LVL_MODE_AVG               0x0
1372#define FV_CLECTL_LVL_MODE_PEAK              0x1
1373#define FV_CLECTL_WINDOWSEL_512              0x0
1374#define FV_CLECTL_WINDOWSEL_64               0x1
1375#define FV_CLECTL_EXP_EN_ENABLE              0x1
1376#define FV_CLECTL_EXP_EN_DISABLE             0x0
1377#define FV_CLECTL_LIMIT_EN_ENABLE            0x1
1378#define FV_CLECTL_LIMIT_EN_DISABLE           0x0
1379#define FV_CLECTL_COMP_EN_ENABLE             0x1
1380#define FV_CLECTL_COMP_EN_DISABLE            0x0
1381
1382/* Register Masks */
1383#define RM_CLECTL_LVL_MODE \
1384         RM(FM_CLECTL_LVL_MODE, FB_CLECTL_LVL_MODE)
1385
1386#define RM_CLECTL_WINDOWSEL \
1387         RM(FM_CLECTL_WINDOWSEL, FB_CLECTL_WINDOWSEL)
1388
1389#define RM_CLECTL_EXP_EN \
1390         RM(FM_CLECTL_EXP_EN, FB_CLECTL_EXP_EN)
1391
1392#define RM_CLECTL_LIMIT_EN \
1393         RM(FM_CLECTL_LIMIT_EN, FB_CLECTL_LIMIT_EN)
1394
1395#define RM_CLECTL_COMP_EN \
1396         RM(FM_CLECTL_COMP_EN, FB_CLECTL_COMP_EN)
1397
1398
1399/* Register Values */
1400#define RV_CLECTL_LVL_MODE_AVG \
1401         RV(FV_CLECTL_LVL_MODE_AVG, FB_CLECTL_LVL_MODE)
1402
1403#define RV_CLECTL_LVL_MODE_PEAK \
1404         RV(FV_CLECTL_LVL_MODE_PEAK, FB_CLECTL_LVL_MODE)
1405
1406#define RV_CLECTL_WINDOWSEL_512 \
1407         RV(FV_CLECTL_WINDOWSEL_512, FB_CLECTL_WINDOWSEL)
1408
1409#define RV_CLECTL_WINDOWSEL_64 \
1410         RV(FV_CLECTL_WINDOWSEL_64, FB_CLECTL_WINDOWSEL)
1411
1412#define RV_CLECTL_EXP_EN_ENABLE \
1413         RV(FV_CLECTL_EXP_EN_ENABLE, FB_CLECTL_EXP_EN)
1414
1415#define RV_CLECTL_EXP_EN_DISABLE \
1416         RV(FV_CLECTL_EXP_EN_DISABLE, FB_CLECTL_EXP_EN)
1417
1418#define RV_CLECTL_LIMIT_EN_ENABLE \
1419         RV(FV_CLECTL_LIMIT_EN_ENABLE, FB_CLECTL_LIMIT_EN)
1420
1421#define RV_CLECTL_LIMIT_EN_DISABLE \
1422         RV(FV_CLECTL_LIMIT_EN_DISABLE, FB_CLECTL_LIMIT_EN)
1423
1424#define RV_CLECTL_COMP_EN_ENABLE \
1425         RV(FV_CLECTL_COMP_EN_ENABLE, FB_CLECTL_COMP_EN)
1426
1427#define RV_CLECTL_COMP_EN_DISABLE \
1428         RV(FV_CLECTL_COMP_EN_DISABLE, FB_CLECTL_COMP_EN)
1429
1430
1431/*****************************
1432 *      R_MUGAIN (0x26)      *
1433 *****************************/
1434
1435/* Field Offsets */
1436#define FB_MUGAIN_CLEMUG                     0
1437
1438/* Field Masks */
1439#define FM_MUGAIN_CLEMUG                     0X1F
1440
1441/* Field Values */
1442#define FV_MUGAIN_CLEMUG_46PT5DB             0x1F
1443#define FV_MUGAIN_CLEMUG_0DB                 0x0
1444
1445/* Register Masks */
1446#define RM_MUGAIN_CLEMUG \
1447         RM(FM_MUGAIN_CLEMUG, FB_MUGAIN_CLEMUG)
1448
1449
1450/* Register Values */
1451#define RV_MUGAIN_CLEMUG_46PT5DB \
1452         RV(FV_MUGAIN_CLEMUG_46PT5DB, FB_MUGAIN_CLEMUG)
1453
1454#define RV_MUGAIN_CLEMUG_0DB \
1455         RV(FV_MUGAIN_CLEMUG_0DB, FB_MUGAIN_CLEMUG)
1456
1457
1458/*****************************
1459 *      R_COMPTH (0x27)      *
1460 *****************************/
1461
1462/* Field Offsets */
1463#define FB_COMPTH                            0
1464
1465/* Field Masks */
1466#define FM_COMPTH                            0XFF
1467
1468/* Field Values */
1469#define FV_COMPTH_0DB                        0xFF
1470#define FV_COMPTH_N95PT625DB                 0x0
1471
1472/* Register Masks */
1473#define RM_COMPTH                            RM(FM_COMPTH, FB_COMPTH)
1474
1475/* Register Values */
1476#define RV_COMPTH_0DB                        RV(FV_COMPTH_0DB, FB_COMPTH)
1477#define RV_COMPTH_N95PT625DB \
1478         RV(FV_COMPTH_N95PT625DB, FB_COMPTH)
1479
1480
1481/*****************************
1482 *      R_CMPRAT (0x28)      *
1483 *****************************/
1484
1485/* Field Offsets */
1486#define FB_CMPRAT                            0
1487
1488/* Field Masks */
1489#define FM_CMPRAT                            0X1F
1490
1491/* Register Masks */
1492#define RM_CMPRAT                            RM(FM_CMPRAT, FB_CMPRAT)
1493
1494/******************************
1495 *      R_CATKTCL (0x29)      *
1496 ******************************/
1497
1498/* Field Offsets */
1499#define FB_CATKTCL                           0
1500
1501/* Field Masks */
1502#define FM_CATKTCL                           0XFF
1503
1504/* Register Masks */
1505#define RM_CATKTCL                           RM(FM_CATKTCL, FB_CATKTCL)
1506
1507/******************************
1508 *      R_CATKTCH (0x2A)      *
1509 ******************************/
1510
1511/* Field Offsets */
1512#define FB_CATKTCH                           0
1513
1514/* Field Masks */
1515#define FM_CATKTCH                           0XFF
1516
1517/* Register Masks */
1518#define RM_CATKTCH                           RM(FM_CATKTCH, FB_CATKTCH)
1519
1520/******************************
1521 *      R_CRELTCL (0x2B)      *
1522 ******************************/
1523
1524/* Field Offsets */
1525#define FB_CRELTCL                           0
1526
1527/* Field Masks */
1528#define FM_CRELTCL                           0XFF
1529
1530/* Register Masks */
1531#define RM_CRELTCL                           RM(FM_CRELTCL, FB_CRELTCL)
1532
1533/******************************
1534 *      R_CRELTCH (0x2C)      *
1535 ******************************/
1536
1537/* Field Offsets */
1538#define FB_CRELTCH                           0
1539
1540/* Field Masks */
1541#define FM_CRELTCH                           0XFF
1542
1543/* Register Masks */
1544#define RM_CRELTCH                           RM(FM_CRELTCH, FB_CRELTCH)
1545
1546/****************************
1547 *      R_LIMTH (0x2D)      *
1548 ****************************/
1549
1550/* Field Offsets */
1551#define FB_LIMTH                             0
1552
1553/* Field Masks */
1554#define FM_LIMTH                             0XFF
1555
1556/* Field Values */
1557#define FV_LIMTH_0DB                         0xFF
1558#define FV_LIMTH_N95PT625DB                  0x0
1559
1560/* Register Masks */
1561#define RM_LIMTH                             RM(FM_LIMTH, FB_LIMTH)
1562
1563/* Register Values */
1564#define RV_LIMTH_0DB                         RV(FV_LIMTH_0DB, FB_LIMTH)
1565#define RV_LIMTH_N95PT625DB                  RV(FV_LIMTH_N95PT625DB, FB_LIMTH)
1566
1567/*****************************
1568 *      R_LIMTGT (0x2E)      *
1569 *****************************/
1570
1571/* Field Offsets */
1572#define FB_LIMTGT                            0
1573
1574/* Field Masks */
1575#define FM_LIMTGT                            0XFF
1576
1577/* Field Values */
1578#define FV_LIMTGT_0DB                        0xFF
1579#define FV_LIMTGT_N95PT625DB                 0x0
1580
1581/* Register Masks */
1582#define RM_LIMTGT                            RM(FM_LIMTGT, FB_LIMTGT)
1583
1584/* Register Values */
1585#define RV_LIMTGT_0DB                        RV(FV_LIMTGT_0DB, FB_LIMTGT)
1586#define RV_LIMTGT_N95PT625DB \
1587         RV(FV_LIMTGT_N95PT625DB, FB_LIMTGT)
1588
1589
1590/******************************
1591 *      R_LATKTCL (0x2F)      *
1592 ******************************/
1593
1594/* Field Offsets */
1595#define FB_LATKTCL                           0
1596
1597/* Field Masks */
1598#define FM_LATKTCL                           0XFF
1599
1600/* Register Masks */
1601#define RM_LATKTCL                           RM(FM_LATKTCL, FB_LATKTCL)
1602
1603/******************************
1604 *      R_LATKTCH (0x30)      *
1605 ******************************/
1606
1607/* Field Offsets */
1608#define FB_LATKTCH                           0
1609
1610/* Field Masks */
1611#define FM_LATKTCH                           0XFF
1612
1613/* Register Masks */
1614#define RM_LATKTCH                           RM(FM_LATKTCH, FB_LATKTCH)
1615
1616/******************************
1617 *      R_LRELTCL (0x31)      *
1618 ******************************/
1619
1620/* Field Offsets */
1621#define FB_LRELTCL                           0
1622
1623/* Field Masks */
1624#define FM_LRELTCL                           0XFF
1625
1626/* Register Masks */
1627#define RM_LRELTCL                           RM(FM_LRELTCL, FB_LRELTCL)
1628
1629/******************************
1630 *      R_LRELTCH (0x32)      *
1631 ******************************/
1632
1633/* Field Offsets */
1634#define FB_LRELTCH                           0
1635
1636/* Field Masks */
1637#define FM_LRELTCH                           0XFF
1638
1639/* Register Masks */
1640#define RM_LRELTCH                           RM(FM_LRELTCH, FB_LRELTCH)
1641
1642/****************************
1643 *      R_EXPTH (0x33)      *
1644 ****************************/
1645
1646/* Field Offsets */
1647#define FB_EXPTH                             0
1648
1649/* Field Masks */
1650#define FM_EXPTH                             0XFF
1651
1652/* Field Values */
1653#define FV_EXPTH_0DB                         0xFF
1654#define FV_EXPTH_N95PT625DB                  0x0
1655
1656/* Register Masks */
1657#define RM_EXPTH                             RM(FM_EXPTH, FB_EXPTH)
1658
1659/* Register Values */
1660#define RV_EXPTH_0DB                         RV(FV_EXPTH_0DB, FB_EXPTH)
1661#define RV_EXPTH_N95PT625DB                  RV(FV_EXPTH_N95PT625DB, FB_EXPTH)
1662
1663/*****************************
1664 *      R_EXPRAT (0x34)      *
1665 *****************************/
1666
1667/* Field Offsets */
1668#define FB_EXPRAT                            0
1669
1670/* Field Masks */
1671#define FM_EXPRAT                            0X7
1672
1673/* Register Masks */
1674#define RM_EXPRAT                            RM(FM_EXPRAT, FB_EXPRAT)
1675
1676/******************************
1677 *      R_XATKTCL (0x35)      *
1678 ******************************/
1679
1680/* Field Offsets */
1681#define FB_XATKTCL                           0
1682
1683/* Field Masks */
1684#define FM_XATKTCL                           0XFF
1685
1686/* Register Masks */
1687#define RM_XATKTCL                           RM(FM_XATKTCL, FB_XATKTCL)
1688
1689/******************************
1690 *      R_XATKTCH (0x36)      *
1691 ******************************/
1692
1693/* Field Offsets */
1694#define FB_XATKTCH                           0
1695
1696/* Field Masks */
1697#define FM_XATKTCH                           0XFF
1698
1699/* Register Masks */
1700#define RM_XATKTCH                           RM(FM_XATKTCH, FB_XATKTCH)
1701
1702/******************************
1703 *      R_XRELTCL (0x37)      *
1704 ******************************/
1705
1706/* Field Offsets */
1707#define FB_XRELTCL                           0
1708
1709/* Field Masks */
1710#define FM_XRELTCL                           0XFF
1711
1712/* Register Masks */
1713#define RM_XRELTCL                           RM(FM_XRELTCL, FB_XRELTCL)
1714
1715/******************************
1716 *      R_XRELTCH (0x38)      *
1717 ******************************/
1718
1719/* Field Offsets */
1720#define FB_XRELTCH                           0
1721
1722/* Field Masks */
1723#define FM_XRELTCH                           0XFF
1724
1725/* Register Masks */
1726#define RM_XRELTCH                           RM(FM_XRELTCH, FB_XRELTCH)
1727
1728/****************************
1729 *      R_FXCTL (0x39)      *
1730 ****************************/
1731
1732/* Field Offsets */
1733#define FB_FXCTL_3DEN                        4
1734#define FB_FXCTL_TEEN                        3
1735#define FB_FXCTL_TNLFBYPASS                  2
1736#define FB_FXCTL_BEEN                        1
1737#define FB_FXCTL_BNLFBYPASS                  0
1738
1739/* Field Masks */
1740#define FM_FXCTL_3DEN                        0X1
1741#define FM_FXCTL_TEEN                        0X1
1742#define FM_FXCTL_TNLFBYPASS                  0X1
1743#define FM_FXCTL_BEEN                        0X1
1744#define FM_FXCTL_BNLFBYPASS                  0X1
1745
1746/* Field Values */
1747#define FV_FXCTL_3DEN_ENABLE                 0x1
1748#define FV_FXCTL_3DEN_DISABLE                0x0
1749#define FV_FXCTL_TEEN_ENABLE                 0x1
1750#define FV_FXCTL_TEEN_DISABLE                0x0
1751#define FV_FXCTL_TNLFBYPASS_ENABLE           0x1
1752#define FV_FXCTL_TNLFBYPASS_DISABLE          0x0
1753#define FV_FXCTL_BEEN_ENABLE                 0x1
1754#define FV_FXCTL_BEEN_DISABLE                0x0
1755#define FV_FXCTL_BNLFBYPASS_ENABLE           0x1
1756#define FV_FXCTL_BNLFBYPASS_DISABLE          0x0
1757
1758/* Register Masks */
1759#define RM_FXCTL_3DEN                        RM(FM_FXCTL_3DEN, FB_FXCTL_3DEN)
1760#define RM_FXCTL_TEEN                        RM(FM_FXCTL_TEEN, FB_FXCTL_TEEN)
1761#define RM_FXCTL_TNLFBYPASS \
1762         RM(FM_FXCTL_TNLFBYPASS, FB_FXCTL_TNLFBYPASS)
1763
1764#define RM_FXCTL_BEEN                        RM(FM_FXCTL_BEEN, FB_FXCTL_BEEN)
1765#define RM_FXCTL_BNLFBYPASS \
1766         RM(FM_FXCTL_BNLFBYPASS, FB_FXCTL_BNLFBYPASS)
1767
1768
1769/* Register Values */
1770#define RV_FXCTL_3DEN_ENABLE \
1771         RV(FV_FXCTL_3DEN_ENABLE, FB_FXCTL_3DEN)
1772
1773#define RV_FXCTL_3DEN_DISABLE \
1774         RV(FV_FXCTL_3DEN_DISABLE, FB_FXCTL_3DEN)
1775
1776#define RV_FXCTL_TEEN_ENABLE \
1777         RV(FV_FXCTL_TEEN_ENABLE, FB_FXCTL_TEEN)
1778
1779#define RV_FXCTL_TEEN_DISABLE \
1780         RV(FV_FXCTL_TEEN_DISABLE, FB_FXCTL_TEEN)
1781
1782#define RV_FXCTL_TNLFBYPASS_ENABLE \
1783         RV(FV_FXCTL_TNLFBYPASS_ENABLE, FB_FXCTL_TNLFBYPASS)
1784
1785#define RV_FXCTL_TNLFBYPASS_DISABLE \
1786         RV(FV_FXCTL_TNLFBYPASS_DISABLE, FB_FXCTL_TNLFBYPASS)
1787
1788#define RV_FXCTL_BEEN_ENABLE \
1789         RV(FV_FXCTL_BEEN_ENABLE, FB_FXCTL_BEEN)
1790
1791#define RV_FXCTL_BEEN_DISABLE \
1792         RV(FV_FXCTL_BEEN_DISABLE, FB_FXCTL_BEEN)
1793
1794#define RV_FXCTL_BNLFBYPASS_ENABLE \
1795         RV(FV_FXCTL_BNLFBYPASS_ENABLE, FB_FXCTL_BNLFBYPASS)
1796
1797#define RV_FXCTL_BNLFBYPASS_DISABLE \
1798         RV(FV_FXCTL_BNLFBYPASS_DISABLE, FB_FXCTL_BNLFBYPASS)
1799
1800
1801/*******************************
1802 *      R_DACCRWRL (0x3A)      *
1803 *******************************/
1804
1805/* Field Offsets */
1806#define FB_DACCRWRL_DACCRWDL                 0
1807
1808/* Field Masks */
1809#define FM_DACCRWRL_DACCRWDL                 0XFF
1810
1811/* Register Masks */
1812#define RM_DACCRWRL_DACCRWDL \
1813         RM(FM_DACCRWRL_DACCRWDL, FB_DACCRWRL_DACCRWDL)
1814
1815
1816/*******************************
1817 *      R_DACCRWRM (0x3B)      *
1818 *******************************/
1819
1820/* Field Offsets */
1821#define FB_DACCRWRM_DACCRWDM                 0
1822
1823/* Field Masks */
1824#define FM_DACCRWRM_DACCRWDM                 0XFF
1825
1826/* Register Masks */
1827#define RM_DACCRWRM_DACCRWDM \
1828         RM(FM_DACCRWRM_DACCRWDM, FB_DACCRWRM_DACCRWDM)
1829
1830
1831/*******************************
1832 *      R_DACCRWRH (0x3C)      *
1833 *******************************/
1834
1835/* Field Offsets */
1836#define FB_DACCRWRH_DACCRWDH                 0
1837
1838/* Field Masks */
1839#define FM_DACCRWRH_DACCRWDH                 0XFF
1840
1841/* Register Masks */
1842#define RM_DACCRWRH_DACCRWDH \
1843         RM(FM_DACCRWRH_DACCRWDH, FB_DACCRWRH_DACCRWDH)
1844
1845
1846/*******************************
1847 *      R_DACCRRDL (0x3D)      *
1848 *******************************/
1849
1850/* Field Offsets */
1851#define FB_DACCRRDL                          0
1852
1853/* Field Masks */
1854#define FM_DACCRRDL                          0XFF
1855
1856/* Register Masks */
1857#define RM_DACCRRDL                          RM(FM_DACCRRDL, FB_DACCRRDL)
1858
1859/*******************************
1860 *      R_DACCRRDM (0x3E)      *
1861 *******************************/
1862
1863/* Field Offsets */
1864#define FB_DACCRRDM                          0
1865
1866/* Field Masks */
1867#define FM_DACCRRDM                          0XFF
1868
1869/* Register Masks */
1870#define RM_DACCRRDM                          RM(FM_DACCRRDM, FB_DACCRRDM)
1871
1872/*******************************
1873 *      R_DACCRRDH (0x3F)      *
1874 *******************************/
1875
1876/* Field Offsets */
1877#define FB_DACCRRDH                          0
1878
1879/* Field Masks */
1880#define FM_DACCRRDH                          0XFF
1881
1882/* Register Masks */
1883#define RM_DACCRRDH                          RM(FM_DACCRRDH, FB_DACCRRDH)
1884
1885/********************************
1886 *      R_DACCRADDR (0x40)      *
1887 ********************************/
1888
1889/* Field Offsets */
1890#define FB_DACCRADDR_DACCRADD                0
1891
1892/* Field Masks */
1893#define FM_DACCRADDR_DACCRADD                0XFF
1894
1895/* Register Masks */
1896#define RM_DACCRADDR_DACCRADD \
1897         RM(FM_DACCRADDR_DACCRADD, FB_DACCRADDR_DACCRADD)
1898
1899
1900/******************************
1901 *      R_DCOFSEL (0x41)      *
1902 ******************************/
1903
1904/* Field Offsets */
1905#define FB_DCOFSEL_DC_COEF_SEL               0
1906
1907/* Field Masks */
1908#define FM_DCOFSEL_DC_COEF_SEL               0X7
1909
1910/* Field Values */
1911#define FV_DCOFSEL_DC_COEF_SEL_2_N8          0x0
1912#define FV_DCOFSEL_DC_COEF_SEL_2_N9          0x1
1913#define FV_DCOFSEL_DC_COEF_SEL_2_N10         0x2
1914#define FV_DCOFSEL_DC_COEF_SEL_2_N11         0x3
1915#define FV_DCOFSEL_DC_COEF_SEL_2_N12         0x4
1916#define FV_DCOFSEL_DC_COEF_SEL_2_N13         0x5
1917#define FV_DCOFSEL_DC_COEF_SEL_2_N14         0x6
1918#define FV_DCOFSEL_DC_COEF_SEL_2_N15         0x7
1919
1920/* Register Masks */
1921#define RM_DCOFSEL_DC_COEF_SEL \
1922         RM(FM_DCOFSEL_DC_COEF_SEL, FB_DCOFSEL_DC_COEF_SEL)
1923
1924
1925/* Register Values */
1926#define RV_DCOFSEL_DC_COEF_SEL_2_N8 \
1927         RV(FV_DCOFSEL_DC_COEF_SEL_2_N8, FB_DCOFSEL_DC_COEF_SEL)
1928
1929#define RV_DCOFSEL_DC_COEF_SEL_2_N9 \
1930         RV(FV_DCOFSEL_DC_COEF_SEL_2_N9, FB_DCOFSEL_DC_COEF_SEL)
1931
1932#define RV_DCOFSEL_DC_COEF_SEL_2_N10 \
1933         RV(FV_DCOFSEL_DC_COEF_SEL_2_N10, FB_DCOFSEL_DC_COEF_SEL)
1934
1935#define RV_DCOFSEL_DC_COEF_SEL_2_N11 \
1936         RV(FV_DCOFSEL_DC_COEF_SEL_2_N11, FB_DCOFSEL_DC_COEF_SEL)
1937
1938#define RV_DCOFSEL_DC_COEF_SEL_2_N12 \
1939         RV(FV_DCOFSEL_DC_COEF_SEL_2_N12, FB_DCOFSEL_DC_COEF_SEL)
1940
1941#define RV_DCOFSEL_DC_COEF_SEL_2_N13 \
1942         RV(FV_DCOFSEL_DC_COEF_SEL_2_N13, FB_DCOFSEL_DC_COEF_SEL)
1943
1944#define RV_DCOFSEL_DC_COEF_SEL_2_N14 \
1945         RV(FV_DCOFSEL_DC_COEF_SEL_2_N14, FB_DCOFSEL_DC_COEF_SEL)
1946
1947#define RV_DCOFSEL_DC_COEF_SEL_2_N15 \
1948         RV(FV_DCOFSEL_DC_COEF_SEL_2_N15, FB_DCOFSEL_DC_COEF_SEL)
1949
1950
1951/******************************
1952 *      R_PLLCTL9 (0x4E)      *
1953 ******************************/
1954
1955/* Field Offsets */
1956#define FB_PLLCTL9_REFDIV_PLL1               0
1957
1958/* Field Masks */
1959#define FM_PLLCTL9_REFDIV_PLL1               0XFF
1960
1961/* Register Masks */
1962#define RM_PLLCTL9_REFDIV_PLL1 \
1963         RM(FM_PLLCTL9_REFDIV_PLL1, FB_PLLCTL9_REFDIV_PLL1)
1964
1965
1966/******************************
1967 *      R_PLLCTLA (0x4F)      *
1968 ******************************/
1969
1970/* Field Offsets */
1971#define FB_PLLCTLA_OUTDIV_PLL1               0
1972
1973/* Field Masks */
1974#define FM_PLLCTLA_OUTDIV_PLL1               0XFF
1975
1976/* Register Masks */
1977#define RM_PLLCTLA_OUTDIV_PLL1 \
1978         RM(FM_PLLCTLA_OUTDIV_PLL1, FB_PLLCTLA_OUTDIV_PLL1)
1979
1980
1981/******************************
1982 *      R_PLLCTLB (0x50)      *
1983 ******************************/
1984
1985/* Field Offsets */
1986#define FB_PLLCTLB_FBDIV_PLL1L               0
1987
1988/* Field Masks */
1989#define FM_PLLCTLB_FBDIV_PLL1L               0XFF
1990
1991/* Register Masks */
1992#define RM_PLLCTLB_FBDIV_PLL1L \
1993         RM(FM_PLLCTLB_FBDIV_PLL1L, FB_PLLCTLB_FBDIV_PLL1L)
1994
1995
1996/******************************
1997 *      R_PLLCTLC (0x51)      *
1998 ******************************/
1999
2000/* Field Offsets */
2001#define FB_PLLCTLC_FBDIV_PLL1H               0
2002
2003/* Field Masks */
2004#define FM_PLLCTLC_FBDIV_PLL1H               0X7
2005
2006/* Register Masks */
2007#define RM_PLLCTLC_FBDIV_PLL1H \
2008         RM(FM_PLLCTLC_FBDIV_PLL1H, FB_PLLCTLC_FBDIV_PLL1H)
2009
2010
2011/******************************
2012 *      R_PLLCTLD (0x52)      *
2013 ******************************/
2014
2015/* Field Offsets */
2016#define FB_PLLCTLD_RZ_PLL1                   3
2017#define FB_PLLCTLD_CP_PLL1                   0
2018
2019/* Field Masks */
2020#define FM_PLLCTLD_RZ_PLL1                   0X7
2021#define FM_PLLCTLD_CP_PLL1                   0X7
2022
2023/* Register Masks */
2024#define RM_PLLCTLD_RZ_PLL1 \
2025         RM(FM_PLLCTLD_RZ_PLL1, FB_PLLCTLD_RZ_PLL1)
2026
2027#define RM_PLLCTLD_CP_PLL1 \
2028         RM(FM_PLLCTLD_CP_PLL1, FB_PLLCTLD_CP_PLL1)
2029
2030
2031/******************************
2032 *      R_PLLCTLE (0x53)      *
2033 ******************************/
2034
2035/* Field Offsets */
2036#define FB_PLLCTLE_REFDIV_PLL2               0
2037
2038/* Field Masks */
2039#define FM_PLLCTLE_REFDIV_PLL2               0XFF
2040
2041/* Register Masks */
2042#define RM_PLLCTLE_REFDIV_PLL2 \
2043         RM(FM_PLLCTLE_REFDIV_PLL2, FB_PLLCTLE_REFDIV_PLL2)
2044
2045
2046/******************************
2047 *      R_PLLCTLF (0x54)      *
2048 ******************************/
2049
2050/* Field Offsets */
2051#define FB_PLLCTLF_OUTDIV_PLL2               0
2052
2053/* Field Masks */
2054#define FM_PLLCTLF_OUTDIV_PLL2               0XFF
2055
2056/* Register Masks */
2057#define RM_PLLCTLF_OUTDIV_PLL2 \
2058         RM(FM_PLLCTLF_OUTDIV_PLL2, FB_PLLCTLF_OUTDIV_PLL2)
2059
2060
2061/*******************************
2062 *      R_PLLCTL10 (0x55)      *
2063 *******************************/
2064
2065/* Field Offsets */
2066#define FB_PLLCTL10_FBDIV_PLL2L              0
2067
2068/* Field Masks */
2069#define FM_PLLCTL10_FBDIV_PLL2L              0XFF
2070
2071/* Register Masks */
2072#define RM_PLLCTL10_FBDIV_PLL2L \
2073         RM(FM_PLLCTL10_FBDIV_PLL2L, FB_PLLCTL10_FBDIV_PLL2L)
2074
2075
2076/*******************************
2077 *      R_PLLCTL11 (0x56)      *
2078 *******************************/
2079
2080/* Field Offsets */
2081#define FB_PLLCTL11_FBDIV_PLL2H              0
2082
2083/* Field Masks */
2084#define FM_PLLCTL11_FBDIV_PLL2H              0X7
2085
2086/* Register Masks */
2087#define RM_PLLCTL11_FBDIV_PLL2H \
2088         RM(FM_PLLCTL11_FBDIV_PLL2H, FB_PLLCTL11_FBDIV_PLL2H)
2089
2090
2091/*******************************
2092 *      R_PLLCTL12 (0x57)      *
2093 *******************************/
2094
2095/* Field Offsets */
2096#define FB_PLLCTL12_RZ_PLL2                  3
2097#define FB_PLLCTL12_CP_PLL2                  0
2098
2099/* Field Masks */
2100#define FM_PLLCTL12_RZ_PLL2                  0X7
2101#define FM_PLLCTL12_CP_PLL2                  0X7
2102
2103/* Register Masks */
2104#define RM_PLLCTL12_RZ_PLL2 \
2105         RM(FM_PLLCTL12_RZ_PLL2, FB_PLLCTL12_RZ_PLL2)
2106
2107#define RM_PLLCTL12_CP_PLL2 \
2108         RM(FM_PLLCTL12_CP_PLL2, FB_PLLCTL12_CP_PLL2)
2109
2110
2111/*******************************
2112 *      R_PLLCTL1B (0x60)      *
2113 *******************************/
2114
2115/* Field Offsets */
2116#define FB_PLLCTL1B_VCOI_PLL2                4
2117#define FB_PLLCTL1B_VCOI_PLL1                2
2118
2119/* Field Masks */
2120#define FM_PLLCTL1B_VCOI_PLL2                0X3
2121#define FM_PLLCTL1B_VCOI_PLL1                0X3
2122
2123/* Register Masks */
2124#define RM_PLLCTL1B_VCOI_PLL2 \
2125         RM(FM_PLLCTL1B_VCOI_PLL2, FB_PLLCTL1B_VCOI_PLL2)
2126
2127#define RM_PLLCTL1B_VCOI_PLL1 \
2128         RM(FM_PLLCTL1B_VCOI_PLL1, FB_PLLCTL1B_VCOI_PLL1)
2129
2130
2131/*******************************
2132 *      R_PLLCTL1C (0x61)      *
2133 *******************************/
2134
2135/* Field Offsets */
2136#define FB_PLLCTL1C_PDB_PLL2                 2
2137#define FB_PLLCTL1C_PDB_PLL1                 1
2138
2139/* Field Masks */
2140#define FM_PLLCTL1C_PDB_PLL2                 0X1
2141#define FM_PLLCTL1C_PDB_PLL1                 0X1
2142
2143/* Field Values */
2144#define FV_PLLCTL1C_PDB_PLL2_ENABLE          0x1
2145#define FV_PLLCTL1C_PDB_PLL2_DISABLE         0x0
2146#define FV_PLLCTL1C_PDB_PLL1_ENABLE          0x1
2147#define FV_PLLCTL1C_PDB_PLL1_DISABLE         0x0
2148
2149/* Register Masks */
2150#define RM_PLLCTL1C_PDB_PLL2 \
2151         RM(FM_PLLCTL1C_PDB_PLL2, FB_PLLCTL1C_PDB_PLL2)
2152
2153#define RM_PLLCTL1C_PDB_PLL1 \
2154         RM(FM_PLLCTL1C_PDB_PLL1, FB_PLLCTL1C_PDB_PLL1)
2155
2156
2157/* Register Values */
2158#define RV_PLLCTL1C_PDB_PLL2_ENABLE \
2159         RV(FV_PLLCTL1C_PDB_PLL2_ENABLE, FB_PLLCTL1C_PDB_PLL2)
2160
2161#define RV_PLLCTL1C_PDB_PLL2_DISABLE \
2162         RV(FV_PLLCTL1C_PDB_PLL2_DISABLE, FB_PLLCTL1C_PDB_PLL2)
2163
2164#define RV_PLLCTL1C_PDB_PLL1_ENABLE \
2165         RV(FV_PLLCTL1C_PDB_PLL1_ENABLE, FB_PLLCTL1C_PDB_PLL1)
2166
2167#define RV_PLLCTL1C_PDB_PLL1_DISABLE \
2168         RV(FV_PLLCTL1C_PDB_PLL1_DISABLE, FB_PLLCTL1C_PDB_PLL1)
2169
2170
2171/*******************************
2172 *      R_TIMEBASE (0x77)      *
2173 *******************************/
2174
2175/* Field Offsets */
2176#define FB_TIMEBASE_DIVIDER                  0
2177
2178/* Field Masks */
2179#define FM_TIMEBASE_DIVIDER                  0XFF
2180
2181/* Register Masks */
2182#define RM_TIMEBASE_DIVIDER \
2183         RM(FM_TIMEBASE_DIVIDER, FB_TIMEBASE_DIVIDER)
2184
2185
2186/*****************************
2187 *      R_DEVIDL (0x7D)      *
2188 *****************************/
2189
2190/* Field Offsets */
2191#define FB_DEVIDL_DIDL                       0
2192
2193/* Field Masks */
2194#define FM_DEVIDL_DIDL                       0XFF
2195
2196/* Register Masks */
2197#define RM_DEVIDL_DIDL                       RM(FM_DEVIDL_DIDL, FB_DEVIDL_DIDL)
2198
2199/*****************************
2200 *      R_DEVIDH (0x7E)      *
2201 *****************************/
2202
2203/* Field Offsets */
2204#define FB_DEVIDH_DIDH                       0
2205
2206/* Field Masks */
2207#define FM_DEVIDH_DIDH                       0XFF
2208
2209/* Register Masks */
2210#define RM_DEVIDH_DIDH                       RM(FM_DEVIDH_DIDH, FB_DEVIDH_DIDH)
2211
2212/****************************
2213 *      R_RESET (0x80)      *
2214 ****************************/
2215
2216/* Field Offsets */
2217#define FB_RESET                             0
2218
2219/* Field Masks */
2220#define FM_RESET                             0XFF
2221
2222/* Field Values */
2223#define FV_RESET_ENABLE                      0x85
2224
2225/* Register Masks */
2226#define RM_RESET                             RM(FM_RESET, FB_RESET)
2227
2228/* Register Values */
2229#define RV_RESET_ENABLE                      RV(FV_RESET_ENABLE, FB_RESET)
2230
2231/********************************
2232 *      R_DACCRSTAT (0x8A)      *
2233 ********************************/
2234
2235/* Field Offsets */
2236#define FB_DACCRSTAT_DACCR_BUSY              7
2237
2238/* Field Masks */
2239#define FM_DACCRSTAT_DACCR_BUSY              0X1
2240
2241/* Register Masks */
2242#define RM_DACCRSTAT_DACCR_BUSY \
2243         RM(FM_DACCRSTAT_DACCR_BUSY, FB_DACCRSTAT_DACCR_BUSY)
2244
2245
2246/******************************
2247 *      R_PLLCTL0 (0x8E)      *
2248 ******************************/
2249
2250/* Field Offsets */
2251#define FB_PLLCTL0_PLL2_LOCK                 1
2252#define FB_PLLCTL0_PLL1_LOCK                 0
2253
2254/* Field Masks */
2255#define FM_PLLCTL0_PLL2_LOCK                 0X1
2256#define FM_PLLCTL0_PLL1_LOCK                 0X1
2257
2258/* Register Masks */
2259#define RM_PLLCTL0_PLL2_LOCK \
2260         RM(FM_PLLCTL0_PLL2_LOCK, FB_PLLCTL0_PLL2_LOCK)
2261
2262#define RM_PLLCTL0_PLL1_LOCK \
2263         RM(FM_PLLCTL0_PLL1_LOCK, FB_PLLCTL0_PLL1_LOCK)
2264
2265
2266/********************************
2267 *      R_PLLREFSEL (0x8F)      *
2268 ********************************/
2269
2270/* Field Offsets */
2271#define FB_PLLREFSEL_PLL2_REF_SEL            4
2272#define FB_PLLREFSEL_PLL1_REF_SEL            0
2273
2274/* Field Masks */
2275#define FM_PLLREFSEL_PLL2_REF_SEL            0X7
2276#define FM_PLLREFSEL_PLL1_REF_SEL            0X7
2277
2278/* Field Values */
2279#define FV_PLLREFSEL_PLL2_REF_SEL_XTAL_MCLK1 0x0
2280#define FV_PLLREFSEL_PLL2_REF_SEL_MCLK2      0x1
2281#define FV_PLLREFSEL_PLL1_REF_SEL_XTAL_MCLK1 0x0
2282#define FV_PLLREFSEL_PLL1_REF_SEL_MCLK2      0x1
2283
2284/* Register Masks */
2285#define RM_PLLREFSEL_PLL2_REF_SEL \
2286         RM(FM_PLLREFSEL_PLL2_REF_SEL, FB_PLLREFSEL_PLL2_REF_SEL)
2287
2288#define RM_PLLREFSEL_PLL1_REF_SEL \
2289         RM(FM_PLLREFSEL_PLL1_REF_SEL, FB_PLLREFSEL_PLL1_REF_SEL)
2290
2291
2292/* Register Values */
2293#define RV_PLLREFSEL_PLL2_REF_SEL_XTAL_MCLK1 \
2294         RV(FV_PLLREFSEL_PLL2_REF_SEL_XTAL_MCLK1, FB_PLLREFSEL_PLL2_REF_SEL)
2295
2296#define RV_PLLREFSEL_PLL2_REF_SEL_MCLK2 \
2297         RV(FV_PLLREFSEL_PLL2_REF_SEL_MCLK2, FB_PLLREFSEL_PLL2_REF_SEL)
2298
2299#define RV_PLLREFSEL_PLL1_REF_SEL_XTAL_MCLK1 \
2300         RV(FV_PLLREFSEL_PLL1_REF_SEL_XTAL_MCLK1, FB_PLLREFSEL_PLL1_REF_SEL)
2301
2302#define RV_PLLREFSEL_PLL1_REF_SEL_MCLK2 \
2303         RV(FV_PLLREFSEL_PLL1_REF_SEL_MCLK2, FB_PLLREFSEL_PLL1_REF_SEL)
2304
2305
2306/*******************************
2307 *      R_DACMBCEN (0xC7)      *
2308 *******************************/
2309
2310/* Field Offsets */
2311#define FB_DACMBCEN_MBCEN3                   2
2312#define FB_DACMBCEN_MBCEN2                   1
2313#define FB_DACMBCEN_MBCEN1                   0
2314
2315/* Field Masks */
2316#define FM_DACMBCEN_MBCEN3                   0X1
2317#define FM_DACMBCEN_MBCEN2                   0X1
2318#define FM_DACMBCEN_MBCEN1                   0X1
2319
2320/* Register Masks */
2321#define RM_DACMBCEN_MBCEN3 \
2322         RM(FM_DACMBCEN_MBCEN3, FB_DACMBCEN_MBCEN3)
2323
2324#define RM_DACMBCEN_MBCEN2 \
2325         RM(FM_DACMBCEN_MBCEN2, FB_DACMBCEN_MBCEN2)
2326
2327#define RM_DACMBCEN_MBCEN1 \
2328         RM(FM_DACMBCEN_MBCEN1, FB_DACMBCEN_MBCEN1)
2329
2330
2331/********************************
2332 *      R_DACMBCCTL (0xC8)      *
2333 ********************************/
2334
2335/* Field Offsets */
2336#define FB_DACMBCCTL_LVLMODE3                5
2337#define FB_DACMBCCTL_WINSEL3                 4
2338#define FB_DACMBCCTL_LVLMODE2                3
2339#define FB_DACMBCCTL_WINSEL2                 2
2340#define FB_DACMBCCTL_LVLMODE1                1
2341#define FB_DACMBCCTL_WINSEL1                 0
2342
2343/* Field Masks */
2344#define FM_DACMBCCTL_LVLMODE3                0X1
2345#define FM_DACMBCCTL_WINSEL3                 0X1
2346#define FM_DACMBCCTL_LVLMODE2                0X1
2347#define FM_DACMBCCTL_WINSEL2                 0X1
2348#define FM_DACMBCCTL_LVLMODE1                0X1
2349#define FM_DACMBCCTL_WINSEL1                 0X1
2350
2351/* Register Masks */
2352#define RM_DACMBCCTL_LVLMODE3 \
2353         RM(FM_DACMBCCTL_LVLMODE3, FB_DACMBCCTL_LVLMODE3)
2354
2355#define RM_DACMBCCTL_WINSEL3 \
2356         RM(FM_DACMBCCTL_WINSEL3, FB_DACMBCCTL_WINSEL3)
2357
2358#define RM_DACMBCCTL_LVLMODE2 \
2359         RM(FM_DACMBCCTL_LVLMODE2, FB_DACMBCCTL_LVLMODE2)
2360
2361#define RM_DACMBCCTL_WINSEL2 \
2362         RM(FM_DACMBCCTL_WINSEL2, FB_DACMBCCTL_WINSEL2)
2363
2364#define RM_DACMBCCTL_LVLMODE1 \
2365         RM(FM_DACMBCCTL_LVLMODE1, FB_DACMBCCTL_LVLMODE1)
2366
2367#define RM_DACMBCCTL_WINSEL1 \
2368         RM(FM_DACMBCCTL_WINSEL1, FB_DACMBCCTL_WINSEL1)
2369
2370
2371/*********************************
2372 *      R_DACMBCMUG1 (0xC9)      *
2373 *********************************/
2374
2375/* Field Offsets */
2376#define FB_DACMBCMUG1_PHASE                  5
2377#define FB_DACMBCMUG1_MUGAIN                 0
2378
2379/* Field Masks */
2380#define FM_DACMBCMUG1_PHASE                  0X1
2381#define FM_DACMBCMUG1_MUGAIN                 0X1F
2382
2383/* Register Masks */
2384#define RM_DACMBCMUG1_PHASE \
2385         RM(FM_DACMBCMUG1_PHASE, FB_DACMBCMUG1_PHASE)
2386
2387#define RM_DACMBCMUG1_MUGAIN \
2388         RM(FM_DACMBCMUG1_MUGAIN, FB_DACMBCMUG1_MUGAIN)
2389
2390
2391/*********************************
2392 *      R_DACMBCTHR1 (0xCA)      *
2393 *********************************/
2394
2395/* Field Offsets */
2396#define FB_DACMBCTHR1_THRESH                 0
2397
2398/* Field Masks */
2399#define FM_DACMBCTHR1_THRESH                 0XFF
2400
2401/* Register Masks */
2402#define RM_DACMBCTHR1_THRESH \
2403         RM(FM_DACMBCTHR1_THRESH, FB_DACMBCTHR1_THRESH)
2404
2405
2406/*********************************
2407 *      R_DACMBCRAT1 (0xCB)      *
2408 *********************************/
2409
2410/* Field Offsets */
2411#define FB_DACMBCRAT1_RATIO                  0
2412
2413/* Field Masks */
2414#define FM_DACMBCRAT1_RATIO                  0X1F
2415
2416/* Register Masks */
2417#define RM_DACMBCRAT1_RATIO \
2418         RM(FM_DACMBCRAT1_RATIO, FB_DACMBCRAT1_RATIO)
2419
2420
2421/**********************************
2422 *      R_DACMBCATK1L (0xCC)      *
2423 **********************************/
2424
2425/* Field Offsets */
2426#define FB_DACMBCATK1L_TCATKL                0
2427
2428/* Field Masks */
2429#define FM_DACMBCATK1L_TCATKL                0XFF
2430
2431/* Register Masks */
2432#define RM_DACMBCATK1L_TCATKL \
2433         RM(FM_DACMBCATK1L_TCATKL, FB_DACMBCATK1L_TCATKL)
2434
2435
2436/**********************************
2437 *      R_DACMBCATK1H (0xCD)      *
2438 **********************************/
2439
2440/* Field Offsets */
2441#define FB_DACMBCATK1H_TCATKH                0
2442
2443/* Field Masks */
2444#define FM_DACMBCATK1H_TCATKH                0XFF
2445
2446/* Register Masks */
2447#define RM_DACMBCATK1H_TCATKH \
2448         RM(FM_DACMBCATK1H_TCATKH, FB_DACMBCATK1H_TCATKH)
2449
2450
2451/**********************************
2452 *      R_DACMBCREL1L (0xCE)      *
2453 **********************************/
2454
2455/* Field Offsets */
2456#define FB_DACMBCREL1L_TCRELL                0
2457
2458/* Field Masks */
2459#define FM_DACMBCREL1L_TCRELL                0XFF
2460
2461/* Register Masks */
2462#define RM_DACMBCREL1L_TCRELL \
2463         RM(FM_DACMBCREL1L_TCRELL, FB_DACMBCREL1L_TCRELL)
2464
2465
2466/**********************************
2467 *      R_DACMBCREL1H (0xCF)      *
2468 **********************************/
2469
2470/* Field Offsets */
2471#define FB_DACMBCREL1H_TCRELH                0
2472
2473/* Field Masks */
2474#define FM_DACMBCREL1H_TCRELH                0XFF
2475
2476/* Register Masks */
2477#define RM_DACMBCREL1H_TCRELH \
2478         RM(FM_DACMBCREL1H_TCRELH, FB_DACMBCREL1H_TCRELH)
2479
2480
2481/*********************************
2482 *      R_DACMBCMUG2 (0xD0)      *
2483 *********************************/
2484
2485/* Field Offsets */
2486#define FB_DACMBCMUG2_PHASE                  5
2487#define FB_DACMBCMUG2_MUGAIN                 0
2488
2489/* Field Masks */
2490#define FM_DACMBCMUG2_PHASE                  0X1
2491#define FM_DACMBCMUG2_MUGAIN                 0X1F
2492
2493/* Register Masks */
2494#define RM_DACMBCMUG2_PHASE \
2495         RM(FM_DACMBCMUG2_PHASE, FB_DACMBCMUG2_PHASE)
2496
2497#define RM_DACMBCMUG2_MUGAIN \
2498         RM(FM_DACMBCMUG2_MUGAIN, FB_DACMBCMUG2_MUGAIN)
2499
2500
2501/*********************************
2502 *      R_DACMBCTHR2 (0xD1)      *
2503 *********************************/
2504
2505/* Field Offsets */
2506#define FB_DACMBCTHR2_THRESH                 0
2507
2508/* Field Masks */
2509#define FM_DACMBCTHR2_THRESH                 0XFF
2510
2511/* Register Masks */
2512#define RM_DACMBCTHR2_THRESH \
2513         RM(FM_DACMBCTHR2_THRESH, FB_DACMBCTHR2_THRESH)
2514
2515
2516/*********************************
2517 *      R_DACMBCRAT2 (0xD2)      *
2518 *********************************/
2519
2520/* Field Offsets */
2521#define FB_DACMBCRAT2_RATIO                  0
2522
2523/* Field Masks */
2524#define FM_DACMBCRAT2_RATIO                  0X1F
2525
2526/* Register Masks */
2527#define RM_DACMBCRAT2_RATIO \
2528         RM(FM_DACMBCRAT2_RATIO, FB_DACMBCRAT2_RATIO)
2529
2530
2531/**********************************
2532 *      R_DACMBCATK2L (0xD3)      *
2533 **********************************/
2534
2535/* Field Offsets */
2536#define FB_DACMBCATK2L_TCATKL                0
2537
2538/* Field Masks */
2539#define FM_DACMBCATK2L_TCATKL                0XFF
2540
2541/* Register Masks */
2542#define RM_DACMBCATK2L_TCATKL \
2543         RM(FM_DACMBCATK2L_TCATKL, FB_DACMBCATK2L_TCATKL)
2544
2545
2546/**********************************
2547 *      R_DACMBCATK2H (0xD4)      *
2548 **********************************/
2549
2550/* Field Offsets */
2551#define FB_DACMBCATK2H_TCATKH                0
2552
2553/* Field Masks */
2554#define FM_DACMBCATK2H_TCATKH                0XFF
2555
2556/* Register Masks */
2557#define RM_DACMBCATK2H_TCATKH \
2558         RM(FM_DACMBCATK2H_TCATKH, FB_DACMBCATK2H_TCATKH)
2559
2560
2561/**********************************
2562 *      R_DACMBCREL2L (0xD5)      *
2563 **********************************/
2564
2565/* Field Offsets */
2566#define FB_DACMBCREL2L_TCRELL                0
2567
2568/* Field Masks */
2569#define FM_DACMBCREL2L_TCRELL                0XFF
2570
2571/* Register Masks */
2572#define RM_DACMBCREL2L_TCRELL \
2573         RM(FM_DACMBCREL2L_TCRELL, FB_DACMBCREL2L_TCRELL)
2574
2575
2576/**********************************
2577 *      R_DACMBCREL2H (0xD6)      *
2578 **********************************/
2579
2580/* Field Offsets */
2581#define FB_DACMBCREL2H_TCRELH                0
2582
2583/* Field Masks */
2584#define FM_DACMBCREL2H_TCRELH                0XFF
2585
2586/* Register Masks */
2587#define RM_DACMBCREL2H_TCRELH \
2588         RM(FM_DACMBCREL2H_TCRELH, FB_DACMBCREL2H_TCRELH)
2589
2590
2591/*********************************
2592 *      R_DACMBCMUG3 (0xD7)      *
2593 *********************************/
2594
2595/* Field Offsets */
2596#define FB_DACMBCMUG3_PHASE                  5
2597#define FB_DACMBCMUG3_MUGAIN                 0
2598
2599/* Field Masks */
2600#define FM_DACMBCMUG3_PHASE                  0X1
2601#define FM_DACMBCMUG3_MUGAIN                 0X1F
2602
2603/* Register Masks */
2604#define RM_DACMBCMUG3_PHASE \
2605         RM(FM_DACMBCMUG3_PHASE, FB_DACMBCMUG3_PHASE)
2606
2607#define RM_DACMBCMUG3_MUGAIN \
2608         RM(FM_DACMBCMUG3_MUGAIN, FB_DACMBCMUG3_MUGAIN)
2609
2610
2611/*********************************
2612 *      R_DACMBCTHR3 (0xD8)      *
2613 *********************************/
2614
2615/* Field Offsets */
2616#define FB_DACMBCTHR3_THRESH                 0
2617
2618/* Field Masks */
2619#define FM_DACMBCTHR3_THRESH                 0XFF
2620
2621/* Register Masks */
2622#define RM_DACMBCTHR3_THRESH \
2623         RM(FM_DACMBCTHR3_THRESH, FB_DACMBCTHR3_THRESH)
2624
2625
2626/*********************************
2627 *      R_DACMBCRAT3 (0xD9)      *
2628 *********************************/
2629
2630/* Field Offsets */
2631#define FB_DACMBCRAT3_RATIO                  0
2632
2633/* Field Masks */
2634#define FM_DACMBCRAT3_RATIO                  0X1F
2635
2636/* Register Masks */
2637#define RM_DACMBCRAT3_RATIO \
2638         RM(FM_DACMBCRAT3_RATIO, FB_DACMBCRAT3_RATIO)
2639
2640
2641/**********************************
2642 *      R_DACMBCATK3L (0xDA)      *
2643 **********************************/
2644
2645/* Field Offsets */
2646#define FB_DACMBCATK3L_TCATKL                0
2647
2648/* Field Masks */
2649#define FM_DACMBCATK3L_TCATKL                0XFF
2650
2651/* Register Masks */
2652#define RM_DACMBCATK3L_TCATKL \
2653         RM(FM_DACMBCATK3L_TCATKL, FB_DACMBCATK3L_TCATKL)
2654
2655
2656/**********************************
2657 *      R_DACMBCATK3H (0xDB)      *
2658 **********************************/
2659
2660/* Field Offsets */
2661#define FB_DACMBCATK3H_TCATKH                0
2662
2663/* Field Masks */
2664#define FM_DACMBCATK3H_TCATKH                0XFF
2665
2666/* Register Masks */
2667#define RM_DACMBCATK3H_TCATKH \
2668         RM(FM_DACMBCATK3H_TCATKH, FB_DACMBCATK3H_TCATKH)
2669
2670
2671/**********************************
2672 *      R_DACMBCREL3L (0xDC)      *
2673 **********************************/
2674
2675/* Field Offsets */
2676#define FB_DACMBCREL3L_TCRELL                0
2677
2678/* Field Masks */
2679#define FM_DACMBCREL3L_TCRELL                0XFF
2680
2681/* Register Masks */
2682#define RM_DACMBCREL3L_TCRELL \
2683         RM(FM_DACMBCREL3L_TCRELL, FB_DACMBCREL3L_TCRELL)
2684
2685
2686/**********************************
2687 *      R_DACMBCREL3H (0xDD)      *
2688 **********************************/
2689
2690/* Field Offsets */
2691#define FB_DACMBCREL3H_TCRELH                0
2692
2693/* Field Masks */
2694#define FM_DACMBCREL3H_TCRELH                0XFF
2695
2696/* Register Masks */
2697#define RM_DACMBCREL3H_TCRELH \
2698         RM(FM_DACMBCREL3H_TCRELH, FB_DACMBCREL3H_TCRELH)
2699
2700
2701#endif /* __WOOKIE_H__ */
2702