root/sound/pci/aw2/saa7146.h

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

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-only */
   2 /*****************************************************************************
   3  *
   4  * Copyright (C) 2008 Cedric Bregardis <cedric.bregardis@free.fr> and
   5  * Jean-Christian Hassler <jhassler@free.fr>
   6  *
   7  * This file is part of the Audiowerk2 ALSA driver
   8  *
   9  *****************************************************************************/
  10 
  11 /* SAA7146 registers */
  12 #define PCI_BT_A        0x4C
  13 #define IICTFR          0x8C
  14 #define IICSTA          0x90
  15 #define BaseA1_in       0x94
  16 #define ProtA1_in       0x98
  17 #define PageA1_in       0x9C
  18 #define BaseA1_out      0xA0
  19 #define ProtA1_out      0xA4
  20 #define PageA1_out      0xA8
  21 #define BaseA2_in       0xAC
  22 #define ProtA2_in       0xB0
  23 #define PageA2_in       0xB4
  24 #define BaseA2_out      0xB8
  25 #define ProtA2_out      0xBC
  26 #define PageA2_out      0xC0
  27 #define IER             0xDC
  28 #define GPIO_CTRL       0xE0
  29 #define ACON1           0xF4
  30 #define ACON2           0xF8
  31 #define MC1             0xFC
  32 #define MC2             0x100
  33 #define ISR             0x10C
  34 #define PSR             0x110
  35 #define SSR             0x114
  36 #define PCI_ADP1        0x12C
  37 #define PCI_ADP2        0x130
  38 #define PCI_ADP3        0x134
  39 #define PCI_ADP4        0x138
  40 #define LEVEL_REP       0x140
  41 #define FB_BUFFER1      0x144
  42 #define FB_BUFFER2      0x148
  43 #define TSL1            0x180
  44 #define TSL2            0x1C0
  45 
  46 #define ME      (1UL << 11)
  47 #define LIMIT   (1UL << 4)
  48 #define PV      (1UL << 3)
  49 
  50 /* PSR/ISR/IER */
  51 #define PPEF            (1UL << 31)
  52 #define PABO            (1UL << 30)
  53 #define IIC_S           (1UL << 17)
  54 #define IIC_E           (1UL << 16)
  55 #define A2_in           (1UL << 15)
  56 #define A2_out          (1UL << 14)
  57 #define A1_in           (1UL << 13)
  58 #define A1_out          (1UL << 12)
  59 #define AFOU            (1UL << 11)
  60 #define PIN3            (1UL << 6)
  61 #define PIN2            (1UL << 5)
  62 #define PIN1            (1UL << 4)
  63 #define PIN0            (1UL << 3)
  64 #define ECS             (1UL << 2)
  65 #define EC3S            (1UL << 1)
  66 #define EC0S            (1UL << 0)
  67 
  68 /* SSR */
  69 #define PRQ             (1UL << 31)
  70 #define PMA             (1UL << 30)
  71 #define IIC_EA          (1UL << 21)
  72 #define IIC_EW          (1UL << 20)
  73 #define IIC_ER          (1UL << 19)
  74 #define IIC_EL          (1UL << 18)
  75 #define IIC_EF          (1UL << 17)
  76 #define AF2_in          (1UL << 10)
  77 #define AF2_out         (1UL << 9)
  78 #define AF1_in          (1UL << 8)
  79 #define AF1_out         (1UL << 7)
  80 #define EC5S            (1UL << 3)
  81 #define EC4S            (1UL << 2)
  82 #define EC2S            (1UL << 1)
  83 #define EC1S            (1UL << 0)
  84 
  85 /* PCI_BT_A */
  86 #define BurstA1_in      (1UL << 26)
  87 #define ThreshA1_in     (1UL << 24)
  88 #define BurstA1_out     (1UL << 18)
  89 #define ThreshA1_out    (1UL << 16)
  90 #define BurstA2_in      (1UL << 10)
  91 #define ThreshA2_in     (1UL << 8)
  92 #define BurstA2_out     (1UL << 2)
  93 #define ThreshA2_out    (1UL << 0)
  94 
  95 /* MC1 */
  96 #define MRST_N          (1UL << 15)
  97 #define EAP             (1UL << 9)
  98 #define EI2C            (1UL << 8)
  99 #define TR_E_A2_OUT     (1UL << 3)
 100 #define TR_E_A2_IN      (1UL << 2)
 101 #define TR_E_A1_OUT     (1UL << 1)
 102 #define TR_E_A1_IN      (1UL << 0)
 103 
 104 /* MC2 */
 105 #define UPLD_IIC        (1UL << 0)
 106 
 107 /* ACON1 */
 108 #define AUDIO_MODE      (1UL << 29)
 109 #define MAXLEVEL        (1UL << 22)
 110 #define A1_SWAP         (1UL << 21)
 111 #define A2_SWAP         (1UL << 20)
 112 #define WS0_CTRL        (1UL << 18)
 113 #define WS0_SYNC        (1UL << 16)
 114 #define WS1_CTRL        (1UL << 14)
 115 #define WS1_SYNC        (1UL << 12)
 116 #define WS2_CTRL        (1UL << 10)
 117 #define WS2_SYNC        (1UL << 8)
 118 #define WS3_CTRL        (1UL << 6)
 119 #define WS3_SYNC        (1UL << 4)
 120 #define WS4_CTRL        (1UL << 2)
 121 #define WS4_SYNC        (1UL << 0)
 122 
 123 /* ACON2 */
 124 #define A1_CLKSRC       (1UL << 27)
 125 #define A2_CLKSRC       (1UL << 22)
 126 #define INVERT_BCLK1    (1UL << 21)
 127 #define INVERT_BCLK2    (1UL << 20)
 128 #define BCLK1_OEN       (1UL << 19)
 129 #define BCLK2_OEN       (1UL << 18)
 130 
 131 /* IICSTA */
 132 #define IICCC           (1UL << 8)
 133 #define ABORT           (1UL << 7)
 134 #define SPERR           (1UL << 6)
 135 #define APERR           (1UL << 5)
 136 #define DTERR           (1UL << 4)
 137 #define DRERR           (1UL << 3)
 138 #define AL              (1UL << 2)
 139 #define ERR             (1UL << 1)
 140 #define BUSY            (1UL << 0)
 141 
 142 /* IICTFR */
 143 #define BYTE2           (1UL << 24)
 144 #define BYTE1           (1UL << 16)
 145 #define BYTE0           (1UL << 8)
 146 #define ATRR2           (1UL << 6)
 147 #define ATRR1           (1UL << 4)
 148 #define ATRR0           (1UL << 2)
 149 #define ERR             (1UL << 1)
 150 #define BUSY            (1UL << 0)
 151 
 152 #define START   3
 153 #define CONT    2
 154 #define STOP    1
 155 #define NOP     0

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