|
@@ -38,7 +38,7 @@
|
|
|
#include <sound/initval.h>
|
|
|
#include <sound/dmaengine_pcm.h>
|
|
|
|
|
|
-/* Codec DAC register offsets and bit fields */
|
|
|
+/* Codec DAC digital controls and FIFO registers */
|
|
|
#define SUN4I_CODEC_DAC_DPC (0x00)
|
|
|
#define SUN4I_CODEC_DAC_DPC_EN_DA (31)
|
|
|
#define SUN4I_CODEC_DAC_DPC_DVOL (12)
|
|
@@ -55,6 +55,8 @@
|
|
|
#define SUN4I_CODEC_DAC_FIFOC_FIFO_FLUSH (0)
|
|
|
#define SUN4I_CODEC_DAC_FIFOS (0x08)
|
|
|
#define SUN4I_CODEC_DAC_TXDATA (0x0c)
|
|
|
+
|
|
|
+/* Codec DAC side analog signal controls */
|
|
|
#define SUN4I_CODEC_DAC_ACTL (0x10)
|
|
|
#define SUN4I_CODEC_DAC_ACTL_DACAENR (31)
|
|
|
#define SUN4I_CODEC_DAC_ACTL_DACAENL (30)
|
|
@@ -69,7 +71,7 @@
|
|
|
#define SUN4I_CODEC_DAC_TUNE (0x14)
|
|
|
#define SUN4I_CODEC_DAC_DEBUG (0x18)
|
|
|
|
|
|
-/* Codec ADC register offsets and bit fields */
|
|
|
+/* Codec ADC digital controls and FIFO registers */
|
|
|
#define SUN4I_CODEC_ADC_FIFOC (0x1c)
|
|
|
#define SUN4I_CODEC_ADC_FIFOC_ADC_FS (29)
|
|
|
#define SUN4I_CODEC_ADC_FIFOC_EN_AD (28)
|
|
@@ -81,6 +83,8 @@
|
|
|
#define SUN4I_CODEC_ADC_FIFOC_FIFO_FLUSH (0)
|
|
|
#define SUN4I_CODEC_ADC_FIFOS (0x20)
|
|
|
#define SUN4I_CODEC_ADC_RXDATA (0x24)
|
|
|
+
|
|
|
+/* Codec ADC side analog signal controls */
|
|
|
#define SUN4I_CODEC_ADC_ACTL (0x28)
|
|
|
#define SUN4I_CODEC_ADC_ACTL_ADC_R_EN (31)
|
|
|
#define SUN4I_CODEC_ADC_ACTL_ADC_L_EN (30)
|
|
@@ -93,10 +97,14 @@
|
|
|
#define SUN4I_CODEC_ADC_ACTL_DDE (3)
|
|
|
#define SUN4I_CODEC_ADC_DEBUG (0x2c)
|
|
|
|
|
|
-/* Other various ADC registers */
|
|
|
+/* FIFO counters */
|
|
|
#define SUN4I_CODEC_DAC_TXCNT (0x30)
|
|
|
#define SUN4I_CODEC_ADC_RXCNT (0x34)
|
|
|
+
|
|
|
+/* Calibration register (sun7i only) */
|
|
|
#define SUN7I_CODEC_AC_DAC_CAL (0x38)
|
|
|
+
|
|
|
+/* Microphone controls (sun7i only) */
|
|
|
#define SUN7I_CODEC_AC_MIC_PHONE_CAL (0x3c)
|
|
|
|
|
|
struct sun4i_codec {
|