root/dev/ic/ad1843reg.h

/* [<][>][^][v][top][bottom][index][help] */
    1 /*      $OpenBSD: ad1843reg.h,v 1.1 2005/01/02 19:25:41 kettenis Exp $  */
    2 
    3 /*
    4  * Copyright (c) 2005 Mark Kettenis
    5  *
    6  * Permission to use, copy, modify, and distribute this software for any
    7  * purpose with or without fee is hereby granted, provided that the above
    8  * copyright notice and this permission notice appear in all copies.
    9  *
   10  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
   11  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
   12  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
   13  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
   14  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
   15  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
   16  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
   17  */
   18 
   19 /*
   20  * AD1843 Codec register defenitions.
   21  */
   22 
   23 #define AD1843_CODEC_STATUS             0
   24 #define  AD1843_INIT                    0x8000
   25 #define  AD1843_PDNO                    0x4000
   26 #define  AD1843_REVISION_MASK           0x000f
   27 
   28 #define AD1843_ADC_SOURCE_GAIN          2
   29 #define  AD1843_LSS_MASK                0xe000
   30 #define  AD1843_LSS_SHIFT               13
   31 #define  AD1843_RSS_MASK                0x00e0
   32 #define  AD1843_RSS_SHIFT               5
   33 #define  AD1843_LMGE                    0x1000
   34 #define  AD1843_RMGE                    0x0010
   35 #define  AD1843_LIG_MASK                0x0f00
   36 #define  AD1843_LIG_SHIFT               8
   37 #define  AD1843_RIG_MASK                0x000f
   38 #define  AD1843_RIG_SHIFT               0
   39 
   40 #define AD1843_DAC2_TO_MIXER            3
   41 #define  AD1843_LD2MM                   0x8000
   42 #define  AD1843_RD2MM                   0x0080
   43 #define  AD1843_LD2M_MASK               0x1f00
   44 #define  AD1843_LD2M_SHIFT              8
   45 #define  AD1843_RD2M_MASK               0x001f
   46 #define  AD1843_RD2M_SHIFT              0
   47 
   48 #define AD1843_MISC_SETTINGS            8
   49 #define  AD1843_MNMM                    0x8000
   50 #define  AD1843_MNM_MASK                0x1f00
   51 #define  AD1843_MNM_SHIFT               8
   52 #define  AD1843_ALLMM                   0x0080
   53 #define  AD1843_MNOM                    0x0040
   54 #define  AD1843_HPOM                    0x0020
   55 #define  AD1843_HPOS                    0x0010
   56 #define  AD1843_SUMM                    0x0008
   57 #define  AD1843_DAC2T                   0x0002
   58 #define  AD1843_DAC1T                   0x0001
   59 
   60 #define AD1843_DAC1_ANALOG_GAIN         9
   61 #define  AD1843_LDA1GM                  0x8000
   62 #define  AD1843_RDA1GM                  0x0080
   63 #define  AD1843_LDA1G_MASK              0x3f00
   64 #define  AD1843_LDA1G_SHIFT             8
   65 #define  AD1843_RDA1G_MASK              0x003f
   66 #define  AD1843_RDA1G_SHIFT             0
   67 
   68 #define AD1843_DAC1_DIGITAL_GAIN        11
   69 #define  AD1843_LDA1AM                  0x8000
   70 #define  AD1843_RDA1AM                  0x0080
   71 
   72 #define AD1843_CHANNEL_SAMPLE_RATE      15
   73 #define  AD1843_DA1C_SHIFT              8
   74 
   75 #define AD1843_CLOCK1_SAMPLE_RATE       17
   76 #define AD1843_CLOCK2_SAMPLE_RATE       20
   77 #define AD1843_CLOCK3_SAMPLE_RATE       13
   78 
   79 #define AD1843_SERIAL_INTERFACE         26
   80 #define  AD1843_DA2F_MASK               0x0c00
   81 #define  AD1843_DA2F_SHIFT              10
   82 #define  AD1843_DA1F_MASK               0x0300
   83 #define  AD1843_DA1F_SHIFT              8
   84 #define  AD1843_PCM8                    0
   85 #define  AD1843_PCM16                   1
   86 #define  AD1843_ULAW                    2
   87 #define  AD1843_ALAW                    3
   88 #define  AD1843_SCF                     0x0080
   89 
   90 #define AD1843_CHANNEL_POWER_DOWN       27
   91 #define  AD1843_DFREE                   0x8000
   92 #define  AD1843_DDMEN                   0x1000
   93 #define  AD1843_DA2EN                   0x0200
   94 #define  AD1843_DA1EN                   0x0100
   95 #define  AD1843_ANAEN                   0x0080
   96 #define  AD1843_HPEN                    0x0040
   97 #define  AD1843_AAMEN                   0x0010
   98 #define  AD1843_ADREN                   0x0002
   99 #define  AD1843_ADLEN                   0x0001
  100 
  101 #define AD1843_FUNDAMENTAL_SETTINGS     28
  102 #define  AD1843_PDNI                    0x8000
  103 #define  AD1843_ACEN                    0x4000
  104 #define  AD1843_C3EN                    0x2000
  105 #define  AD1843_C2EN                    0x1000
  106 #define  AD1843_C1EN                    0x0800
  107 
  108 #define AD1843_NREGS                    32

/* [<][>][^][v][top][bottom][index][help] */