Blame view

kernel/linux-imx6_3.14.28/sound/aoa/codecs/onyx.h 2.04 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
  /*
   * Apple Onboard Audio driver for Onyx codec (header)
   *
   * Copyright 2006 Johannes Berg <johannes@sipsolutions.net>
   *
   * GPL v2, can be found in COPYING.
   */
  #ifndef __SND_AOA_CODEC_ONYX_H
  #define __SND_AOA_CODEC_ONYX_H
  #include <stddef.h>
  #include <linux/i2c.h>
  #include <asm/pmac_low_i2c.h>
  #include <asm/prom.h>
  
  /* PCM3052 register definitions */
  
  /* the attenuation registers take values from
   * -1 (0dB) to -127 (-63.0 dB) or others (muted) */
  #define ONYX_REG_DAC_ATTEN_LEFT		65
  #define FIRSTREGISTER			ONYX_REG_DAC_ATTEN_LEFT
  #define ONYX_REG_DAC_ATTEN_RIGHT	66
  
  #define ONYX_REG_CONTROL		67
  #	define ONYX_MRST		(1<<7)
  #	define ONYX_SRST		(1<<6)
  #	define ONYX_ADPSV		(1<<5)
  #	define ONYX_DAPSV		(1<<4)
  #	define ONYX_SILICONVERSION	(1<<0)
  /* all others reserved */
  
  #define ONYX_REG_DAC_CONTROL		68
  #	define ONYX_OVR1		(1<<6)
  #	define ONYX_MUTE_RIGHT		(1<<1)
  #	define ONYX_MUTE_LEFT		(1<<0)
  
  #define ONYX_REG_DAC_DEEMPH		69
  #	define ONYX_DIGDEEMPH_SHIFT	5
  #	define ONYX_DIGDEEMPH_MASK	(3<<ONYX_DIGDEEMPH_SHIFT)
  #	define ONYX_DIGDEEMPH_CTRL	(1<<4)
  
  #define ONYX_REG_DAC_FILTER		70
  #	define ONYX_ROLLOFF_FAST	(1<<5)
  #	define ONYX_DAC_FILTER_ALWAYS	(1<<2)
  
  #define	ONYX_REG_DAC_OUTPHASE		71
  #	define ONYX_OUTPHASE_INVERTED	(1<<0)
  
  #define ONYX_REG_ADC_CONTROL		72
  #	define ONYX_ADC_INPUT_MIC	(1<<5)
  /* 8 + input gain in dB, valid range for input gain is -4 .. 20 dB */
  #	define ONYX_ADC_PGA_GAIN_MASK	0x1f
  
  #define ONYX_REG_ADC_HPF_BYPASS		75
  #	define ONYX_HPF_DISABLE		(1<<3)
  #	define ONYX_ADC_HPF_ALWAYS	(1<<2)
  
  #define ONYX_REG_DIG_INFO1		77
  #	define ONYX_MASK_DIN_TO_BPZ	(1<<7)
  /* bits 1-5 control channel bits 1-5 */
  #	define ONYX_DIGOUT_DISABLE	(1<<0)
  
  #define ONYX_REG_DIG_INFO2		78
  /* controls channel bits 8-15 */
  
  #define ONYX_REG_DIG_INFO3		79
  /* control channel bits 24-29, high 2 bits reserved */
  
  #define ONYX_REG_DIG_INFO4		80
  #	define ONYX_VALIDL		(1<<7)
  #	define ONYX_VALIDR		(1<<6)
  #	define ONYX_SPDIF_ENABLE	(1<<5)
  /* lower 4 bits control bits 32-35 of channel control and word length */
  #	define ONYX_WORDLEN_MASK	(0xF)
  
  #endif /* __SND_AOA_CODEC_ONYX_H */